Add libtool to .gitignore
[ust.git] / usttrace
index 0d2a68ae6ad4c663f534154aeb6a8da8159001e8..94404dde6d56e0bba1ef9aee9f299d328ba9f361 100755 (executable)
--- a/usttrace
+++ b/usttrace
@@ -28,7 +28,7 @@ if [ -x "${USTTRACE_DIR}/ustd/ustd" ] ; then
     # Use the not installed libraries instead
     USTD="${USTTRACE_DIR}/ustd/ustd"
     LIBINTERFORK_PATH="${USTTRACE_DIR}/libustfork/.libs/libustfork.so"
-    LIBMALLOCWRAP_PATH="${USTTRACE_DIR}/libmallocwrap/.libs/libmallocwrap.so"
+    LIBMALLOCWRAP_PATH="${USTTRACE_DIR}/libustinstr-malloc/.libs/libustinstr-malloc.so"
     LIBUST_PATH="${USTTRACE_DIR}/libust/.libs/libust.so"
 else
     # Use the libraries that the dynamic link finds
@@ -38,7 +38,7 @@ else
         exit 1
     fi
     LIBINTERFORK_PATH="libustfork.so"
-    LIBMALLOCWRAP_PATH="libmallocwrap.so"
+    LIBMALLOCWRAP_PATH="libustinstr-malloc.so"
     LIBUST_PATH="libust.so.0"
 fi
 
@@ -54,9 +54,12 @@ function usage () {
        echo "    -m    Instrument malloc calls." 2>/dev/stderr
        echo "    -f    Also trace forked processes." 2>/dev/stderr
        echo "    -s    Use system-wide daemon instead of creating one for this session." 2>/dev/stderr
+       echo "    -S    Specify the subbuffer size." 2>/dev/stderr
+       echo "    -N    Specify the number of subbuffers." 2>/dev/stderr
+       echo "    -o    Output directory of the trace." 2>/dev/stderr
 }
 
-while getopts ":hlLmfsW" options; do
+while getopts ":hlLmfsWS:N:o:" options; do
        case $options in
                l) arg_preload_libust=1;;
                L) arg_ld_std_ust=1;;
@@ -64,6 +67,9 @@ while getopts ":hlLmfsW" options; do
                f) arg_preload_fork=1;;
                s) arg_syswide_daemon=1;;
                W) where=1;;
+               S) export UST_SUBBUF_SIZE=$OPTARG;;
+               N) export UST_SUBBUF_NUM=$OPTARG;;
+               o) OUTPUT_DIR=$OPTARG;;
                h) usage;
                   exit 0;;
                \?) usage
@@ -96,9 +102,20 @@ then
 fi
 
 # Create directory for trace output
-DATESTRING="$(hostname)-$(date +%Y%m%d%H%M%S%N)"
-OUTDIR="$BASE_TRACE_DIR/$DATESTRING"
-mkdir -p "$OUTDIR"
+if [ -n "$OUTPUT_DIR" ]; then
+       OUTDIR=$OUTPUT_DIR
+else
+       DATESTRING="$(hostname)-$(date +%Y%m%d%H%M%S%N)"
+       OUTDIR="$BASE_TRACE_DIR/$DATESTRING"
+fi
+
+# Check if directory exist
+if [ ! -d "$OUTDIR" ]; then
+       mkdir -p $OUTDIR
+       if [ $? -eq 1 ]; then
+               exit 1
+       fi
+fi
 
 # Choose ustd socket path
 USTDSOCKPATH="/tmp/ustd-sock-$$"
@@ -128,27 +145,54 @@ fi
 
     if [ "$arg_preload_libust" = "1" ];
     then
-       if [ -n "${LIBUST_PATH%libust.so}" ] ; then
-           export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${LIBUST_PATH%libust.so}"
+       if [ -n "${LIBUST_PATH%libust.so}" ];
+       then
+               if [ -n "$LD_LIBRARY_PATH" ];
+               then
+                       export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${LIBUST_PATH%libust.so}"
+               else
+                       export LD_LIBRARY_PATH="${LIBUST_PATH%libust.so}"
+               fi
+       fi
+       if [ -n "$LIBUST_PATH" ];
+       then
+               if [ -n "$LD_PRELOAD" ];
+               then
+                       export LD_PRELOAD="$LD_PRELOAD:$LIBUST_PATH"
+               else
+                       export LD_PRELOAD="$LIBUST_PATH"
+               fi
        fi
-       export LD_PRELOAD="$LD_PRELOAD:$LIBUST_PATH"
     fi
 
-    if [ "$arg_ld_std_ust" = "1" ];
+    if [ "$arg_ld_std_ust" = "1" ] && [ -n "${LIBUST_PATH%libust.so}" ];
     then
-       if [ -n "$${LIBUST_PATH%libust.so}" ] ; then
-           export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${LIBUST_PATH%libust.so}"
+       if [ -n "$LD_LIBRARY_PATH" ];
+       then
+               export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${LIBUST_PATH%libust.so}"
+       else
+               export LD_LIBRARY_PATH="${LIBUST_PATH%libust.so}"
        fi
     fi
 
-    if [ "$arg_preload_malloc" = "1" ];
+    if [ "$arg_preload_malloc" = "1" ] && [ -n "$LIBMALLOCWRAP_PATH" ];
     then
-       export LD_PRELOAD="$LD_PRELOAD:$LIBMALLOCWRAP_PATH"
+       if [ -n "$LD_PRELOAD" ];
+       then
+               export LD_PRELOAD="$LD_PRELOAD:$LIBMALLOCWRAP_PATH"
+       else
+               export LD_PRELOAD="$LIBMALLOCWRAP_PATH"
+       fi
     fi
 
-    if [ "$arg_preload_fork" = "1" ];
+    if [ "$arg_preload_fork" = "1" ] && [ -n "$LIBINTERFORK_PATH" ];
     then
-       export LD_PRELOAD="$LD_PRELOAD:$LIBINTERFORK_PATH"
+       if [ -n "$LD_PRELOAD" ];
+       then
+               export LD_PRELOAD="$LD_PRELOAD:$LIBINTERFORK_PATH"
+       else
+               export LD_PRELOAD="$LIBINTERFORK_PATH"
+       fi
     fi
 
 # Execute the command
This page took 0.025065 seconds and 4 git commands to generate.