mirror of
https://github.com/luanti-org/luanti.git
synced 2025-06-27 16:36:03 +00:00
Clean up and tweak build system
* Combine client and server man pages. * Update unit test options and available databases in man page. * Add `--worldname` to man page. * Fix a bunch of places where `"Minetest"` was used directly instead of `PROJECT_NAME`. * Disable server build by default on all operating systems. * Make `ENABLE_FREETYPE` not fail if FreeType isn't found. * Enable LevelDB, Redis, and FreeType detection by default. * Remove the `VERSION_PATCH_ORIG` hack. * Add option to search for and use system JSONCPP. * Remove broken LuaJIT version detection. * Rename `DISABLE_LUAJIT` to `ENABLE_LUAJIT`. * Rename `minetest_*` variables in `version.{h,cpp}` to `g_*`. * Clean up style of CMake files.
This commit is contained in:
parent
284fefb0c3
commit
93fcab952b
50 changed files with 749 additions and 1068 deletions
|
@ -1,10 +1,12 @@
|
|||
#
|
||||
# Lua 5.1.x
|
||||
#
|
||||
cmake_minimum_required(VERSION 2.4 FATAL_ERROR)
|
||||
|
||||
project(lua C)
|
||||
|
||||
set(LUA_VERSION_MAJOR 5)
|
||||
set(LUA_VERSION_MINOR 1)
|
||||
set(LUA_VERSION_PATCH 4)
|
||||
set(LUA_VERSION "${LUA_VERSION_MAJOR}.${LUA_VERSION_MINOR}.${LUA_VERSION_PATCH}")
|
||||
|
||||
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
|
||||
|
||||
set(COMMON_CFLAGS)
|
||||
|
@ -16,9 +18,7 @@ if(APPLE)
|
|||
set(DEFAULT_DLOPEN ON)
|
||||
# use this on Mac OS X 10.3-
|
||||
option(LUA_USE_MACOSX "Mac OS X 10.3-" OFF)
|
||||
elseif(CYGWIN)
|
||||
set(DEFAULT_POSIX TRUE)
|
||||
elseif(UNIX)
|
||||
elseif(UNIX OR CYGWIN)
|
||||
set(DEFAULT_POSIX TRUE)
|
||||
elseif(WIN32)
|
||||
set(LUA_WIN TRUE)
|
||||
|
@ -32,50 +32,18 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
|||
set(DEFAULT_DLOPEN ON)
|
||||
endif()
|
||||
|
||||
if(WIN32)
|
||||
#set(BUILD_STATIC OFF)
|
||||
set(BUILD_STATIC ON)
|
||||
else()
|
||||
#option(BUILD_STATIC "build static library" ON)
|
||||
set(BUILD_STATIC ON)
|
||||
endif()
|
||||
|
||||
if(DEFAULT_DLOPEN)
|
||||
option(LUA_USE_DLOPEN "Enable dlopen support." ON)
|
||||
else()
|
||||
option(LUA_USE_DLOPEN "Enable dlopen support." OFF)
|
||||
endif()
|
||||
mark_as_advanced(LUA_USE_DLOPEN)
|
||||
|
||||
if(DEFAULT_ANSI)
|
||||
option(LUA_ANSI "Disable non-ansi features." ON)
|
||||
else()
|
||||
option(LUA_ANSI "Disable non-ansi features." OFF)
|
||||
endif()
|
||||
mark_as_advanced(LUA_ANSI)
|
||||
|
||||
#
|
||||
# Lua version
|
||||
#
|
||||
set(LUA_VERSION_MAJOR 5)
|
||||
set(LUA_VERSION_MINOR 1)
|
||||
set(LUA_VERSION_PATCH 4)
|
||||
set(LUA_VERSION
|
||||
"${LUA_VERSION_MAJOR}.${LUA_VERSION_MINOR}.${LUA_VERSION_PATCH}")
|
||||
set(LUA_SOVERSION
|
||||
"${LUA_VERSION_MAJOR}")
|
||||
|
||||
#
|
||||
# libs & cflags
|
||||
#
|
||||
set(COMMON_LDFLAGS "${COMMON_LDFLAGS}")
|
||||
|
||||
# For "Mac OS X 10.3-"
|
||||
if(LUA_USE_MACOSX)
|
||||
set(COMMON_CFLAGS "${COMMON_CFLAGS} -DLUA_USE_MACOSX")
|
||||
set(LUA_USE_DLOPEN FALSE)
|
||||
endif(LUA_USE_MACOSX)
|
||||
|
||||
option(LUA_USE_DLOPEN "Enable dlopen support." ${DEFAULT_DLOPEN})
|
||||
mark_as_advanced(LUA_USE_DLOPEN)
|
||||
|
||||
option(LUA_ANSI "Disable non-ANSI features." ${DEFAULT_ANSI})
|
||||
mark_as_advanced(LUA_ANSI)
|
||||
|
||||
if(LUA_USE_DLOPEN)
|
||||
set(COMMON_CFLAGS "${COMMON_CFLAGS} -DLUA_USE_DLOPEN")
|
||||
if(NOT APPLE)
|
||||
|
@ -91,14 +59,11 @@ if(LUA_ANSI)
|
|||
set(COMMON_CFLAGS "${COMMON_CFLAGS} -DLUA_ANSI")
|
||||
endif(LUA_ANSI)
|
||||
|
||||
#
|
||||
# COMMON_CFLAGS has no effect without this line
|
||||
#
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${COMMON_CFLAGS}")
|
||||
|
||||
#
|
||||
# standard flags to use for each build type.
|
||||
#
|
||||
|
||||
# Standard flags to use for each build type.
|
||||
if(CMAKE_COMPILER_IS_GNUCC)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pipe -Wall -Wextra -Wshadow -W -pedantic -std=gnu99")
|
||||
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O2")
|
||||
|
@ -107,8 +72,6 @@ if(CMAKE_COMPILER_IS_GNUCC)
|
|||
set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_WITHDEBINFO} -O2 -g")
|
||||
endif(CMAKE_COMPILER_IS_GNUCC)
|
||||
|
||||
#
|
||||
# sub-folders
|
||||
#
|
||||
ADD_SUBDIRECTORY(src build)
|
||||
|
||||
add_subdirectory(src build)
|
||||
|
||||
|
|
|
@ -39,11 +39,9 @@ set(LUA_LIB_HEADERS
|
|||
)
|
||||
|
||||
include_directories(${CMAKE_CURRENT_SOURCE_DIR}
|
||||
${CMAKE_CURRENT_BINARY_DIR})
|
||||
${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
#
|
||||
# Lua library.
|
||||
#
|
||||
add_library(lua STATIC ${LUA_CORE_SRC})
|
||||
target_link_libraries(lua ${LIBS})
|
||||
set(LUA_STATIC_LIB lua)
|
||||
|
@ -51,13 +49,6 @@ set(LUA_LIBS lua)
|
|||
|
||||
set_target_properties(${LUA_LIBS} PROPERTIES
|
||||
VERSION ${LUA_VERSION}
|
||||
SOVERSION ${LUA_SOVERSION}
|
||||
CLEAN_DIRECT_OUTPUT 1
|
||||
)
|
||||
|
||||
# Install library
|
||||
#install(TARGETS ${LUA_LIBS}
|
||||
# RUNTIME DESTINATION bin
|
||||
# LIBRARY DESTINATION lib
|
||||
# ARCHIVE DESTINATION lib)
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue