1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
|
#!/bin/sh
PROG=ROX-Filer
APP_DIR=`dirname "$0"`
APP_DIR=`cd "$APP_DIR";pwd`; export APP_DIR
if [ "x$PLATFORM" = x ]; then
ARCH=`uname -m`
case "$ARCH" in
i?86) ARCH=ix86 ;;
esac
PLATFORM=`uname -s`-"$ARCH" export PLATFORM
fi
DEBUGGER=""
case $1 in
--debug) shift ;
if [ "$#" = 0 ] ; then
DEBUGGER="gdb --args" ; DEBUG_OPTIONS="-n --g-fatal-warnings"
else
DEBUGGER="gdb"
fi ;;
--valgrind) shift ; DEBUGGER="valgrind --num-callers=8";;
--massif) shift ; DEBUGGER="valgrind --tool=massif --alloc-fn=g_malloc --alloc-fn=g_realloc --alloc-fn=g_malloc0 --alloc-fn=g_try_malloc --alloc-fn=g_mem_chunk_alloc";;
--calltree) shift ; DEBUGGER="calltree";;
--leaks) shift ; DEBUGGER="valgrind --num-callers=8 --leak-check=yes";;
--compile)
shift
if [ ! -d "$APP_DIR/src" ] ; then
echo "ERROR from $0:" >&2
echo "Cannot compile - source code is missing!" >&2
exit 1
fi
echo "Compiling $APP_DIR... please wait..." >&2
if [ ! -x "$APP_DIR/src/configure" ]; then
echo "No 'configure' script! Trying to run autoconf..."
(cd "$APP_DIR/src"; autoconf)
fi
BUILDDIR="$APP_DIR/build"
[ ! -d "$BUILDDIR" ] && mkdir "$BUILDDIR"
rm -f "$BUILDDIR/config.cache"
rm -f "$APP_DIR/src/config.h" # (for upgrading)
cd "$BUILDDIR" && "$APP_DIR/src/configure" --enable-rox \
--with-platform="$PLATFORM" \
"$@" \
&& make clean && make && echo Done >&2 && exit 0
echo Compile failed >&2
echo Press Return... >&2
read WAIT
exit 1
esac
if [ -z "$XDG_DATA_DIRS" -a -d /uri/0install/zero-install.sourceforge.net ]; then
# Try to get MIME database through Zero Install, if possible
0refresh zero-install.sourceforge.net/share/mime 2003-08-07
XDG_DATA_DIRS=/usr/local/share/:/usr/share/:/uri/0install/zero-install.sourceforge.net/share
export XDG_DATA_DIRS
fi
BIN="$APP_DIR/$PLATFORM/$PROG"
if [ -x "$BIN" ]; then
exec $DEBUGGER "$BIN" $DEBUG_OPTIONS "$@"
else
echo "ERROR from $0:" >&2
echo "I cannot find an executable file for your host type ($PLATFORM)." >&2
echo "Trying to compile..." >&2
if [ -n "$DISPLAY" ]; then
xterm -e "$0" --compile
else
"$0" --compile
fi
if [ -x "$BIN" ]; then
exec "$BIN" "$@"
fi
exit 1
fi
|