Skip to content

Commit 76ab775

Browse files
committed
Fix lua building
1 parent b2cfe1a commit 76ab775

File tree

1 file changed

+12
-6
lines changed

1 file changed

+12
-6
lines changed

CMakeModules/build_lua.cmake

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ INCLUDE(ExternalProject)
22

33
SET(prefix ${CMAKE_BINARY_DIR}/third_party/lua)
44

5-
SET(lua_location "${prefix}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}lua${CMAKE_STATIC_LIBRARY_SUFFIX}")
5+
SET(lua_location "${prefix}/lib/${CMAKE_SHARED_LIBRARY_PREFIX}lua${CMAKE_SHARED_LIBRARY_SUFFIX}")
66
IF(CMAKE_VERSION VERSION_LESS 3.2)
77
IF(CMAKE_GENERATOR MATCHES "Ninja")
88
MESSAGE(WARNING "Building forge with Ninja has known issues with CMake older than 3.2")
@@ -13,7 +13,13 @@ ELSE()
1313
ENDIF()
1414

1515
IF(WIN32)
16-
ADD_DEFINITIONS("-DLUA_DL_DLL")
16+
SET(LUA_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DLUA_DL_DLL")
17+
SET(LUA_C_FLAGS "${CMAKE_C_FLAGS} -DLUA_DL_DLL")
18+
SET(LUA_BUILD_AS_DLL ON)
19+
ELSE()
20+
SET(LUA_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
21+
SET(LUA_C_FLAGS "${CMAKE_C_FLAGS}")
22+
SET(LUA_BUILD_AS_DLL OFF)
1723
ENDIF()
1824

1925
# FIXME Tag forge correctly during release
@@ -29,17 +35,17 @@ ExternalProject_Add(
2935
-DCMAKE_SOURCE_DIR:PATH=<SOURCE_DIR>
3036
-DCMAKE_CXX_COMPILER:FILEPATH=${CMAKE_CXX_COMPILER}
3137
-DCMAKE_C_COMPILER:FILEPATH=${CMAKE_C_COMPILER}
32-
-DCMAKE_CXX_FLAGS:STRING=${CMAKE_CXX_FLAGS}
33-
-DCMAKE_C_FLAGS:STRING=${CMAKE_C_FLAGS}
38+
-DCMAKE_CXX_FLAGS:STRING=${LUA_CXX_FLAGS}
39+
-DCMAKE_C_FLAGS:STRING=${LUA_C_FLAGS}
3440
-DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
3541
-DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
3642
-DBUILD_SHARED_LIBS=ON
37-
-DLUA_BUILD_AS_DLL=ON
43+
-DLUA_BUILD_AS_DLL=${LUA_BUILD_AS_DLL}
3844
${byproducts}
3945
)
4046

4147
ExternalProject_Get_Property(lua-ext install_dir)
42-
ADD_LIBRARY(lua IMPORTED STATIC)
48+
ADD_LIBRARY(lua IMPORTED SHARED)
4349
SET_TARGET_PROPERTIES(lua PROPERTIES IMPORTED_LOCATION ${lua_location})
4450
ADD_DEPENDENCIES(lua lua-ext)
4551
SET(LUA_INCLUDE_DIR ${install_dir}/include)

0 commit comments

Comments
 (0)