Merge branch 'feature/sdl2'
[supertux.git] / CMakeLists.txt
index ef54955..2abf1f2 100644 (file)
@@ -66,8 +66,14 @@ FIND_PACKAGE(Boost REQUIRED)
 INCLUDE_DIRECTORIES(SYSTEM ${Boost_INCLUDE_DIR})
 LINK_DIRECTORIES(${Boost_LIBRARY_DIRS})
 
-#FIND_PACKAGE(SDL REQUIRED)
-INCLUDE_DIRECTORIES("src/SDL2/")
+INCLUDE(FindPkgConfig)
+PKG_SEARCH_MODULE(SDL2 REQUIRED sdl2)
+INCLUDE_DIRECTORIES(${SDL2_INCLUDE_DIRS})
+LINK_LIBRARIES(supertux2 ${SDL2_LIBRARIES})
+
+PKG_SEARCH_MODULE(SDL2IMAGE REQUIRED SDL2_image>=2.0.0)
+INCLUDE_DIRECTORIES(${SDL2IMAGE_INCLUDE_DIRS})
+LINK_LIBRARIES(supertux2 ${SDL2IMAGE_LIBRARIES})
 SET(HAVE_SDL TRUE)
 
 #FIND_PACKAGE(SDL_image REQUIRED)
@@ -107,15 +113,15 @@ ENDIF(CURL_FOUND)
 #LINK_LIBRARIES(${ICONV_LIBRARY})
 
 ## Find revision of WC
-MARK_AS_ADVANCED(SVNVERSION_EXECUTABLE)
-FIND_PROGRAM(SVNVERSION_EXECUTABLE svnversion)
+MARK_AS_ADVANCED(GIT_EXECUTABLE)
+FIND_PROGRAM(GIT_EXECUTABLE git)
 
-IF(SVNVERSION_EXECUTABLE)
-  ADD_CUSTOM_TARGET(svnversion ALL
+IF(GIT_EXECUTABLE)
+  ADD_CUSTOM_TARGET(gitversion ALL
                     ${CMAKE_COMMAND} -E echo "#ifndef VERSION_H" > "${CMAKE_BINARY_DIR}/version.h.tmp"
                     COMMAND ${CMAKE_COMMAND} -E echo "#define VERSION_H" >> "${CMAKE_BINARY_DIR}/version.h.tmp"
-                    COMMAND ${CMAKE_COMMAND} >> "${CMAKE_BINARY_DIR}/version.h.tmp" -E echo_append "#define PACKAGE_VERSION \"${SUPERTUX_VERSION} r"
-                    COMMAND ${SVNVERSION_EXECUTABLE} -n ${CMAKE_CURRENT_SOURCE_DIR} >> "${CMAKE_BINARY_DIR}/version.h.tmp"
+                    COMMAND ${CMAKE_COMMAND} >> "${CMAKE_BINARY_DIR}/version.h.tmp" -E echo_append "#define PACKAGE_VERSION \"${SUPERTUX_VERSION} commit "
+                    COMMAND ${GIT_EXECUTABLE} rev-parse --sq HEAD >> "${CMAKE_BINARY_DIR}/version.h.tmp"
                     COMMAND ${CMAKE_COMMAND} >>  "${CMAKE_BINARY_DIR}/version.h.tmp" -E echo "\""
                     COMMAND ${CMAKE_COMMAND} -E echo "#endif" >>  "${CMAKE_BINARY_DIR}/version.h.tmp"
                     COMMAND ${CMAKE_COMMAND} -E copy_if_different "${CMAKE_BINARY_DIR}/version.h.tmp" "${CMAKE_BINARY_DIR}/version.h"
@@ -123,8 +129,8 @@ IF(SVNVERSION_EXECUTABLE)
                     WORKING_DIRECTORY "${CMAKE_BINARY_DIR}"
                     COMMENT "Updating ${CMAKE_BINARY_DIR}/version.h..."
                     VERBATIM)
-ELSE(SVNVERSION_EXECUTABLE)
-  ADD_CUSTOM_TARGET(svnversion ALL
+ELSE(GIT_EXECUTABLE)
+  ADD_CUSTOM_TARGET(gitversion ALL
                     ${CMAKE_COMMAND} -E echo "#ifndef VERSION_H" > "${CMAKE_BINARY_DIR}/version.h.tmp"
                     COMMAND ${CMAKE_COMMAND} -E echo "#define VERSION_H" >> "${CMAKE_BINARY_DIR}/version.h.tmp"
                     COMMAND ${CMAKE_COMMAND} >> "${CMAKE_BINARY_DIR}/version.h.tmp" -E echo "#define PACKAGE_VERSION \"${SUPERTUX_VERSION}\""
@@ -134,7 +140,7 @@ ELSE(SVNVERSION_EXECUTABLE)
                     WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
                     COMMENT "Updating ${CMAKE_BINARY_DIR}/version.h..."
                     VERBATIM)
-ENDIF(SVNVERSION_EXECUTABLE)
+ENDIF(GIT_EXECUTABLE)
 
 SET_SOURCE_FILES_PROPERTIES(${CMAKE_BINARY_DIR}/version.h
                             PROPERTIES GENERATED true)
@@ -234,7 +240,7 @@ IF(CMAKE_COMPILER_IS_GNUCC)
   SET(CMAKE_CXX_FLAGS_PROFILE "-pg" CACHE STRING "Profile flags")
   SET(CMAKE_C_FLAGS_PROFILE "-pg" CACHE STRING "Profile flags")
   SET(CMAKE_LD_FLAGS_PROFILE "-lgmon" CACHE STRING "Profile flags")
-  ADD_DEFINITIONS(-Wall -Wextra -funit-at-a-time)
+  ADD_DEFINITIONS(-Wall -Wextra -Wno-unused-parameter -funit-at-a-time)
   IF(WERROR)
     ADD_DEFINITIONS(-Werror)
   ELSE(WERROR)
@@ -337,7 +343,7 @@ SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_SOURCE_DIR})
 ## Add target for supertux binary
 
 ADD_EXECUTABLE(supertux2 ${CMAKE_BINARY_DIR}/version.h ${SUPERTUX_SOURCES_C} ${SUPERTUX_SOURCES_CXX} ${TINYGETTEXT_SOURCES_CXX})
-ADD_DEPENDENCIES(supertux2 svnversion)
+ADD_DEPENDENCIES(supertux2 gitversion)
 
 ## Link supertux binary with squirrel and other libraries
 
@@ -376,6 +382,7 @@ IF(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
   SET(INSTALL_SUBDIR_DOC "SuperTux.app/Contents/Resources" CACHE STRING "Installation subdir for docs")
 
   INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/tools/darwin/info.plist DESTINATION "SuperTux.app/Contents/")
+  INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/tools/darwin/receipt DESTINATION "SuperTux.app/Contents/_MASReceipt/")
 
   INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/data/images/engine/icons/supertux.png ${CMAKE_CURRENT_SOURCE_DIR}/data/images/engine/icons/supertux.icns DESTINATION "SuperTux.app/Contents/Resources/")
 
@@ -394,7 +401,7 @@ ENDIF(WIN32 AND NOT UNIX)
 
 INSTALL(TARGETS supertux2 DESTINATION ${INSTALL_SUBDIR_BIN})
 
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/INSTALL ${CMAKE_CURRENT_SOURCE_DIR}/README ${CMAKE_CURRENT_SOURCE_DIR}/COPYING ${CMAKE_CURRENT_SOURCE_DIR}/WHATSNEW.txt DESTINATION ${INSTALL_SUBDIR_DOC})
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/INSTALL.md ${CMAKE_CURRENT_SOURCE_DIR}/README.md ${CMAKE_CURRENT_SOURCE_DIR}/COPYING ${CMAKE_CURRENT_SOURCE_DIR}/WHATSNEW.txt DESTINATION ${INSTALL_SUBDIR_DOC})
 
 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/data/credits.txt DESTINATION ${INSTALL_SUBDIR_SHARE})
 
@@ -430,7 +437,7 @@ SET(CPACK_RPM_PACKAGE_GROUP "Amusements/Games/Action/Arcade")
 IF(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
   # The OS X PackageMaker doesn't seem to like files with no extension
 ELSE(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
-  SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README")
+  SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README.md")
   SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING")
 ENDIF(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
 SET(CPACK_PACKAGE_VERSION_MAJOR "0")