1
0
mirror of https://github.com/elua/elua.git synced 2025-01-25 01:02:54 +08:00
elua/.circleci/ci_builder.lua
2018-05-20 23:22:51 +03:00

32 lines
1020 B
Lua

package.path = package.path .. ";../utils/?.lua"
local utils = require "utils.utils"
local sf = string.format
-- List of platforms to build
local ci_boards = {"ek-lm3s8962", "elua-puc", "mbed", "arm2368"}
-- Variants to build for each platform
-- TODO: is "lualong" also needed here?
local build_variants = {"lua", "lualonglong"}
-- Run a single build command
local function build_single(header, cmd)
if header then print(utils.col_magenta(sf(">>>>>>>> %s", header))) end
print(utils.col_magenta(sf(">>>>>>>> Command: %s", cmd)))
local res = os.execute(cmd)
if res ~= 0 then os.exit(res) end
end
-- Build the cross-compiler first
build_single("Building cross-compiler", "lua cross-lua.lua")
-- Then the actual targets
for _, board in pairs(ci_boards) do
for _, variant in pairs(build_variants) do
local header = sf("Building eLua for %s (%s)", board, variant)
local cmd = sf("lua build_elua.lua board=%s target=%s", board, variant)
build_single(header, cmd)
end
end