diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..af7a570 --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,31 @@ +name: CI + +on: [push] + +jobs: + build: + + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [windows-2019, windows-2016] + + steps: + - uses: actions/checkout@v1 + - name: Run a multi-line script + run: | + cmake -H. -Bbuild + cmake --build build --config Release --target install + - uses: actions/upload-artifact@v1 + with: + name: lua-5.1 + path: build/install/versions/5.1 + - uses: actions/upload-artifact@v1 + with: + name: lua-5.2 + path: build/install/versions/5.2 + - uses: actions/upload-artifact@v1 + with: + name: lua-5.3 + path: build/install/versions/5.3 + diff --git a/CMakeLists.txt b/CMakeLists.txt index 54ed85d..e48010c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -11,18 +11,18 @@ option(WITH_LUAROCKS "Install Luarocks" ON) set(CMAKE_INSTALL_PREFIX ${CMAKE_CURRENT_BINARY_DIR}/install) execute_process(COMMAND git describe --dirty --tags OUTPUT_VARIABLE LUAVM_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE) -include(cmake/msvc.cmake) # load msvc variables -include(cmake/luarocks.cmake) +# include(cmake/msvc.cmake) # load msvc variables +# include(cmake/luarocks.cmake) include(cmake/lua.cmake) add_lua(VERSION 5.1 ABI 51 ROOT ${CMAKE_CURRENT_SOURCE_DIR}/lua/versions/lua-5.1) add_lua(VERSION 5.2 ABI 52 ROOT ${CMAKE_CURRENT_SOURCE_DIR}/lua/versions/lua-5.2) add_lua(VERSION 5.3 ABI 53 ROOT ${CMAKE_CURRENT_SOURCE_DIR}/lua/versions/lua-5.3) -add_jit(VERSION 2.0 ABI 51 ROOT ${CMAKE_CURRENT_SOURCE_DIR}/lua/versions/luajit-2.0) -add_jit(VERSION 2.1 ABI 51 ROOT ${CMAKE_CURRENT_SOURCE_DIR}/lua/versions/luajit-2.1) +#add_jit(VERSION 2.0 ABI 51 ROOT ${CMAKE_CURRENT_SOURCE_DIR}/lua/versions/luajit-2.0) +#add_jit(VERSION 2.1 ABI 51 ROOT ${CMAKE_CURRENT_SOURCE_DIR}/lua/versions/luajit-2.1) -include(cmake/external/OpenSSL.cmake) -include(cmake/external/ZLIB.cmake) +# include(cmake/external/OpenSSL.cmake) +# include(cmake/external/ZLIB.cmake) -include(cmake/luavm.cmake) -include(cmake/installer.cmake) +# include(cmake/luavm.cmake) +# include(cmake/installer.cmake) diff --git a/cmake/lua.cmake b/cmake/lua.cmake index 364d0e5..53f03f9 100644 --- a/cmake/lua.cmake +++ b/cmake/lua.cmake @@ -1,4 +1,4 @@ -include(cmake/luarocks.cmake) +# include(cmake/luarocks.cmake) # add_lua(VERSION 5.1 ABI 51 ROOT path/to/lua) function(add_lua) @@ -9,7 +9,11 @@ function(add_lua) # Shared library add_library(lua-${add_lua_VERSION}.shared SHARED ${LIBRARY_FILES}) - set_target_properties(lua-${add_lua_VERSION}.shared PROPERTIES OUTPUT_NAME lua${add_lua_ABI} COMPILE_DEFINITIONS LUA_BUILD_AS_DLL COMPILE_OPTIONS /wd4334) + if (MSVC) + set_target_properties(lua-${add_lua_VERSION}.shared PROPERTIES OUTPUT_NAME lua${add_lua_ABI} COMPILE_DEFINITIONS LUA_BUILD_AS_DLL COMPILE_OPTIONS /wd4334) + else() + set_target_properties(lua-${add_lua_VERSION}.shared PROPERTIES OUTPUT_NAME lua${add_lua_ABI}) + endif() # Lua executable add_executable(lua-${add_lua_VERSION} ${add_lua_ROOT}/src/lua.c) @@ -18,20 +22,26 @@ function(add_lua) # Luac executable add_executable(luac-${add_lua_VERSION} ${LUAC_FILES}) - set_target_properties(luac-${add_lua_VERSION} PROPERTIES OUTPUT_NAME luac COMPILE_OPTIONS /wd4334) + if (MSVC) + set_target_properties(luac-${add_lua_VERSION} PROPERTIES OUTPUT_NAME luac COMPILE_OPTIONS /wd4334) + else() + set_target_properties(luac-${add_lua_VERSION} PROPERTIES OUTPUT_NAME luac) + endif() # Config luarocks for this Lua version. - config_luarocks(${add_lua_VERSION} lua.exe lua${add_lua_ABI}.lib) + # # config_luarocks(${add_lua_VERSION} lua.exe lua${add_lua_ABI}.lib) # Install files set(PREFIX "${CMAKE_INSTALL_PREFIX}/versions/${add_lua_VERSION}") - set_target_properties(lua-${add_lua_VERSION}.shared lua-${add_lua_VERSION} luac-${add_lua_VERSION} - PROPERTIES - ARCHIVE_OUTPUT_DIRECTORY_RELEASE "${PREFIX}" - LIBRARY_OUTPUT_DIRECTORY_RELEASE "${PREFIX}" - RUNTIME_OUTPUT_DIRECTORY_RELEASE "${PREFIX}" + install( + TARGETS lua-${add_lua_VERSION}.shared lua-${add_lua_VERSION} luac-${add_lua_VERSION} + RUNTIME DESTINATION "${PREFIX}" + LIBRARY DESTINATION "${PREFIX}" + ARCHIVE DESTINATION "${PREFIX}" ) install(FILES ${LUA_HEADERS} DESTINATION "${PREFIX}/include") + install(FILES ${add_lua_ROOT}/README DESTINATION "${PREFIX}") + install(DIRECTORY ${add_lua_ROOT}/doc DESTINATION "${PREFIX}") endfunction() # add_jit(VERSION 2.0 ABI 51 ROOT path/to/luajit) @@ -60,7 +70,7 @@ function(add_jit) INSTALL_COMMAND "" ) - config_luarocks(${LUA_VERSION} luajit.exe lua${add_luajit_ABI}.lib) + # config_luarocks(${LUA_VERSION} luajit.exe lua${add_luajit_ABI}.lib) # Install files set(PREFIX "${CMAKE_INSTALL_PREFIX}/versions/${LUA_VERSION}")