From b6ad44396607843373b78b2d279fd756427dce4d Mon Sep 17 00:00:00 2001 From: cos Date: Mon, 8 Sep 2025 21:38:57 +0200 Subject: [PATCH 1/2] feat: v5.4.8 + v3.12.2 --- CMakeLists.txt | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index a5d4430..76799bd 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 3.26) -set(LUA_VERSION 5.4.6) +set(LUA_VERSION 5.4.8) project(Lua VERSION ${LUA_VERSION} DESCRIPTION "Lua and LuaRocks packaged by DEVCOM" @@ -9,7 +9,7 @@ project(Lua # https://www.lua.org/ftp/ set(LUA_TARBALL lua-${CMAKE_PROJECT_VERSION}.tar.gz) -set(LUA_TARBALL_SHA256 7d5ea1b9cb6aa0b59ca3dde1c6adcb57ef83a1ba8e5432c0ecd06bf439b3ad88) +set(LUA_TARBALL_SHA256 4f18ddae154e793e46eeab727c59ef1c0c0c2b744e7b94219710d76f530629ae) if(NOT EXISTS ${CMAKE_CURRENT_LIST_DIR}/${LUA_TARBALL}) file(DOWNLOAD https://www.lua.org/ftp/${LUA_TARBALL} @@ -22,12 +22,14 @@ if(NOT EXISTS ${CMAKE_CURRENT_LIST_DIR}/${LUA_TARBALL}) endif() if(WIN32) - set(LUAROCKS_VERSION 3.9.2) - set(LUAROCKS_TARBALL luarocks-${LUAROCKS_VERSION}-windows-64.zip) - - if(NOT EXISTS ${CMAKE_CURRENT_LIST_DIR}/${LUAROCKS_TARBALL}) - file(DOWNLOAD http://luarocks.github.io/luarocks/releases/${LUAROCKS_TARBALL} - ${CMAKE_CURRENT_LIST_DIR}/${LUAROCKS_TARBALL} + set(LUAROCKS_VERSION 3.12.2) + set(LUAROCKS_ZIPFILE luarocks-${LUAROCKS_VERSION}-windows-64.zip) + set(LUAROCKS_ZIPFILE_SHA256 d3f4ddda6926618cadf560170a7c18a5ceead5997ba10832cd0e3b624c7de886) + + if(NOT EXISTS ${CMAKE_CURRENT_LIST_DIR}/${LUAROCKS_ZIPFILE}) + file(DOWNLOAD http://luarocks.github.io/luarocks/releases/${LUAROCKS_ZIPFILE} + ${CMAKE_CURRENT_LIST_DIR}/${LUAROCKS_ZIPFILE} + EXPECTED_HASH SHA256=${LUAROCKS_ZIPFILE_SHA256} ) file(ARCHIVE_EXTRACT INPUT ${CMAKE_CURRENT_LIST_DIR}/${LUAROCKS_TARBALL} DESTINATION ${CMAKE_CURRENT_LIST_DIR} From c5cc193f7af4a663ddb84079255a4c3dd082a41b Mon Sep 17 00:00:00 2001 From: cos Date: Mon, 8 Sep 2025 21:39:35 +0200 Subject: [PATCH 2/2] style: obey cmakelint --- CMakeLists.txt | 55 +++++++++++++++++++++++++++++--------------------- 1 file changed, 32 insertions(+), 23 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 76799bd..578810e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,3 +1,5 @@ +# What is this E1126 warning about? +# cmake-lint: disable=E1126 cmake_minimum_required(VERSION 3.26) set(LUA_VERSION 5.4.8) project(Lua @@ -5,50 +7,55 @@ project(Lua DESCRIPTION "Lua and LuaRocks packaged by DEVCOM" HOMEPAGE_URL https://github.com/DevelopersCommunity/cmake-lua LANGUAGES C - ) +) # https://www.lua.org/ftp/ set(LUA_TARBALL lua-${CMAKE_PROJECT_VERSION}.tar.gz) -set(LUA_TARBALL_SHA256 4f18ddae154e793e46eeab727c59ef1c0c0c2b744e7b94219710d76f530629ae) +set(LUA_TARBALL_SHA256 + 4f18ddae154e793e46eeab727c59ef1c0c0c2b744e7b94219710d76f530629ae) if(NOT EXISTS ${CMAKE_CURRENT_LIST_DIR}/${LUA_TARBALL}) file(DOWNLOAD https://www.lua.org/ftp/${LUA_TARBALL} ${CMAKE_CURRENT_LIST_DIR}/${LUA_TARBALL} EXPECTED_HASH SHA256=${LUA_TARBALL_SHA256} - ) + ) + file(ARCHIVE_EXTRACT INPUT ${CMAKE_CURRENT_LIST_DIR}/${LUA_TARBALL} DESTINATION ${CMAKE_CURRENT_LIST_DIR} - ) + ) endif() if(WIN32) set(LUAROCKS_VERSION 3.12.2) set(LUAROCKS_ZIPFILE luarocks-${LUAROCKS_VERSION}-windows-64.zip) - set(LUAROCKS_ZIPFILE_SHA256 d3f4ddda6926618cadf560170a7c18a5ceead5997ba10832cd0e3b624c7de886) + set(LUAROCKS_ZIPFILE_SHA256 + d3f4ddda6926618cadf560170a7c18a5ceead5997ba10832cd0e3b624c7de886) if(NOT EXISTS ${CMAKE_CURRENT_LIST_DIR}/${LUAROCKS_ZIPFILE}) - file(DOWNLOAD http://luarocks.github.io/luarocks/releases/${LUAROCKS_ZIPFILE} + file(DOWNLOAD + http://luarocks.github.io/luarocks/releases/${LUAROCKS_ZIPFILE} ${CMAKE_CURRENT_LIST_DIR}/${LUAROCKS_ZIPFILE} EXPECTED_HASH SHA256=${LUAROCKS_ZIPFILE_SHA256} - ) - file(ARCHIVE_EXTRACT INPUT ${CMAKE_CURRENT_LIST_DIR}/${LUAROCKS_TARBALL} + ) + file(ARCHIVE_EXTRACT INPUT ${CMAKE_CURRENT_LIST_DIR}/${LUAROCKS_ZIPFILE} DESTINATION ${CMAKE_CURRENT_LIST_DIR} - ) + OUTPUT ${CMAKE_CURRENT_LIST_DIR}/luarocks-${LUAROCKS_VERSION}-windows-64 + ) endif() set(LUA_LOGO lua-logo-nolabel.ps) if(NOT EXISTS ${CMAKE_CURRENT_LIST_DIR}/${LUA_LOGO}) file(DOWNLOAD https://www.lua.org/images/${LUA_LOGO} ${CMAKE_CURRENT_LIST_DIR}/${LUA_LOGO} - ) + ) endif() add_custom_command(OUTPUT lua.ico COMMAND magick ${CMAKE_CURRENT_LIST_DIR}/${LUA_LOGO} -resize 256x256 lua.ico MAIN_DEPENDENCY ${CMAKE_CURRENT_LIST_DIR}/${LUA_LOGO} COMMENT "Generating Lua icon" - ) - add_custom_target(luaicon ALL DEPENDS lua.ico) + ) + add_custom_target(luaicon ALL DEPENDS lua.ico COMMENT "icon") endif() set(LUA_SRC lua-${CMAKE_PROJECT_VERSION}/src) @@ -91,11 +98,11 @@ set(LIB set(LUA ${LUA_SRC}/lua.c - ) +) -set (LUAC +set(LUAC ${LUA_SRC}/luac.c - ) +) add_executable(lua ${LUA} ${LIB}) add_executable(luac ${LUAC} ${LIB}) @@ -113,17 +120,19 @@ add_library(lualib SHARED ${LIB}) target_sources(lualib PUBLIC FILE_SET include TYPE HEADERS BASE_DIRS ${LUA_SRC} - FILES ${LUA_SRC}/lauxlib.h ${LUA_SRC}/lua.h ${LUA_SRC}/lua.hpp ${LUA_SRC}/luaconf.h ${LUA_SRC}/lualib.h - ) + FILES ${LUA_SRC}/lauxlib.h ${LUA_SRC}/lua.h ${LUA_SRC}/lua.hpp + ${LUA_SRC}/luaconf.h ${LUA_SRC}/lualib.h +) if(WIN32) target_compile_definitions(lualib PUBLIC LUA_BUILD_AS_DLL) - set_property(TARGET lualib PROPERTY OUTPUT_NAME lua${CMAKE_PROJECT_VERSION_MAJOR}${CMAKE_PROJECT_VERSION_MINOR}) + set_property(TARGET lualib PROPERTY OUTPUT_NAME + lua${CMAKE_PROJECT_VERSION_MAJOR}${CMAKE_PROJECT_VERSION_MINOR}) - install(PROGRAMS - ${CMAKE_CURRENT_LIST_DIR}/luarocks-${LUAROCKS_VERSION}-windows-64/luarocks.exe - ${CMAKE_CURRENT_LIST_DIR}/luarocks-${LUAROCKS_VERSION}-windows-64/luarocks-admin.exe - TYPE BIN) + set(EXE_DIR + ${CMAKE_CURRENT_LIST_DIR}/luarocks-${LUAROCKS_VERSION}-windows-64/) + install(PROGRAMS ${EXE_DIR}/luarocks.exe ${EXE_DIR}/luarocks-admin.exe + TYPE BIN) else() set_property(TARGET lualib PROPERTY OUTPUT_NAME lua) endif() @@ -146,7 +155,7 @@ if(WIN32) else() install(FILES ${LUA_DOC}/lua.1 ${LUA_DOC}/luac.1 DESTINATION man/man1 - ) + ) endif() set(CPACK_INCLUDE_TOPLEVEL_DIRECTORY FALSE) set(CPACK_RESOURCE_FILE_LICENSE ${CMAKE_CURRENT_LIST_DIR}/LICENSE.txt)