]> git.sesse.net Git - kdenlive/blobdiff - cmake/modules/FindLIBMLT.cmake
Copy the boolean heuristic detection from effects to transitions.
[kdenlive] / cmake / modules / FindLIBMLT.cmake
index dc344bcabfd6c16e950a2215055e97074b39a688..5f6c255383b2315f160e57ebc64bcca65d993ffe 100644 (file)
@@ -1,42 +1,72 @@
 #
-# Find the MLT includes and library
+# Find the MLT includes and libraries.
 #
 
-FIND_PROGRAM(MLT_CONFIG_EXECUTABLE mlt-config)
-EXEC_PROGRAM(${MLT_CONFIG_EXECUTABLE} ARGS --prefix OUTPUT_VARIABLE MLT_PATH )
-MESSAGE(STATUS "Found MLT INSTALL PATH: ${MLT_CONFIG_EXECUTABLE} , ${MLT_PATH}")
-SET(CMAKE_CXX_FLAGS -DMLT_PREFIX=\\\"\"${MLT_PATH}\"\\\")
+include(FindPkgConfig)
+pkg_check_modules(MLT mlt++)
+add_definitions(-DMLT_PREFIX=\\\"\"${MLT_PREFIX}\"\\\")
 
-FIND_PATH(LIBMLT_INCLUDE_DIR 
+find_path(LIBMLT_INCLUDE_DIR
   NAMES framework/mlt.h
-  PATHS ${MLT_PATH}/include/mlt /usr/local/include/mlt /usr/include/mlt
+  PATHS
+    ${MLT_INCLUDEDIR}/mlt
+    ${MLT_PREFIX}/include/mlt
+    /usr/local/include/mlt
+    /usr/include/mlt
   NO_DEFAULT_PATH
 )
 
-MESSAGE(STATUS "Found MLT INCLUDES: ${LIBMLT_INCLUDE_DIR}")
-
-FIND_LIBRARY(LIBMLT_LIBRARY
+find_library(LIBMLT_LIBRARY
   NAMES mlt
-  PATHS ${MLT_PATH}/lib /usr/lib /usr/local/lib
+  PATHS
+    ${MLT_LIBDIR}
+    ${MLT_PREFIX}/lib
+    /usr/local/lib
+    /usr/lib
+  NO_DEFAULT_PATH
+)
+
+find_path(LIBMLTPLUS_INCLUDE_DIR
+  NAMES mlt++/Mlt.h
+  PATHS
+    ${MLT_INCLUDEDIR}
+    ${MLT_PREFIX}/include
+    /usr/local/include
+    /usr/include
   NO_DEFAULT_PATH
 )
 
-MESSAGE(STATUS "Found MLT LIBR: ${LIBMLT_LIBRARY}")
-
-IF (LIBMLT_LIBRARY AND LIBMLT_INCLUDE_DIR)
-  SET( LIBMLT_FOUND 1 )
-  SET( LIBMLT_LIBRARIES ${LIBMLT_LIBRARY} )
-ELSE (LIBMLT_LIBRARY AND LIBMLT_INCLUDE_DIR)
-  SET( LIBMLT_FOUND 0 )
-ENDIF (LIBMLT_LIBRARY AND LIBMLT_INCLUDE_DIR)
-
-IF (LIBMLT_FOUND)
-  IF (NOT LIBMLT_FIND_QUIETLY)
-    MESSAGE(STATUS "Found MLT library: ${LIBMLT_LIBRARY}")
-  ENDIF (NOT LIBMLT_FIND_QUIETLY)
-ELSE (LIBMLT_FOUND)
-  IF (LIBMLT_FIND_REQUIRED)
-    MESSAGE(FATAL_ERROR "Could not find MLT library")
-  ENDIF (LIBMLT_FIND_REQUIRED)
-ENDIF (LIBMLT_FOUND)
+find_library(LIBMLTPLUS_LIBRARY
+  NAMES mlt++
+  PATHS
+    ${MLT_LIBDIR}
+    ${MLT_PREFIX}/lib
+    /usr/local/lib
+    /usr/lib
+  NO_DEFAULT_PATH
+)
+
+if(LIBMLT_LIBRARY AND LIBMLT_INCLUDE_DIR)
+  set(LIBMLT_FOUND 1)
+  set(LIBMLT_LIBRARIES ${LIBMLT_LIBRARY})
+else(LIBMLT_LIBRARY AND LIBMLT_INCLUDE_DIR)
+  set(LIBMLT_FOUND 0)
+endif(LIBMLT_LIBRARY AND LIBMLT_INCLUDE_DIR)
+
+if(LIBMLT_FOUND AND LIBMLTPLUS_LIBRARY AND LIBMLTPLUS_INCLUDE_DIR)
+  set(LIBMLT_FOUND 1)
+  set(LIBMLTPLUS_LIBRARIES ${LIBMLTPLUS_LIBRARY})
+else(LIBMLT_FOUND AND LIBMLTPLUS_LIBRARY AND LIBMLTPLUS_INCLUDE_DIR)
+  set(LIBMLT_FOUND 0)
+endif(LIBMLT_FOUND AND LIBMLTPLUS_LIBRARY AND LIBMLTPLUS_INCLUDE_DIR)
 
+if(LIBMLT_FOUND)
+  set(LIBMLT_VERSION ${MLT_VERSION})
+  if(NOT LIBMLT_FIND_QUIETLY)
+    message(STATUS "Found MLT++: ${LIBMLTPLUS_LIBRARY}")
+  endif(NOT LIBMLT_FIND_QUIETLY)
+else(LIBMLT_FOUND)
+  if(LIBMLT_FIND_REQUIRED)
+    message(FATAL_ERROR "Could not find MLT++")
+  endif(LIBMLT_FIND_REQUIRED)
+endif(LIBMLT_FOUND)