From 6ba171ca11c8b4db4a71b0bb6c57c5e39a58921d Mon Sep 17 00:00:00 2001 From: Dmitry Marakasov Date: Tue, 9 Jun 2015 22:40:46 +0300 Subject: [PATCH] Implement and install cmake module file --- CMakeLists.txt | 9 +++++++++ FindSDL2PP.cmake.in | 29 +++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 FindSDL2PP.cmake.in diff --git a/CMakeLists.txt b/CMakeLists.txt index 0e61e8b..ab9efa5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -207,6 +207,14 @@ IF(CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR) @ONLY ) + # cmake file + SET(CMAKEMODDIR share/cmake/Modules CACHE STRING "directory where to install cmake module") + CONFIGURE_FILE( + FindSDL2PP.cmake.in + FindSDL2PP.cmake + @ONLY + ) + # install INSTALL(FILES ${LIBRARY_HEADERS} ${PROJECT_BINARY_DIR}/SDL2pp/Config.hh DESTINATION include/SDL2pp) INSTALL(FILES ${LIBRARY_EXTERNAL_HEADERS} DESTINATION include/SDL2pp/external) @@ -216,6 +224,7 @@ IF(CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR) ARCHIVE DESTINATION lib ) INSTALL(FILES ${PROJECT_BINARY_DIR}/sdl2pp.pc DESTINATION ${PKGCONFIGDIR}) + INSTALL(FILES ${PROJECT_BINARY_DIR}/FindSDL2PP.cmake DESTINATION ${CMAKEMODDIR}) ELSE(CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR) MESSAGE(STATUS "libSDL2pp ${SDL2PP_VERSION} bundled build") diff --git a/FindSDL2PP.cmake.in b/FindSDL2PP.cmake.in new file mode 100644 index 0000000..cb832d3 --- /dev/null +++ b/FindSDL2PP.cmake.in @@ -0,0 +1,29 @@ +# - Try to find SDL2pp library +# +# Once done this will define +# +# SDL2PP_FOUND +# SDL2PP_INCLUDE_DIRS +# SDL2PP_LIBRARIES + +IF(SDL2PP_INCLUDE_DIR AND SDL2PP_LIBRARY) + # in cache already + SET(SDL2PP_FIND_QUIETLY TRUE) +ENDIF(SDL2PP_INCLUDE_DIR AND SDL2PP_LIBRARY) + +FIND_PATH(SDL2PP_INCLUDE_DIR SDL2pp/SDL2pp.hh HINTS @CMAKE_INSTALL_PREFIX@/include) + +FIND_LIBRARY(SDL2PP_LIBRARY NAMES SDL2pp HINTS @CMAKE_INSTALL_PREFIX@/lib}) + +MARK_AS_ADVANCED(SDL2PP_INCLUDE_DIR SDL2PP_LIBRARY) + +INCLUDE(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL2PP + REQUIRED_VARS SDL2PP_INCLUDE_DIR SDL2PP_LIBRARY +) + +IF(SDL2PP_FOUND) + SET(SDL2PP_INCLUDE_DIRS ${SDL2PP_INCLUDE_DIR} @SDL2_ALL_INCLUDE_DIRS@) + SET(SDL2PP_LIBRARIES ${SDL2PP_LIBRARY} @SDL2_ALL_LIBRARIES@) +ENDIF(SDL2PP_FOUND) +