diff --git a/libs/ardour/plugin_manager.cc b/libs/ardour/plugin_manager.cc index 344b2ef9b6..b6100f74b5 100644 --- a/libs/ardour/plugin_manager.cc +++ b/libs/ardour/plugin_manager.cc @@ -116,12 +116,17 @@ PluginManager::PluginManager () string lrdf_path; #if defined WINDOWS_VST_SUPPORT || defined LXVST_SUPPORT + // source-tree (ardev, etc) PBD::Searchpath vstsp(Glib::build_filename(ARDOUR::ardour_dll_directory(), "fst")); + #ifdef PLATFORM_WINDOWS + // on windows the .exe needs to be in the same folder with libardour.dll vstsp += Glib::build_filename(g_win32_get_package_installation_directory_of_module (0), "bin"); #else - vstsp += Glib::getenv("PATH"); + // on Unices additional internal-use binaries are deployed to $libdir + vstsp += ARDOUR::ardour_dll_directory(); #endif + if (!PBD::find_file (vstsp, #ifdef PLATFORM_WINDOWS #ifdef DEBUGGABLE_SCANNER_APP diff --git a/libs/ardour/system_exec.cc b/libs/ardour/system_exec.cc index 75b20e4500..d83165252a 100644 --- a/libs/ardour/system_exec.cc +++ b/libs/ardour/system_exec.cc @@ -35,7 +35,10 @@ static char *vfork_exec_wrapper_path() { #else std::string vfork_exec_wrapper; if (!PBD::find_file ( - PBD::Searchpath(Glib::build_filename(ARDOUR::ardour_dll_directory(), "vfork")), + PBD::Searchpath( + ARDOUR::ardour_dll_directory() // deployed + + G_SEARCHPATH_SEPARATOR_S + Glib::build_filename(ARDOUR::ardour_dll_directory(), "vfork") // src, build (ardev, etc) + ), "ardour-exec-wrapper", vfork_exec_wrapper)) { PBD::fatal << "vfork exec wrapper 'ardour-exec-wrapper' was not found in $PATH." << endmsg; /* not reached */ diff --git a/libs/fst/wscript b/libs/fst/wscript index 91273f3d79..5eb1d512df 100644 --- a/libs/fst/wscript +++ b/libs/fst/wscript @@ -51,7 +51,7 @@ def build(bld): obj.source = 'scanner.wine' obj.target = 'ardour-vst-scanner' obj.chmod = Utils.O755 - obj.install_path = os.path.join(bld.env['LIBDIR'], 'fst') + obj.install_path = os.path.join(bld.env['LIBDIR']) obj.dict = { 'VERSION' : bld.env['VERSION'], } @@ -83,4 +83,4 @@ def build(bld): 'VST_SCANNER_APP', 'PACKAGE="' + I18N_PACKAGE + '"', ] - obj.install_path = os.path.join(bld.env['LIBDIR'], 'fst') + obj.install_path = os.path.join(bld.env['LIBDIR']) diff --git a/libs/vfork/wscript b/libs/vfork/wscript index 10f11149d8..8f4efbe0c7 100644 --- a/libs/vfork/wscript +++ b/libs/vfork/wscript @@ -21,7 +21,7 @@ def build(bld): obj = bld (features = 'c cprogram') obj.source = 'exec_wrapper.c' obj.target = 'ardour-exec-wrapper' - obj.install_path = os.path.join(bld.env['LIBDIR'], 'vfork') + obj.install_path = os.path.join(bld.env['LIBDIR']) obj.defines = [ '_POSIX_SOURCE', '_XOPEN_SOURCE=500', diff --git a/tools/linux_packaging/build b/tools/linux_packaging/build index 72b7bf3893..2225b2064f 100755 --- a/tools/linux_packaging/build +++ b/tools/linux_packaging/build @@ -418,7 +418,7 @@ fi # vfork wrapper if test -f $BUILD_ROOT/libs/vfork/ardour-exec-wrapper ; then - cp $BUILD_ROOT/libs/vfork/ardour-exec-wrapper $VFork + cp $BUILD_ROOT/libs/vfork/ardour-exec-wrapper $APPLIB fi # ALSA device reservation tool (if available) diff --git a/tools/osx_packaging/osx_build b/tools/osx_packaging/osx_build index ba503d14c7..3e9f2945a9 100755 --- a/tools/osx_packaging/osx_build +++ b/tools/osx_packaging/osx_build @@ -110,7 +110,6 @@ ExportFormats=$Shared/export Templates=$Shared/templates PatchFiles=$Shared/patchfiles MackieControl=$Shared/mcp -VFork=$Frameworks/vfork if [ x$PRINT_SYSDEPS != x ] ; then # @@ -147,7 +146,6 @@ mkdir -p $Frameworks/modules mkdir -p $Etc mkdir -p $MackieControl mkdir -p $PatchFiles -mkdir -p $VFork # maybe set variables env="" @@ -393,13 +391,13 @@ fi # VST scanner app and wrapper script, if they exist if test -d $BUILD_ROOT/libs/fst ; then - cp $BUILD_ROOT/libs/fst/ardour-vst-scanner* $Frameworks/ || true + cp $BUILD_ROOT/libs/fst/ardour-vst-scanner* $Frameworks/ fi # vfork wrapper if test -f $BUILD_ROOT/libs/vfork/ardour-exec-wrapper ; then mkdir -p $Frameworks/vfork - cp $BUILD_ROOT/libs/vfork/ardour-exec-wrapper $VFork + cp $BUILD_ROOT/libs/vfork/ardour-exec-wrapper $Frameworks/ fi