summaryrefslogtreecommitdiff
path: root/meta.lua
blob: 9918ad07f6985f5ee9f0acb11136d95ab66a36fc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
local lua_versions = {
    ["51"] = true,
    ["52"] = true,
    ["53"] = true,
    ["54"] = true,
}

local optimizations = {
    tiny = "-Oz",
    size = "-Os",
    zero = "-O0",
    one = "-O1",
    two = "-O2",
    three = "-O3",
    debug = "-Og",
}

local debug = {
    release = "",
    debug = "-g",
}
local compilers = {
    --[[
    "mingw32",
    ]]
    "mingw64",
    --[[
    "clang32",
    "clang64",
    ]]
}
local builds = {}

for version, _, name, optimization, rel, flag, _, image in cartesian(lua_versions, optimizations, debug, compilers) do
    local buildname = "luasocket-" .. version .. "-" .. image
    builds[buildname] = {
        image = "image-luarocks-" .. version .. "-" .. image,
        requires = {
            {"git", "lpeg"},
            {"cicd", "image-luarocks-" .. version .. "-" .. image},
            {"cicd", "lua" .. table.concat({version, name, rel, image}, "-") .. ":lua" .. version .. ".dll"},
        },
        produces = {
            ["luasocket-3.1.0-1.mingw32-x86_64.rock"] = {"luarocks.sh", "luasocket", image, version, name, rel},
        },
        env = {
            CFLAGS = optimization .. " " .. flag,
            rockver = version:gsub("(%d)(%d)$", "%1.%2"),
            version = version,
        },
    }
end

return builds