local lua_versions = { ["51"] = { link = "https://www.lua.org/ftp/lua-5.1.5.tar.gz", slib = "liblua.a", bin = "lua.exe", dlib = "lua51.dll" }, --[[ ["52"] = {"liblua.a", "lua.exe", "lua52.dll"}, ["53"] = {"liblua.a", "lua.exe", "lua53.dll"}, ["54"] = {"liblua.a", "lua.exe", "lua54.dll"}, ["jit"] = {"libluajit.a", "luajit.exe", "lua51.dll"}, ]] } local optimizations = { tiny = "-Oz", --[[ size = "-Os", debug = "-Og", zero = "-O0", one = "-O1", two = "-O2", three = "-O3", ]] } local debug = { --[[ release = "", ]] debug = "-g", } local compilers = {--[["mingw32",]]"mingw64"--[[,"clang32","clang64"]]} local builds = {} for version_k, version_v, opti_k, opti_v, debug_k, debug_v, comp_k, comp_v in cartesian(lua_versions, optimizations, debug, compilers) do local name = "luarocks-" .. version_k .. "-" .. opti_k .. "-" .. debug_k .. "-" .. comp_v builds[name] = { image="image-" .. comp_v, requires = { {"git", "luarocks"}, {"http", version_v.link}, {"cicd", "lua" .. version_k .. "-" .. opti_k .. "-" .. debug_k .. "-" .. comp_v .. ":" .. version_v.slib}, {"cicd", "lua" .. version_k .. "-" .. opti_k .. "-" .. debug_k .. "-" .. comp_v .. ":" .. version_v.bin}, {"cicd", "lua" .. version_k .. "-" .. opti_k .. "-" .. debug_k .. "-" .. comp_v .. ":" .. version_v.dlib}, {"cicd", "bzip2-" .. opti_k .. "-" .. debug_k .. "-" .. comp_v .. ":libbz2.a"}, {"cicd", "libressl-" .. opti_k .. "-" .. debug_k .. "-" .. comp_v .. ":libssl.a"}, {"cicd", "libz-" .. opti_k .. "-" .. debug_k .. "-" .. comp_v .. ":libz.a"}, }, produces = { ["luarocks.exe"] = true, }, env = { CFLAGS=" " .. opti_v .. " " .. debug_v, } } end return builds