+ADD_EXECUTABLE(supertux2 ${CMAKE_BINARY_DIR}/version.h ${SUPERTUX_SOURCES_C} ${SUPERTUX_SOURCES_CXX} ${TINYGETTEXT_SOURCES_CXX})
+ADD_DEPENDENCIES(supertux2 gitversion)
+
+## Link supertux binary with squirrel and other libraries
+
+TARGET_LINK_LIBRARIES(supertux2 squirrel)
+TARGET_LINK_LIBRARIES(supertux2 ${SDL_LIBRARY})
+TARGET_LINK_LIBRARIES(supertux2 ${SDLIMAGE_LIBRARY})
+TARGET_LINK_LIBRARIES(supertux2 ${OPENAL_LIBRARY})
+TARGET_LINK_LIBRARIES(supertux2 ${OGGVORBIS_LIBRARIES})
+TARGET_LINK_LIBRARIES(supertux2 ${PHYSFS_LIBRARY})
+IF(HAVE_OPENGL)
+ TARGET_LINK_LIBRARIES(supertux2 ${OPENGL_LIBRARY})
+ TARGET_LINK_LIBRARIES(supertux2 ${GLEW_LIBRARY})
+ENDIF(HAVE_OPENGL)
+IF(HAVE_LIBCURL)
+ TARGET_LINK_LIBRARIES(supertux2 ${CURL_LIBRARY})
+ENDIF(HAVE_LIBCURL)
+
+## Install stuff
+
+IF(WIN32 AND NOT UNIX)
+
+ SET(INSTALL_SUBDIR_BIN "." CACHE STRING "Installation subdir for binaries")
+ SET(INSTALL_SUBDIR_SHARE "data" CACHE STRING "Installation subdir for data")
+ SET(INSTALL_SUBDIR_DOC "." CACHE STRING "Installation subdir for docs")
+
+ FILE(GLOB DLLS "${CMAKE_CURRENT_SOURCE_DIR}/*.dll")
+ INSTALL(FILES ${DLLS} DESTINATION ${INSTALL_SUBDIR_BIN})
+
+ INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/data/images/engine/icons/supertux.png ${CMAKE_CURRENT_SOURCE_DIR}/data/images/engine/icons/supertux.ico DESTINATION ".")
+
+ELSE(WIN32 AND NOT UNIX)
+IF(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
+
+ SET(INSTALL_SUBDIR_BIN "SuperTux.app/Contents/MacOS" CACHE STRING "Installation subdir for binaries")
+ SET(INSTALL_SUBDIR_SHARE "SuperTux.app/Contents/Resources/data" CACHE STRING "Installation subdir for data")
+ 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/")
+
+ELSE(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
+
+ SET(INSTALL_SUBDIR_BIN "games" CACHE STRING "Installation subdir for binaries")
+ SET(INSTALL_SUBDIR_SHARE "share/games/supertux2" CACHE STRING "Installation subdir for data")
+ SET(INSTALL_SUBDIR_DOC "share/doc/supertux2" CACHE STRING "Installation subdir for docs")
+
+ INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/supertux2.desktop DESTINATION "share/applications")
+
+ INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/data/images/engine/icons/supertux.png ${CMAKE_CURRENT_SOURCE_DIR}/data/images/engine/icons/supertux.xpm DESTINATION "share/pixmaps/")
+
+ENDIF(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
+ENDIF(WIN32 AND NOT UNIX)
+
+INSTALL(TARGETS supertux2 DESTINATION ${INSTALL_SUBDIR_BIN})
+
+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})
+
+INSTALL(DIRECTORY data/images
+ data/fonts
+ data/levels
+ data/music
+ data/scripts
+ data/speech
+ data/sounds
+ data/locale
+ DESTINATION ${INSTALL_SUBDIR_SHARE} PATTERN ".svn" EXCLUDE)
+
+## Create config.h now that INSTALL_SUBDIR_* have been set.
+
+configure_file(config.h.cmake ${CMAKE_BINARY_DIR}/config.h )
+
+
+## CPack/Installation-specific stuff
+
+INCLUDE(InstallRequiredSystemLibraries)
+SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Jump'n'Run Game featuring Tux")
+SET(CPACK_PACKAGE_VENDOR "SuperTux Devel Team")
+SET(CPACK_PACKAGE_CONTACT "SuperTux Devel Team <supertux-devel@lists.lethargik.org>")
+SET(CPACK_DEBIAN_PACKAGE_NAME "supertux2")
+SET(CPACK_DEBIAN_PACKAGE_DEPENDS "libc6 (>= 2.5), libgcc1 (>= 1:4.1), libgl1-mesa-glx | libgl1, libogg0 (>= 1.1.3), libopenal0a, libphysfs-1.0-0, libsdl-image1.2 (>= 1.2.5), libsdl1.2debian (>= 1.2.10-1), libstdc++6 (>= 4.1.2), libvorbis0a (>= 1.1.2), libvorbisfile3 (>= 1.1.2), libcurl3 (>= 7.16)")
+SET(CPACK_DEBIAN_PACKAGE_DESCRIPTION "Classic 2D jump 'n run sidescroller with Tux\n SuperTux is a classic 2D jump 'n run sidescroller game in a similar\n style like the original SuperMario games. This release of SuperTux\n features 9 enemies, 26 playable levels, software and OpenGL rendering\n modes, configurable joystick and keyboard input, new music and\n completely redone graphics.\n .\n This is a development snapshot of SuperTux. It may suffer from\n critical bugs and has not been fully tested. \n .\n Homepage: http://supertux.lethargik.org/")
+SET(CPACK_DEBIAN_PACKAGE_SECTION "games")
+SET(CPACK_RPM_PACKAGE_NAME "supertux2")
+SET(CPACK_RPM_PACKAGE_DESCRIPTION "Classic 2D jump 'n run sidescroller with Tux\n SuperTux is a classic 2D jump 'n run sidescroller game in a similar\n style like the original SuperMario games. This release of SuperTux\n features 9 enemies, 26 playable levels, software and OpenGL rendering\n modes, configurable joystick and keyboard input, new music and\n completely redone graphics.\n .\n This is a development snapshot of SuperTux. It may suffer from\n critical bugs and has not been fully tested. \n .\n Homepage: http://supertux.lethargik.org/")
+SET(CPACK_RPM_PACKAGE_LICENSE "GNU General Public License (GPL)")
+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.md")
+ SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING")
+ENDIF(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
+SET(CPACK_PACKAGE_VERSION_MAJOR "0")
+SET(CPACK_PACKAGE_VERSION_MINOR "3")
+SET(CPACK_PACKAGE_VERSION_PATCH "4-GIT")
+SET(CPACK_PACKAGE_INSTALL_DIRECTORY "SuperTux ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
+SET(CPACK_PACKAGE_EXECUTABLES "..\\\\supertux2" "SuperTux ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
+IF(WIN32 AND NOT UNIX)
+ SET(CPACK_NSIS_INSTALLED_ICON_NAME "..\\\\supertux2")
+ SET(CPACK_NSIS_DISPLAY_NAME "SuperTux ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
+ELSE(WIN32 AND NOT UNIX)
+ENDIF(WIN32 AND NOT UNIX)
+INCLUDE(CPack)
+
+# move some config clutter to the advanced section
+MARK_AS_ADVANCED(
+ INSTALL_SUBDIR_BIN
+ INSTALL_SUBDIR_SHARE
+ INSTALL_SUBDIR_DOC
+)
+
+MARK_AS_ADVANCED(
+ CMAKE_BACKWARDS_COMPATIBILITY
+ CMAKE_BUILD_TYPE
+ CMAKE_INSTALL_PREFIX
+ EXECUTABLE_OUTPUT_PATH
+ LIBRARY_OUTPUT_PATH
+ CMAKE_OSX_ARCHITECTURES
+ CMAKE_OSX_SYSROOT
+)