diff --git a/ext/lv2/gstlv2.c b/ext/lv2/gstlv2.c index 181f3ca5f6..705c4d404a 100644 --- a/ext/lv2/gstlv2.c +++ b/ext/lv2/gstlv2.c @@ -50,10 +50,24 @@ GST_DEBUG_CATEGORY (lv2_debug); #define GST_CAT_DEFAULT lv2_debug +#if defined (G_OS_WIN32) +#define GST_LV2_ENVVARS "APPDATA/LV2:COMMONPROGRAMFILES/LV2" +#define GST_LV2_DEFAULT_PATH NULL +#elif defined (HAVE_OSX) +#define GST_LV2_ENVVARS "HOME/Library/Audio/Plug-Ins/LV2:HOME/.lv2" #define GST_LV2_DEFAULT_PATH \ - "/usr/lib/lv2" G_SEARCHPATH_SEPARATOR_S \ - "/usr/local/lib/lv2" G_SEARCHPATH_SEPARATOR_S \ + "/usr/local/lib/lv2:/usr/lib/lv2:/Library/Audio/Plug-Ins/LV2" +#elif defined (G_OS_UNIX) +#define GST_LV2_ENVVARS "HOME/.lv2" +#define GST_LV2_DEFAULT_PATH \ + "/usr/lib/lv2:" \ + "/usr/lib64/lv2:" \ + "/usr/local/lib/lv2:" \ + "/usr/local/lib64/lv2:" \ LIBDIR "/lv2" +#else +#error "Unsupported OS" +#endif GstStructure *lv2_meta_all = NULL; @@ -255,7 +269,7 @@ plugin_init (GstPlugin * plugin) side_right_role = lilv_new_uri (world, LV2_PORT_GROUPS__sideRight); gst_plugin_add_dependency_simple (plugin, - "LV2_PATH", GST_LV2_DEFAULT_PATH, NULL, + "LV2_PATH:" GST_LV2_ENVVARS, GST_LV2_DEFAULT_PATH, NULL, GST_PLUGIN_DEPENDENCY_FLAG_RECURSE); /* ensure GstAudioChannelPosition type is registered */