diff options
author | Li Jin <dragon-fly@qq.com> | 2023-01-25 03:29:30 +0800 |
---|---|---|
committer | Li Jin <dragon-fly@qq.com> | 2023-01-25 03:29:30 +0800 |
commit | 2063353f773dd759c9151565272357c8e608c297 (patch) | |
tree | 050ef65d02c545a92f28162947b942c4a48c7b8a | |
parent | 3f881ba631a935b6d5ac2e4fc3fec9f08e498542 (diff) | |
download | yuescript-2063353f773dd759c9151565272357c8e608c297.tar.gz yuescript-2063353f773dd759c9151565272357c8e608c297.tar.bz2 yuescript-2063353f773dd759c9151565272357c8e608c297.zip |
fix CMakeList.txt.
-rw-r--r-- | CMakeLists.txt | 37 |
1 files changed, 20 insertions, 17 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 7532f81..8918eab 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt | |||
@@ -4,28 +4,28 @@ cmake_minimum_required(VERSION 3.1) | |||
4 | SET(LUA_LIBDIR ${LUA_INCDIR}/../lib " " ${LUA_INCDIR}/../../lib) | 4 | SET(LUA_LIBDIR ${LUA_INCDIR}/../lib " " ${LUA_INCDIR}/../../lib) |
5 | 5 | ||
6 | find_package(Lua) | 6 | find_package(Lua) |
7 | IF(LUA_FOUND) | 7 | if (LUA_FOUND) |
8 | SET(LUA_LIBRARIES "${LUA_LIBRARY}") | 8 | SET(LUA_LIBRARIES "${LUA_LIBRARY}") |
9 | ELSE(LUA_FOUND) | 9 | else () |
10 | MESSAGE(STATUS "Lua: using information from luarocks") | 10 | MESSAGE(STATUS "Lua: using information from luarocks") |
11 | SET(LUA_INCLUDE_DIR "${LUA_INCDIR}") | 11 | SET(LUA_INCLUDE_DIR "${LUA_INCDIR}") |
12 | GET_FILENAME_COMPONENT(LUA_EXEC_NAME ${LUA} NAME_WE) | 12 | GET_FILENAME_COMPONENT(LUA_EXEC_NAME ${LUA} NAME_WE) |
13 | IF(LUA_EXEC_NAME STREQUAL "luajit") | 13 | if (LUA_EXEC_NAME STREQUAL "luajit") |
14 | FIND_LIBRARY(LUA_LIBRARIES | 14 | FIND_LIBRARY(LUA_LIBRARIES |
15 | NAMES luajit libluajit | 15 | NAMES luajit libluajit |
16 | PATHS ${LUA_LIBDIR} | 16 | PATHS ${LUA_LIBDIR} |
17 | NO_DEFAULT_PATH) | 17 | NO_DEFAULT_PATH) |
18 | ELSEIF(LUA_EXEC_NAME MATCHES "lua.*") | 18 | elseif () |
19 | FIND_LIBRARY(LUA_LIBRARIES | 19 | FIND_LIBRARY(LUA_LIBRARIES |
20 | NAMES lua lua54 lua53 lua52 lua51 liblua liblua54 liblua53 liblua52 liblua51 liblua5.4 liblua5.3 liblua5.2 liblua5.1 | 20 | NAMES lua lua54 lua53 lua52 lua51 liblua liblua54 liblua53 liblua52 liblua51 liblua5.4 liblua5.3 liblua5.2 liblua5.1 |
21 | PATHS ${LUA_LIBDIR} | 21 | PATHS ${LUA_LIBDIR} |
22 | NO_DEFAULT_PATH) | 22 | NO_DEFAULT_PATH) |
23 | ENDIF(LUA_EXEC_NAME STREQUAL "luajit") | 23 | endif() |
24 | ENDIF(LUA_FOUND) | 24 | endif() |
25 | 25 | ||
26 | MESSAGE(STATUS "Lua: " ${LUA}) | 26 | message(STATUS "Lua: " ${LUA}) |
27 | MESSAGE(STATUS "Lua include: " ${LUA_INCLUDE_DIR}) | 27 | message(STATUS "Lua include: " ${LUA_INCLUDE_DIR}) |
28 | MESSAGE(STATUS "Lua library: ${LUA_LIBRARIES}") | 28 | message(STATUS "Lua library: ${LUA_LIBRARIES}") |
29 | 29 | ||
30 | enable_language(CXX) | 30 | enable_language(CXX) |
31 | include_directories(src src/3rdParty ${LUA_INCLUDE_DIR}) | 31 | include_directories(src src/3rdParty ${LUA_INCLUDE_DIR}) |
@@ -131,22 +131,25 @@ elseif (${CMAKE_BUILD_TYPE} MATCHES "Release") | |||
131 | target_compile_definitions(yue PRIVATE NDEBUG) | 131 | target_compile_definitions(yue PRIVATE NDEBUG) |
132 | endif() | 132 | endif() |
133 | 133 | ||
134 | if(CMAKE_DL_LIBS) | ||
135 | SET(YUE_DEP_LIBS ${LUA_LIBRARIES} " " ${CMAKE_DL_LIBS}) | ||
136 | else () | ||
137 | SET(YUE_DEP_LIBS ${LUA_LIBRARIES}) | ||
138 | endif() | ||
139 | |||
134 | find_package(Threads REQUIRED) | 140 | find_package(Threads REQUIRED) |
135 | if (APPLE) | 141 | if (APPLE) |
136 | set(MAC_LIBS "-framework CoreFoundation" "-framework CoreServices") | 142 | set(MAC_LIBS "-framework CoreFoundation" "-framework CoreServices") |
137 | target_link_libraries(yue PRIVATE ${LUA_LIBRARIES} ${MAC_LIBS} Threads::Threads) | 143 | target_link_libraries(yue PRIVATE ${YUE_DEP_LIBS} ${MAC_LIBS} Threads::Threads) |
138 | elseif (NOT (${CMAKE_SYSTEM_NAME} MATCHES "Haiku") AND NOT WIN32) | 144 | elseif (NOT (${CMAKE_SYSTEM_NAME} MATCHES "Haiku") AND NOT WIN32) |
139 | target_link_libraries(yue PRIVATE ${LUA_LIBRARIES} Threads::Threads) | 145 | target_link_libraries(yue PRIVATE ${YUE_DEP_LIBS} Threads::Threads) |
140 | else () | 146 | else () |
141 | target_link_libraries(yue PRIVATE ${LUA_LIBRARIES}) | 147 | target_link_libraries(yue PRIVATE ${YUE_DEP_LIBS}) |
142 | endif() | 148 | endif() |
143 | 149 | ||
144 | IF(CMAKE_DL_LIBS) | 150 | if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") |
145 | target_link_libraries(yue ${CMAKE_DL_LIBS}) | ||
146 | ENDIF(CMAKE_DL_LIBS) | ||
147 | IF(CMAKE_CXX_COMPILER_ID STREQUAL "GNU") | ||
148 | target_link_options(yue PRIVATE -lstdc++fs) | 151 | target_link_options(yue PRIVATE -lstdc++fs) |
149 | ENDIF(CMAKE_CXX_COMPILER_ID STREQUAL "GNU") | 152 | endif (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") |
150 | 153 | ||
151 | install(CODE "") | 154 | install(CODE "") |
152 | 155 | ||