63 lines
1.7 KiB
Bash
63 lines
1.7 KiB
Bash
#!/bin/sh
|
|
|
|
# This is Linux-specific startup script for a bundled version of Ardour
|
|
|
|
ARGS=""
|
|
|
|
while [ $# -gt 0 ] ; do
|
|
case $1 in
|
|
|
|
--debug)
|
|
DEBUG="T";
|
|
shift ;;
|
|
*)
|
|
ARGS=$ARGS$1" ";
|
|
shift; ;;
|
|
esac
|
|
done
|
|
|
|
# LD_LIBRARY_PATH needs to be set here so that epa can swap between the original and the bundled version
|
|
# (the original one will be stored in PREBUNDLE_ENV)
|
|
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
|
|
export PREBUNDLE_ENV="$(env)"
|
|
|
|
BIN_DIR=$(dirname $(readlink -f $0))
|
|
INSTALL_DIR=$(dirname $BIN_DIR)
|
|
LIB_DIR=$INSTALL_DIR/lib
|
|
ETC_DIR=$INSTALL_DIR/etc
|
|
USER_ARDOUR_DIR=$HOME/.config/ardour3
|
|
|
|
if [ ! -d $USER_ARDOUR_DIR ] ; then
|
|
mkdir -p $USER_ARDOUR_DIR || exit 1
|
|
fi
|
|
|
|
# this triggers code in main() that will reset runtime environment variables
|
|
# to point to directories inside the ardour package
|
|
|
|
export ARDOUR_BUNDLED=true
|
|
|
|
# this is edited by the build script to include relevant environment variables
|
|
|
|
%ENV%
|
|
|
|
# Disable extra modules from being loaded by gtk (example, libcanberra-gtk-module.so)
|
|
export GTK_MODULES=""
|
|
# Set this so that the executable will find all the right libraries inside the bundle
|
|
export LD_LIBRARY_PATH=$INSTALL_DIR/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
|
|
|
|
# create install-location-dependent config files for Pango and GDK image loaders
|
|
# We have to do this every time because its possible that BIN_DIR has changed
|
|
|
|
sed "s?@ROOTDIR@/modules?$LIB_DIR/modules?" < $ETC_DIR/pango.modules.in > $USER_ARDOUR_DIR/pango.modules
|
|
sed "s?@ROOTDIR@/loaders?$LIB_DIR/loaders?" < $ETC_DIR/gdk-pixbuf.loaders.in > $USER_ARDOUR_DIR/gdk-pixbuf.loaders
|
|
|
|
if [ "T" = "$DEBUG" ]; then
|
|
export ARDOUR_INSIDE_GDB=1
|
|
exec gdb $INSTALL_DIR/bin/ardour-%VER%
|
|
else
|
|
exec $INSTALL_DIR/bin/ardour-%VER% $ARGS
|
|
fi
|
|
|
|
|
|
|