Emit liquid sound if the player walks in liquid (#6040)
[oweals/minetest.git] / CMakeLists.txt
index 15b3fc33cb3d3cead0ea185b2a84143978c1299f..68808e41ff8665324e5bf96a28f5a624f000fdee 100644 (file)
@@ -9,11 +9,13 @@ endif()
 project(minetest)
 set(PROJECT_NAME_CAPITALIZED "Minetest")
 
+# Works only for cmake 3.1 and greater
+set(CMAKE_CXX_STANDARD 11)
 
 # Also remember to set PROTOCOL_VERSION in network/networkprotocol.h when releasing
 set(VERSION_MAJOR 0)
 set(VERSION_MINOR 4)
-set(VERSION_PATCH 14)
+set(VERSION_PATCH 16)
 set(VERSION_EXTRA "" CACHE STRING "Stuff to append to version string")
 
 # Change to false for releases
@@ -26,6 +28,11 @@ elseif(DEVELOPMENT_BUILD)
        set(VERSION_STRING "${VERSION_STRING}-dev")
 endif()
 
+if (CMAKE_BUILD_TYPE STREQUAL Debug)
+       # Append "-debug" to version string
+       set(VERSION_STRING "${VERSION_STRING}-debug")
+endif()
+
 message(STATUS "*** Will build version ${VERSION_STRING} ***")
 
 
@@ -49,7 +56,6 @@ if(NOT CMAKE_BUILD_TYPE)
        set(CMAKE_BUILD_TYPE Release CACHE STRING "Build type: Debug or Release" FORCE)
 endif()
 
-
 # Included stuff
 set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules/")
 
@@ -82,7 +88,7 @@ elseif(UNIX) # Linux, BSD etc
                set(EXAMPLE_CONF_DIR ".")
                set(MANDIR "unix/man")
                set(XDG_APPS_DIR "unix/applications")
-               set(APPDATADIR "unix/appdata")
+               set(APPDATADIR "unix/metainfo")
                set(ICONDIR "unix/icons")
                set(LOCALEDIR "locale")
        else()
@@ -92,7 +98,7 @@ elseif(UNIX) # Linux, BSD etc
                set(MANDIR "${CMAKE_INSTALL_PREFIX}/share/man")
                set(EXAMPLE_CONF_DIR ${DOCDIR})
                set(XDG_APPS_DIR "${CMAKE_INSTALL_PREFIX}/share/applications")
-               set(APPDATADIR "${CMAKE_INSTALL_PREFIX}/share/appdata")
+               set(APPDATADIR "${CMAKE_INSTALL_PREFIX}/share/metainfo")
                set(ICONDIR "${CMAKE_INSTALL_PREFIX}/share/icons")
                set(LOCALEDIR "${CMAKE_INSTALL_PREFIX}/share/${PROJECT_NAME}/locale")
        endif()
@@ -151,15 +157,20 @@ endif()
 
 
 install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/builtin" DESTINATION "${SHAREDIR}")
-install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/client" DESTINATION "${SHAREDIR}")
+if(RUN_IN_PLACE)
+       install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/mods/mods_here.txt" DESTINATION "${SHAREDIR}/mods")
+       install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/textures/texture_packs_here.txt" DESTINATION "${SHAREDIR}/textures")
+endif()
+
 install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/games" DESTINATION "${SHAREDIR}" PATTERN ".git*" EXCLUDE)
 
 if(BUILD_CLIENT)
+       install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/client/shaders" DESTINATION "${SHAREDIR}/client")
        install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/textures/base/pack" DESTINATION "${SHAREDIR}/textures/base")
-endif()
-if(RUN_IN_PLACE)
-       install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/mods/mods_here.txt" DESTINATION "${SHAREDIR}/mods")
-       install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/textures/texture_packs_here.txt" DESTINATION "${SHAREDIR}/textures")
+       if(RUN_IN_PLACE)
+               install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/clientmods" DESTINATION "${SHAREDIR}")
+               install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/client/serverlist" DESTINATION "${SHAREDIR}/client")
+       endif()
 endif()
 
 install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/fonts" DESTINATION "${SHAREDIR}")
@@ -173,8 +184,8 @@ install(FILES "minetest.conf.example" DESTINATION "${EXAMPLE_CONF_DIR}")
 
 if(UNIX AND NOT APPLE)
        install(FILES "doc/minetest.6" "doc/minetestserver.6" DESTINATION "${MANDIR}/man6")
-       install(FILES "misc/minetest.desktop" DESTINATION "${XDG_APPS_DIR}")
-       install(FILES "misc/minetest.appdata.xml" DESTINATION "${APPDATADIR}")
+       install(FILES "misc/net.minetest.minetest.desktop" DESTINATION "${XDG_APPS_DIR}")
+       install(FILES "misc/net.minetest.minetest.appdata.xml" DESTINATION "${APPDATADIR}")
        install(FILES "misc/minetest.svg" DESTINATION "${ICONDIR}/hicolor/scalable/apps")
        install(FILES "misc/minetest-xorg-icon-128.png"
                DESTINATION "${ICONDIR}/hicolor/128x128/apps"
@@ -186,6 +197,10 @@ if(APPLE)
        install(FILES "misc/Info.plist" DESTINATION "${BUNDLE_PATH}/Contents")
 endif()
 
+# Library pack
+find_package(GMP REQUIRED)
+find_package(Json REQUIRED)
+find_package(Lua REQUIRED)
 
 # Subdirectories
 # Be sure to add all relevant definitions above this