diff options
Diffstat (limited to 'src/lua/CMakeLists.txt')
-rw-r--r-- | src/lua/CMakeLists.txt | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/src/lua/CMakeLists.txt b/src/lua/CMakeLists.txt new file mode 100644 index 000000000..c43dc1737 --- /dev/null +++ b/src/lua/CMakeLists.txt @@ -0,0 +1,109 @@ +# +# Lua 5.1.x +# +cmake_minimum_required(VERSION 2.4 FATAL_ERROR) + +project(lua C) + +set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) + +include(CustomMacros) + +set(COMMON_CFLAGS) +set(COMMON_LDFLAGS) +set(LIBS) + +if(APPLE) + set(DEFAULT_POSIX TRUE) + 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) + set(DEFAULT_POSIX TRUE) +elseif(WIN32) + set(LUA_WIN TRUE) + set(COMMON_CFLAGS "${COMMON_CFLAGS} -DLUA_BUILD_AS_DLL") +else() + set(DEFAULT_ANSI TRUE) +endif() + +if(CMAKE_SYSTEM_NAME STREQUAL "Linux") + set(COMMON_LDFLAGS "${COMMON_LDFLAGS} -Wl,-E -lm") + 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() + +if(DEFAULT_POSIX) +else() +endif() + +if(DEFAULT_ANSI) + option(LUA_ANSI "Disable non-ansi features." ON) +else() + option(LUA_ANSI "Disable non-ansi features." OFF) +endif() + +# +# 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) + +if(LUA_USE_DLOPEN) + set(COMMON_CFLAGS "${COMMON_CFLAGS} -DLUA_USE_DLOPEN") + if(NOT APPLE) + set(COMMON_LDFLAGS "${COMMON_LDFLAGS} -ldl ") + endif(NOT APPLE) +endif(LUA_USE_DLOPEN) + +if(LUA_ANSI) + set(COMMON_CFLAGS "${COMMON_CFLAGS} -DLUA_ANSI") +endif(LUA_ANSI) + +# +# 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") + set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -O0 -g") + set(CMAKE_C_FLAGS_PROFILE "${CMAKE_C_FLAGS_PROFILE} -O1 -g") + set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_WITHDEBINFO} -O2 -g") +endif(CMAKE_COMPILER_IS_GNUCC) + +# +# sub-folders +# +ADD_SUBDIRECTORY(src build) + |