]> git.lizzy.rs Git - minetest.git/blobdiff - src/CMakeLists.txt
Fix logic of checkbox formspec element validity checking
[minetest.git] / src / CMakeLists.txt
index 5de5834d38f518a0d7820dd2780a34bd0de0372f..2a75c68e6f9b1f232b05e6c94cec8ae50e2e03fb 100644 (file)
@@ -2,11 +2,10 @@ project(minetest)
 cmake_minimum_required( VERSION 2.6 )
 
 INCLUDE(CheckCSourceRuns)
+INCLUDE(CheckIncludeFiles)
 
 # Set some random things default to not being visible in the GUI
 mark_as_advanced(EXECUTABLE_OUTPUT_PATH LIBRARY_OUTPUT_PATH)
-mark_as_advanced(SQLITE3_INCLUDE_DIR SQLITE3_LIBRARY)
-mark_as_advanced(JSON_INCLUDE_DIR JSON_LIBRARY)
 
 option(ENABLE_CURL "Enable cURL support for fetching media" 1)
 
@@ -173,7 +172,7 @@ else()
        set(CLIENT_PLATFORM_LIBS ${CLIENT_PLATFORM_LIBS} ${XXF86VM_LIBRARY})
 endif()
 
-find_package(Sqlite3 REQUIRED)
+find_package(SQLite3 REQUIRED)
 find_package(Json REQUIRED)
 
 option(ENABLE_GLES "Enable OpenGL ES support" 0)
@@ -313,6 +312,11 @@ if(ENABLE_REDIS)
        endif(REDIS_LIBRARY AND REDIS_INCLUDE_DIR)
 endif(ENABLE_REDIS)
 
+CHECK_INCLUDE_FILES(endian.h HAVE_ENDIAN_H)
+if(NOT HAVE_ENDIAN_H)
+  set(HAVE_ENDIAN_H 0)
+endif(NOT HAVE_ENDIAN_H)
+
 configure_file(
        "${PROJECT_SOURCE_DIR}/cmake_config.h.in"
        "${PROJECT_BINARY_DIR}/cmake_config.h"
@@ -368,6 +372,7 @@ set(common_SRCS
        mapblock.cpp
        mapgen.cpp
        mapgen_singlenode.cpp
+       mapgen_v5.cpp
        mapgen_v6.cpp
        mapgen_v7.cpp
        mapnode.cpp
@@ -446,6 +451,7 @@ set(minetest_SRCS
        convert_json.cpp
        drawscene.cpp
        filecache.cpp
+       fontengine.cpp
        game.cpp
        guiChatConsole.cpp
        guiEngine.cpp
@@ -465,6 +471,7 @@ set(minetest_SRCS
        shader.cpp
        sky.cpp
        tile.cpp
+       wieldmesh.cpp
        ${minetest_SCRIPT_SRCS}
 )
 list(SORT minetest_SRCS)
@@ -636,6 +643,11 @@ else()
                endif(HAS_UNUSED_BUT_SET_VARIABLE_WARNING)
        endif()
 
+       if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
+               # clang does not understand __extern_always_inline but libc headers use it
+               set(OTHER_FLAGS "${OTHER_FLAGS} \"-D__extern_always_inline=extern __always_inline\"")
+       endif()
+
        if(MINGW)
                set(OTHER_FLAGS "-mthreads -fexceptions")
        endif()
@@ -692,6 +704,9 @@ if(WIN32)
        if(FREETYPE_DLL)
                install(FILES ${FREETYPE_DLL} DESTINATION ${BINDIR})
        endif()
+       if(SQLITE3_DLL)
+               install(FILES ${SQLITE3_DLL} DESTINATION ${BINDIR})
+       endif()
        if(LEVELDB_DLL)
                install(FILES ${LEVELDB_DLL} DESTINATION ${BINDIR})
        endif()
@@ -755,11 +770,6 @@ endif(USE_GETTEXT)
 
 # Subdirectories
 
-if (SQLITE3_FOUND)
-else (SQLITE3_FOUND)
-       add_subdirectory(sqlite)
-endif (SQLITE3_FOUND)
-
 if (BUILD_CLIENT AND USE_FREETYPE)
        add_subdirectory(cguittfont)
 endif (BUILD_CLIENT AND USE_FREETYPE)