use new action map API instead of ActionManager::get_action
[ardour.git] / gtk2_ardour / ardour.sh.in
index 4a7219823ceca934e99cd8a20cc4645569ed8d7a..56555293a9e85f3a203d51a7880eb7c6a10d6568 100644 (file)
@@ -1,29 +1,31 @@
 #!/bin/sh
 
-export GTK_PATH=%INSTALL_PREFIX%/%LIBDIR%/ardour3:$GTK_PATH
+#
+# This script runs an installed version of Ardour. It sets a few environment variables
+# and does a few checks before exec'ing the real executable.
+# 
 
-export LD_LIBRARY_PATH=%INSTALL_PREFIX%/%LIBDIR%/ardour3:$LD_LIBRARY_PATH 
-# DYLD_LIBRARY_PATH is for Darwin
-export DYLD_LIBRARY_PATH=$LD_LIBRARY_PATH
+export GTK_PATH=@CONFDIR@:@LIBDIR@${GTK_PATH:+:$GTK_PATH}
+
+export LD_LIBRARY_PATH=@LIBDIR@${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
 
 ## Memlock check
 
 MLOCK_LIMIT=$(ulimit -l)
 if [ "$MLOCK_LIMIT" != "unlimited" ]; then
        echo "WARNING: Your system has a limit for maximum amount of locked memory!"
-        echo "         This might cause Ardour to run out of memory before your system runs"
+       echo "         This might cause Ardour to run out of memory before your system runs"
        echo "         out of memory. You can view the memory limit with 'ulimit -l', and it"
        echo "         is normally controlled by /etc/security/limits.conf"
        echo ""
 
 fi
 
-
 ## Glib atomic test
 
-GLIB=$(ldd %INSTALL_PREFIX%/%LIBDIR%/ardour3/ardour-%VERSION% 2> /dev/null | grep glib-2.0 | sed 's/.*=> \([^ ]*\) .*/\1/')
+GLIB=$(ldd @LIBDIR@/ardour-@VERSION@ 2> /dev/null | grep glib-2.0 | sed 's/.*=> \([^ ]*\)/\1/;s/ .*//')
 
-if [ "$GLIB" = "" ]; then
+if ! type nm >/dev/null 2>&1 || [ "$GLIB" = "" ]; then
        echo "WARNING: Could not check your glib-2.0 for mutex locking atomic operations."
        echo ""
 elif [ $(nm -D --radix=dec --defined-only -S $GLIB | grep -w g_atomic_int_add | cut -d ' ' -f 2) -gt 32 ]; then
@@ -37,6 +39,30 @@ elif [ $(nm -D --radix=dec --defined-only -S $GLIB | grep -w g_atomic_int_add |
        echo ""
 fi
 
-exec %INSTALL_PREFIX%/%LIBDIR%/ardour3/ardour-%VERSION% "$@"
+#
+# Running Ardour requires these 3 variables to be set
+#
+
+export ARDOUR_DATA_PATH=@DATADIR@
+export ARDOUR_CONFIG_PATH=@CONFDIR@
+export ARDOUR_DLL_PATH=@LIBDIR@
+
+#
+# NSM needs a path to this script
+#
 
+export ARDOUR_SELF=$(basename "$0")
+
+#
+# VAMP has its own lookup path
+# 
+
+export VAMP_PATH=@LIBDIR@/vamp${VAMP_PATH:+:$VAMP_PATH}
+
+if [ $# -gt 0 ] ; then
+    case $1 in
+        -g|--gdb) GDB=gdb; shift ;;
+    esac
+fi
 
+exec $GDB @LIBDIR@/ardour-@VERSION@ "$@"