diff options
| -rw-r--r-- | CMakeLists.txt | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 613019e..9149ec5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt | |||
| @@ -1,6 +1,36 @@ | |||
| 1 | cmake_minimum_required(VERSION 3.10) | 1 | cmake_minimum_required(VERSION 3.10) |
| 2 | project(yue CXX) | 2 | project(yue CXX) |
| 3 | 3 | ||
| 4 | include(FetchContent) | ||
| 5 | |||
| 6 | execute_process( | ||
| 7 | COMMAND ${LUA} -v | ||
| 8 | OUTPUT_VARIABLE LUA_VERSION_OUTPUT | ||
| 9 | ERROR_VARIABLE LUA_VERSION_OUTPUT | ||
| 10 | OUTPUT_STRIP_TRAILING_WHITESPACE | ||
| 11 | ) | ||
| 12 | |||
| 13 | string(REGEX MATCH "Lua ([0-9]+)\\.([0-9]+)\\.([0-9]+)" LUA_VERSION_MATCH ${LUA_VERSION_OUTPUT}) | ||
| 14 | set(LUA_VERSION "${CMAKE_MATCH_1}.${CMAKE_MATCH_2}.${CMAKE_MATCH_3}") | ||
| 15 | |||
| 16 | set(LUA_TARBALL_URL "https://www.lua.org/ftp/lua-${LUA_VERSION}.tar.gz") | ||
| 17 | |||
| 18 | message(STATUS "Detected Lua version: ${LUA_VERSION}") | ||
| 19 | message(STATUS "Downloading Lua source from: ${LUA_TARBALL_URL}") | ||
| 20 | |||
| 21 | FetchContent_Declare( | ||
| 22 | lua_source | ||
| 23 | URL ${LUA_TARBALL_URL} | ||
| 24 | ) | ||
| 25 | |||
| 26 | FetchContent_MakeAvailable(lua_source) | ||
| 27 | |||
| 28 | set(LUA_SOURCE_DIR "${lua_source_SOURCE_DIR}") | ||
| 29 | |||
| 30 | include_directories(${LUA_SOURCE_DIR}/src) | ||
| 31 | |||
| 32 | message(STATUS "Lua source directory: ${LUA_SOURCE_DIR}/src") | ||
| 33 | |||
| 4 | set(LUA_LIBDIR ${LUA_INCDIR}/../lib ${LUA_INCDIR}/../../lib) | 34 | set(LUA_LIBDIR ${LUA_INCDIR}/../lib ${LUA_INCDIR}/../../lib) |
| 5 | set(LUA_INCLUDE_DIR "${LUA_INCDIR}") | 35 | set(LUA_INCLUDE_DIR "${LUA_INCDIR}") |
| 6 | 36 | ||
