if [ -x "${USTTRACE_DIR}/ustd/ustd" ] ; then
# Use the not installed libraries instead
USTD="${USTTRACE_DIR}/ustd/ustd"
- LIBINTERFORK_PATH="${USTTRACE_DIR}/libinterfork/.libs/libinterfork.so"
- LIBMALLOCWRAP_PATH="${USTTRACE_DIR}/libmallocwrap/.libs/libmallocwrap.so"
+ LIBINTERFORK_PATH="${USTTRACE_DIR}/libustfork/.libs/libustfork.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
error "cannot find an executable ustd; make sure its location is in the PATH"
exit 1
fi
- LIBINTERFORK_PATH="libinterfork.so"
- LIBMALLOCWRAP_PATH="libmallocwrap.so"
+ LIBINTERFORK_PATH="libustfork.so"
+ LIBMALLOCWRAP_PATH="libustinstr-malloc.so"
LIBUST_PATH="libust.so.0"
fi
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
}
-while getopts ":hlLmfsW" options; do
+while getopts ":hlLmfsWS:N:" options; do
case $options in
l) arg_preload_libust=1;;
L) arg_ld_std_ust=1;;
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;;
h) usage;
exit 0;;
\?) usage
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