c569ca15d8
the +pkg forms of the rules and getting the headers via the paths in descr, rather than depending on the +headers version.
59 lines
1,001 B
Lua
59 lines
1,001 B
Lua
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",
|
|
},
|
|
vars = { plat = plat }
|
|
}
|
|
|
|
ackfile {
|
|
name = "mrt_"..plat,
|
|
srcs = { "./head_m2.e" },
|
|
vars = { plat = plat },
|
|
deps = {
|
|
"h+emheaders"
|
|
}
|
|
}
|
|
|
|
installable {
|
|
name = "pkg_"..plat,
|
|
map = {
|
|
["$(PLATIND)/"..plat.."/modula2.o"] = "+mrt_"..plat,
|
|
["$(PLATIND)/"..plat.."/libmodula2.a"] = "+lib_"..plat,
|
|
"+headers",
|
|
}
|
|
}
|
|
end
|
|
|
|
|