diff options
-rw-r--r-- | modules/FindTaglib.cmake | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/modules/FindTaglib.cmake b/modules/FindTaglib.cmake index 82306883..35fd6b03 100644 --- a/modules/FindTaglib.cmake +++ b/modules/FindTaglib.cmake @@ -10,6 +10,10 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +if(NOT TAGLIB_MIN_VERSION) + set(TAGLIB_MIN_VERSION "1.4") +endif(NOT TAGLIB_MIN_VERSION) + IF(NOT WIN32) FIND_PROGRAM(TAGLIBCONFIG_EXECUTABLE NAMES taglib-config PATHS ${BIN_INSTALL_DIR} @@ -22,15 +26,23 @@ set(TAGLIB_CFLAGS) # if taglib-config has been found IF(TAGLIBCONFIG_EXECUTABLE) - EXEC_PROGRAM(${TAGLIBCONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_LIBRARIES) + EXEC_PROGRAM(${TAGLIBCONFIG_EXECUTABLE} ARGS --version RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_VERSION) + + if(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") + MESSAGE(STATUS "TagLib version not found: version searched :${TAGLIB_MIN_VERSION}, found ${TAGLIB_VERSION}") + SET(TAGLIB_FOUND FALSE) + else(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") + + EXEC_PROGRAM(${TAGLIBCONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_LIBRARIES) - EXEC_PROGRAM(${TAGLIBCONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_CFLAGS) + EXEC_PROGRAM(${TAGLIBCONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_CFLAGS) - IF(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) - SET(TAGLIB_FOUND TRUE) - message(STATUS "Found taglib: ${TAGLIB_LIBRARIES}") - ENDIF(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) + IF(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) + SET(TAGLIB_FOUND TRUE) + message(STATUS "Found taglib: ${TAGLIB_LIBRARIES}") + ENDIF(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) + endif(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") MARK_AS_ADVANCED(TAGLIB_CFLAGS TAGLIB_LIBRARIES) ELSE(TAGLIBCONFIG_EXECUTABLE) include(FindLibraryWithDebug) |