X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fsearch_paths.cc;h=0fc9f0c4f5fe29d9da64fcb3351c6e4970063d09;hb=8a44aa9aba635ea43429dc929ebcd0d3d57da23c;hp=0e268e03a1de41bb3f44a8cbde080baa46f179f2;hpb=d1fd112bdf9fe445604fdd4f5bc6ad7ff64d5594;p=ardour.git diff --git a/libs/ardour/search_paths.cc b/libs/ardour/search_paths.cc index 0e268e03a1..0fc9f0c4f5 100644 --- a/libs/ardour/search_paths.cc +++ b/libs/ardour/search_paths.cc @@ -20,6 +20,8 @@ #include +#include "pbd/pathexpand.h" + #include "ardour/search_paths.h" #include "ardour/directory_names.h" #include "ardour/filesystem_paths.h" @@ -28,6 +30,7 @@ namespace { const char * const backend_env_variable_name = "ARDOUR_BACKEND_PATH"; const char * const surfaces_env_variable_name = "ARDOUR_SURFACES_PATH"; const char * const export_env_variable_name = "ARDOUR_EXPORT_FORMATS_PATH"; + const char * const ladspa_env_variable_name = "LADSPA_PATH"; } // anonymous using namespace PBD; @@ -72,4 +75,38 @@ export_formats_search_path () return spath; } +Searchpath +ladspa_search_path () +{ + Searchpath spath_env (Glib::getenv(ladspa_env_variable_name)); + + Searchpath spath (user_config_directory ()); + + spath += ardour_dll_directory (); + spath.add_subdirectory_to_paths (ladspa_dir_name); + +#ifndef PLATFORM_WINDOWS + spath.push_back ("/usr/local/lib64/ladspa"); + spath.push_back ("/usr/local/lib/ladspa"); + spath.push_back ("/usr/lib64/ladspa"); + spath.push_back ("/usr/lib/ladspa"); +#endif + +#ifdef __APPLE__ + spath.push_back (path_expand ("~/Library/Audio/Plug-Ins/LADSPA")); + spath.push_back ("/Library/Audio/Plug-Ins/LADSPA"); +#endif + + return spath_env + spath; +} + +Searchpath +lv2_bundled_search_path () +{ + Searchpath spath( ardour_dll_directory () ); + spath.add_subdirectory_to_paths ("LV2"); + + return spath; +} + } // namespace ARDOUR