include("plat/build.lua") local installmap = {} local function addheader(dir, list) for _, f in ipairs(list) do local b = basename(f) installmap[concatpath("$(PLATIND)/include/modula2/", dir, b)] = f end end addheader("", filenamesof("./*.def")) installable { name = "headers", map = installmap } for _, plat in ipairs(vars.plats) do acklibrary { name = "lib_"..plat, srcs = { "./*.c", "./*.mod", "./EM.e", "./LtoUset.e", "./absf.e", "./par_misc.e", }, hdrs = {}, -- must be empty deps = { "lang/cem/libcc.ansi/headers+pkg", "plat/"..plat.."/include+pkg", "h+emheaders", "lang/m2/include+headers", }, vars = { plat = plat } } ackfile { name = "mrt_"..plat, srcs = { "./head_m2.e" }, vars = { plat = plat }, deps = { "h+emheaders" } } local suffix = plat:find("^em") and "m" or "o" installable { name = "pkg_"..plat, map = { ["$(PLATIND)/"..plat.."/modula2."..suffix] = "+mrt_"..plat, ["$(PLATIND)/"..plat.."/libmodula2.a"] = "+lib_"..plat, "+headers", } } end