From: John Emmas Date: Mon, 10 Mar 2014 14:33:15 +0000 (+0000) Subject: Transfer 'ladspa_search_path()' into 'libs/ardour/search_paths.cc' X-Git-Tag: 1.0.0~593 X-Git-Url: https://main.carlh.net/gitweb/?a=commitdiff_plain;h=ff053653e1110eb6082a8f68972cedd0afeeb989;p=ardour.git Transfer 'ladspa_search_path()' into 'libs/ardour/search_paths.cc' --- diff --git a/libs/ardour/ardour/ladspa_search_path.h b/libs/ardour/ardour/ladspa_search_path.h deleted file mode 100644 index bc184b5248..0000000000 --- a/libs/ardour/ardour/ladspa_search_path.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - Copyright (C) 2011 Tim Mayberry - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - -*/ - -#ifndef ARDOUR_LADSPA_SEARCH_PATH_INCLUDED -#define ARDOUR_LADSPA_SEARCH_PATH_INCLUDED - -#include "pbd/search_path.h" - -namespace ARDOUR { - - /** - * return a Searchpath containing directories in which to look for - * LADSPA plugins. - * - * If LADSPA_PATH is defined then the Searchpath returned - * will contain the directories specified in it as well as the - * user and system directories. - */ - PBD::Searchpath ladspa_search_path (); - -} // namespace ARDOUR - -#endif diff --git a/libs/ardour/ardour/search_paths.h b/libs/ardour/ardour/search_paths.h index 149f233f09..83f730c35f 100644 --- a/libs/ardour/ardour/search_paths.h +++ b/libs/ardour/ardour/search_paths.h @@ -53,6 +53,16 @@ namespace ARDOUR { */ LIBARDOUR_API PBD::Searchpath export_formats_search_path (); + /** + * return a Searchpath containing directories in which to look for + * LADSPA plugins. + * + * If LADSPA_PATH is defined then the Searchpath returned + * will contain the directories specified in it as well as the + * user and system directories. + */ + LIBARDOUR_API PBD::Searchpath ladspa_search_path (); + } // namespace ARDOUR #endif /* __libardour_search_paths_h__ */ diff --git a/libs/ardour/ladspa_search_path.cc b/libs/ardour/ladspa_search_path.cc deleted file mode 100644 index 49a2645f5d..0000000000 --- a/libs/ardour/ladspa_search_path.cc +++ /dev/null @@ -1,61 +0,0 @@ -/* - Copyright (C) 2011 Tim Mayberry - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - -*/ - -#include - -#include "pbd/pathexpand.h" - -#include "ardour/ladspa_search_path.h" -#include "ardour/directory_names.h" -#include "ardour/filesystem_paths.h" - -namespace { - const char * const ladspa_env_variable_name = "LADSPA_PATH"; -} // anonymous - -using namespace PBD; - -namespace ARDOUR { - -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; -} - -} // namespace ARDOUR diff --git a/libs/ardour/plugin_manager.cc b/libs/ardour/plugin_manager.cc index a07651bc6a..456cf42c9a 100644 --- a/libs/ardour/plugin_manager.cc +++ b/libs/ardour/plugin_manager.cc @@ -62,7 +62,7 @@ #include "ardour/plugin_manager.h" #include "ardour/rc_configuration.h" -#include "ardour/ladspa_search_path.h" +#include "ardour/search_paths.h" #include "ardour/vst_search_path.h" #ifdef LV2_SUPPORT diff --git a/libs/ardour/search_paths.cc b/libs/ardour/search_paths.cc index 0e268e03a1..45a2e13974 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,29 @@ 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; +} + } // namespace ARDOUR