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 | ||
