#
-## (Optional) Generate noisy Makefile
-
-#SET(CMAKE_VERBOSE_MAKEFILE on)
-
## Project name to use as command prefix
PROJECT(SUPERTUX)
+
+### CMake configuration
+
+# allow building with old CMake. Use some bundled modules as a fallback
+CMAKE_MINIMUM_REQUIRED(VERSION 2.4)
+SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${SUPERTUX_SOURCE_DIR}/mk/cmake)
+
+# move some config clutter to the advanced section
+MARK_AS_ADVANCED(
+ CMAKE_BACKWARDS_COMPATIBILITY
+ CMAKE_BUILD_TYPE
+ CMAKE_INSTALL_PREFIX
+ EXECUTABLE_OUTPUT_PATH
+ LIBRARY_OUTPUT_PATH
+)
+
+
## Some default settings
-OPTION(DEBUG "Build with debugging options" FALSE)
-OPTION(ENABLE_BINRELOC "Enable autopackage's BINRELOC features" FALSE)
-OPTION(APPDATADIR "APPDATADIR for autopackage's BINRELOC features" "${CMAKE_INSTALL_PREFIX}/share")
-OPTION(ENABLE_SQDBG "Build squirrel script interpreter with debugging options" FALSE)
-OPTION(ENABLE_OPENGL "Enable OpenGL support" TRUE)
-OPTION(GENERATE_WRAPPER "Build miniswig and generate the wrapper" ${DEBUG})
+set(DEBUG 0 CACHE BOOL "Build with debugging options")
+set(ENABLE_SQDBG 0 CACHE BOOL "Build squirrel script interpreter with debugging options")
+set(ENABLE_OPENGL 1 CACHE BOOL "Enable OpenGL support")
+set(GENERATE_WRAPPER ${DEBUG} CACHE BOOL "Build miniswig and generate the wrapper")
-## Search here for additional cmake modules (for finding deps)
-set(CMAKE_MODULE_PATH ${SUPERTUX_SOURCE_DIR}/mk/cmake ${CMAKE_MODULE_PATH})
+## For autopackage
+MARK_AS_ADVANCED(
+ ENABLE_BINRELOC
+ APPDATADIR
+)
+set(ENABLE_BINRELOC 0 CACHE BOOL "Enable autopackage's BINRELOC features")
+set(APPDATADIR "${CMAKE_INSTALL_PREFIX}/share" CACHE STRING "APPDATADIR for autopackage's BINRELOC features")
## Check endianess
## Add lots of dependencies to compiler switches
FIND_PACKAGE(SDL REQUIRED)
+MARK_AS_ADVANCED(
+ SDLMAIN_LIBRARY
+ SDL_INCLUDE_DIR
+ SDL_LIBRARY
+)
INCLUDE_DIRECTORIES(${SDL_INCLUDE_DIR})
LINK_LIBRARIES(${SDL_LIBRARY})
FIND_PACKAGE(SDL_image REQUIRED)
+MARK_AS_ADVANCED(
+ SDLIMAGE_INCLUDE_DIR
+ SDLIMAGE_LIBRARY
+)
INCLUDE_DIRECTORIES(${SDLIMAGE_INCLUDE_DIR})
LINK_LIBRARIES(${SDLIMAGE_LIBRARY})
ENDIF(ENABLE_OPENGL)
FIND_PACKAGE(OpenAL REQUIRED)
+MARK_AS_ADVANCED(
+ OPENAL_INCLUDE_DIR
+ OPENAL_LIBRARY
+)
INCLUDE_DIRECTORIES(${OPENAL_INCLUDE_DIR})
LINK_LIBRARIES(${OPENAL_LIBRARY})
FIND_PACKAGE(OggVorbis REQUIRED)
+MARK_AS_ADVANCED(
+ OGG_LIBRARY
+ VORBISENC_LIBRARY
+ VORBISFILE_LIBRARY
+ VORBIS_INCLUDE_DIR
+ VORBIS_LIBRARY
+)
INCLUDE_DIRECTORIES(${OGGVORBIS_INCLUDE_DIR})
LINK_LIBRARIES(${OGGVORBIS_LIBRARIES})
FIND_PACKAGE(PhysFS REQUIRED)
+MARK_AS_ADVANCED(
+ PHYSFS_INCLUDE_DIR
+ PHYSFS_LIBRARY
+)
INCLUDE_DIRECTORIES(${PHYSFS_INCLUDE_DIR})
LINK_LIBRARIES(${PHYSFS_LIBRARY})