#!/bin/sh # Released under the GPL # pmf - 2008/07/31 # This script runs LTTV in place in the compile directory without need for # installing it with make install. # # Run with the TF environment variable set to a trace directory to open it. # ex: TF=/my/trace ./runlttv # # The .runlttvrc file can be used to control its behavior. # - by setting the TRACEFILE variable, a trace can be automatically loaded # ex: TRACEFILE="-t /tmp/traces/dijkstra-20071212" # - by setting the ARGS variable, a different set of plugins can be loaded # for an example see the ARGS= line below # # In order for icons to display correctly, it might be necessary to create a # symlink: # $ ln -s ./lttv/modules/gui/lttvwindow/pixmaps # while in the same directory as this script. RCFILE=".runlttvrc" ARGS=\ "-L lttv/modules/gui/lttvwindow/lttvwindow/.libs -m lttvwindow "\ "-L lttv/modules/gui/controlflow/.libs -m guicontrolflow "\ "-L lttv/modules/gui/detailedevents/.libs -m guievents "\ "-L lttv/modules/gui/tracecontrol/.libs -m guitracecontrol "\ "-L lttv/modules/gui/statistics/.libs -m guistatistics "\ "-L lttv/modules/gui/resourceview/.libs -m resourceview "\ "-L lttv/modules/gui/filter/.libs -m guifilter "\ "-L lttv/modules/gui/interrupts/.libs -m interrupts "\ "-L lttv/modules/gui/histogram/.libs -m guihistogram" if [ -e "lttv/lttv/.libs/lttv.real" ]; then LTTV_EXEC="lttv/lttv/.libs/lttv.real" elif [ -e "lttv/lttv/lttv.real" ]; then LTTV_EXEC="lttv/lttv/lttv.real" else echo "error: LTTV should be compiled before running this script." >/dev/stderr exit 1 fi if [ -n "$TF" ]; then TRACEFILE="-t $TF" fi if [ -e "$RCFILE" ]; then source "$RCFILE"; fi HELPER=$1 if [ "$HELPER" = "gdb" ]; then shift LD_LIBRARY_PATH=ltt/.libs gdb --args $LTTV_EXEC $ARGS $TRACEFILE $@ elif [ "$HELPER" = "valgrind" ]; then shift LD_LIBRARY_PATH=ltt/.libs valgrind --track-origins=yes --show-reachable=yes --leak-check=full --error-limit=no $LTTV_EXEC $ARGS $TRACEFILE $@ elif [ "$HELPER" = "strace" ]; then shift LD_LIBRARY_PATH=ltt/.libs strace $LTTV_EXEC $ARGS $TRACEFILE $@ else LD_LIBRARY_PATH=ltt/.libs $LTTV_EXEC $ARGS $TRACEFILE $@ fi