summaryrefslogtreecommitdiff
path: root/headless
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2019-07-02 17:33:56 +0200
committerRobin Gareus <robin@gareus.org>2019-07-02 17:33:56 +0200
commit1801c33ee4ac27b2ecef7c572dbc88078b758b25 (patch)
tree08614002ffd96d899c500fc5d219a40f46a46f3c /headless
parent08f8b810d559f85bb19b80dda3b183c7f8d5a641 (diff)
Consolidate headless startup scripts and make hardev work again
This fixes an issue with inconsistent startup scripts. LD_LIBRARY_PATH was incomplete since at least 5.0 (5.12 is broken, too) likewise ctrl surface path were outdated, etc. Prefer to use `gtk2_ardour/ardev_common.sh.in` as the central point to define environment variables for running Ardour from the source-tree. Other start scripts e.g. `vst/ardevst` already did this.
Diffstat (limited to 'headless')
-rwxr-xr-xheadless/hardbg11
-rwxr-xr-xheadless/hardev5
-rw-r--r--headless/hardev_common.sh.in39
-rwxr-xr-xheadless/harval10
-rw-r--r--headless/wscript23
5 files changed, 19 insertions, 69 deletions
diff --git a/headless/hardbg b/headless/hardbg
index ffab6221b0..816c8be185 100755
--- a/headless/hardbg
+++ b/headless/hardbg
@@ -1,5 +1,12 @@
#!/bin/sh
-. `dirname "$0"`/../build/headless/hardev_common_waf.sh
+TOP=`dirname "$0"`/..
+. $TOP/build/gtk2_ardour/ardev_common_waf.sh
LD_LIBRARY_PATH=$LD_LIBRARY_PATH
export ARDOUR_INSIDE_GDB=1
-exec gdb --args $TOP/$EXECUTABLE $@
+if test -n "`which gdb`"; then
+ exec gdb --args $TOP/build/headless/hardour-$ARDOURVERSION "$@"
+fi
+if test -n "`which lldb`"; then
+ exec lldb -- $TOP/build/headless/hardour-$ARDOURVERSION "$@"
+fi
+echo "neither gdb nor lldb was found."
diff --git a/headless/hardev b/headless/hardev
index 75c29e54de..b22f9c2552 100755
--- a/headless/hardev
+++ b/headless/hardev
@@ -1,4 +1,5 @@
#!/bin/sh
-. `dirname "$0"`/../build/headless/hardev_common_waf.sh
+TOP=`dirname "$0"`/..
+. $TOP/build/gtk2_ardour/ardev_common_waf.sh
export UBUNTU_MENUPROXY=""
-exec $TOP/$EXECUTABLE "$@"
+exec $TOP/build/headless/hardour-$ARDOURVERSION "$@"
diff --git a/headless/hardev_common.sh.in b/headless/hardev_common.sh.in
deleted file mode 100644
index 3af6c76efe..0000000000
--- a/headless/hardev_common.sh.in
+++ /dev/null
@@ -1,39 +0,0 @@
-TOP=`dirname "$0"`/..
-
-#export G_DEBUG=fatal_criticals
-
-libs=$TOP/@LIBS@
-
-#
-# when running ardev, the various parts of Ardour have not been consolidated into the locations that they
-# would normally end up after an install. We therefore need to set up environment variables so that we
-# can find all the components.
-#
-
-export ARDOUR_PATH=$TOP/gtk2_ardour/icons:$TOP/gtk2_ardour/pixmaps:$TOP/build/gtk2_ardour:$TOP/gtk2_ardour:.
-export ARDOUR_SURFACES_PATH=$libs/surfaces/osc:$libs/surfaces/generic_midi:$libs/surfaces/tranzport:$libs/surfaces/powermate:$libs/surfaces/mackie:$libs/surfaces/wiimote
-export ARDOUR_PANNER_PATH=$libs/panners
-export ARDOUR_DATA_PATH=$TOP:$TOP/build:$TOP/gtk2_ardour:$TOP/build/gtk2_ardour:.
-export ARDOUR_MIDIMAPS_PATH=$TOP/midi_maps:.
-export ARDOUR_MCP_PATH=$TOP/mcp:.
-export ARDOUR_EXPORT_FORMATS_PATH=$TOP/export:.
-export ARDOUR_BACKEND_PATH=$libs/backends/jack
-
-#
-# even though we set the above variables, ardour requires that these
-# two also be set. the above settings will override them.
-#
-
-export ARDOUR_CONFIG_PATH=$TOP:$TOP/gtk2_ardour:$TOP/build:$TOP/build/gtk2_ardour
-export ARDOUR_DLL_PATH=$libs
-
-export GTK_PATH=~/.ardour3:$libs/clearlooks-newer
-export VAMP_PATH=$libs/vamp-plugins${VAMP_PATH:+:$VAMP_PATH}
-
-export LD_LIBRARY_PATH=$libs/qm-dsp:$libs/vamp-sdk:$libs/surfaces:$libs/surfaces/control_protocol:$libs/ardour:$libs/midi++2:$libs/pbd:$libs/rubberband:$libs/soundtouch:$libs/gtkmm2ext:$libs/gnomecanvas:$libs/libsndfile:$libs/appleutility:$libs/taglib:$libs/evoral:$libs/evoral/src/libsmf:$libs/audiographer:$libs/temporal:$libs/libltc:$libs/canvas:$libs/ardouralsautil${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
-
-# DYLD_LIBRARY_PATH is for darwin.
-export DYLD_FALLBACK_LIBRARY_PATH=$LD_LIBRARY_PATH
-
-ARDOURVERSION=@VERSION@
-EXECUTABLE=@EXECUTABLE@
diff --git a/headless/harval b/headless/harval
index fa3430e684..14331e88eb 100755
--- a/headless/harval
+++ b/headless/harval
@@ -1,8 +1,12 @@
#!/bin/sh
-. `dirname "$0"`/../build/headless/hardev_common_waf.sh
-LD_LIBRARY_PATH=$LD_LIBRARY_PATH
+VALGRIND_OPTIONS="$VALGRIND_OPTIONS --num-callers=50"
+VALGRIND_OPTIONS="$VALGRIND_OPTIONS --error-limit=no"
+#VALGRIND_OPTIONS="$VALGRIND_OPTIONS --leak-check=full --leak-resolution=high"
+#VALGRIND_OPTIONS="$VALGRIND_OPTIONS --show-leak-kinds=all -v"
+#VALGRIND_OPTIONS="$VALGRIND_OPTIONS --log-file=/tmp/hardour-%p.log"
TOP=`dirname "$0"`/..
+. $TOP/build/gtk2_ardour/ardev_common_waf.sh
if uname | grep -q arwin; then
OBJSUPP="--suppressions=${TOP}/tools/objc.supp"
fi
@@ -12,4 +16,4 @@ exec valgrind --tool=memcheck \
--track-origins=yes \
--suppressions=${TOP}/tools/valgrind.supp \
$OBJSUPP \
- $TOP/$EXECUTABLE --novst "$@"
+ $TOP/build/headless/hardour-$ARDOURVERSION --novst "$@"
diff --git a/headless/wscript b/headless/wscript
index 80296a10de..0aea4751c2 100644
--- a/headless/wscript
+++ b/headless/wscript
@@ -74,26 +74,3 @@ def build(bld):
if bld.is_defined('NEED_INTL'):
obj.linkflags = ' -lintl'
-
- # Wrappers
-
- wrapper_subst_dict = {
- 'INSTALL_PREFIX' : bld.env['PREFIX'],
- 'LIBDIR' : os.path.normpath(bld.env['LIBDIR']),
- 'DATADIR' : os.path.normpath(bld.env['DATADIR']),
- 'CONFDIR' : os.path.normpath(bld.env['CONFDIR']),
- 'LIBS' : 'build/libs',
- 'VERSION' : bld.env['VERSION'],
- 'EXECUTABLE' : 'build/headless/hardour-' + str(bld.env['VERSION'])
- }
-
- def set_subst_dict(obj, dict):
- for i in dict:
- setattr(obj, i, dict[i])
-
- obj = bld(features = 'subst')
- obj.source = 'hardev_common.sh.in'
- obj.target = 'hardev_common_waf.sh'
- obj.chmod = Utils.O755
- obj.dict = wrapper_subst_dict
- set_subst_dict(obj, wrapper_subst_dict)