summaryrefslogtreecommitdiff
path: root/qa/605
diff options
context:
space:
mode:
authorIgor Pashev <pashev.igor@gmail.com>2014-10-26 12:33:50 +0400
committerIgor Pashev <pashev.igor@gmail.com>2014-10-26 12:33:50 +0400
commit47e6e7c84f008a53061e661f31ae96629bc694ef (patch)
tree648a07f3b5b9d67ce19b0fd72e8caa1175c98f1a /qa/605
downloadpcp-47e6e7c84f008a53061e661f31ae96629bc694ef.tar.gz
Debian 3.9.10debian/3.9.10debian
Diffstat (limited to 'qa/605')
-rwxr-xr-xqa/60579
1 files changed, 79 insertions, 0 deletions
diff --git a/qa/605 b/qa/605
new file mode 100755
index 0000000..c4ea9e8
--- /dev/null
+++ b/qa/605
@@ -0,0 +1,79 @@
+#! /bin/sh
+# PCP QA Test No.
+# checking trace stub library
+#
+# Copyright (c) 1995-2002 Silicon Graphics, Inc. All Rights Reserved.
+#
+
+seq=`basename $0`
+echo "QA output created by $seq"
+
+# get standard environment, filters and checks
+. ./common.product
+. ./common.filter
+. ./common.check
+. ./localconfig
+
+rm -f $seq.out
+if [ $PCP_VER -lt 2200 ]; then
+ cat $seq.in >>$seq.out
+else
+ # tweak output for PCP 2.2...
+ cat $seq.in | perl -e '
+ @in=<>;
+ $"="";
+ print "@in[0..$#in-1]";
+ print "pmtracecounter: counter '\'counter\'', value=101.100000\n";
+ print "$in[$#in]";' >>$seq.out
+fi
+
+_cleanup()
+{
+ cd $here
+ if [ -n "$savedtracehost" ]
+ then
+ PCP_TRACE_HOST=$savedtracehost; export PCP_TRACE_HOST
+ fi
+ exit $status
+}
+
+_filter()
+{
+ sed -e "s#$PCP_DEMOS_DIR/trace/app1#app1#"
+}
+
+status=1 # failure is the default!
+trap "_cleanup" 0 1 2 3 15
+
+if [ -n "$PCP_TRACE_HOST" ]
+then
+ savedtracehost=$PCP_TRACE_HOST; unset PCP_TRACE_HOST
+fi
+
+# real QA test starts here
+
+echo "Checking trace stub library builds ..."
+cd $PCP_DEMOS_DIR/trace
+$sudo make -f Makefile.stub clobber >/dev/null 2>&1
+if [ $PCP_PLATFORM = linux -o $PCP_PLATFORM = solaris ]
+then
+ $sudo make -f Makefile.stub lib/libpcp_trace.so >/dev/null 2>&1
+ export LD_PRELOAD=$PCP_DEMOS_DIR/trace/lib/libpcp_trace.so.2
+elif [ $PCP_PLATFORM = darwin ]
+then
+ $sudo make -f Makefile.stub >/dev/null 2>&1
+ DYLD_INSERT_LIBRARIES=$PCP_DEMOS_DIR/trace/lib/libpcp_trace.dylib
+ DYLD_FORCE_FLAT_NAMESPACE=yes
+ export DYLD_INSERT_LIBRARIES DYLD_FORCE_FLAT_NAMESPACE
+else
+ _notrun "Unknown platform ($PCP_PLATFORM)"
+fi
+
+echo make succeeded.
+
+# this uses all of the externally visible libpcp_trace symbols
+$PCP_DEMOS_DIR/trace/app1 2>&1 | _filter
+
+# success, all done
+status=0
+exit