diff options
author | Rolf Eike Beer <eike@sf-mail.de> | 2012-01-25 16:50:37 (GMT) |
---|---|---|
committer | Rolf Eike Beer <eike@sf-mail.de> | 2012-01-28 09:30:11 (GMT) |
commit | 1de14ec56e9e384b5da48fa902559a928c6ffec3 (patch) | |
tree | 76dc339914c88ac41a9f0c8548cc1bd581ea4e3b /Modules/FindALSA.cmake | |
parent | 731f996ce070bbba1b4913050497afa95436f2d2 (diff) | |
download | CMake-1de14ec56e9e384b5da48fa902559a928c6ffec3.zip CMake-1de14ec56e9e384b5da48fa902559a928c6ffec3.tar.gz CMake-1de14ec56e9e384b5da48fa902559a928c6ffec3.tar.bz2 |
FindALSA: support version selection
Diffstat (limited to 'Modules/FindALSA.cmake')
-rw-r--r-- | Modules/FindALSA.cmake | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/Modules/FindALSA.cmake b/Modules/FindALSA.cmake index af84f8c..ec6e3a8 100644 --- a/Modules/FindALSA.cmake +++ b/Modules/FindALSA.cmake @@ -8,6 +8,7 @@ # # ALSA_INCLUDE_DIR - where to find asoundlib.h, etc. # ALSA_LIBRARY - the asound library +# ALSA_VERSION_STRING - the version of alsa found (since CMake 2.8.8) # #============================================================================= @@ -33,10 +34,19 @@ find_library(ALSA_LIBRARY NAMES asound DOC "The ALSA (asound) library" ) +if(ALSA_INCLUDE_DIR AND EXISTS "${ALSA_INCLUDE_DIR}/version.h") + file(STRINGS "${ALSA_INCLUDE_DIR}/version.h" alsa_version_str REGEX "^#define[\t ]+SND_LIB_VERSION_STR[\t ]+\".*\"") + + string(REGEX REPLACE "^.*SND_LIB_VERSION_STR[\t ]+\"([^\"]*)\".*$" "\\1" ALSA_VERSION_STRING "${alsa_version_str}") + unset(alsa_version_str) +endif() + # handle the QUIETLY and REQUIRED arguments and set ALSA_FOUND to TRUE if # all listed variables are TRUE include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(ALSA DEFAULT_MSG ALSA_LIBRARY ALSA_INCLUDE_DIR) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(ALSA + REQUIRED_VARS ALSA_LIBRARY ALSA_INCLUDE_DIR + VERSION_VAR ALSA_VERSION_STRING) if(ALSA_FOUND) set( ALSA_LIBRARIES ${ALSA_LIBRARY} ) |