From a5796112cb89ea90e1f906aba3e2082c6db435bc Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Sat, 1 Sep 2012 14:10:59 +0200 Subject: FindSDL: Add version support for FindSDL_net --- Modules/FindSDL_net.cmake | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/Modules/FindSDL_net.cmake b/Modules/FindSDL_net.cmake index 7e90e90..39a2f68 100644 --- a/Modules/FindSDL_net.cmake +++ b/Modules/FindSDL_net.cmake @@ -3,6 +3,7 @@ # SDLNET_LIBRARY, the name of the library to link against # SDLNET_FOUND, if false, do not try to link against # SDLNET_INCLUDE_DIR, where to find the headers +# SDLNET_VERSION_STRING - human-readable string containing the version of SDL_net # # $SDLDIR is an environment variable that would # correspond to the ./configure --prefix=$SDLDIR @@ -57,7 +58,24 @@ find_library(SDLNET_LIBRARY /opt ) +if(SDLNET_INCLUDE_DIR AND EXISTS "${SDLNET_INCLUDE_DIR}/SDL_net.h") + file(STRINGS "${SDLNET_INCLUDE_DIR}/SDL_net.h" SDLNET_VERSION_MAJOR_LINE REGEX "^#define[ \t]+SDL_NET_MAJOR_VERSION[ \t]+[0-9]+$") + file(STRINGS "${SDLNET_INCLUDE_DIR}/SDL_net.h" SDLNET_VERSION_MINOR_LINE REGEX "^#define[ \t]+SDL_NET_MINOR_VERSION[ \t]+[0-9]+$") + file(STRINGS "${SDLNET_INCLUDE_DIR}/SDL_net.h" SDLNET_VERSION_PATCH_LINE REGEX "^#define[ \t]+SDL_NET_PATCHLEVEL[ \t]+[0-9]+$") + string(REGEX REPLACE "^#define[ \t]+SDL_NET_MAJOR_VERSION[ \t]+([0-9]+)$" "\\1" SDLNET_VERSION_MAJOR "${SDLNET_VERSION_MAJOR_LINE}") + string(REGEX REPLACE "^#define[ \t]+SDL_NET_MINOR_VERSION[ \t]+([0-9]+)$" "\\1" SDLNET_VERSION_MINOR "${SDLNET_VERSION_MINOR_LINE}") + string(REGEX REPLACE "^#define[ \t]+SDL_NET_PATCHLEVEL[ \t]+([0-9]+)$" "\\1" SDLNET_VERSION_PATCH "${SDLNET_VERSION_PATCH_LINE}") + set(SDLNET_VERSION_STRING ${SDLNET_VERSION_MAJOR}.${SDLNET_VERSION_MINOR}.${SDLNET_VERSION_PATCH}) + unset(SDLNET_VERSION_MAJOR_LINE) + unset(SDLNET_VERSION_MINOR_LINE) + unset(SDLNET_VERSION_PATCH_LINE) + unset(SDLNET_VERSION_MAJOR) + unset(SDLNET_VERSION_MINOR) + unset(SDLNET_VERSION_PATCH) +endif() + include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDLNET - REQUIRED_VARS SDLNET_LIBRARY SDLNET_INCLUDE_DIR) + REQUIRED_VARS SDLNET_LIBRARY SDLNET_INCLUDE_DIR + VERSION_VAR SDLNET_VERSION_STRING) -- cgit v0.12 From 34e1a2ae5680b9dad24b153a5ed36c813ae946e6 Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Tue, 4 Sep 2012 11:40:06 +0200 Subject: FindSDL: Version support for FindSDL_image --- Modules/FindSDL_image.cmake | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/Modules/FindSDL_image.cmake b/Modules/FindSDL_image.cmake index 8c9e891..ae2bc69 100644 --- a/Modules/FindSDL_image.cmake +++ b/Modules/FindSDL_image.cmake @@ -3,6 +3,7 @@ # SDLIMAGE_LIBRARY, the name of the library to link against # SDLIMAGE_FOUND, if false, do not try to link to SDL # SDLIMAGE_INCLUDE_DIR, where to find SDL/SDL.h +# SDLIMAGE_VERSION_STRING - human-readable string containing the version of SDL_image # # $SDLDIR is an environment variable that would # correspond to the ./configure --prefix=$SDLDIR @@ -58,7 +59,24 @@ find_library(SDLIMAGE_LIBRARY /opt ) +if(SDLIMAGE_INCLUDE_DIR AND EXISTS "${SDLIMAGE_INCLUDE_DIR}/SDL_image.h") + file(STRINGS "${SDLIMAGE_INCLUDE_DIR}/SDL_image.h" SDLIMAGE_VERSION_MAJOR_LINE REGEX "^#define[ \t]+SDL_IMAGE_MAJOR_VERSION[ \t]+[0-9]+$") + file(STRINGS "${SDLIMAGE_INCLUDE_DIR}/SDL_image.h" SDLIMAGE_VERSION_MINOR_LINE REGEX "^#define[ \t]+SDL_IMAGE_MINOR_VERSION[ \t]+[0-9]+$") + file(STRINGS "${SDLIMAGE_INCLUDE_DIR}/SDL_image.h" SDLIMAGE_VERSION_PATCH_LINE REGEX "^#define[ \t]+SDL_IMAGE_PATCHLEVEL[ \t]+[0-9]+$") + string(REGEX REPLACE "^#define[ \t]+SDL_IMAGE_MAJOR_VERSION[ \t]+([0-9]+)$" "\\1" SDLIMAGE_VERSION_MAJOR "${SDLIMAGE_VERSION_MAJOR_LINE}") + string(REGEX REPLACE "^#define[ \t]+SDL_IMAGE_MINOR_VERSION[ \t]+([0-9]+)$" "\\1" SDLIMAGE_VERSION_MINOR "${SDLIMAGE_VERSION_MINOR_LINE}") + string(REGEX REPLACE "^#define[ \t]+SDL_IMAGE_PATCHLEVEL[ \t]+([0-9]+)$" "\\1" SDLIMAGE_VERSION_PATCH "${SDLIMAGE_VERSION_PATCH_LINE}") + set(SDLIMAGE_VERSION_STRING ${SDLIMAGE_VERSION_MAJOR}.${SDLIMAGE_VERSION_MINOR}.${SDLIMAGE_VERSION_PATCH}) + unset(SDLIMAGE_VERSION_MAJOR_LINE) + unset(SDLIMAGE_VERSION_MINOR_LINE) + unset(SDLIMAGE_VERSION_PATCH_LINE) + unset(SDLIMAGE_VERSION_MAJOR) + unset(SDLIMAGE_VERSION_MINOR) + unset(SDLIMAGE_VERSION_PATCH) +endif() + include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDLIMAGE - REQUIRED_VARS SDLIMAGE_LIBRARY SDLIMAGE_INCLUDE_DIR) + REQUIRED_VARS SDLIMAGE_LIBRARY SDLIMAGE_INCLUDE_DIR + VERSION_VAR SDLIMAGE_VERSION_STRING) -- cgit v0.12 From ef5b439cc1363c0027266e59f2d26165f96b8368 Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Tue, 4 Sep 2012 12:32:18 +0200 Subject: FindSDL: Use prefix SDL_NET, because it matches the file name. Add new variables, keep the old ones for compatibility. Format the documentation header. --- Modules/FindSDL_net.cmake | 65 +++++++++++++++++++++++++++++------------------ 1 file changed, 40 insertions(+), 25 deletions(-) diff --git a/Modules/FindSDL_net.cmake b/Modules/FindSDL_net.cmake index 39a2f68..48ac775 100644 --- a/Modules/FindSDL_net.cmake +++ b/Modules/FindSDL_net.cmake @@ -1,9 +1,14 @@ -# Locate SDL_net library -# This module defines -# SDLNET_LIBRARY, the name of the library to link against -# SDLNET_FOUND, if false, do not try to link against -# SDLNET_INCLUDE_DIR, where to find the headers -# SDLNET_VERSION_STRING - human-readable string containing the version of SDL_net +# - Locate SDL_net library +# This module defines: +# SDL_NET_LIBRARIES, the name of the library to link against +# SDL_NET_INCLUDE_DIRS, where to find the headers +# SDL_NET_FOUND, if false, do not try to link against +# SDL_NET_VERSION_STRING - human-readable string containing the version of SDL_net +# +# For backward compatiblity the following variables are also set: +# SDLNET_LIBRARY (same value as SDL_NET_LIBRARIES) +# SDLNET_INCLUDE_DIR (same value as SDL_NET_INCLUDE_DIRS) +# SDLNET_FOUND (same value as SDL_NET_FOUND) # # $SDLDIR is an environment variable that would # correspond to the ./configure --prefix=$SDLDIR @@ -26,7 +31,7 @@ # (To distribute this file outside of CMake, substitute the full # License text for the above reference.) -find_path(SDLNET_INCLUDE_DIR SDL_net.h +find_path(SDL_NET_INCLUDE_DIR SDL_net.h HINTS ENV SDLNETDIR ENV SDLDIR @@ -43,7 +48,7 @@ find_path(SDLNET_INCLUDE_DIR SDL_net.h /opt/csw # Blastwave /opt ) -find_library(SDLNET_LIBRARY +find_library(SDL_NET_LIBRARY NAMES SDL_net HINTS ENV SDLNETDIR @@ -58,24 +63,34 @@ find_library(SDLNET_LIBRARY /opt ) -if(SDLNET_INCLUDE_DIR AND EXISTS "${SDLNET_INCLUDE_DIR}/SDL_net.h") - file(STRINGS "${SDLNET_INCLUDE_DIR}/SDL_net.h" SDLNET_VERSION_MAJOR_LINE REGEX "^#define[ \t]+SDL_NET_MAJOR_VERSION[ \t]+[0-9]+$") - file(STRINGS "${SDLNET_INCLUDE_DIR}/SDL_net.h" SDLNET_VERSION_MINOR_LINE REGEX "^#define[ \t]+SDL_NET_MINOR_VERSION[ \t]+[0-9]+$") - file(STRINGS "${SDLNET_INCLUDE_DIR}/SDL_net.h" SDLNET_VERSION_PATCH_LINE REGEX "^#define[ \t]+SDL_NET_PATCHLEVEL[ \t]+[0-9]+$") - string(REGEX REPLACE "^#define[ \t]+SDL_NET_MAJOR_VERSION[ \t]+([0-9]+)$" "\\1" SDLNET_VERSION_MAJOR "${SDLNET_VERSION_MAJOR_LINE}") - string(REGEX REPLACE "^#define[ \t]+SDL_NET_MINOR_VERSION[ \t]+([0-9]+)$" "\\1" SDLNET_VERSION_MINOR "${SDLNET_VERSION_MINOR_LINE}") - string(REGEX REPLACE "^#define[ \t]+SDL_NET_PATCHLEVEL[ \t]+([0-9]+)$" "\\1" SDLNET_VERSION_PATCH "${SDLNET_VERSION_PATCH_LINE}") - set(SDLNET_VERSION_STRING ${SDLNET_VERSION_MAJOR}.${SDLNET_VERSION_MINOR}.${SDLNET_VERSION_PATCH}) - unset(SDLNET_VERSION_MAJOR_LINE) - unset(SDLNET_VERSION_MINOR_LINE) - unset(SDLNET_VERSION_PATCH_LINE) - unset(SDLNET_VERSION_MAJOR) - unset(SDLNET_VERSION_MINOR) - unset(SDLNET_VERSION_PATCH) +if(SDL_NET_INCLUDE_DIR AND EXISTS "${SDL_NET_INCLUDE_DIR}/SDL_net.h") + file(STRINGS "${SDL_NET_INCLUDE_DIR}/SDL_net.h" SDL_NET_VERSION_MAJOR_LINE REGEX "^#define[ \t]+SDL_NET_MAJOR_VERSION[ \t]+[0-9]+$") + file(STRINGS "${SDL_NET_INCLUDE_DIR}/SDL_net.h" SDL_NET_VERSION_MINOR_LINE REGEX "^#define[ \t]+SDL_NET_MINOR_VERSION[ \t]+[0-9]+$") + file(STRINGS "${SDL_NET_INCLUDE_DIR}/SDL_net.h" SDL_NET_VERSION_PATCH_LINE REGEX "^#define[ \t]+SDL_NET_PATCHLEVEL[ \t]+[0-9]+$") + string(REGEX REPLACE "^#define[ \t]+SDL_NET_MAJOR_VERSION[ \t]+([0-9]+)$" "\\1" SDL_NET_VERSION_MAJOR "${SDL_NET_VERSION_MAJOR_LINE}") + string(REGEX REPLACE "^#define[ \t]+SDL_NET_MINOR_VERSION[ \t]+([0-9]+)$" "\\1" SDL_NET_VERSION_MINOR "${SDL_NET_VERSION_MINOR_LINE}") + string(REGEX REPLACE "^#define[ \t]+SDL_NET_PATCHLEVEL[ \t]+([0-9]+)$" "\\1" SDL_NET_VERSION_PATCH "${SDL_NET_VERSION_PATCH_LINE}") + set(SDL_NET_VERSION_STRING ${SDL_NET_VERSION_MAJOR}.${SDL_NET_VERSION_MINOR}.${SDL_NET_VERSION_PATCH}) + unset(SDL_NET_VERSION_MAJOR_LINE) + unset(SDL_NET_VERSION_MINOR_LINE) + unset(SDL_NET_VERSION_PATCH_LINE) + unset(SDL_NET_VERSION_MAJOR) + unset(SDL_NET_VERSION_MINOR) + unset(SDL_NET_VERSION_PATCH) endif() +set(SDL_NET_LIBRARIES ${SDL_NET_LIBRARY}) +set(SDL_NET_INCLUDE_DIRS ${SDL_NET_INCLUDE_DIR}) + include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDLNET - REQUIRED_VARS SDLNET_LIBRARY SDLNET_INCLUDE_DIR - VERSION_VAR SDLNET_VERSION_STRING) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL_net + REQUIRED_VARS SDL_NET_LIBRARIES SDL_NET_INCLUDE_DIRS + VERSION_VAR SDL_NET_VERSION_STRING) + +# for backward compatiblity +set(SDLNET_LIBRARY ${SDL_NET_LIBRARIES}) +set(SDLNET_INCLUDE_DIR ${SDL_NET_INCLUDE_DIRS}) +set(SDLNET_FOUND ${SDL_NET_FOUND}) + +mark_as_advanced(SDL_NET_LIBRARY SDL_NET_INCLUDE_DIR) -- cgit v0.12 From 2c3b8255c53d05c3cc8a9beb9f82072eda41e7e6 Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Tue, 4 Sep 2012 13:35:55 +0200 Subject: FindSDL: Use SDL_IMAGE prefix for varibales This makes FindPackageHandleStandardArgs and FeatureSummary work correctly. Keep old variables for compatibility. Furthermore, format the documentation. --- Modules/FindSDL_image.cmake | 65 ++++++++++++++++++++++++++++----------------- 1 file changed, 40 insertions(+), 25 deletions(-) diff --git a/Modules/FindSDL_image.cmake b/Modules/FindSDL_image.cmake index ae2bc69..d176691 100644 --- a/Modules/FindSDL_image.cmake +++ b/Modules/FindSDL_image.cmake @@ -1,9 +1,14 @@ -# Locate SDL_image library -# This module defines -# SDLIMAGE_LIBRARY, the name of the library to link against -# SDLIMAGE_FOUND, if false, do not try to link to SDL -# SDLIMAGE_INCLUDE_DIR, where to find SDL/SDL.h -# SDLIMAGE_VERSION_STRING - human-readable string containing the version of SDL_image +# - Locate SDL_image library +# This module defines: +# SDL_IMAGE_LIBRARIES, the name of the library to link against +# SDL_IMAGE_INCLUDE_DIRS, where to find the headers +# SDL_IMAGE_FOUND, if false, do not try to link against +# SDL_IMAGE_VERSION_STRING - human-readable string containing the version of SDL_image +# +# For backward compatiblity the following variables are also set: +# SDLIMAGE_LIBRARY (same value as SDL_IMAGE_LIBRARIES) +# SDLIMAGE_INCLUDE_DIR (same value as SDL_IMAGE_INCLUDE_DIRS) +# SDLIMAGE_FOUND (same value as SDL_IMAGE_FOUND) # # $SDLDIR is an environment variable that would # correspond to the ./configure --prefix=$SDLDIR @@ -26,7 +31,7 @@ # (To distribute this file outside of CMake, substitute the full # License text for the above reference.) -find_path(SDLIMAGE_INCLUDE_DIR SDL_image.h +find_path(SDL_IMAGE_INCLUDE_DIR SDL_image.h HINTS ENV SDLIMAGEDIR ENV SDLDIR @@ -44,7 +49,7 @@ find_path(SDLIMAGE_INCLUDE_DIR SDL_image.h /opt ) -find_library(SDLIMAGE_LIBRARY +find_library(SDL_IMAGE_LIBRARY NAMES SDL_image HINTS ENV SDLIMAGEDIR @@ -59,24 +64,34 @@ find_library(SDLIMAGE_LIBRARY /opt ) -if(SDLIMAGE_INCLUDE_DIR AND EXISTS "${SDLIMAGE_INCLUDE_DIR}/SDL_image.h") - file(STRINGS "${SDLIMAGE_INCLUDE_DIR}/SDL_image.h" SDLIMAGE_VERSION_MAJOR_LINE REGEX "^#define[ \t]+SDL_IMAGE_MAJOR_VERSION[ \t]+[0-9]+$") - file(STRINGS "${SDLIMAGE_INCLUDE_DIR}/SDL_image.h" SDLIMAGE_VERSION_MINOR_LINE REGEX "^#define[ \t]+SDL_IMAGE_MINOR_VERSION[ \t]+[0-9]+$") - file(STRINGS "${SDLIMAGE_INCLUDE_DIR}/SDL_image.h" SDLIMAGE_VERSION_PATCH_LINE REGEX "^#define[ \t]+SDL_IMAGE_PATCHLEVEL[ \t]+[0-9]+$") - string(REGEX REPLACE "^#define[ \t]+SDL_IMAGE_MAJOR_VERSION[ \t]+([0-9]+)$" "\\1" SDLIMAGE_VERSION_MAJOR "${SDLIMAGE_VERSION_MAJOR_LINE}") - string(REGEX REPLACE "^#define[ \t]+SDL_IMAGE_MINOR_VERSION[ \t]+([0-9]+)$" "\\1" SDLIMAGE_VERSION_MINOR "${SDLIMAGE_VERSION_MINOR_LINE}") - string(REGEX REPLACE "^#define[ \t]+SDL_IMAGE_PATCHLEVEL[ \t]+([0-9]+)$" "\\1" SDLIMAGE_VERSION_PATCH "${SDLIMAGE_VERSION_PATCH_LINE}") - set(SDLIMAGE_VERSION_STRING ${SDLIMAGE_VERSION_MAJOR}.${SDLIMAGE_VERSION_MINOR}.${SDLIMAGE_VERSION_PATCH}) - unset(SDLIMAGE_VERSION_MAJOR_LINE) - unset(SDLIMAGE_VERSION_MINOR_LINE) - unset(SDLIMAGE_VERSION_PATCH_LINE) - unset(SDLIMAGE_VERSION_MAJOR) - unset(SDLIMAGE_VERSION_MINOR) - unset(SDLIMAGE_VERSION_PATCH) +if(SDL_IMAGE_INCLUDE_DIR AND EXISTS "${SDL_IMAGE_INCLUDE_DIR}/SDL_image.h") + file(STRINGS "${SDL_IMAGE_INCLUDE_DIR}/SDL_image.h" SDL_IMAGE_VERSION_MAJOR_LINE REGEX "^#define[ \t]+SDL_IMAGE_MAJOR_VERSION[ \t]+[0-9]+$") + file(STRINGS "${SDL_IMAGE_INCLUDE_DIR}/SDL_image.h" SDL_IMAGE_VERSION_MINOR_LINE REGEX "^#define[ \t]+SDL_IMAGE_MINOR_VERSION[ \t]+[0-9]+$") + file(STRINGS "${SDL_IMAGE_INCLUDE_DIR}/SDL_image.h" SDL_IMAGE_VERSION_PATCH_LINE REGEX "^#define[ \t]+SDL_IMAGE_PATCHLEVEL[ \t]+[0-9]+$") + string(REGEX REPLACE "^#define[ \t]+SDL_IMAGE_MAJOR_VERSION[ \t]+([0-9]+)$" "\\1" SDL_IMAGE_VERSION_MAJOR "${SDL_IMAGE_VERSION_MAJOR_LINE}") + string(REGEX REPLACE "^#define[ \t]+SDL_IMAGE_MINOR_VERSION[ \t]+([0-9]+)$" "\\1" SDL_IMAGE_VERSION_MINOR "${SDL_IMAGE_VERSION_MINOR_LINE}") + string(REGEX REPLACE "^#define[ \t]+SDL_IMAGE_PATCHLEVEL[ \t]+([0-9]+)$" "\\1" SDL_IMAGE_VERSION_PATCH "${SDL_IMAGE_VERSION_PATCH_LINE}") + set(SDL_IMAGE_VERSION_STRING ${SDL_IMAGE_VERSION_MAJOR}.${SDL_IMAGE_VERSION_MINOR}.${SDL_IMAGE_VERSION_PATCH}) + unset(SDL_IMAGE_VERSION_MAJOR_LINE) + unset(SDL_IMAGE_VERSION_MINOR_LINE) + unset(SDL_IMAGE_VERSION_PATCH_LINE) + unset(SDL_IMAGE_VERSION_MAJOR) + unset(SDL_IMAGE_VERSION_MINOR) + unset(SDL_IMAGE_VERSION_PATCH) endif() +set(SDL_IMAGE_LIBRARIES ${SDL_IMAGE_LIBRARY}) +set(SDL_IMAGE_INCLUDE_DIRS ${SDL_IMAGE_INCLUDE_DIR}) + include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDLIMAGE - REQUIRED_VARS SDLIMAGE_LIBRARY SDLIMAGE_INCLUDE_DIR - VERSION_VAR SDLIMAGE_VERSION_STRING) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL_image + REQUIRED_VARS SDL_IMAGE_LIBRARIES SDL_IMAGE_INCLUDE_DIRS + VERSION_VAR SDL_IMAGE_VERSION_STRING) + +# for backward compatiblity +set(SDLIMAGE_LIBRARY ${SDL_IMAGE_LIBRARIES}) +set(SDLIMAGE_INCLUDE_DIR ${SDL_IMAGE_INCLUDE_DIRS}) +set(SDLIMAGE_FOUND ${SDL_IMAGE_FOUND}) + +mark_as_advanced(SDL_IMAGE_LIBRARY SDL_IMAGE_INCLUDE_DIR) -- cgit v0.12 From a5194e2ffb134b420c3d386b14d5c8031376dd47 Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Tue, 4 Sep 2012 15:43:07 +0200 Subject: FindSDL: Add "cmake_minimum_required" to "try_compile" project --- Modules/FindSDL_sound.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Modules/FindSDL_sound.cmake b/Modules/FindSDL_sound.cmake index a9153c1..0c43e5c 100644 --- a/Modules/FindSDL_sound.cmake +++ b/Modules/FindSDL_sound.cmake @@ -176,7 +176,8 @@ if(SDL_FOUND AND SDL_SOUND_INCLUDE_DIR AND SDL_SOUND_LIBRARY) # in the SDL_LIBRARY string after the "-framework". # But if I quote the stuff in INCLUDE_DIRECTORIES, it doesn't work. file(WRITE ${PROJECT_BINARY_DIR}/CMakeTmp/CMakeLists.txt - "project(DetermineSoundLibs) + "cmake_minimum_required(VERSION 2.8) + project(DetermineSoundLibs) include_directories(${SDL_INCLUDE_DIR} ${SDL_SOUND_INCLUDE_DIR}) add_executable(DetermineSoundLibs DetermineSoundLibs.c) target_link_libraries(DetermineSoundLibs ${TMP_TRY_LIBS})" -- cgit v0.12 From 776d3fe3251ccd136be726f1f2aeda80d85ef7c7 Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Tue, 4 Sep 2012 15:48:23 +0200 Subject: FindSDL: Format the documentation --- Modules/FindSDL_sound.cmake | 44 +++++++++++++++++++++----------------------- 1 file changed, 21 insertions(+), 23 deletions(-) diff --git a/Modules/FindSDL_sound.cmake b/Modules/FindSDL_sound.cmake index 0c43e5c..06b3d54 100644 --- a/Modules/FindSDL_sound.cmake +++ b/Modules/FindSDL_sound.cmake @@ -1,34 +1,33 @@ -# Locates the SDL_sound library - +# - Locates the SDL_sound library +# # This module depends on SDL being found and # must be called AFTER FindSDL.cmake is called. - +# # This module defines -# SDL_SOUND_INCLUDE_DIR, where to find SDL_sound.h -# SDL_SOUND_FOUND, if false, do not try to link to SDL -# SDL_SOUND_LIBRARIES, this contains the list of libraries that you need -# to link against. This is a read-only variable and is marked INTERNAL. -# SDL_SOUND_EXTRAS, this is an optional variable for you to add your own -# flags to SDL_SOUND_LIBRARIES. This is prepended to SDL_SOUND_LIBRARIES. -# This is available mostly for cases this module failed to anticipate for -# and you must add additional flags. This is marked as ADVANCED. - +# SDL_SOUND_INCLUDE_DIR, where to find SDL_sound.h +# SDL_SOUND_FOUND, if false, do not try to link to SDL_sound +# SDL_SOUND_LIBRARIES, this contains the list of libraries that you need +# to link against. This is a read-only variable and is marked INTERNAL. +# SDL_SOUND_EXTRAS, this is an optional variable for you to add your own +# flags to SDL_SOUND_LIBRARIES. This is prepended to SDL_SOUND_LIBRARIES. +# This is available mostly for cases this module failed to anticipate for +# and you must add additional flags. This is marked as ADVANCED. # # This module also defines (but you shouldn't need to use directly) -# SDL_SOUND_LIBRARY, the name of just the SDL_sound library you would link -# against. Use SDL_SOUND_LIBRARIES for you link instructions and not this one. +# SDL_SOUND_LIBRARY, the name of just the SDL_sound library you would link +# against. Use SDL_SOUND_LIBRARIES for you link instructions and not this one. # And might define the following as needed -# MIKMOD_LIBRARY -# MODPLUG_LIBRARY -# OGG_LIBRARY -# VORBIS_LIBRARY -# SMPEG_LIBRARY -# FLAC_LIBRARY -# SPEEX_LIBRARY +# MIKMOD_LIBRARY +# MODPLUG_LIBRARY +# OGG_LIBRARY +# VORBIS_LIBRARY +# SMPEG_LIBRARY +# FLAC_LIBRARY +# SPEEX_LIBRARY # # Typically, you should not use these variables directly, and you should use # SDL_SOUND_LIBRARIES which contains SDL_SOUND_LIBRARY and the other audio libraries -# (if needed) to successfully compile on your system . +# (if needed) to successfully compile on your system. # # Created by Eric Wing. # This module is a bit more complicated than the other FindSDL* family modules. @@ -54,7 +53,6 @@ # People will have to manually change the cache values of # SDL_LIBRARY to override this selectionor set the CMake environment # CMAKE_INCLUDE_PATH to modify the search paths. -# #============================================================================= # Copyright 2005-2009 Kitware, Inc. -- cgit v0.12 From cfe5b87e8c2827ec5f9df50137935b8bc68c2b45 Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Tue, 4 Sep 2012 15:55:26 +0200 Subject: FindSDL: Version support for FindSDL_sound --- Modules/FindSDL_sound.cmake | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/Modules/FindSDL_sound.cmake b/Modules/FindSDL_sound.cmake index 06b3d54..55d08dc 100644 --- a/Modules/FindSDL_sound.cmake +++ b/Modules/FindSDL_sound.cmake @@ -12,6 +12,7 @@ # flags to SDL_SOUND_LIBRARIES. This is prepended to SDL_SOUND_LIBRARIES. # This is available mostly for cases this module failed to anticipate for # and you must add additional flags. This is marked as ADVANCED. +# SDL_SOUND_VERSION_STRING, human-readable string containing the version of SDL_sound # # This module also defines (but you shouldn't need to use directly) # SDL_SOUND_LIBRARY, the name of just the SDL_sound library you would link @@ -375,7 +376,24 @@ if(SDL_FOUND AND SDL_SOUND_INCLUDE_DIR AND SDL_SOUND_LIBRARY) set(SDL_SOUND_LIBRARIES "${SDL_SOUND_EXTRAS} ${SDL_SOUND_LIBRARIES_TMP}" CACHE INTERNAL "SDL_sound and dependent libraries") endif() +if(SDL_SOUND_INCLUDE_DIR AND EXISTS "${SDL_SOUND_INCLUDE_DIR}/SDL_sound.h") + file(STRINGS "${SDL_SOUND_INCLUDE_DIR}/SDL_sound.h" SDL_SOUND_VERSION_MAJOR_LINE REGEX "^#define[ \t]+SOUND_VER_MAJOR[ \t]+[0-9]+$") + file(STRINGS "${SDL_SOUND_INCLUDE_DIR}/SDL_sound.h" SDL_SOUND_VERSION_MINOR_LINE REGEX "^#define[ \t]+SOUND_VER_MINOR[ \t]+[0-9]+$") + file(STRINGS "${SDL_SOUND_INCLUDE_DIR}/SDL_sound.h" SDL_SOUND_VERSION_PATCH_LINE REGEX "^#define[ \t]+SOUND_VER_PATCH[ \t]+[0-9]+$") + string(REGEX REPLACE "^#define[ \t]+SOUND_VER_MAJOR[ \t]+([0-9]+)$" "\\1" SDL_SOUND_VERSION_MAJOR "${SDL_SOUND_VERSION_MAJOR_LINE}") + string(REGEX REPLACE "^#define[ \t]+SOUND_VER_MINOR[ \t]+([0-9]+)$" "\\1" SDL_SOUND_VERSION_MINOR "${SDL_SOUND_VERSION_MINOR_LINE}") + string(REGEX REPLACE "^#define[ \t]+SOUND_VER_PATCH[ \t]+([0-9]+)$" "\\1" SDL_SOUND_VERSION_PATCH "${SDL_SOUND_VERSION_PATCH_LINE}") + set(SDL_SOUND_VERSION_STRING ${SDL_SOUND_VERSION_MAJOR}.${SDL_SOUND_VERSION_MINOR}.${SDL_SOUND_VERSION_PATCH}) + unset(SDL_SOUND_VERSION_MAJOR_LINE) + unset(SDL_SOUND_VERSION_MINOR_LINE) + unset(SDL_SOUND_VERSION_PATCH_LINE) + unset(SDL_SOUND_VERSION_MAJOR) + unset(SDL_SOUND_VERSION_MINOR) + unset(SDL_SOUND_VERSION_PATCH) +endif() + include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL_SOUND - REQUIRED_VARS SDL_SOUND_LIBRARIES SDL_SOUND_INCLUDE_DIR) + REQUIRED_VARS SDL_SOUND_LIBRARIES SDL_SOUND_INCLUDE_DIR + VERSION_VAR SDL_SOUND_VERSION_STRING) -- cgit v0.12 From 326becad31d011d52f46eb3232db2817e893f1dc Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Tue, 4 Sep 2012 15:56:19 +0200 Subject: FindSDL: Use same capitalization for FPHSA as file name --- Modules/FindSDL_sound.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modules/FindSDL_sound.cmake b/Modules/FindSDL_sound.cmake index 55d08dc..3891c8f 100644 --- a/Modules/FindSDL_sound.cmake +++ b/Modules/FindSDL_sound.cmake @@ -394,6 +394,6 @@ endif() include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL_SOUND +FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL_sound REQUIRED_VARS SDL_SOUND_LIBRARIES SDL_SOUND_INCLUDE_DIR VERSION_VAR SDL_SOUND_VERSION_STRING) -- cgit v0.12 From 03dd6cc4ffb2ac00f774fe24c5b0721b371d3c91 Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Tue, 4 Sep 2012 16:00:04 +0200 Subject: FindSDL: Pass SDL_SOUND_LIBRARY to FIND_PACKAGE_HANDLE_STANDARD_ARGS --- Modules/FindSDL_sound.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modules/FindSDL_sound.cmake b/Modules/FindSDL_sound.cmake index 3891c8f..074f65d 100644 --- a/Modules/FindSDL_sound.cmake +++ b/Modules/FindSDL_sound.cmake @@ -395,5 +395,5 @@ endif() include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL_sound - REQUIRED_VARS SDL_SOUND_LIBRARIES SDL_SOUND_INCLUDE_DIR + REQUIRED_VARS SDL_SOUND_LIBRARY SDL_SOUND_INCLUDE_DIR VERSION_VAR SDL_SOUND_VERSION_STRING) -- cgit v0.12 From c10b69152cd0ae34c45a70bd65771eb2aba7fcb6 Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Tue, 4 Sep 2012 16:03:18 +0200 Subject: FindSDL: Use SDL_MIXER prefix for variables --- Modules/FindSDL_mixer.cmake | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/Modules/FindSDL_mixer.cmake b/Modules/FindSDL_mixer.cmake index 97a8330..8e9fce6 100644 --- a/Modules/FindSDL_mixer.cmake +++ b/Modules/FindSDL_mixer.cmake @@ -25,7 +25,7 @@ # (To distribute this file outside of CMake, substitute the full # License text for the above reference.) -find_path(SDLMIXER_INCLUDE_DIR SDL_mixer.h +find_path(SDL_MIXER_INCLUDE_DIR SDL_mixer.h HINTS ENV SDLMIXERDIR ENV SDLDIR @@ -43,7 +43,7 @@ find_path(SDLMIXER_INCLUDE_DIR SDL_mixer.h /opt ) -find_library(SDLMIXER_LIBRARY +find_library(SDL_MIXER_LIBRARY NAMES SDL_mixer HINTS ENV SDLMIXERDIR @@ -58,7 +58,17 @@ find_library(SDLMIXER_LIBRARY /opt ) +set(SDL_MIXER_LIBRARIES ${SDL_MIXER_LIBRARY}) +set(SDL_MIXER_INCLUDE_DIRS ${SDL_MIXER_INCLUDE_DIR}) + include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDLMIXER - REQUIRED_VARS SDLMIXER_LIBRARY SDLMIXER_INCLUDE_DIR) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL_mixer + REQUIRED_VARS SDL_MIXER_LIBRARIES SDL_MIXER_INCLUDE_DIRS) + +# for backward compatiblity +set(SDLMIXER_LIBRARY ${SDL_MIXER_LIBRARIES}) +set(SDLMIXER_INCLUDE_DIR ${SDL_MIXER_INCLUDE_DIRS}) +set(SDLMIXER_FOUND ${SDL_MIXER_FOUND}) + +mark_as_advanced(SDL_MIXER_LIBRARY SDL_MIXER_INCLUDE_DIR) -- cgit v0.12 From d83f80d1744390a18780a178463724421fafc04a Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Tue, 4 Sep 2012 16:04:59 +0200 Subject: FindSDL: Add version support for FindSDL_mixer --- Modules/FindSDL_mixer.cmake | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/Modules/FindSDL_mixer.cmake b/Modules/FindSDL_mixer.cmake index 8e9fce6..3139ff2 100644 --- a/Modules/FindSDL_mixer.cmake +++ b/Modules/FindSDL_mixer.cmake @@ -58,13 +58,30 @@ find_library(SDL_MIXER_LIBRARY /opt ) +if(SDL_MIXER_INCLUDE_DIR AND EXISTS "${SDL_MIXER_INCLUDE_DIR}/SDL_mixer.h") + file(STRINGS "${SDL_MIXER_INCLUDE_DIR}/SDL_mixer.h" SDL_MIXER_VERSION_MAJOR_LINE REGEX "^#define[ \t]+SDL_MIXER_MAJOR_VERSION[ \t]+[0-9]+$") + file(STRINGS "${SDL_MIXER_INCLUDE_DIR}/SDL_mixer.h" SDL_MIXER_VERSION_MINOR_LINE REGEX "^#define[ \t]+SDL_MIXER_MINOR_VERSION[ \t]+[0-9]+$") + file(STRINGS "${SDL_MIXER_INCLUDE_DIR}/SDL_mixer.h" SDL_MIXER_VERSION_PATCH_LINE REGEX "^#define[ \t]+SDL_MIXER_PATCHLEVEL[ \t]+[0-9]+$") + string(REGEX REPLACE "^#define[ \t]+SDL_MIXER_MAJOR_VERSION[ \t]+([0-9]+)$" "\\1" SDL_MIXER_VERSION_MAJOR "${SDL_MIXER_VERSION_MAJOR_LINE}") + string(REGEX REPLACE "^#define[ \t]+SDL_MIXER_MINOR_VERSION[ \t]+([0-9]+)$" "\\1" SDL_MIXER_VERSION_MINOR "${SDL_MIXER_VERSION_MINOR_LINE}") + string(REGEX REPLACE "^#define[ \t]+SDL_MIXER_PATCHLEVEL[ \t]+([0-9]+)$" "\\1" SDL_MIXER_VERSION_PATCH "${SDL_MIXER_VERSION_PATCH_LINE}") + set(SDL_MIXER_VERSION_STRING ${SDL_MIXER_VERSION_MAJOR}.${SDL_MIXER_VERSION_MINOR}.${SDL_MIXER_VERSION_PATCH}) + unset(SDL_MIXER_VERSION_MAJOR_LINE) + unset(SDL_MIXER_VERSION_MINOR_LINE) + unset(SDL_MIXER_VERSION_PATCH_LINE) + unset(SDL_MIXER_VERSION_MAJOR) + unset(SDL_MIXER_VERSION_MINOR) + unset(SDL_MIXER_VERSION_PATCH) +endif() + set(SDL_MIXER_LIBRARIES ${SDL_MIXER_LIBRARY}) set(SDL_MIXER_INCLUDE_DIRS ${SDL_MIXER_INCLUDE_DIR}) include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL_mixer - REQUIRED_VARS SDL_MIXER_LIBRARIES SDL_MIXER_INCLUDE_DIRS) + REQUIRED_VARS SDL_MIXER_LIBRARIES SDL_MIXER_INCLUDE_DIRS + VERSION_VAR SDL_MIXER_VERSION_STRING) # for backward compatiblity set(SDLMIXER_LIBRARY ${SDL_MIXER_LIBRARIES}) -- cgit v0.12 From 9f5dbf4497c433217da2eaee89647584d9cbad67 Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Tue, 4 Sep 2012 16:07:10 +0200 Subject: FindSDL: Update documentation --- Modules/FindSDL_mixer.cmake | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/Modules/FindSDL_mixer.cmake b/Modules/FindSDL_mixer.cmake index 3139ff2..1d5839d 100644 --- a/Modules/FindSDL_mixer.cmake +++ b/Modules/FindSDL_mixer.cmake @@ -1,8 +1,14 @@ -# Locate SDL_mixer library -# This module defines -# SDLMIXER_LIBRARY, the name of the library to link against -# SDLMIXER_FOUND, if false, do not try to link to SDL -# SDLMIXER_INCLUDE_DIR, where to find SDL/SDL.h +# - Locate SDL_mixer library +# This module defines: +# SDL_MIXER_LIBRARIES, the name of the library to link against +# SDL_MIXER_INCLUDE_DIRS, where to find the headers +# SDL_MIXER_FOUND, if false, do not try to link against +# SDL_MIXER_VERSION_STRING - human-readable string containing the version of SDL_mixer +# +# For backward compatiblity the following variables are also set: +# SDLMIXER_LIBRARY (same value as SDL_MIXER_LIBRARIES) +# SDLMIXER_INCLUDE_DIR (same value as SDL_MIXER_INCLUDE_DIRS) +# SDLMIXER_FOUND (same value as SDL_MIXER_FOUND) # # $SDLDIR is an environment variable that would # correspond to the ./configure --prefix=$SDLDIR -- cgit v0.12 From a28c24726bc4a7882bdd65604359cb545d49c69b Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Tue, 4 Sep 2012 16:09:25 +0200 Subject: FindSDL: Use SDL_TTF prefix for variables --- Modules/FindSDL_ttf.cmake | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/Modules/FindSDL_ttf.cmake b/Modules/FindSDL_ttf.cmake index 1e68ccf..3821b36 100644 --- a/Modules/FindSDL_ttf.cmake +++ b/Modules/FindSDL_ttf.cmake @@ -25,7 +25,7 @@ # (To distribute this file outside of CMake, substitute the full # License text for the above reference.) -find_path(SDLTTF_INCLUDE_DIR SDL_ttf.h +find_path(SDL_TTF_INCLUDE_DIR SDL_ttf.h HINTS ENV SDLTTFDIR ENV SDLDIR @@ -43,7 +43,7 @@ find_path(SDLTTF_INCLUDE_DIR SDL_ttf.h /opt ) -find_library(SDLTTF_LIBRARY +find_library(SDL_TTF_LIBRARY NAMES SDL_ttf HINTS ENV SDLTTFDIR @@ -58,7 +58,17 @@ find_library(SDLTTF_LIBRARY PATH_SUFFIXES lib ) +set(SDL_TTF_LIBRARIES ${SDL_TTF_LIBRARY}) +set(SDL_TTF_INCLUDE_DIRS ${SDL_TTF_INCLUDE_DIR}) + include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDLTTF - REQUIRED_VARS SDLTTF_LIBRARY SDLTTF_INCLUDE_DIR) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL_ttf + REQUIRED_VARS SDL_TTF_LIBRARIES SDL_TTF_INCLUDE_DIRS) + +# for backward compatiblity +set(SDLTTF_LIBRARY ${SDL_TTF_LIBRARIES}) +set(SDLTTF_INCLUDE_DIR ${SDL_TTF_INCLUDE_DIRS}) +set(SDLTTF_FOUND ${SDL_TTF_FOUND}) + +mark_as_advanced(SDL_TTF_LIBRARY SDL_TTF_INCLUDE_DIR) -- cgit v0.12 From 4541c078645c367b36949b629ea33c17316cedeb Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Tue, 4 Sep 2012 16:11:10 +0200 Subject: FindSDL: Add version support for FindSDL_ttf --- Modules/FindSDL_ttf.cmake | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/Modules/FindSDL_ttf.cmake b/Modules/FindSDL_ttf.cmake index 3821b36..7ce775b 100644 --- a/Modules/FindSDL_ttf.cmake +++ b/Modules/FindSDL_ttf.cmake @@ -58,13 +58,30 @@ find_library(SDL_TTF_LIBRARY PATH_SUFFIXES lib ) +if(SDL_TTF_INCLUDE_DIR AND EXISTS "${SDL_TTF_INCLUDE_DIR}/SDL_ttf.h") + file(STRINGS "${SDL_TTF_INCLUDE_DIR}/SDL_ttf.h" SDL_TTF_VERSION_MAJOR_LINE REGEX "^#define[ \t]+SDL_TTF_MAJOR_VERSION[ \t]+[0-9]+$") + file(STRINGS "${SDL_TTF_INCLUDE_DIR}/SDL_ttf.h" SDL_TTF_VERSION_MINOR_LINE REGEX "^#define[ \t]+SDL_TTF_MINOR_VERSION[ \t]+[0-9]+$") + file(STRINGS "${SDL_TTF_INCLUDE_DIR}/SDL_ttf.h" SDL_TTF_VERSION_PATCH_LINE REGEX "^#define[ \t]+SDL_TTF_PATCHLEVEL[ \t]+[0-9]+$") + string(REGEX REPLACE "^#define[ \t]+SDL_TTF_MAJOR_VERSION[ \t]+([0-9]+)$" "\\1" SDL_TTF_VERSION_MAJOR "${SDL_TTF_VERSION_MAJOR_LINE}") + string(REGEX REPLACE "^#define[ \t]+SDL_TTF_MINOR_VERSION[ \t]+([0-9]+)$" "\\1" SDL_TTF_VERSION_MINOR "${SDL_TTF_VERSION_MINOR_LINE}") + string(REGEX REPLACE "^#define[ \t]+SDL_TTF_PATCHLEVEL[ \t]+([0-9]+)$" "\\1" SDL_TTF_VERSION_PATCH "${SDL_TTF_VERSION_PATCH_LINE}") + set(SDL_TTF_VERSION_STRING ${SDL_TTF_VERSION_MAJOR}.${SDL_TTF_VERSION_MINOR}.${SDL_TTF_VERSION_PATCH}) + unset(SDL_TTF_VERSION_MAJOR_LINE) + unset(SDL_TTF_VERSION_MINOR_LINE) + unset(SDL_TTF_VERSION_PATCH_LINE) + unset(SDL_TTF_VERSION_MAJOR) + unset(SDL_TTF_VERSION_MINOR) + unset(SDL_TTF_VERSION_PATCH) +endif() + set(SDL_TTF_LIBRARIES ${SDL_TTF_LIBRARY}) set(SDL_TTF_INCLUDE_DIRS ${SDL_TTF_INCLUDE_DIR}) include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL_ttf - REQUIRED_VARS SDL_TTF_LIBRARIES SDL_TTF_INCLUDE_DIRS) + REQUIRED_VARS SDL_TTF_LIBRARIES SDL_TTF_INCLUDE_DIRS + VERSION_VAR SDL_TTF_VERSION_STRING) # for backward compatiblity set(SDLTTF_LIBRARY ${SDL_TTF_LIBRARIES}) -- cgit v0.12 From 22154c7fc23e32c97952e368f7437999576ea082 Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Tue, 4 Sep 2012 16:12:13 +0200 Subject: FindSDL: Update documentation --- Modules/FindSDL_ttf.cmake | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/Modules/FindSDL_ttf.cmake b/Modules/FindSDL_ttf.cmake index 7ce775b..3a7027d 100644 --- a/Modules/FindSDL_ttf.cmake +++ b/Modules/FindSDL_ttf.cmake @@ -1,8 +1,14 @@ -# Locate SDL_ttf library -# This module defines -# SDLTTF_LIBRARY, the name of the library to link against -# SDLTTF_FOUND, if false, do not try to link to SDL -# SDLTTF_INCLUDE_DIR, where to find SDL/SDL.h +# - Locate SDL_ttf library +# This module defines: +# SDL_TTF_LIBRARIES, the name of the library to link against +# SDL_TTF_INCLUDE_DIRS, where to find the headers +# SDL_TTF_FOUND, if false, do not try to link against +# SDL_TTF_VERSION_STRING - human-readable string containing the version of SDL_ttf +# +# For backward compatiblity the following variables are also set: +# SDLTTF_LIBRARY (same value as SDL_TTF_LIBRARIES) +# SDLTTF_INCLUDE_DIR (same value as SDL_TTF_INCLUDE_DIRS) +# SDLTTF_FOUND (same value as SDL_TTF_FOUND) # # $SDLDIR is an environment variable that would # correspond to the ./configure --prefix=$SDLDIR -- cgit v0.12 From 61a566c02a9d611a7c7c38f888745405ad952735 Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Tue, 4 Sep 2012 16:16:20 +0200 Subject: FindSDL: Format documentation --- Modules/FindSDL.cmake | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/Modules/FindSDL.cmake b/Modules/FindSDL.cmake index 487c5d3..22a71b3 100644 --- a/Modules/FindSDL.cmake +++ b/Modules/FindSDL.cmake @@ -1,16 +1,16 @@ -# Locate SDL library +# - Locate SDL library # This module defines -# SDL_LIBRARY, the name of the library to link against -# SDL_FOUND, if false, do not try to link to SDL -# SDL_INCLUDE_DIR, where to find SDL.h +# SDL_LIBRARY, the name of the library to link against +# SDL_FOUND, if false, do not try to link to SDL +# SDL_INCLUDE_DIR, where to find SDL.h # # This module responds to the the flag: -# SDL_BUILDING_LIBRARY -# If this is defined, then no SDL_main will be linked in because -# only applications need main(). -# Otherwise, it is assumed you are building an application and this -# module will attempt to locate and set the the proper link flags -# as part of the returned SDL_LIBRARY variable. +# SDL_BUILDING_LIBRARY +# If this is defined, then no SDL_main will be linked in because +# only applications need main(). +# Otherwise, it is assumed you are building an application and this +# module will attempt to locate and set the the proper link flags +# as part of the returned SDL_LIBRARY variable. # # Don't forget to include SDLmain.h and SDLmain.m your project for the # OS X framework based version. (Other versions link to -lSDLmain which -- cgit v0.12 From 020d2131ed53444835f53cdc3d32717121fe162f Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Tue, 4 Sep 2012 16:21:16 +0200 Subject: FindSDL: Add version support --- Modules/FindSDL.cmake | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/Modules/FindSDL.cmake b/Modules/FindSDL.cmake index 22a71b3..9fb5002 100644 --- a/Modules/FindSDL.cmake +++ b/Modules/FindSDL.cmake @@ -3,6 +3,7 @@ # SDL_LIBRARY, the name of the library to link against # SDL_FOUND, if false, do not try to link to SDL # SDL_INCLUDE_DIR, where to find SDL.h +# SDL_VERSION_STRING, human-readable string containing the version of SDL # # This module responds to the the flag: # SDL_BUILDING_LIBRARY @@ -167,7 +168,24 @@ if(SDL_LIBRARY_TEMP) set(SDL_LIBRARY_TEMP "${SDL_LIBRARY_TEMP}" CACHE INTERNAL "") endif() +if(SDL_INCLUDE_DIR AND EXISTS "${SDL_INCLUDE_DIR}/SDL_version.h") + file(STRINGS "${SDL_INCLUDE_DIR}/SDL_version.h" SDL_VERSION_MAJOR_LINE REGEX "^#define[ \t]+SDL_MAJOR_VERSION[ \t]+[0-9]+$") + file(STRINGS "${SDL_INCLUDE_DIR}/SDL_version.h" SDL_VERSION_MINOR_LINE REGEX "^#define[ \t]+SDL_MINOR_VERSION[ \t]+[0-9]+$") + file(STRINGS "${SDL_INCLUDE_DIR}/SDL_version.h" SDL_VERSION_PATCH_LINE REGEX "^#define[ \t]+SDL_PATCHLEVEL[ \t]+[0-9]+$") + string(REGEX REPLACE "^#define[ \t]+SDL_MAJOR_VERSION[ \t]+([0-9]+)$" "\\1" SDL_VERSION_MAJOR "${SDL_VERSION_MAJOR_LINE}") + string(REGEX REPLACE "^#define[ \t]+SDL_MINOR_VERSION[ \t]+([0-9]+)$" "\\1" SDL_VERSION_MINOR "${SDL_VERSION_MINOR_LINE}") + string(REGEX REPLACE "^#define[ \t]+SDL_PATCHLEVEL[ \t]+([0-9]+)$" "\\1" SDL_VERSION_PATCH "${SDL_VERSION_PATCH_LINE}") + set(SDL_VERSION_STRING ${SDL_VERSION_MAJOR}.${SDL_VERSION_MINOR}.${SDL_VERSION_PATCH}) + unset(SDL_VERSION_MAJOR_LINE) + unset(SDL_VERSION_MINOR_LINE) + unset(SDL_VERSION_PATCH_LINE) + unset(SDL_VERSION_MAJOR) + unset(SDL_VERSION_MINOR) + unset(SDL_VERSION_PATCH) +endif() + include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL - REQUIRED_VARS SDL_LIBRARY SDL_INCLUDE_DIR) + REQUIRED_VARS SDL_LIBRARY SDL_INCLUDE_DIR + VERSION_VAR SDL_VERSION_STRING) -- cgit v0.12 From 38a0f715745257fda16dd748d046fa549a9192d2 Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Tue, 4 Sep 2012 16:59:23 +0200 Subject: FindSDL: Add my copyright tag to all FindSDL_* modules --- Modules/FindSDL.cmake | 1 + Modules/FindSDL_image.cmake | 1 + Modules/FindSDL_mixer.cmake | 1 + Modules/FindSDL_net.cmake | 1 + Modules/FindSDL_sound.cmake | 1 + Modules/FindSDL_ttf.cmake | 1 + 6 files changed, 6 insertions(+) diff --git a/Modules/FindSDL.cmake b/Modules/FindSDL.cmake index 9fb5002..1f5e780 100644 --- a/Modules/FindSDL.cmake +++ b/Modules/FindSDL.cmake @@ -55,6 +55,7 @@ #============================================================================= # Copyright 2003-2009 Kitware, Inc. +# Copyright 2012 Benjamin Eikel # # Distributed under the OSI-approved BSD License (the "License"); # see accompanying file Copyright.txt for details. diff --git a/Modules/FindSDL_image.cmake b/Modules/FindSDL_image.cmake index d176691..f54180d 100644 --- a/Modules/FindSDL_image.cmake +++ b/Modules/FindSDL_image.cmake @@ -20,6 +20,7 @@ #============================================================================= # Copyright 2005-2009 Kitware, Inc. +# Copyright 2012 Benjamin Eikel # # Distributed under the OSI-approved BSD License (the "License"); # see accompanying file Copyright.txt for details. diff --git a/Modules/FindSDL_mixer.cmake b/Modules/FindSDL_mixer.cmake index 1d5839d..7a935c4 100644 --- a/Modules/FindSDL_mixer.cmake +++ b/Modules/FindSDL_mixer.cmake @@ -20,6 +20,7 @@ #============================================================================= # Copyright 2005-2009 Kitware, Inc. +# Copyright 2012 Benjamin Eikel # # Distributed under the OSI-approved BSD License (the "License"); # see accompanying file Copyright.txt for details. diff --git a/Modules/FindSDL_net.cmake b/Modules/FindSDL_net.cmake index 48ac775..59a5d67 100644 --- a/Modules/FindSDL_net.cmake +++ b/Modules/FindSDL_net.cmake @@ -20,6 +20,7 @@ #============================================================================= # Copyright 2005-2009 Kitware, Inc. +# Copyright 2012 Benjamin Eikel # # Distributed under the OSI-approved BSD License (the "License"); # see accompanying file Copyright.txt for details. diff --git a/Modules/FindSDL_sound.cmake b/Modules/FindSDL_sound.cmake index 074f65d..7c4b04e 100644 --- a/Modules/FindSDL_sound.cmake +++ b/Modules/FindSDL_sound.cmake @@ -57,6 +57,7 @@ #============================================================================= # Copyright 2005-2009 Kitware, Inc. +# Copyright 2012 Benjamin Eikel # # Distributed under the OSI-approved BSD License (the "License"); # see accompanying file Copyright.txt for details. diff --git a/Modules/FindSDL_ttf.cmake b/Modules/FindSDL_ttf.cmake index 3a7027d..533b59f 100644 --- a/Modules/FindSDL_ttf.cmake +++ b/Modules/FindSDL_ttf.cmake @@ -20,6 +20,7 @@ #============================================================================= # Copyright 2005-2009 Kitware, Inc. +# Copyright 2012 Benjamin Eikel # # Distributed under the OSI-approved BSD License (the "License"); # see accompanying file Copyright.txt for details. -- cgit v0.12 From 9ed24c5316fc4e9b56e3b491dee2f88b2cbb6f17 Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Tue, 4 Sep 2012 17:20:37 +0200 Subject: FindSDL: Remove from find_... calls PATHS that are set by default Use PATH_SUFFIXES to add SDL parts to standard paths. --- Modules/FindSDL.cmake | 19 +------------------ Modules/FindSDL_image.cmake | 21 +-------------------- Modules/FindSDL_mixer.cmake | 21 +-------------------- Modules/FindSDL_net.cmake | 22 ++-------------------- Modules/FindSDL_sound.cmake | 19 +------------------ Modules/FindSDL_ttf.cmake | 21 +-------------------- 6 files changed, 7 insertions(+), 116 deletions(-) diff --git a/Modules/FindSDL.cmake b/Modules/FindSDL.cmake index 1f5e780..5cc219f 100644 --- a/Modules/FindSDL.cmake +++ b/Modules/FindSDL.cmake @@ -70,18 +70,7 @@ find_path(SDL_INCLUDE_DIR SDL.h HINTS ENV SDLDIR - PATH_SUFFIXES include/SDL include - PATHS - ~/Library/Frameworks - /Library/Frameworks - /usr/local/include/SDL12 - /usr/local/include/SDL11 # FreeBSD ports - /usr/include/SDL12 - /usr/include/SDL11 - /sw # Fink - /opt/local # DarwinPorts - /opt/csw # Blastwave - /opt + PATH_SUFFIXES SDL SDL12 SDL11 ) # SDL-1.1 is the name used by FreeBSD ports... @@ -90,12 +79,6 @@ find_library(SDL_LIBRARY_TEMP NAMES SDL SDL-1.1 HINTS ENV SDLDIR - PATH_SUFFIXES lib - PATHS - /sw - /opt/local - /opt/csw - /opt ) if(NOT SDL_BUILDING_LIBRARY) diff --git a/Modules/FindSDL_image.cmake b/Modules/FindSDL_image.cmake index f54180d..e3d5761 100644 --- a/Modules/FindSDL_image.cmake +++ b/Modules/FindSDL_image.cmake @@ -36,18 +36,7 @@ find_path(SDL_IMAGE_INCLUDE_DIR SDL_image.h HINTS ENV SDLIMAGEDIR ENV SDLDIR - PATH_SUFFIXES include include/SDL - PATHS - ~/Library/Frameworks - /Library/Frameworks - /usr/local/include/SDL12 - /usr/local/include/SDL11 # FreeBSD ports - /usr/include/SDL12 - /usr/include/SDL11 - /sw # Fink - /opt/local # DarwinPorts - /opt/csw # Blastwave - /opt + PATH_SUFFIXES SDL SDL12 SDL11 ) find_library(SDL_IMAGE_LIBRARY @@ -55,14 +44,6 @@ find_library(SDL_IMAGE_LIBRARY HINTS ENV SDLIMAGEDIR ENV SDLDIR - PATH_SUFFIXES lib - PATHS - ~/Library/Frameworks - /Library/Frameworks - /sw - /opt/local - /opt/csw - /opt ) if(SDL_IMAGE_INCLUDE_DIR AND EXISTS "${SDL_IMAGE_INCLUDE_DIR}/SDL_image.h") diff --git a/Modules/FindSDL_mixer.cmake b/Modules/FindSDL_mixer.cmake index 7a935c4..61fe1ae 100644 --- a/Modules/FindSDL_mixer.cmake +++ b/Modules/FindSDL_mixer.cmake @@ -36,18 +36,7 @@ find_path(SDL_MIXER_INCLUDE_DIR SDL_mixer.h HINTS ENV SDLMIXERDIR ENV SDLDIR - PATH_SUFFIXES include include/SDL - PATHS - ~/Library/Frameworks - /Library/Frameworks - /usr/local/include/SDL12 - /usr/local/include/SDL11 # FreeBSD ports - /usr/include/SDL12 - /usr/include/SDL11 - /sw # Fink - /opt/local # DarwinPorts - /opt/csw # Blastwave - /opt + PATH_SUFFIXES SDL SDL12 SDL11 ) find_library(SDL_MIXER_LIBRARY @@ -55,14 +44,6 @@ find_library(SDL_MIXER_LIBRARY HINTS ENV SDLMIXERDIR ENV SDLDIR - PATH_SUFFIXES lib - PATHS - ~/Library/Frameworks - /Library/Frameworks - /sw - /opt/local - /opt/csw - /opt ) if(SDL_MIXER_INCLUDE_DIR AND EXISTS "${SDL_MIXER_INCLUDE_DIR}/SDL_mixer.h") diff --git a/Modules/FindSDL_net.cmake b/Modules/FindSDL_net.cmake index 59a5d67..954c81d 100644 --- a/Modules/FindSDL_net.cmake +++ b/Modules/FindSDL_net.cmake @@ -36,32 +36,14 @@ find_path(SDL_NET_INCLUDE_DIR SDL_net.h HINTS ENV SDLNETDIR ENV SDLDIR - PATH_SUFFIXES include include/SDL - PATHS - ~/Library/Frameworks - /Library/Frameworks - /usr/local/include/SDL12 - /usr/local/include/SDL11 # FreeBSD ports - /usr/include/SDL12 - /usr/include/SDL11 - /sw # Fink - /opt/local # DarwinPorts - /opt/csw # Blastwave - /opt + PATH_SUFFIXES SDL SDL12 SDL11 ) + find_library(SDL_NET_LIBRARY NAMES SDL_net HINTS ENV SDLNETDIR ENV SDLDIR - PATH_SUFFIXES lib - PATHS - ~/Library/Frameworks - /Library/Frameworks - /sw - /opt/local - /opt/csw - /opt ) if(SDL_NET_INCLUDE_DIR AND EXISTS "${SDL_NET_INCLUDE_DIR}/SDL_net.h") diff --git a/Modules/FindSDL_sound.cmake b/Modules/FindSDL_sound.cmake index 7c4b04e..5ff50be 100644 --- a/Modules/FindSDL_sound.cmake +++ b/Modules/FindSDL_sound.cmake @@ -77,17 +77,7 @@ find_path(SDL_SOUND_INCLUDE_DIR SDL_sound.h HINTS ENV SDLSOUNDDIR ENV SDLDIR - PATH_SUFFIXES - include include/SDL - PATHS - /usr/local/include/SDL12 - /usr/local/include/SDL11 # FreeBSD ports - /usr/include/SDL12 - /usr/include/SDL11 - /sw # Fink - /opt/local # DarwinPorts - /opt/csw # Blastwave - /opt + PATH_SUFFIXES SDL SDL12 SDL11 ) find_library(SDL_SOUND_LIBRARY @@ -95,13 +85,6 @@ find_library(SDL_SOUND_LIBRARY HINTS ENV SDLSOUNDDIR ENV SDLDIR - PATH_SUFFIXES - lib - PATHS - /sw - /opt/local - /opt/csw - /opt ) if(SDL_FOUND AND SDL_SOUND_INCLUDE_DIR AND SDL_SOUND_LIBRARY) diff --git a/Modules/FindSDL_ttf.cmake b/Modules/FindSDL_ttf.cmake index 533b59f..c8b7a77 100644 --- a/Modules/FindSDL_ttf.cmake +++ b/Modules/FindSDL_ttf.cmake @@ -36,18 +36,7 @@ find_path(SDL_TTF_INCLUDE_DIR SDL_ttf.h HINTS ENV SDLTTFDIR ENV SDLDIR - PATH_SUFFIXES include include/SDL - PATHS - ~/Library/Frameworks - /Library/Frameworks - /usr/local/include/SDL12 - /usr/local/include/SDL11 # FreeBSD ports - /usr/include/SDL12 - /usr/include/SDL11 - /sw # Fink - /opt/local # DarwinPorts - /opt/csw # Blastwave - /opt + PATH_SUFFIXES SDL SDL12 SDL11 ) find_library(SDL_TTF_LIBRARY @@ -55,14 +44,6 @@ find_library(SDL_TTF_LIBRARY HINTS ENV SDLTTFDIR ENV SDLDIR - PATHS - ~/Library/Frameworks - /Library/Frameworks - /sw - /opt/local - /opt/csw - /opt - PATH_SUFFIXES lib ) if(SDL_TTF_INCLUDE_DIR AND EXISTS "${SDL_TTF_INCLUDE_DIR}/SDL_ttf.h") -- cgit v0.12 From 68c6b134d0d994cacda7aa3cb92e930df42d6e23 Mon Sep 17 00:00:00 2001 From: Benjamin Eikel Date: Sun, 23 Sep 2012 13:53:23 +0200 Subject: FindSDL: Stay compatible with old input variables Suggested-by: David Cole --- Modules/FindSDL_image.cmake | 8 ++++++++ Modules/FindSDL_mixer.cmake | 8 ++++++++ Modules/FindSDL_net.cmake | 8 ++++++++ Modules/FindSDL_ttf.cmake | 8 ++++++++ 4 files changed, 32 insertions(+) diff --git a/Modules/FindSDL_image.cmake b/Modules/FindSDL_image.cmake index e3d5761..4cae032 100644 --- a/Modules/FindSDL_image.cmake +++ b/Modules/FindSDL_image.cmake @@ -32,6 +32,10 @@ # (To distribute this file outside of CMake, substitute the full # License text for the above reference.) +if(NOT SDL_IMAGE_INCLUDE_DIR AND SDLIMAGE_INCLUDE_DIR) + set(SDL_IMAGE_INCLUDE_DIR ${SDLIMAGE_INCLUDE_DIR} CACHE PATH "directory cache +entry initialized from old variable name") +endif() find_path(SDL_IMAGE_INCLUDE_DIR SDL_image.h HINTS ENV SDLIMAGEDIR @@ -39,6 +43,10 @@ find_path(SDL_IMAGE_INCLUDE_DIR SDL_image.h PATH_SUFFIXES SDL SDL12 SDL11 ) +if(NOT SDL_IMAGE_LIBRARY AND SDLIMAGE_LIBRARY) + set(SDL_IMAGE_LIBRARY ${SDLIMAGE_LIBRARY} CACHE FILEPATH "file cache entry +initialized from old variable name") +endif() find_library(SDL_IMAGE_LIBRARY NAMES SDL_image HINTS diff --git a/Modules/FindSDL_mixer.cmake b/Modules/FindSDL_mixer.cmake index 61fe1ae..666fc6e 100644 --- a/Modules/FindSDL_mixer.cmake +++ b/Modules/FindSDL_mixer.cmake @@ -32,6 +32,10 @@ # (To distribute this file outside of CMake, substitute the full # License text for the above reference.) +if(NOT SDL_MIXER_INCLUDE_DIR AND SDLMIXER_INCLUDE_DIR) + set(SDL_MIXER_INCLUDE_DIR ${SDLMIXER_INCLUDE_DIR} CACHE PATH "directory cache +entry initialized from old variable name") +endif() find_path(SDL_MIXER_INCLUDE_DIR SDL_mixer.h HINTS ENV SDLMIXERDIR @@ -39,6 +43,10 @@ find_path(SDL_MIXER_INCLUDE_DIR SDL_mixer.h PATH_SUFFIXES SDL SDL12 SDL11 ) +if(NOT SDL_MIXER_LIBRARY AND SDLMIXER_LIBRARY) + set(SDL_MIXER_LIBRARY ${SDLMIXER_LIBRARY} CACHE FILEPATH "file cache entry +initialized from old variable name") +endif() find_library(SDL_MIXER_LIBRARY NAMES SDL_mixer HINTS diff --git a/Modules/FindSDL_net.cmake b/Modules/FindSDL_net.cmake index 954c81d..d8f479f 100644 --- a/Modules/FindSDL_net.cmake +++ b/Modules/FindSDL_net.cmake @@ -32,6 +32,10 @@ # (To distribute this file outside of CMake, substitute the full # License text for the above reference.) +if(NOT SDL_NET_INCLUDE_DIR AND SDLNET_INCLUDE_DIR) + set(SDL_NET_INCLUDE_DIR ${SDLNET_INCLUDE_DIR} CACHE PATH "directory cache +entry initialized from old variable name") +endif() find_path(SDL_NET_INCLUDE_DIR SDL_net.h HINTS ENV SDLNETDIR @@ -39,6 +43,10 @@ find_path(SDL_NET_INCLUDE_DIR SDL_net.h PATH_SUFFIXES SDL SDL12 SDL11 ) +if(NOT SDL_NET_LIBRARY AND SDLNET_LIBRARY) + set(SDL_NET_LIBRARY ${SDLNET_LIBRARY} CACHE FILEPATH "file cache entry +initialized from old variable name") +endif() find_library(SDL_NET_LIBRARY NAMES SDL_net HINTS diff --git a/Modules/FindSDL_ttf.cmake b/Modules/FindSDL_ttf.cmake index c8b7a77..2cc5ee2 100644 --- a/Modules/FindSDL_ttf.cmake +++ b/Modules/FindSDL_ttf.cmake @@ -32,6 +32,10 @@ # (To distribute this file outside of CMake, substitute the full # License text for the above reference.) +if(NOT SDL_TTF_INCLUDE_DIR AND SDLTTF_INCLUDE_DIR) + set(SDL_TTF_INCLUDE_DIR ${SDLTTF_INCLUDE_DIR} CACHE PATH "directory cache +entry initialized from old variable name") +endif() find_path(SDL_TTF_INCLUDE_DIR SDL_ttf.h HINTS ENV SDLTTFDIR @@ -39,6 +43,10 @@ find_path(SDL_TTF_INCLUDE_DIR SDL_ttf.h PATH_SUFFIXES SDL SDL12 SDL11 ) +if(NOT SDL_TTF_LIBRARY AND SDLTTF_LIBRARY) + set(SDL_TTF_LIBRARY ${SDLTTF_LIBRARY} CACHE FILEPATH "file cache entry +initialized from old variable name") +endif() find_library(SDL_TTF_LIBRARY NAMES SDL_ttf HINTS -- cgit v0.12