diff --git a/CMakeLists.txt b/CMakeLists.txt index 4c8e0c5bf..82b04686e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -318,6 +318,8 @@ ENDIF(WANT_SF2) # check for LV2 (this has an implicit dependency on RDF as far as I can tell) IF(WANT_LV2) CHECK_INCLUDE_FILES(lv2.h LMMS_HAVE_LV2CORE) + # compatibility for slv2 <= 0.6.2 + CHECK_INCLUDE_FILES(slv2/scalepoints.h LMMS_HAVE_SLV2_SCALEPOINTS_H) CHECK_LIBRARY_EXISTS(slv2 slv2_world_new "" LMMS_HAVE_SLV2) @@ -349,6 +351,7 @@ IF(WANT_LV2) FIND_LIBRARY(SLV2_LIBRARY NAMES slv2 PATH /usr/lib /usr/local/lib) FIND_LIBRARY(RDF_LIBRARY NAMES rdf PATH /usr/lib /usr/local/lib) SET(LMMS_SUPPORT_LV2 TRUE) + SET(LMMS_HAVE_LV2 TRUE) ENDIF("${STATUS_LV2}" STREQUAL "OK") ENDIF(WANT_LV2) diff --git a/include/lv2_2_lmms.h b/include/lv2_2_lmms.h index 1afc4af6e..3fd89a988 100644 --- a/include/lv2_2_lmms.h +++ b/include/lv2_2_lmms.h @@ -29,6 +29,7 @@ #include "lv2_manager.h" +#ifdef LMMS_HAVE_LV2 class EXPORT lv22LMMS : public lv2Manager { @@ -76,3 +77,5 @@ private: } ; #endif + +#endif diff --git a/include/lv2_manager.h b/include/lv2_manager.h index fcd9a0390..f6b879fd0 100644 --- a/include/lv2_manager.h +++ b/include/lv2_manager.h @@ -26,6 +26,8 @@ #ifndef _LV2_MANAGER_H #define _LV2_MANAGER_H +#ifdef LMMS_HAVE_LV2 + #include #include #include @@ -378,3 +380,5 @@ private: extern lv2Manager * static_lv2_manager; // There is only one of these... #endif + +#endif diff --git a/lmmsconfig.h.in b/lmmsconfig.h.in index b5d5c9cc9..4cb296cb7 100644 --- a/lmmsconfig.h.in +++ b/lmmsconfig.h.in @@ -10,6 +10,7 @@ #cmakedefine LMMS_HAVE_FFTW3F #cmakedefine LMMS_HAVE_FLUIDSYNTH #cmakedefine LMMS_HAVE_JACK +#cmakedefine LMMS_HAVE_LV2 #cmakedefine LMMS_HAVE_OGGVORBIS #cmakedefine LMMS_HAVE_OSS #cmakedefine LMMS_HAVE_PORTAUDIO @@ -42,6 +43,7 @@ #cmakedefine LMMS_HAVE_STRING_H #cmakedefine LMMS_HAVE_PROCESS_H #cmakedefine LMMS_HAVE_LOCALE_H +#cmakedefine LMMS_HAVE_SLV2_SCALEPOINTS_H /* defines for libsamplerate */ diff --git a/src/core/lv2_2_lmms.cpp b/src/core/lv2_2_lmms.cpp index 359d8e307..f486cedc0 100644 --- a/src/core/lv2_2_lmms.cpp +++ b/src/core/lv2_2_lmms.cpp @@ -27,6 +27,8 @@ #include "lv2_2_lmms.h" +#ifdef LMMS_HAVE_LV2 + lv22LMMS::lv22LMMS( void ) { l_sortable_plugin_t plugins = getSortedPlugins(); @@ -125,3 +127,5 @@ QString lv22LMMS::getShortName( const lv2_key_t & _key ) return name; } +#endif + diff --git a/src/core/lv2_manager.cpp b/src/core/lv2_manager.cpp index 4d5526e76..b80af46ff 100644 --- a/src/core/lv2_manager.cpp +++ b/src/core/lv2_manager.cpp @@ -34,6 +34,13 @@ #include "config_mgr.h" #include "lv2_manager.h" +#ifdef LMMS_HAVE_LV2 + +#ifdef LMMS_HAVE_SLV2_SCALEPOINTS_H +#include "slv2/scalepoints.h" +#endif + + lv2Manager * static_lv2_manager=(lv2Manager *)NULL; // There is only one of these... @@ -631,4 +638,5 @@ QString lv2Manager::getPortName( const lv2_key_t & _plugin, return QString(); } +#endif