Rework all the ackbuilder scripts not to use wildcards, because we can't expand
them without luaposix, which isn't available (easily) on OSX or Windows.
This commit is contained in:
parent
99ec64a7a0
commit
25b6712e63
|
@ -7,7 +7,6 @@
|
||||||
-- is = { set of rule types which made the target }
|
-- is = { set of rule types which made the target }
|
||||||
-- }
|
-- }
|
||||||
|
|
||||||
local posix = require("posix")
|
|
||||||
local emitter = {}
|
local emitter = {}
|
||||||
local rules = {}
|
local rules = {}
|
||||||
local targets = {}
|
local targets = {}
|
||||||
|
@ -125,7 +124,7 @@ local function concatpath(...)
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Returns a list of the targets within the given collection; the keys of any
|
-- Returns a list of the targets within the given collection; the keys of any
|
||||||
-- keyed items are lost. Lists and wildcards are expanded.
|
-- keyed items are lost. Lists are expanded.
|
||||||
local function targetsof(...)
|
local function targetsof(...)
|
||||||
local o = {}
|
local o = {}
|
||||||
|
|
||||||
|
@ -226,9 +225,6 @@ local function abspath(...)
|
||||||
return dotocollection({...},
|
return dotocollection({...},
|
||||||
function(filename)
|
function(filename)
|
||||||
assertString(filename, 1)
|
assertString(filename, 1)
|
||||||
if not filename:find("^[/$]") then
|
|
||||||
filename = concatpath(posix.getcwd(), filename)
|
|
||||||
end
|
|
||||||
return filename
|
return filename
|
||||||
end
|
end
|
||||||
)
|
)
|
||||||
|
@ -397,13 +393,17 @@ end
|
||||||
|
|
||||||
local function loadbuildfilefor(filepart, targetpart)
|
local function loadbuildfilefor(filepart, targetpart)
|
||||||
local normalname = concatpath(filepart, "/build.lua")
|
local normalname = concatpath(filepart, "/build.lua")
|
||||||
if posix.access(normalname, "r") then
|
local fp = io.open(normalname, "r")
|
||||||
|
if fp then
|
||||||
|
fp:close()
|
||||||
loadbuildfile(normalname)
|
loadbuildfile(normalname)
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
local extendedname = concatpath(filepart, "/build-"..targetpart..".lua")
|
local extendedname = concatpath(filepart, "/build-"..targetpart..".lua")
|
||||||
if posix.access(extendedname, "r") then
|
fp = io.open(extendedname, "r")
|
||||||
|
if fp then
|
||||||
|
fp:close()
|
||||||
loadbuildfile(extendedname)
|
loadbuildfile(extendedname)
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
@ -420,10 +420,7 @@ loadtarget = function(targetname)
|
||||||
if not targetname:find("%+") then
|
if not targetname:find("%+") then
|
||||||
local files
|
local files
|
||||||
if targetname:find("[?*]") then
|
if targetname:find("[?*]") then
|
||||||
files = posix.glob(targetname)
|
error("wildcards not supported")
|
||||||
if not files then
|
|
||||||
files = {}
|
|
||||||
end
|
|
||||||
else
|
else
|
||||||
files = {targetname}
|
files = {targetname}
|
||||||
end
|
end
|
||||||
|
@ -819,8 +816,6 @@ local function parse_arguments(argmap, arg)
|
||||||
end
|
end
|
||||||
|
|
||||||
globals = {
|
globals = {
|
||||||
posix = posix,
|
|
||||||
|
|
||||||
abspath = abspath,
|
abspath = abspath,
|
||||||
asstring = asstring,
|
asstring = asstring,
|
||||||
basename = basename,
|
basename = basename,
|
||||||
|
|
18
h/build.lua
18
h/build.lua
|
@ -23,7 +23,23 @@ normalrule {
|
||||||
clibrary {
|
clibrary {
|
||||||
name = "emheaders",
|
name = "emheaders",
|
||||||
hdrs = {
|
hdrs = {
|
||||||
"./*.h",
|
"./arch.h",
|
||||||
|
"./as_spec.h",
|
||||||
|
"./cgg_cg.h",
|
||||||
|
"./cg_pattern.h",
|
||||||
|
"./em_abs.h",
|
||||||
|
"./em_ego.h",
|
||||||
|
"./em_flag.h",
|
||||||
|
"./em_mes.h",
|
||||||
|
"./em_ptyp.h",
|
||||||
|
"./em_reg.h",
|
||||||
|
"./ip_spec.h",
|
||||||
|
"./ocm_chan.h",
|
||||||
|
"./ocm_parco.h",
|
||||||
|
"./ocm_proc.h",
|
||||||
|
"./out.h",
|
||||||
|
"./ranlib.h",
|
||||||
|
"./stb.h",
|
||||||
"./con_float",
|
"./con_float",
|
||||||
"+em_path",
|
"+em_path",
|
||||||
"+local",
|
"+local",
|
||||||
|
|
|
@ -2,10 +2,11 @@
|
||||||
cprogram {
|
cprogram {
|
||||||
name = "em_b",
|
name = "em_b",
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.c",
|
"./b0.c",
|
||||||
|
"./b1.c",
|
||||||
},
|
},
|
||||||
deps = {
|
deps = {
|
||||||
"./*.h",
|
"./b.h",
|
||||||
"modules+headers",
|
"modules+headers",
|
||||||
"modules/src/alloc+lib",
|
"modules/src/alloc+lib",
|
||||||
"modules/src/data+lib",
|
"modules/src/data+lib",
|
||||||
|
|
|
@ -4,12 +4,12 @@ for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.c",
|
"./init.c",
|
||||||
"./*.e",
|
"./main.c",
|
||||||
},
|
},
|
||||||
hdrs = {}, -- must be empty
|
hdrs = {}, -- must be empty
|
||||||
deps = {
|
deps = {
|
||||||
"./*.h",
|
"./b.h",
|
||||||
"h+emheaders",
|
"h+emheaders",
|
||||||
"lang/cem/libcc.ansi/headers+pkg",
|
"lang/cem/libcc.ansi/headers+pkg",
|
||||||
"plat/"..plat.."/include+pkg",
|
"plat/"..plat.."/include+pkg",
|
||||||
|
|
|
@ -4,15 +4,47 @@ for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.c",
|
"./abs.c",
|
||||||
"./*.e",
|
"./asc.c",
|
||||||
|
"./asrt.c",
|
||||||
|
"./atn.c",
|
||||||
|
"./chr.c",
|
||||||
|
"./conversion.c",
|
||||||
|
"./error.c",
|
||||||
|
"./exp.c",
|
||||||
|
"./file.c",
|
||||||
|
"./hlt.c",
|
||||||
|
"./io.c",
|
||||||
|
"./log.c",
|
||||||
|
"./mki.c",
|
||||||
|
"./oct.c",
|
||||||
|
"./peek.c",
|
||||||
|
"./power.c",
|
||||||
|
"./print.c",
|
||||||
|
"./random.c",
|
||||||
|
"./read.c",
|
||||||
|
"./return.c",
|
||||||
|
"./salloc.c",
|
||||||
|
"./sgn.c",
|
||||||
|
"./sin.c",
|
||||||
|
"./sqt.c",
|
||||||
|
"./stop.c",
|
||||||
|
"./string.c",
|
||||||
|
"./swap.c",
|
||||||
|
"./trace.c",
|
||||||
|
"./trap.c",
|
||||||
|
"./write.c",
|
||||||
|
"./fef.e",
|
||||||
|
"./fif.e",
|
||||||
|
"./setline.e",
|
||||||
},
|
},
|
||||||
hdrs = {}, -- must be empty
|
hdrs = {}, -- must be empty
|
||||||
deps = {
|
deps = {
|
||||||
"h+emheaders",
|
"h+emheaders",
|
||||||
"lang/cem/libcc.ansi/headers+pkg",
|
"lang/cem/libcc.ansi/headers+pkg",
|
||||||
"plat/"..plat.."/include+pkg",
|
"plat/"..plat.."/include+pkg",
|
||||||
"./*.h",
|
"./bc_io.h",
|
||||||
|
"./lib.h",
|
||||||
},
|
},
|
||||||
vars = { plat = plat }
|
vars = { plat = plat }
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,7 @@ include("util/LLgen/build.lua")
|
||||||
|
|
||||||
llgen {
|
llgen {
|
||||||
name = "llgen",
|
name = "llgen",
|
||||||
srcs = { "./*.g" }
|
srcs = { "./basic.g" }
|
||||||
}
|
}
|
||||||
|
|
||||||
normalrule {
|
normalrule {
|
||||||
|
@ -21,11 +21,29 @@ normalrule {
|
||||||
cprogram {
|
cprogram {
|
||||||
name = "em_bem",
|
name = "em_bem",
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.c",
|
"./bem.c",
|
||||||
|
"./compile.c",
|
||||||
|
"./eval.c",
|
||||||
|
"./func.c",
|
||||||
|
"./gencode.c",
|
||||||
|
"./graph.c",
|
||||||
|
"./initialize.c",
|
||||||
|
"./parsepar.c",
|
||||||
|
"./symbols.c",
|
||||||
|
"./util.c",
|
||||||
matching(filenamesof("+llgen"), "%.c$"),
|
matching(filenamesof("+llgen"), "%.c$"),
|
||||||
},
|
},
|
||||||
deps = {
|
deps = {
|
||||||
"./*.h",
|
"./bem.h",
|
||||||
|
"./eval.h",
|
||||||
|
"./func.h",
|
||||||
|
"./gencode.h",
|
||||||
|
"./graph.h",
|
||||||
|
"./llmess.h",
|
||||||
|
"./parsepar.h",
|
||||||
|
"./symbols.h",
|
||||||
|
"./util.h",
|
||||||
|
"./yylexp.h",
|
||||||
"+llgen",
|
"+llgen",
|
||||||
"+tokentab_h",
|
"+tokentab_h",
|
||||||
"h+emheaders",
|
"h+emheaders",
|
||||||
|
|
|
@ -13,11 +13,34 @@ normalrule {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
local str_files = basename(filenamesof("./*.str"))
|
local str_files = {
|
||||||
|
"./code.str",
|
||||||
|
"./declar.str",
|
||||||
|
"./def.str",
|
||||||
|
"./estack.str",
|
||||||
|
"./expr.str",
|
||||||
|
"./field.str",
|
||||||
|
"./idf.str",
|
||||||
|
"./l_brace.str",
|
||||||
|
"./l_outdef.str",
|
||||||
|
"./l_state.str",
|
||||||
|
"./macro.str",
|
||||||
|
"./next.str",
|
||||||
|
"./proto.str",
|
||||||
|
"./stack.str",
|
||||||
|
"./stmt.str",
|
||||||
|
"./struct.str",
|
||||||
|
"./switch.str",
|
||||||
|
"./type.str",
|
||||||
|
"./util.str"
|
||||||
|
}
|
||||||
|
|
||||||
|
local str_bases = basename(filenamesof(str_files))
|
||||||
|
|
||||||
local str_targets = {}
|
local str_targets = {}
|
||||||
|
|
||||||
for _, f in ipairs(str_files) do
|
for _, f in ipairs(str_bases) do
|
||||||
local bf = f:gsub("%.str$", "")
|
local bf = f:gsub("%.str$", ""):gsub("^$./", "")
|
||||||
str_targets[#str_targets+1] = normalrule {
|
str_targets[#str_targets+1] = normalrule {
|
||||||
name = "allocd_header/"..bf,
|
name = "allocd_header/"..bf,
|
||||||
ins = { "./make.allocd", "./"..f },
|
ins = { "./make.allocd", "./"..f },
|
||||||
|
@ -32,7 +55,7 @@ normalrule {
|
||||||
name = "next-c",
|
name = "next-c",
|
||||||
ins = {
|
ins = {
|
||||||
"./make.next",
|
"./make.next",
|
||||||
"./*.str",
|
str_files
|
||||||
},
|
},
|
||||||
outleaves = { "next.c" },
|
outleaves = { "next.c" },
|
||||||
commands = {
|
commands = {
|
||||||
|
@ -78,7 +101,11 @@ llgen {
|
||||||
name = "llgen",
|
name = "llgen",
|
||||||
srcs = {
|
srcs = {
|
||||||
"+tokenfile-g", -- must be first
|
"+tokenfile-g", -- must be first
|
||||||
"./*.g",
|
"./declar.g",
|
||||||
|
"./expression.g",
|
||||||
|
"./ival.g",
|
||||||
|
"./program.g",
|
||||||
|
"./statement.g",
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -58,7 +58,8 @@ normalrule {
|
||||||
name = "next_c",
|
name = "next_c",
|
||||||
ins = {
|
ins = {
|
||||||
"./make.next",
|
"./make.next",
|
||||||
"./*.str",
|
"./macro.str",
|
||||||
|
"./replace.str",
|
||||||
},
|
},
|
||||||
outleaves = { "next.c" },
|
outleaves = { "next.c" },
|
||||||
commands = {
|
commands = {
|
||||||
|
@ -82,7 +83,22 @@ tabgen {
|
||||||
cprogram {
|
cprogram {
|
||||||
name = "cpp",
|
name = "cpp",
|
||||||
srcs = concat(
|
srcs = concat(
|
||||||
"./*.c",
|
"./ch3bin.c",
|
||||||
|
"./ch3mon.c",
|
||||||
|
"./domacro.c",
|
||||||
|
"./error.c",
|
||||||
|
"./expr.c",
|
||||||
|
"./idf.c",
|
||||||
|
"./init.c",
|
||||||
|
"./input.c",
|
||||||
|
"./LLlex.c",
|
||||||
|
"./LLmessage.c",
|
||||||
|
"./main.c",
|
||||||
|
"./options.c",
|
||||||
|
"./preprocess.c",
|
||||||
|
"./replace.c",
|
||||||
|
"./skip.c",
|
||||||
|
"./tokenname.c",
|
||||||
matching(filenamesof(llgen), "%.c$"),
|
matching(filenamesof(llgen), "%.c$"),
|
||||||
"+next_c",
|
"+next_c",
|
||||||
"+symbol2str_c",
|
"+symbol2str_c",
|
||||||
|
|
|
@ -33,24 +33,163 @@ for _, plat in ipairs(vars.plats) do
|
||||||
srcs = {
|
srcs = {
|
||||||
"+ctype_files",
|
"+ctype_files",
|
||||||
"+ctype_tab",
|
"+ctype_tab",
|
||||||
"./core/ctype/*.c",
|
"./core/ctype/tolower.c",
|
||||||
"./core/errno/*.c",
|
"./core/ctype/toupper.c",
|
||||||
"./core/locale/*.c",
|
"./core/errno/errlist.c",
|
||||||
"./core/math/*.c",
|
"./core/errno/perror.c",
|
||||||
"./core/math/*.e",
|
"./core/errno/strerror.c",
|
||||||
"./core/misc/*.c",
|
"./core/locale/localeconv.c",
|
||||||
"./core/printf/*.c",
|
"./core/locale/setlocale.c",
|
||||||
"./core/scanf/*.c",
|
"./core/math/asin.c",
|
||||||
"./core/setjmp/*.c",
|
"./core/math/atan2.c",
|
||||||
"./core/setjmp/*.e",
|
"./core/math/atan.c",
|
||||||
"./core/stdlib/*.c",
|
"./core/math/ceil.c",
|
||||||
"./core/stdio/*.c",
|
"./core/math/exp.c",
|
||||||
"./core/string/*.c",
|
"./core/math/fabs.c",
|
||||||
"./core/time/*.c",
|
"./core/math/floor.c",
|
||||||
"./sys/exit/*.c",
|
"./core/math/fmod.c",
|
||||||
"./sys/malloc/*.c",
|
"./core/math/frexp.e",
|
||||||
"./sys/misc/*.c",
|
"./core/math/hugeval.c",
|
||||||
"./sys/stdio/*.c",
|
"./core/math/hypot.c",
|
||||||
|
"./core/math/isnan.c",
|
||||||
|
"./core/math/ldexp.c",
|
||||||
|
"./core/math/log10.c",
|
||||||
|
"./core/math/log.c",
|
||||||
|
"./core/math/modf.e",
|
||||||
|
"./core/math/pow.c",
|
||||||
|
"./core/math/sin.c",
|
||||||
|
"./core/math/sinh.c",
|
||||||
|
"./core/math/sqrt.c",
|
||||||
|
"./core/math/tan.c",
|
||||||
|
"./core/math/tanh.c",
|
||||||
|
"./core/misc/abort.c",
|
||||||
|
"./core/misc/assert.c",
|
||||||
|
"./core/misc/getopt.c",
|
||||||
|
"./core/misc/raise.c",
|
||||||
|
"./core/misc/termcap.c",
|
||||||
|
"./core/printf/doprnt.c",
|
||||||
|
"./core/printf/fltpr.c",
|
||||||
|
"./core/printf/fprintf.c",
|
||||||
|
"./core/printf/icompute.c",
|
||||||
|
"./core/printf/itoa.c",
|
||||||
|
"./core/printf/printf.c",
|
||||||
|
"./core/printf/snprintf.c",
|
||||||
|
"./core/printf/sprintf.c",
|
||||||
|
"./core/printf/vfprintf.c",
|
||||||
|
"./core/printf/vprintf.c",
|
||||||
|
"./core/printf/vsnprintf.c",
|
||||||
|
"./core/printf/vsprintf.c",
|
||||||
|
"./core/scanf/doscan.c",
|
||||||
|
"./core/scanf/fscanf.c",
|
||||||
|
"./core/scanf/scanf.c",
|
||||||
|
"./core/scanf/sscanf.c",
|
||||||
|
"./core/scanf/vfscanf.c",
|
||||||
|
"./core/setjmp/setjmp.e",
|
||||||
|
"./core/setjmp/sigmisc.c",
|
||||||
|
"./core/stdio/clearerr.c",
|
||||||
|
"./core/stdio/feof.c",
|
||||||
|
"./core/stdio/ferror.c",
|
||||||
|
"./core/stdio/fgetc.c",
|
||||||
|
"./core/stdio/fgetpos.c",
|
||||||
|
"./core/stdio/fgets.c",
|
||||||
|
"./core/stdio/fputc.c",
|
||||||
|
"./core/stdio/fputs.c",
|
||||||
|
"./core/stdio/fread.c",
|
||||||
|
"./core/stdio/fsetpos.c",
|
||||||
|
"./core/stdio/fwrite.c",
|
||||||
|
"./core/stdio/getc.c",
|
||||||
|
"./core/stdio/getchar.c",
|
||||||
|
"./core/stdio/gets.c",
|
||||||
|
"./core/stdio/getw.c",
|
||||||
|
"./core/stdio/putc.c",
|
||||||
|
"./core/stdio/putchar.c",
|
||||||
|
"./core/stdio/puts.c",
|
||||||
|
"./core/stdio/putw.c",
|
||||||
|
"./core/stdio/rewind.c",
|
||||||
|
"./core/stdlib/abs.c",
|
||||||
|
"./core/stdlib/atof.c",
|
||||||
|
"./core/stdlib/atoi.c",
|
||||||
|
"./core/stdlib/atol.c",
|
||||||
|
"./core/stdlib/bsearch.c",
|
||||||
|
"./core/stdlib/div.c",
|
||||||
|
"./core/stdlib/ecvt.c",
|
||||||
|
"./core/stdlib/environ.c",
|
||||||
|
"./core/stdlib/ext_comp.c",
|
||||||
|
"./core/stdlib/getenv.c",
|
||||||
|
"./core/stdlib/labs.c",
|
||||||
|
"./core/stdlib/ldiv.c",
|
||||||
|
"./core/stdlib/mblen.c",
|
||||||
|
"./core/stdlib/mbstowcs.c",
|
||||||
|
"./core/stdlib/mbtowc.c",
|
||||||
|
"./core/stdlib/putenv.c",
|
||||||
|
"./core/stdlib/qsort.c",
|
||||||
|
"./core/stdlib/rand.c",
|
||||||
|
"./core/stdlib/setenv.c",
|
||||||
|
"./core/stdlib/strtod.c",
|
||||||
|
"./core/stdlib/strtol.c",
|
||||||
|
"./core/stdlib/wcstombs.c",
|
||||||
|
"./core/stdlib/wctomb.c",
|
||||||
|
"./core/string/memchr.c",
|
||||||
|
"./core/string/memcmp.c",
|
||||||
|
"./core/string/memcpy.c",
|
||||||
|
"./core/string/memmove.c",
|
||||||
|
"./core/string/memset.c",
|
||||||
|
"./core/string/strcat.c",
|
||||||
|
"./core/string/strchr.c",
|
||||||
|
"./core/string/strcmp.c",
|
||||||
|
"./core/string/strcoll.c",
|
||||||
|
"./core/string/strcpy.c",
|
||||||
|
"./core/string/strcspn.c",
|
||||||
|
"./core/string/strdup.c",
|
||||||
|
"./core/string/strlen.c",
|
||||||
|
"./core/string/strncat.c",
|
||||||
|
"./core/string/strncmp.c",
|
||||||
|
"./core/string/strncpy.c",
|
||||||
|
"./core/string/strpbrk.c",
|
||||||
|
"./core/string/strrchr.c",
|
||||||
|
"./core/string/strspn.c",
|
||||||
|
"./core/string/strstr.c",
|
||||||
|
"./core/string/strtok.c",
|
||||||
|
"./core/string/strxfrm.c",
|
||||||
|
"./core/time/asctime.c",
|
||||||
|
"./core/time/ctime.c",
|
||||||
|
"./core/time/difftime.c",
|
||||||
|
"./core/time/gmtime.c",
|
||||||
|
"./core/time/localtime.c",
|
||||||
|
"./core/time/misc.c",
|
||||||
|
"./core/time/mktime.c",
|
||||||
|
"./core/time/strftime.c",
|
||||||
|
"./core/time/tzset.c",
|
||||||
|
"./sys/exit/atexit.c",
|
||||||
|
"./sys/exit/exit.c",
|
||||||
|
"./sys/malloc/calloc.c",
|
||||||
|
"./sys/malloc/malloc.c",
|
||||||
|
"./sys/malloc/realloc.c",
|
||||||
|
"./sys/misc/clock.c",
|
||||||
|
"./sys/misc/getpass.c",
|
||||||
|
"./sys/misc/isatty.c",
|
||||||
|
"./sys/misc/mktemp.c",
|
||||||
|
"./sys/misc/popen.c",
|
||||||
|
"./sys/misc/remove.c",
|
||||||
|
"./sys/misc/sleep.c",
|
||||||
|
"./sys/misc/system.c",
|
||||||
|
"./sys/misc/time.c",
|
||||||
|
"./sys/stdio/data.c",
|
||||||
|
"./sys/stdio/fclose.c",
|
||||||
|
"./sys/stdio/fdopen.c",
|
||||||
|
"./sys/stdio/fflush.c",
|
||||||
|
"./sys/stdio/fileno.c",
|
||||||
|
"./sys/stdio/fillbuf.c",
|
||||||
|
"./sys/stdio/flushbuf.c",
|
||||||
|
"./sys/stdio/fopen.c",
|
||||||
|
"./sys/stdio/freopen.c",
|
||||||
|
"./sys/stdio/fseek.c",
|
||||||
|
"./sys/stdio/ftell.c",
|
||||||
|
"./sys/stdio/setbuf.c",
|
||||||
|
"./sys/stdio/setvbuf.c",
|
||||||
|
"./sys/stdio/tmpfile.c",
|
||||||
|
"./sys/stdio/tmpnam.c",
|
||||||
|
"./sys/stdio/ungetc.c",
|
||||||
},
|
},
|
||||||
hdrs = {}, -- must be empty
|
hdrs = {}, -- must be empty
|
||||||
deps = {
|
deps = {
|
||||||
|
|
|
@ -11,9 +11,38 @@ local function addheader(dir, list)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
addheader("", filenamesof("./*.h"))
|
addheader("", filenamesof(
|
||||||
addheader("sys/", filenamesof("./sys/*.h"))
|
"./assert.h",
|
||||||
addheader("ack/", filenamesof("./ack/*.h"))
|
"./ctype.h",
|
||||||
|
"./errno.h",
|
||||||
|
"./fcntl.h",
|
||||||
|
"./float.h",
|
||||||
|
"./iso646.h",
|
||||||
|
"./limits.h",
|
||||||
|
"./locale.h",
|
||||||
|
"./math.h",
|
||||||
|
"./setjmp.h",
|
||||||
|
"./signal.h",
|
||||||
|
"./stdarg.h",
|
||||||
|
"./stdbool.h",
|
||||||
|
"./stddef.h",
|
||||||
|
"./stdint.h",
|
||||||
|
"./stdio.h",
|
||||||
|
"./stdlib.h",
|
||||||
|
"./string.h",
|
||||||
|
"./time.h",
|
||||||
|
"./unistd.h"
|
||||||
|
))
|
||||||
|
|
||||||
|
addheader("sys/", filenamesof(
|
||||||
|
"./sys/time.h",
|
||||||
|
"./sys/times.h"
|
||||||
|
))
|
||||||
|
|
||||||
|
addheader("ack/", filenamesof(
|
||||||
|
"./ack/config.h",
|
||||||
|
"./ack/emufile.h"
|
||||||
|
))
|
||||||
|
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "headers",
|
name = "headers",
|
||||||
|
|
|
@ -15,7 +15,10 @@ llgen {
|
||||||
srcs = {
|
srcs = {
|
||||||
-- order here is important
|
-- order here is important
|
||||||
"+tokenfile_g",
|
"+tokenfile_g",
|
||||||
"./*.g",
|
"./declar.g",
|
||||||
|
"./expression.g",
|
||||||
|
"./program.g",
|
||||||
|
"./statement.g",
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -31,7 +34,14 @@ normalrule {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, f in ipairs(filenamesof("./*.xh")) do
|
local xh_files = {
|
||||||
|
"./def.xh",
|
||||||
|
"./node.xh",
|
||||||
|
"./real.xh",
|
||||||
|
"./type.xh",
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, f in ipairs(filenamesof(xh_files)) do
|
||||||
local name = replace(basename(f), "%.xh$", "")
|
local name = replace(basename(f), "%.xh$", "")
|
||||||
normalrule {
|
normalrule {
|
||||||
name = name.."_h",
|
name = name.."_h",
|
||||||
|
@ -46,7 +56,13 @@ for _, f in ipairs(filenamesof("./*.xh")) do
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
for _, f in ipairs(filenamesof("./*.xc")) do
|
local xc_files = {
|
||||||
|
"./casestat.xc",
|
||||||
|
"./scope.xc",
|
||||||
|
"./tmpvar.xc",
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, f in ipairs(filenamesof(xc_files)) do
|
||||||
local name = replace(basename(f), "%.xc$", "")
|
local name = replace(basename(f), "%.xc$", "")
|
||||||
normalrule {
|
normalrule {
|
||||||
name = name.."_c",
|
name = name.."_c",
|
||||||
|
@ -65,8 +81,8 @@ normalrule {
|
||||||
name = "next_c",
|
name = "next_c",
|
||||||
ins = {
|
ins = {
|
||||||
"./make.next",
|
"./make.next",
|
||||||
"./*.xh",
|
xh_files,
|
||||||
"./*.xc",
|
xc_files
|
||||||
},
|
},
|
||||||
outleaves = { "next.c" },
|
outleaves = { "next.c" },
|
||||||
commands = {
|
commands = {
|
||||||
|
@ -94,7 +110,28 @@ tabgen {
|
||||||
cprogram {
|
cprogram {
|
||||||
name = "em_m2",
|
name = "em_m2",
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.c",
|
"./chk_expr.c",
|
||||||
|
"./code.c",
|
||||||
|
"./cstoper.c",
|
||||||
|
"./def.c",
|
||||||
|
"./defmodule.c",
|
||||||
|
"./desig.c",
|
||||||
|
"./enter.c",
|
||||||
|
"./error.c",
|
||||||
|
"./idf.c",
|
||||||
|
"./input.c",
|
||||||
|
"./LLlex.c",
|
||||||
|
"./LLmessage.c",
|
||||||
|
"./lookup.c",
|
||||||
|
"./main.c",
|
||||||
|
"./misc.c",
|
||||||
|
"./node.c",
|
||||||
|
"./options.c",
|
||||||
|
"./stab.c",
|
||||||
|
"./tokenname.c",
|
||||||
|
"./type.c",
|
||||||
|
"./typequiv.c",
|
||||||
|
"./walk.c",
|
||||||
"+casestat_c",
|
"+casestat_c",
|
||||||
"+next_c",
|
"+next_c",
|
||||||
"+scope_c",
|
"+scope_c",
|
||||||
|
|
|
@ -1,4 +1,7 @@
|
||||||
clibrary {
|
clibrary {
|
||||||
name = "headers",
|
name = "headers",
|
||||||
hdrs = {"./*.h"}
|
hdrs = {
|
||||||
|
"./libm2.h",
|
||||||
|
"./m2_traps.h",
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,7 +9,34 @@ local function addheader(dir, list)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
addheader("", filenamesof("./*.def"))
|
addheader("", filenamesof(
|
||||||
|
"./Arguments.def",
|
||||||
|
"./ArraySort.def",
|
||||||
|
"./ASCII.def",
|
||||||
|
"./Conversions.def",
|
||||||
|
"./CSP.def",
|
||||||
|
"./EM.def",
|
||||||
|
"./Epilogue.def",
|
||||||
|
"./InOut.def",
|
||||||
|
"./MathLib0.def",
|
||||||
|
"./Mathlib.def",
|
||||||
|
"./PascalIO.def",
|
||||||
|
"./Processes.def",
|
||||||
|
"./random.def",
|
||||||
|
"./RealConversions.def",
|
||||||
|
"./RealInOut.def",
|
||||||
|
"./Semaphores.def",
|
||||||
|
"./Storage.def",
|
||||||
|
"./Streams.def",
|
||||||
|
"./Strings.def",
|
||||||
|
"./StripUnix.def",
|
||||||
|
"./Termcap.def",
|
||||||
|
"./Terminal.def",
|
||||||
|
"./Traps.def",
|
||||||
|
"./Unix.def",
|
||||||
|
"./XXTermcap.def"
|
||||||
|
))
|
||||||
|
|
||||||
|
|
||||||
installable {
|
installable {
|
||||||
name = "headers",
|
name = "headers",
|
||||||
|
@ -20,8 +47,47 @@ for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.c",
|
"./absd.c",
|
||||||
"./*.mod",
|
"./absi.c",
|
||||||
|
"./absl.c",
|
||||||
|
"./Arguments.c",
|
||||||
|
"./ArraySort.mod",
|
||||||
|
"./blockmove.c",
|
||||||
|
"./cap.c",
|
||||||
|
"./catch.c",
|
||||||
|
"./confarray.c",
|
||||||
|
"./Conversions.mod",
|
||||||
|
"./CSP.mod",
|
||||||
|
"./dvi.c",
|
||||||
|
"./halt.c",
|
||||||
|
"./init.c",
|
||||||
|
"./InOut.mod",
|
||||||
|
"./load.c",
|
||||||
|
"./MathLib0.mod",
|
||||||
|
"./Mathlib.mod",
|
||||||
|
"./PascalIO.mod",
|
||||||
|
"./Processes.mod",
|
||||||
|
"./random.mod",
|
||||||
|
"./rcka.c",
|
||||||
|
"./rcki.c",
|
||||||
|
"./rckil.c",
|
||||||
|
"./rcku.c",
|
||||||
|
"./rckul.c",
|
||||||
|
"./RealConversions.mod",
|
||||||
|
"./RealInOut.mod",
|
||||||
|
"./Semaphores.mod",
|
||||||
|
"./sigtrp.c",
|
||||||
|
"./stackprio.c",
|
||||||
|
"./Storage.mod",
|
||||||
|
"./store.c",
|
||||||
|
"./StrAss.c",
|
||||||
|
"./Streams.mod",
|
||||||
|
"./Strings.mod",
|
||||||
|
"./SYSTEM.c",
|
||||||
|
"./Termcap.mod",
|
||||||
|
"./Terminal.mod",
|
||||||
|
"./Traps.mod",
|
||||||
|
"./ucheck.c",
|
||||||
"./EM.e",
|
"./EM.e",
|
||||||
"./LtoUset.e",
|
"./LtoUset.e",
|
||||||
"./absf.e",
|
"./absf.e",
|
||||||
|
|
|
@ -15,7 +15,10 @@ llgen {
|
||||||
srcs = {
|
srcs = {
|
||||||
-- order here is important
|
-- order here is important
|
||||||
"+tokenfile_g",
|
"+tokenfile_g",
|
||||||
"./*.g",
|
"./declar.g",
|
||||||
|
"./expression.g",
|
||||||
|
"./program.g",
|
||||||
|
"./statement.g",
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -31,7 +34,15 @@ normalrule {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, f in ipairs(filenamesof("./*.xh")) do
|
local xh_files = {
|
||||||
|
"./def.xh",
|
||||||
|
"./desig.xh",
|
||||||
|
"./node.xh",
|
||||||
|
"./scope.xh",
|
||||||
|
"./type.xh",
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, f in ipairs(filenamesof(xh_files)) do
|
||||||
local name = replace(basename(f), "%.xh$", "")
|
local name = replace(basename(f), "%.xh$", "")
|
||||||
normalrule {
|
normalrule {
|
||||||
name = name.."_h",
|
name = name.."_h",
|
||||||
|
@ -46,7 +57,12 @@ for _, f in ipairs(filenamesof("./*.xh")) do
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
for _, f in ipairs(filenamesof("./*.xc")) do
|
local xc_files = {
|
||||||
|
"./casestat.xc",
|
||||||
|
"./tmpvar.xc",
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, f in ipairs(filenamesof(xc_files)) do
|
||||||
local name = replace(basename(f), "%.xc$", "")
|
local name = replace(basename(f), "%.xc$", "")
|
||||||
normalrule {
|
normalrule {
|
||||||
name = name.."_c",
|
name = name.."_c",
|
||||||
|
@ -65,8 +81,8 @@ normalrule {
|
||||||
name = "next_c",
|
name = "next_c",
|
||||||
ins = {
|
ins = {
|
||||||
"./make.next",
|
"./make.next",
|
||||||
"./*.xh",
|
xh_files,
|
||||||
"./*.xc",
|
xc_files
|
||||||
},
|
},
|
||||||
outleaves = { "next.c" },
|
outleaves = { "next.c" },
|
||||||
commands = {
|
commands = {
|
||||||
|
@ -94,7 +110,31 @@ tabgen {
|
||||||
cprogram {
|
cprogram {
|
||||||
name = "em_pc",
|
name = "em_pc",
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.c",
|
"./body.c",
|
||||||
|
"./chk_expr.c",
|
||||||
|
"./code.c",
|
||||||
|
"./cstoper.c",
|
||||||
|
"./def.c",
|
||||||
|
"./desig.c",
|
||||||
|
"./enter.c",
|
||||||
|
"./error.c",
|
||||||
|
"./idf.c",
|
||||||
|
"./input.c",
|
||||||
|
"./label.c",
|
||||||
|
"./LLlex.c",
|
||||||
|
"./LLmessage.c",
|
||||||
|
"./lookup.c",
|
||||||
|
"./main.c",
|
||||||
|
"./misc.c",
|
||||||
|
"./node.c",
|
||||||
|
"./options.c",
|
||||||
|
"./progs.c",
|
||||||
|
"./readwrite.c",
|
||||||
|
"./scope.c",
|
||||||
|
"./stab.c",
|
||||||
|
"./tokenname.c",
|
||||||
|
"./type.c",
|
||||||
|
"./typequiv.c",
|
||||||
"+casestat_c",
|
"+casestat_c",
|
||||||
"+chartab_c",
|
"+chartab_c",
|
||||||
"+next_c",
|
"+next_c",
|
||||||
|
|
|
@ -1,4 +1,9 @@
|
||||||
clibrary {
|
clibrary {
|
||||||
name = "headers",
|
name = "headers",
|
||||||
hdrs = {"./*.h"}
|
hdrs = {
|
||||||
|
"./pc_err.h",
|
||||||
|
"./pc_file.h",
|
||||||
|
"./pc.h",
|
||||||
|
"./pc_math.h",
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,7 +4,66 @@ for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.c",
|
"./abi.c",
|
||||||
|
"./abl.c",
|
||||||
|
"./abr.c",
|
||||||
|
"./arg.c",
|
||||||
|
"./ass.c",
|
||||||
|
"./asz.c",
|
||||||
|
"./atn.c",
|
||||||
|
"./bcp.c",
|
||||||
|
"./buff.c",
|
||||||
|
"./catch.c",
|
||||||
|
"./cls.c",
|
||||||
|
"./cvt.c",
|
||||||
|
"./diag.c",
|
||||||
|
"./efl.c",
|
||||||
|
"./eln.c",
|
||||||
|
"./exp.c",
|
||||||
|
"./get.c",
|
||||||
|
"./hlt.c",
|
||||||
|
"./incpt.c",
|
||||||
|
"./ini.c",
|
||||||
|
"./log.c",
|
||||||
|
"./mdi.c",
|
||||||
|
"./mdl.c",
|
||||||
|
"./new.c",
|
||||||
|
"./nfa.c",
|
||||||
|
"./nobuff.c",
|
||||||
|
"./notext.c",
|
||||||
|
"./opn.c",
|
||||||
|
"./outcpt.c",
|
||||||
|
"./pac.c",
|
||||||
|
"./pclose.c",
|
||||||
|
"./pcreat.c",
|
||||||
|
"./pentry.c",
|
||||||
|
"./perrno.c",
|
||||||
|
"./pexit.c",
|
||||||
|
"./popen.c",
|
||||||
|
"./put.c",
|
||||||
|
"./rcka.c",
|
||||||
|
"./rdc.c",
|
||||||
|
"./rdi.c",
|
||||||
|
"./rdl.c",
|
||||||
|
"./rdr.c",
|
||||||
|
"./rf.c",
|
||||||
|
"./rln.c",
|
||||||
|
"./rnd.c",
|
||||||
|
"./sin.c",
|
||||||
|
"./sqt.c",
|
||||||
|
"./string.c",
|
||||||
|
"./unp.c",
|
||||||
|
"./uread.c",
|
||||||
|
"./uwrite.c",
|
||||||
|
"./wdw.c",
|
||||||
|
"./wf.c",
|
||||||
|
"./wrc.c",
|
||||||
|
"./wrf.c",
|
||||||
|
"./wri.c",
|
||||||
|
"./wrl.c",
|
||||||
|
"./wrr.c",
|
||||||
|
"./wrs.c",
|
||||||
|
"./wrz.c",
|
||||||
"./bts.e",
|
"./bts.e",
|
||||||
"./encaps.e",
|
"./encaps.e",
|
||||||
"./fef.e",
|
"./fef.e",
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
for _, plat in ipairs(vars.plats) do
|
for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = { "./*.e" },
|
srcs = { "./dummy.e", },
|
||||||
vars = { plat = plat },
|
vars = { plat = plat },
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
for _, plat in ipairs(vars.plats) do
|
for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = { "./*.e" },
|
srcs = {
|
||||||
|
"./edata.e",
|
||||||
|
"./em_end.e",
|
||||||
|
"./end.e",
|
||||||
|
"./etext.e",
|
||||||
|
},
|
||||||
vars = { plat = plat },
|
vars = { plat = plat },
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
12
mach/i386/as/build.lua
Normal file
12
mach/i386/as/build.lua
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
bundle {
|
||||||
|
name = "headers",
|
||||||
|
srcs = {
|
||||||
|
"./mach0.c",
|
||||||
|
"./mach1.c",
|
||||||
|
"./mach2.c",
|
||||||
|
"./mach3.c",
|
||||||
|
"./mach4.c",
|
||||||
|
"./mach5.c",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,7 +1,59 @@
|
||||||
for _, plat in ipairs(vars.plats) do
|
for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = { "./*.s" }, -- csb8.s
|
srcs = {
|
||||||
|
"./adi.s",
|
||||||
|
"./and.s",
|
||||||
|
"./blm.s",
|
||||||
|
"./cii.s",
|
||||||
|
"./cms.s",
|
||||||
|
"./com.s",
|
||||||
|
"./csa4.s",
|
||||||
|
"./csa8.s",
|
||||||
|
"./csb4.s",
|
||||||
|
"./csb8.s",
|
||||||
|
"./cuu.s",
|
||||||
|
"./divrem8.s",
|
||||||
|
"./dup.s",
|
||||||
|
"./dvi8.s",
|
||||||
|
"./dvi.s",
|
||||||
|
"./dvu8.s",
|
||||||
|
"./dvu.s",
|
||||||
|
"./error.s",
|
||||||
|
"./exg.s",
|
||||||
|
"./fat.s",
|
||||||
|
"./fp8087.s",
|
||||||
|
"./gto.s",
|
||||||
|
"./iaar.s",
|
||||||
|
"./ilar.s",
|
||||||
|
"./inn.s",
|
||||||
|
"./ior.s",
|
||||||
|
"./isar.s",
|
||||||
|
"./lar4.s",
|
||||||
|
"./loi.s",
|
||||||
|
"./mli8.s",
|
||||||
|
"./mli.s",
|
||||||
|
"./mon.s",
|
||||||
|
"./ngi.s",
|
||||||
|
"./nop.s",
|
||||||
|
"./print.s",
|
||||||
|
"./rck.s",
|
||||||
|
"./rmi8.s",
|
||||||
|
"./rmi.s",
|
||||||
|
"./rmu.s",
|
||||||
|
"./rol.s",
|
||||||
|
"./ror.s",
|
||||||
|
"./sar4.s",
|
||||||
|
"./sbi.s",
|
||||||
|
"./set.s",
|
||||||
|
"./sli.s",
|
||||||
|
"./sri.s",
|
||||||
|
"./sti.s",
|
||||||
|
"./strhp.s",
|
||||||
|
"./trp.s",
|
||||||
|
"./unknown.s",
|
||||||
|
"./xor.s",
|
||||||
|
},
|
||||||
vars = { plat = plat },
|
vars = { plat = plat },
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
for _, plat in ipairs(vars.plats) do
|
for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = { "./*.s" },
|
srcs = {
|
||||||
|
"./edata.s",
|
||||||
|
"./em_end.s",
|
||||||
|
"./end.s",
|
||||||
|
"./etext.s",
|
||||||
|
},
|
||||||
vars = { plat = plat },
|
vars = { plat = plat },
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
8
mach/i386/ncg/build.lua
Normal file
8
mach/i386/ncg/build.lua
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
bundle {
|
||||||
|
name = "headers",
|
||||||
|
srcs = {
|
||||||
|
"./mach.c",
|
||||||
|
"./mach.h"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
12
mach/i80/as/build.lua
Normal file
12
mach/i80/as/build.lua
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
bundle {
|
||||||
|
name = "headers",
|
||||||
|
srcs = {
|
||||||
|
"./mach0.c",
|
||||||
|
"./mach1.c",
|
||||||
|
"./mach2.c",
|
||||||
|
"./mach3.c",
|
||||||
|
"./mach4.c",
|
||||||
|
"./mach5.c",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -58,7 +58,52 @@ end
|
||||||
for _, plat in ipairs(vars.plats) do
|
for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = concat("./*.s", generated),
|
srcs = {
|
||||||
|
"./aar2.s",
|
||||||
|
"./adi4.s",
|
||||||
|
"./and.s",
|
||||||
|
"./blm.s",
|
||||||
|
"./cii.s",
|
||||||
|
"./cmi4.s",
|
||||||
|
"./cmps_mag.s",
|
||||||
|
"./cmpu_mag.s",
|
||||||
|
"./cms.s",
|
||||||
|
"./com.s",
|
||||||
|
"./csa.s",
|
||||||
|
"./csb.s",
|
||||||
|
"./dup.s",
|
||||||
|
"./dvi2.s",
|
||||||
|
"./dvi4.s",
|
||||||
|
"./exg.s",
|
||||||
|
"./flp.s",
|
||||||
|
"./inn.s",
|
||||||
|
"./ior.s",
|
||||||
|
"./lar2.s",
|
||||||
|
"./loi.s",
|
||||||
|
"./mli2.s",
|
||||||
|
"./mli4.s",
|
||||||
|
"./mlu2.s",
|
||||||
|
"./ngi4.s",
|
||||||
|
"./nop.s",
|
||||||
|
"./pchl.s",
|
||||||
|
"./pro.s",
|
||||||
|
"./rck.s",
|
||||||
|
"./ret.s",
|
||||||
|
"./rol4.s",
|
||||||
|
"./ror4.s",
|
||||||
|
"./rst.s",
|
||||||
|
"./sar2.s",
|
||||||
|
"./sbi4.s",
|
||||||
|
"./set2.s",
|
||||||
|
"./set.s",
|
||||||
|
"./sli2.s",
|
||||||
|
"./sli4.s",
|
||||||
|
"./sri2.s",
|
||||||
|
"./sri4.s",
|
||||||
|
"./sti.s",
|
||||||
|
"./xor.s",
|
||||||
|
generated
|
||||||
|
},
|
||||||
vars = {
|
vars = {
|
||||||
plat = plat,
|
plat = plat,
|
||||||
["+ackcflags"] = {"-Imach/i80/libem"}
|
["+ackcflags"] = {"-Imach/i80/libem"}
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
for _, plat in ipairs(vars.plats) do
|
for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = { "./*.s" },
|
srcs = {
|
||||||
|
"./edata.s",
|
||||||
|
"./em_end.s",
|
||||||
|
"./end.s",
|
||||||
|
"./etext.s",
|
||||||
|
},
|
||||||
vars = { plat = plat },
|
vars = { plat = plat },
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
8
mach/i80/ncg/build.lua
Normal file
8
mach/i80/ncg/build.lua
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
bundle {
|
||||||
|
name = "headers",
|
||||||
|
srcs = {
|
||||||
|
"./mach.c",
|
||||||
|
"./mach.h"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
12
mach/i86/as/build.lua
Normal file
12
mach/i86/as/build.lua
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
bundle {
|
||||||
|
name = "headers",
|
||||||
|
srcs = {
|
||||||
|
"./mach0.c",
|
||||||
|
"./mach1.c",
|
||||||
|
"./mach2.c",
|
||||||
|
"./mach3.c",
|
||||||
|
"./mach4.c",
|
||||||
|
"./mach5.c",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,7 +1,67 @@
|
||||||
for _, plat in ipairs(vars.plats) do
|
for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = { "./*.s" },
|
srcs = {
|
||||||
|
"./adi.s",
|
||||||
|
"./and.s",
|
||||||
|
"./blm.s",
|
||||||
|
"./cii.s",
|
||||||
|
"./cmi4.s",
|
||||||
|
"./cms.s",
|
||||||
|
"./cmu4.s",
|
||||||
|
"./com.s",
|
||||||
|
"./csa2.s",
|
||||||
|
"./csa4.s",
|
||||||
|
"./csb2.s",
|
||||||
|
"./csb4.s",
|
||||||
|
"./cuu.s",
|
||||||
|
"./dup.s",
|
||||||
|
"./dvi4.s",
|
||||||
|
"./dvi.s",
|
||||||
|
"./dvu4.s",
|
||||||
|
"./dvu.s",
|
||||||
|
"./error.s",
|
||||||
|
"./exg.s",
|
||||||
|
"./fat.s",
|
||||||
|
"./fp8087.s",
|
||||||
|
"./gto.s",
|
||||||
|
"./iaar.s",
|
||||||
|
"./ilar.s",
|
||||||
|
"./inn.s",
|
||||||
|
"./ior.s",
|
||||||
|
"./isar.s",
|
||||||
|
"./lar2.s",
|
||||||
|
"./lfr6.s",
|
||||||
|
"./lfr8.s",
|
||||||
|
"./loi.s",
|
||||||
|
"./mli4.s",
|
||||||
|
"./mli.s",
|
||||||
|
"./mon.s",
|
||||||
|
"./ngi.s",
|
||||||
|
"./nop.s",
|
||||||
|
"./print.s",
|
||||||
|
"./rck.s",
|
||||||
|
"./ret6.s",
|
||||||
|
"./ret8.s",
|
||||||
|
"./retarea.s",
|
||||||
|
"./return.s",
|
||||||
|
"./rmi4.s",
|
||||||
|
"./rmi.s",
|
||||||
|
"./rmu4.s",
|
||||||
|
"./rmu.s",
|
||||||
|
"./rol.s",
|
||||||
|
"./ror.s",
|
||||||
|
"./sar2.s",
|
||||||
|
"./sbi.s",
|
||||||
|
"./set.s",
|
||||||
|
"./sli.s",
|
||||||
|
"./sri.s",
|
||||||
|
"./sti.s",
|
||||||
|
"./strhp.s",
|
||||||
|
"./trp.s",
|
||||||
|
"./unknown.s",
|
||||||
|
"./xor.s",
|
||||||
|
},
|
||||||
vars = { plat = plat },
|
vars = { plat = plat },
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
for _, plat in ipairs(vars.plats) do
|
for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = { "./*.s" },
|
srcs = {
|
||||||
|
"./edata.s",
|
||||||
|
"./em_end.s",
|
||||||
|
"./end.s",
|
||||||
|
"./etext.s",
|
||||||
|
},
|
||||||
vars = { plat = plat },
|
vars = { plat = plat },
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
8
mach/i86/ncg/build.lua
Normal file
8
mach/i86/ncg/build.lua
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
bundle {
|
||||||
|
name = "headers",
|
||||||
|
srcs = {
|
||||||
|
"./mach.c",
|
||||||
|
"./mach.h"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
12
mach/m68020/as/build.lua
Normal file
12
mach/m68020/as/build.lua
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
bundle {
|
||||||
|
name = "headers",
|
||||||
|
srcs = {
|
||||||
|
"./mach0.c",
|
||||||
|
"./mach1.c",
|
||||||
|
"./mach2.c",
|
||||||
|
"./mach3.c",
|
||||||
|
"./mach4.c",
|
||||||
|
"./mach5.c",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -2,8 +2,37 @@ for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.s", -- csb8.s
|
"./aar.s",
|
||||||
"./*.c"
|
"./cii.s",
|
||||||
|
"./cmi.s",
|
||||||
|
"./cms.s",
|
||||||
|
"./cmu.s",
|
||||||
|
"./csa8.s",
|
||||||
|
"./csa.s",
|
||||||
|
"./csb8.s",
|
||||||
|
"./csb.s",
|
||||||
|
"./cuu.s",
|
||||||
|
"./cvf.s",
|
||||||
|
"./dia.s",
|
||||||
|
"./divrem8.s",
|
||||||
|
"./dvi8.s",
|
||||||
|
"./dvu8.s",
|
||||||
|
"./exg.s",
|
||||||
|
"./fat.s",
|
||||||
|
"./fp68881.s",
|
||||||
|
"./inn.s",
|
||||||
|
"./lar.s",
|
||||||
|
"./los.s",
|
||||||
|
"./mon.s",
|
||||||
|
"./nop.s",
|
||||||
|
"./rmi8.s",
|
||||||
|
"./rmu8.s",
|
||||||
|
"./sar.s",
|
||||||
|
"./set.s",
|
||||||
|
"./shp.s",
|
||||||
|
"./sts.s",
|
||||||
|
"./trp.s",
|
||||||
|
"./trpstr.c",
|
||||||
},
|
},
|
||||||
vars = { plat = plat },
|
vars = { plat = plat },
|
||||||
deps = {
|
deps = {
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
for _, plat in ipairs(vars.plats) do
|
for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = { "./*.s" },
|
srcs = {
|
||||||
|
"./edata.s",
|
||||||
|
"./em_end.s",
|
||||||
|
"./end.s",
|
||||||
|
"./etext.s",
|
||||||
|
},
|
||||||
vars = { plat = plat },
|
vars = { plat = plat },
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
9
mach/m68020/ncg/build.lua
Normal file
9
mach/m68020/ncg/build.lua
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
bundle {
|
||||||
|
name = "headers",
|
||||||
|
srcs = {
|
||||||
|
"./mach.c",
|
||||||
|
"./mach.h",
|
||||||
|
"./whichone.h"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -4,3 +4,16 @@ normalrule {
|
||||||
ins = {"./mktables.lua", "./instructions.dat"},
|
ins = {"./mktables.lua", "./instructions.dat"},
|
||||||
commands = {"$(LUA) %{ins[1]} %{outs} < %{ins[2]}"}
|
commands = {"$(LUA) %{ins[1]} %{outs} < %{ins[2]}"}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bundle {
|
||||||
|
name = "headers",
|
||||||
|
srcs = {
|
||||||
|
"./mach0.c",
|
||||||
|
"./mach1.c",
|
||||||
|
"./mach2.c",
|
||||||
|
"./mach3.c",
|
||||||
|
"./mach4.c",
|
||||||
|
"./mach5.c",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,33 @@ for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.s", -- dus4.s
|
"./aar4.s",
|
||||||
|
"./and.s",
|
||||||
|
"./bls4.s",
|
||||||
|
"./cms.s",
|
||||||
|
"./compareul.s",
|
||||||
|
"./com.s",
|
||||||
|
"./csa.s",
|
||||||
|
"./csb.s",
|
||||||
|
"./c_ud_i.s",
|
||||||
|
"./c_uf_i.s",
|
||||||
|
"./c_ui_d.s",
|
||||||
|
"./c_ui_f.s",
|
||||||
|
"./dus4.s",
|
||||||
|
"./exg.s",
|
||||||
|
"./fef8.s",
|
||||||
|
"./fif8.s",
|
||||||
|
"./inn.s",
|
||||||
|
"./ior.s",
|
||||||
|
"./lar4.s",
|
||||||
|
"./los4.s",
|
||||||
|
"./rck.s",
|
||||||
|
"./sar4.s",
|
||||||
|
"./set.s",
|
||||||
|
"./sts4.s",
|
||||||
|
"./trp.s",
|
||||||
|
"./xor.s",
|
||||||
|
"./zer.s",
|
||||||
},
|
},
|
||||||
vars = { plat = plat },
|
vars = { plat = plat },
|
||||||
deps = {
|
deps = {
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
for _, plat in ipairs(vars.plats) do
|
for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = { "./*.s" },
|
srcs = {
|
||||||
|
"./edata.s",
|
||||||
|
"./em_end.s",
|
||||||
|
"./end.s",
|
||||||
|
"./etext.s",
|
||||||
|
},
|
||||||
vars = { plat = plat },
|
vars = { plat = plat },
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
7
mach/mips/mcg/build.lua
Normal file
7
mach/mips/mcg/build.lua
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
bundle {
|
||||||
|
name = "headers",
|
||||||
|
srcs = {
|
||||||
|
"./platform.c",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
12
mach/pdp/as/build.lua
Normal file
12
mach/pdp/as/build.lua
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
bundle {
|
||||||
|
name = "headers",
|
||||||
|
srcs = {
|
||||||
|
"./mach0.c",
|
||||||
|
"./mach1.c",
|
||||||
|
"./mach2.c",
|
||||||
|
"./mach3.c",
|
||||||
|
"./mach4.c",
|
||||||
|
"./mach5.c",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
cprogram {
|
cprogram {
|
||||||
name = "cv",
|
name = "cv",
|
||||||
srcs = { "./*.c" },
|
srcs = { "./cv.c" },
|
||||||
deps = {
|
deps = {
|
||||||
"h+emheaders",
|
"h+emheaders",
|
||||||
"modules/src/object+lib",
|
"modules/src/object+lib",
|
||||||
|
|
|
@ -1,7 +1,79 @@
|
||||||
for _, plat in ipairs(vars.plats) do
|
for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = { "./*.s" },
|
srcs = {
|
||||||
|
"./aar.s",
|
||||||
|
"./adf.s",
|
||||||
|
"./adi.s",
|
||||||
|
"./and.s",
|
||||||
|
"./cff.s",
|
||||||
|
"./cfi.s",
|
||||||
|
"./cif.s",
|
||||||
|
"./cii.s",
|
||||||
|
"./ciu.s",
|
||||||
|
"./cmf.s",
|
||||||
|
"./cmi4.s",
|
||||||
|
"./cmi.s",
|
||||||
|
"./cms.s",
|
||||||
|
"./cmu4.s",
|
||||||
|
"./cmu.s",
|
||||||
|
"./csa.s",
|
||||||
|
"./csb.s",
|
||||||
|
"./dup.s",
|
||||||
|
"./dvf.s",
|
||||||
|
"./dvi4.s",
|
||||||
|
"./dvi.s",
|
||||||
|
"./dvu2.s",
|
||||||
|
"./dvu4.s",
|
||||||
|
"./dvu.s",
|
||||||
|
"./eret.s",
|
||||||
|
"./exg.s",
|
||||||
|
"./fef.s",
|
||||||
|
"./fif.s",
|
||||||
|
"./gto.s",
|
||||||
|
"./iaar.s",
|
||||||
|
"./ilar.s",
|
||||||
|
"./inn.s",
|
||||||
|
"./isar.s",
|
||||||
|
"./lar.s",
|
||||||
|
"./los2.s",
|
||||||
|
"./mlf.s",
|
||||||
|
"./mli4.s",
|
||||||
|
"./mli.s",
|
||||||
|
"./mlu4.s",
|
||||||
|
"./mlu.s",
|
||||||
|
"./mon.s",
|
||||||
|
"./ngf.s",
|
||||||
|
"./ngi.s",
|
||||||
|
"./nop.s",
|
||||||
|
"./prf.s",
|
||||||
|
"./printf.s",
|
||||||
|
"./rck.s",
|
||||||
|
"./ret.s",
|
||||||
|
"./rmi4.s",
|
||||||
|
"./rmi.s",
|
||||||
|
"./rmu2.s",
|
||||||
|
"./rmu4.s",
|
||||||
|
"./rmu.s",
|
||||||
|
"./rol.s",
|
||||||
|
"./ror.s",
|
||||||
|
"./RT.s",
|
||||||
|
"./sar.s",
|
||||||
|
"./save.s",
|
||||||
|
"./sbf.s",
|
||||||
|
"./sbi.s",
|
||||||
|
"./setfl.s",
|
||||||
|
"./set.s",
|
||||||
|
"./sim.s",
|
||||||
|
"./sli.s",
|
||||||
|
"./sri.s",
|
||||||
|
"./sru.s",
|
||||||
|
"./sto2.s",
|
||||||
|
"./strhp.s",
|
||||||
|
"./trp.s",
|
||||||
|
"./unknown.s",
|
||||||
|
"./xor.s",
|
||||||
|
},
|
||||||
vars = { plat = plat },
|
vars = { plat = plat },
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
for _, plat in ipairs(vars.plats) do
|
for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = { "./*.s" },
|
srcs = {
|
||||||
|
"./edata.s",
|
||||||
|
"./em_end.s",
|
||||||
|
"./end.s",
|
||||||
|
"./etext.s",
|
||||||
|
},
|
||||||
vars = { plat = plat },
|
vars = { plat = plat },
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
12
mach/powerpc/as/build.lua
Normal file
12
mach/powerpc/as/build.lua
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
bundle {
|
||||||
|
name = "headers",
|
||||||
|
srcs = {
|
||||||
|
"./mach0.c",
|
||||||
|
"./mach1.c",
|
||||||
|
"./mach2.c",
|
||||||
|
"./mach3.c",
|
||||||
|
"./mach4.c",
|
||||||
|
"./mach5.c",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -6,7 +6,35 @@ for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.s", -- dus4.s
|
"./aar4.s",
|
||||||
|
"./and.s",
|
||||||
|
"./bls4.s",
|
||||||
|
"./cfi8.s",
|
||||||
|
"./cfu8.s",
|
||||||
|
"./cif8.s",
|
||||||
|
"./cms.s",
|
||||||
|
"./com.s",
|
||||||
|
"./csa.s",
|
||||||
|
"./csb.s",
|
||||||
|
"./cuf8.s",
|
||||||
|
-- "./dus4.s",
|
||||||
|
"./exg.s",
|
||||||
|
"./fd_00000000.s",
|
||||||
|
"./fef4.s",
|
||||||
|
"./fef8.s",
|
||||||
|
"./fif4.s",
|
||||||
|
"./fif8.s",
|
||||||
|
"./inn.s",
|
||||||
|
"./ior.s",
|
||||||
|
"./lar4.s",
|
||||||
|
"./los4.s",
|
||||||
|
"./rck.s",
|
||||||
|
"./sar4.s",
|
||||||
|
"./set.s",
|
||||||
|
"./sts4.s",
|
||||||
|
"./trp.s",
|
||||||
|
"./xor.s",
|
||||||
|
"./zer.s",
|
||||||
},
|
},
|
||||||
vars = { plat = plat },
|
vars = { plat = plat },
|
||||||
deps = {
|
deps = {
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
for _, plat in ipairs(vars.plats) do
|
for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = { "./*.s" },
|
srcs = {
|
||||||
|
"./edata.s",
|
||||||
|
"./em_end.s",
|
||||||
|
"./end.s",
|
||||||
|
"./etext.s",
|
||||||
|
},
|
||||||
vars = { plat = plat },
|
vars = { plat = plat },
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
7
mach/powerpc/mcg/build.lua
Normal file
7
mach/powerpc/mcg/build.lua
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
bundle {
|
||||||
|
name = "headers",
|
||||||
|
srcs = {
|
||||||
|
"./platform.c",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
8
mach/powerpc/ncg/build.lua
Normal file
8
mach/powerpc/ncg/build.lua
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
bundle {
|
||||||
|
name = "headers",
|
||||||
|
srcs = {
|
||||||
|
"./mach.c",
|
||||||
|
"./mach.h"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -11,10 +11,7 @@ definerule("build_as",
|
||||||
local archlib = clibrary {
|
local archlib = clibrary {
|
||||||
name = e.name.."/archlib",
|
name = e.name.."/archlib",
|
||||||
srcs = {},
|
srcs = {},
|
||||||
hdrs = {
|
hdrs = { "mach/"..e.arch.."/as+headers" },
|
||||||
"mach/"..e.arch.."/as/mach*.c",
|
|
||||||
"mach/"..e.arch.."/as/*.h"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
local preprocessedy = cppfile {
|
local preprocessedy = cppfile {
|
||||||
|
@ -38,7 +35,12 @@ definerule("build_as",
|
||||||
return cprogram {
|
return cprogram {
|
||||||
name = e.name,
|
name = e.name,
|
||||||
srcs = concat(
|
srcs = concat(
|
||||||
"mach/proto/as/*.c",
|
"mach/proto/as/comm3.c",
|
||||||
|
"mach/proto/as/comm4.c",
|
||||||
|
"mach/proto/as/comm5.c",
|
||||||
|
"mach/proto/as/comm6.c",
|
||||||
|
"mach/proto/as/comm7.c",
|
||||||
|
"mach/proto/as/comm8.c",
|
||||||
matching(filenamesof(yaccfiles), "%.c$")
|
matching(filenamesof(yaccfiles), "%.c$")
|
||||||
),
|
),
|
||||||
deps = {
|
deps = {
|
||||||
|
|
|
@ -11,9 +11,24 @@ definerule("build_cg",
|
||||||
name = e.name.."/headers",
|
name = e.name.."/headers",
|
||||||
srcs = {},
|
srcs = {},
|
||||||
hdrs = {
|
hdrs = {
|
||||||
"mach/proto/cg/*.h",
|
"mach/proto/cg/assert.h",
|
||||||
|
"mach/proto/cg/codegen.h",
|
||||||
|
"mach/proto/cg/data.h",
|
||||||
|
"mach/proto/cg/equiv.h",
|
||||||
|
"mach/proto/cg/extern.h",
|
||||||
|
"mach/proto/cg/fillem.h",
|
||||||
|
"mach/proto/cg/gencode.h",
|
||||||
|
"mach/proto/cg/glosym.h",
|
||||||
|
"mach/proto/cg/param.h",
|
||||||
|
"mach/proto/cg/reg.h",
|
||||||
|
"mach/proto/cg/regvar.h",
|
||||||
|
"mach/proto/cg/result.h",
|
||||||
|
"mach/proto/cg/salloc.h",
|
||||||
|
"mach/proto/cg/state.h",
|
||||||
|
"mach/proto/cg/subr.h",
|
||||||
|
"mach/proto/cg/types.h",
|
||||||
"mach/"..e.arch.."/cg/mach.c",
|
"mach/"..e.arch.."/cg/mach.c",
|
||||||
"mach/"..e.arch.."/cg/*.h",
|
"mach/"..e.arch.."/cg/mach.h",
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -25,7 +40,21 @@ definerule("build_cg",
|
||||||
return cprogram {
|
return cprogram {
|
||||||
name = e.name,
|
name = e.name,
|
||||||
srcs = {
|
srcs = {
|
||||||
"mach/proto/cg/*.c",
|
"mach/proto/cg/codegen.c",
|
||||||
|
"mach/proto/cg/compute.c",
|
||||||
|
"mach/proto/cg/equiv.c",
|
||||||
|
"mach/proto/cg/fillem.c",
|
||||||
|
"mach/proto/cg/gencode.c",
|
||||||
|
"mach/proto/cg/glosym.c",
|
||||||
|
"mach/proto/cg/main.c",
|
||||||
|
"mach/proto/cg/move.c",
|
||||||
|
"mach/proto/cg/nextem.c",
|
||||||
|
"mach/proto/cg/reg.c",
|
||||||
|
"mach/proto/cg/regvar.c",
|
||||||
|
"mach/proto/cg/salloc.c",
|
||||||
|
"mach/proto/cg/state.c",
|
||||||
|
"mach/proto/cg/subr.c",
|
||||||
|
"mach/proto/cg/var.c",
|
||||||
matching(filenamesof(tables), "%.c$")
|
matching(filenamesof(tables), "%.c$")
|
||||||
},
|
},
|
||||||
deps = {
|
deps = {
|
||||||
|
|
|
@ -3,10 +3,51 @@ include("plat/build.lua")
|
||||||
-- For now, all floats are little-endian.
|
-- For now, all floats are little-endian.
|
||||||
local byte_order = "mach/i86/libfp/byte_order.h"
|
local byte_order = "mach/i86/libfp/byte_order.h"
|
||||||
|
|
||||||
|
local srcs = {
|
||||||
|
"./adder.c",
|
||||||
|
"./add_ext.c",
|
||||||
|
"./adf4.c",
|
||||||
|
"./adf8.c",
|
||||||
|
"./cff4.c",
|
||||||
|
"./cff8.c",
|
||||||
|
"./cfi.c",
|
||||||
|
"./cfu.c",
|
||||||
|
"./cif4.c",
|
||||||
|
"./cif8.c",
|
||||||
|
"./cmf4.c",
|
||||||
|
"./cmf8.c",
|
||||||
|
"./compact.c",
|
||||||
|
"./cuf4.c",
|
||||||
|
"./cuf8.c",
|
||||||
|
"./div_ext.c",
|
||||||
|
"./dvf4.c",
|
||||||
|
"./dvf8.c",
|
||||||
|
"./extend.c",
|
||||||
|
"./fef4.c",
|
||||||
|
"./fef8.c",
|
||||||
|
"./fif4.c",
|
||||||
|
"./fif8.c",
|
||||||
|
"./fptrp.e",
|
||||||
|
"./mlf4.c",
|
||||||
|
"./mlf8.c",
|
||||||
|
"./mul_ext.c",
|
||||||
|
"./ngf4.c",
|
||||||
|
"./ngf8.c",
|
||||||
|
"./nrm_ext.c",
|
||||||
|
"./sbf4.c",
|
||||||
|
"./sbf8.c",
|
||||||
|
"./sft_ext.c",
|
||||||
|
"./shifter.c",
|
||||||
|
"./sub_ext.c",
|
||||||
|
"./zrf4.c",
|
||||||
|
"./zrf8.c",
|
||||||
|
"./zrf_ext.c",
|
||||||
|
}
|
||||||
|
|
||||||
-- For now, only cpm uses software floating-point.
|
-- For now, only cpm uses software floating-point.
|
||||||
for _, plat in ipairs({"cpm"}) do
|
for _, plat in ipairs({"cpm"}) do
|
||||||
local edits = {}
|
local edits = {}
|
||||||
for _, src in fpairs("./*.c", "./*.e") do
|
for _, src in fpairs(srcs) do
|
||||||
|
|
||||||
-- Compile each src file into assembly code.
|
-- Compile each src file into assembly code.
|
||||||
local n = basename(src):gsub("%.%w*$", "")
|
local n = basename(src):gsub("%.%w*$", "")
|
||||||
|
@ -14,7 +55,11 @@ for _, plat in ipairs({"cpm"}) do
|
||||||
name = "s_"..plat.."/"..n,
|
name = "s_"..plat.."/"..n,
|
||||||
srcs = { src },
|
srcs = { src },
|
||||||
deps = {
|
deps = {
|
||||||
"./*.h",
|
"./FP_bias.h",
|
||||||
|
"./FP_shift.h",
|
||||||
|
"./FP_trap.h",
|
||||||
|
"./FP_types.h",
|
||||||
|
"./get_put.h",
|
||||||
byte_order,
|
byte_order,
|
||||||
},
|
},
|
||||||
suffix = ".s",
|
suffix = ".s",
|
||||||
|
|
|
@ -11,8 +11,16 @@ definerule("build_mcg",
|
||||||
name = e.name.."/headers",
|
name = e.name.."/headers",
|
||||||
srcs = {},
|
srcs = {},
|
||||||
hdrs = {
|
hdrs = {
|
||||||
"mach/proto/mcg/*.h",
|
"mach/proto/mcg/basicblock.h",
|
||||||
"mach/"..e.arch.."/mcg/*.h",
|
"mach/proto/mcg/graph.h",
|
||||||
|
"mach/proto/mcg/hop.h",
|
||||||
|
"mach/proto/mcg/ir.h",
|
||||||
|
"mach/proto/mcg/mcgg_generated_footer.h",
|
||||||
|
"mach/proto/mcg/mcgg_generated_header.h",
|
||||||
|
"mach/proto/mcg/mcg.h",
|
||||||
|
"mach/proto/mcg/procedure.h",
|
||||||
|
"mach/proto/mcg/reg.h",
|
||||||
|
"mach/"..e.arch.."/mcg+headers",
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -24,7 +32,33 @@ definerule("build_mcg",
|
||||||
return cprogram {
|
return cprogram {
|
||||||
name = e.name,
|
name = e.name,
|
||||||
srcs = {
|
srcs = {
|
||||||
"mach/proto/mcg/*.c",
|
"mach/proto/mcg/basicblock.c",
|
||||||
|
"mach/proto/mcg/data.c",
|
||||||
|
"mach/proto/mcg/graph.c",
|
||||||
|
"mach/proto/mcg/hop.c",
|
||||||
|
"mach/proto/mcg/ir.c",
|
||||||
|
"mach/proto/mcg/main.c",
|
||||||
|
"mach/proto/mcg/parse_em.c",
|
||||||
|
"mach/proto/mcg/pass_convertstackops.c",
|
||||||
|
"mach/proto/mcg/pass_eliminatetrivialblocks.c",
|
||||||
|
"mach/proto/mcg/pass_groupirs.c",
|
||||||
|
"mach/proto/mcg/pass_instructionselection.c",
|
||||||
|
"mach/proto/mcg/pass_livevreganalysis.c",
|
||||||
|
"mach/proto/mcg/pass_lowerpushes.c",
|
||||||
|
"mach/proto/mcg/pass_phigroups.c",
|
||||||
|
"mach/proto/mcg/pass_prologueepilogue.c",
|
||||||
|
"mach/proto/mcg/pass_registerallocator.c",
|
||||||
|
"mach/proto/mcg/pass_removedeadblocks.c",
|
||||||
|
"mach/proto/mcg/pass_removedeadphis.c",
|
||||||
|
"mach/proto/mcg/pass_returnvalues.c",
|
||||||
|
"mach/proto/mcg/pass_splitcriticaledges.c",
|
||||||
|
"mach/proto/mcg/pass_ssa.c",
|
||||||
|
"mach/proto/mcg/pass_typeinference.c",
|
||||||
|
"mach/proto/mcg/predicates.c",
|
||||||
|
"mach/proto/mcg/procedure.c",
|
||||||
|
"mach/proto/mcg/reg.c",
|
||||||
|
"mach/proto/mcg/symbol.c",
|
||||||
|
"mach/proto/mcg/treebuilder.c",
|
||||||
"mach/"..e.arch.."/mcg/platform.c",
|
"mach/"..e.arch.."/mcg/platform.c",
|
||||||
matching(filenamesof(tables), "%.c$")
|
matching(filenamesof(tables), "%.c$")
|
||||||
},
|
},
|
||||||
|
|
|
@ -2,7 +2,7 @@ include("util/ncgg/build.lua")
|
||||||
|
|
||||||
definerule("build_ncg",
|
definerule("build_ncg",
|
||||||
{
|
{
|
||||||
arch = { type="string" }
|
arch = { type="string" },
|
||||||
},
|
},
|
||||||
function(e)
|
function(e)
|
||||||
-- Remember this is executed from the caller's directory; local
|
-- Remember this is executed from the caller's directory; local
|
||||||
|
@ -21,8 +21,7 @@ definerule("build_ncg",
|
||||||
"mach/proto/ncg/state.h",
|
"mach/proto/ncg/state.h",
|
||||||
"mach/proto/ncg/types.h",
|
"mach/proto/ncg/types.h",
|
||||||
"mach/proto/ncg/xmach.h",
|
"mach/proto/ncg/xmach.h",
|
||||||
"mach/"..e.arch.."/ncg/mach.c",
|
"mach/"..e.arch.."/ncg+headers",
|
||||||
"mach/"..e.arch.."/ncg/*.h",
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -34,7 +33,22 @@ definerule("build_ncg",
|
||||||
return cprogram {
|
return cprogram {
|
||||||
name = e.name,
|
name = e.name,
|
||||||
srcs = {
|
srcs = {
|
||||||
"mach/proto/ncg/*.c",
|
"mach/proto/ncg/codegen.c",
|
||||||
|
"mach/proto/ncg/compute.c",
|
||||||
|
"mach/proto/ncg/equiv.c",
|
||||||
|
"mach/proto/ncg/fillem.c",
|
||||||
|
"mach/proto/ncg/gencode.c",
|
||||||
|
"mach/proto/ncg/glosym.c",
|
||||||
|
"mach/proto/ncg/label.c",
|
||||||
|
"mach/proto/ncg/main.c",
|
||||||
|
"mach/proto/ncg/move.c",
|
||||||
|
"mach/proto/ncg/nextem.c",
|
||||||
|
"mach/proto/ncg/reg.c",
|
||||||
|
"mach/proto/ncg/regvar.c",
|
||||||
|
"mach/proto/ncg/salloc.c",
|
||||||
|
"mach/proto/ncg/state.c",
|
||||||
|
"mach/proto/ncg/subr.c",
|
||||||
|
"mach/proto/ncg/var.c",
|
||||||
matching(filenamesof(tables), "%.c$")
|
matching(filenamesof(tables), "%.c$")
|
||||||
},
|
},
|
||||||
deps = {
|
deps = {
|
||||||
|
|
|
@ -12,7 +12,10 @@ definerule("build_top",
|
||||||
|
|
||||||
return cprogram {
|
return cprogram {
|
||||||
name = e.name,
|
name = e.name,
|
||||||
srcs = { "mach/proto/top/*.c", },
|
srcs = {
|
||||||
|
"mach/proto/top/queue.c",
|
||||||
|
"mach/proto/top/top.c",
|
||||||
|
},
|
||||||
deps = { t },
|
deps = { t },
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
13
mach/vc4/as/build.lua
Normal file
13
mach/vc4/as/build.lua
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
bundle {
|
||||||
|
name = "headers",
|
||||||
|
srcs = {
|
||||||
|
"./mach0.c",
|
||||||
|
"./mach1.c",
|
||||||
|
"./mach2.c",
|
||||||
|
"./mach3.c",
|
||||||
|
"./mach4.c",
|
||||||
|
"./mach5.c",
|
||||||
|
"./binary.h",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,7 +1,10 @@
|
||||||
for _, plat in ipairs(vars.plats) do
|
for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = { "./*.s" },
|
srcs = {
|
||||||
|
"./csa.s",
|
||||||
|
"./csb.s",
|
||||||
|
},
|
||||||
vars = { plat = plat },
|
vars = { plat = plat },
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
for _, plat in ipairs(vars.plats) do
|
for _, plat in ipairs(vars.plats) do
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib_"..plat,
|
name = "lib_"..plat,
|
||||||
srcs = { "./*.s" },
|
srcs = {
|
||||||
|
"./edata.s",
|
||||||
|
"./em_end.s",
|
||||||
|
"./end.s",
|
||||||
|
"./etext.s",
|
||||||
|
},
|
||||||
vars = { plat = plat },
|
vars = { plat = plat },
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
8
mach/vc4/ncg/build.lua
Normal file
8
mach/vc4/ncg/build.lua
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
bundle {
|
||||||
|
name = "headers",
|
||||||
|
srcs = {
|
||||||
|
"./mach.c",
|
||||||
|
"./mach.h"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
clibrary {
|
clibrary {
|
||||||
name = "headers",
|
name = "headers",
|
||||||
hdrs = {
|
hdrs = {
|
||||||
"./h/*.h"
|
"./h/ansi.h",
|
||||||
|
"./h/em_arith.h",
|
||||||
|
"./h/em.h",
|
||||||
|
"./h/em_label.h",
|
||||||
|
"./h/em_mesX.h",
|
||||||
|
"./h/emO_code.h",
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,21 @@
|
||||||
clibrary {
|
clibrary {
|
||||||
name = "lib",
|
name = "lib",
|
||||||
srcs = { "./*.c" },
|
srcs = {
|
||||||
|
"./botch.c",
|
||||||
|
"./clear.c",
|
||||||
|
"./Malloc.c",
|
||||||
|
"./No_Mem.c",
|
||||||
|
"./Realloc.c",
|
||||||
|
"./Salloc.c",
|
||||||
|
"./Srealloc.c",
|
||||||
|
"./st_alloc.c",
|
||||||
|
"./std_alloc.c",
|
||||||
|
},
|
||||||
hdrs = { "./alloc.h" },
|
hdrs = { "./alloc.h" },
|
||||||
deps = {
|
deps = {
|
||||||
"modules+headers",
|
"modules+headers",
|
||||||
"modules/src/system+lib",
|
"modules/src/system+lib",
|
||||||
"./*.h"
|
"./alloc.h"
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,25 @@
|
||||||
clibrary {
|
local hfiles = {
|
||||||
name = "lib",
|
"./array.h",
|
||||||
srcs = { "./*.c" },
|
"./astring.h",
|
||||||
hdrs = { "./*.h" },
|
"./diagnostics.h",
|
||||||
deps = { "./*.h" },
|
"./imap.h",
|
||||||
|
"./pmap.h",
|
||||||
|
"./smap.h",
|
||||||
|
"./stringlist.h",
|
||||||
|
}
|
||||||
|
|
||||||
|
clibrary {
|
||||||
|
name = "lib",
|
||||||
|
srcs = {
|
||||||
|
"./array.c",
|
||||||
|
"./astring.c",
|
||||||
|
"./diagnostics.c",
|
||||||
|
"./imap.c",
|
||||||
|
"./pmap.c",
|
||||||
|
"./smap.c",
|
||||||
|
"./stringlist.c",
|
||||||
|
},
|
||||||
|
hdrs = hfiles,
|
||||||
|
deps = hfiles,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,19 @@
|
||||||
clibrary {
|
clibrary {
|
||||||
name = "lib",
|
name = "lib",
|
||||||
srcs = { "./*.c" },
|
srcs = {
|
||||||
|
"./C_ms_com.c",
|
||||||
|
"./C_ms_ego.c",
|
||||||
|
"./C_ms_emx.c",
|
||||||
|
"./C_ms_err.c",
|
||||||
|
"./C_ms_flt.c",
|
||||||
|
"./C_ms_gto.c",
|
||||||
|
"./C_ms_opt.c",
|
||||||
|
"./C_ms_par.c",
|
||||||
|
"./C_ms_reg.c",
|
||||||
|
"./C_ms_src.c",
|
||||||
|
"./C_ms_stb.c",
|
||||||
|
"./C_ms_std.c",
|
||||||
|
},
|
||||||
deps = {
|
deps = {
|
||||||
"h+emheaders",
|
"h+emheaders",
|
||||||
"modules+headers",
|
"modules+headers",
|
||||||
|
|
|
@ -19,7 +19,8 @@ clibrary {
|
||||||
hdrs = { "./flt_arith.h" },
|
hdrs = { "./flt_arith.h" },
|
||||||
deps = {
|
deps = {
|
||||||
"modules+headers",
|
"modules+headers",
|
||||||
"./*.h",
|
"./flt_arith.h",
|
||||||
|
"./flt_misc.h",
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,10 @@
|
||||||
clibrary {
|
clibrary {
|
||||||
name = "lib",
|
name = "lib",
|
||||||
srcs = {},
|
srcs = {},
|
||||||
hdrs = { "./idf_pkg.*" },
|
hdrs = {
|
||||||
|
"./idf_pkg.body",
|
||||||
|
"./idf_pkg.spec",
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,13 @@
|
||||||
clibrary {
|
clibrary {
|
||||||
name = "lib",
|
name = "lib",
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.c"
|
"./AtEoIF.c",
|
||||||
|
"./AtEoIT.c",
|
||||||
},
|
},
|
||||||
hdrs = { "./inp_pkg.*" }
|
hdrs = {
|
||||||
|
"./inp_pkg.body",
|
||||||
|
"./inp_pkg.spec",
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,12 +1,28 @@
|
||||||
clibrary {
|
clibrary {
|
||||||
name = "lib",
|
name = "lib",
|
||||||
srcs = { "./*.c" },
|
srcs = {
|
||||||
|
"./rd_arhdr.c",
|
||||||
|
"./rd_bytes.c",
|
||||||
|
"./rd.c",
|
||||||
|
"./rd_int2.c",
|
||||||
|
"./rd_int4.c",
|
||||||
|
"./rd_ranlib.c",
|
||||||
|
"./rd_unsig2.c",
|
||||||
|
"./wr_arhdr.c",
|
||||||
|
"./wr_bytes.c",
|
||||||
|
"./wr.c",
|
||||||
|
"./wr_int2.c",
|
||||||
|
"./wr_int4.c",
|
||||||
|
"./wr_putc.c",
|
||||||
|
"./wr_ranlib.c",
|
||||||
|
},
|
||||||
hdrs = { "./object.h" },
|
hdrs = { "./object.h" },
|
||||||
deps = {
|
deps = {
|
||||||
"modules+headers",
|
"modules+headers",
|
||||||
"h+local",
|
"h+local",
|
||||||
"h+emheaders",
|
"h+emheaders",
|
||||||
"./*.h",
|
"./object.h",
|
||||||
|
"./obj.h",
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -56,7 +56,7 @@ local function variant(name, cflags)
|
||||||
"modules/src/em_data+lib",
|
"modules/src/em_data+lib",
|
||||||
"modules/src/string+lib",
|
"modules/src/string+lib",
|
||||||
"modules/src/system+lib",
|
"modules/src/system+lib",
|
||||||
"./*.h",
|
"./em_comp.h",
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
ackfile {
|
ackfile {
|
||||||
name = "bdos_o",
|
name = "bdos_o",
|
||||||
srcs = { "./*.s" },
|
srcs = {
|
||||||
|
"./bdos.s",
|
||||||
|
},
|
||||||
vars = { plat = "cpm" },
|
vars = { plat = "cpm" },
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -38,7 +40,12 @@ cprogram {
|
||||||
name = "emu",
|
name = "emu",
|
||||||
srcs = {
|
srcs = {
|
||||||
"+bdos_c",
|
"+bdos_c",
|
||||||
"./*.c"
|
"./biosbdos.c",
|
||||||
|
"./dis8080.c",
|
||||||
|
"./emulator.c",
|
||||||
|
"./fileio.c",
|
||||||
|
"./intel_8080_emulator.c",
|
||||||
|
"./main.c",
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "internal",
|
name = "internal",
|
||||||
hdrs = { "./*.h" }
|
hdrs = {
|
||||||
|
"./asm.h",
|
||||||
|
"./cpmsys.h",
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
local bdos_calls = {
|
local bdos_calls = {
|
||||||
|
@ -125,8 +128,32 @@ end
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib",
|
name = "lib",
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.c",
|
"./_bdos.s",
|
||||||
"./*.s",
|
"./_bios_raw.s",
|
||||||
|
"./_bios.s",
|
||||||
|
"./bios_sectran.s",
|
||||||
|
"./bios_seldsk.s",
|
||||||
|
"./brk.c",
|
||||||
|
"./close.c",
|
||||||
|
"./cpm_overwrite_ccp.s",
|
||||||
|
"./cpm_printstring0.s",
|
||||||
|
"./cpm_read_random_safe.c",
|
||||||
|
"./creat.c",
|
||||||
|
-- "./errno.s",
|
||||||
|
"./fcb.c",
|
||||||
|
"./fd.c",
|
||||||
|
"./getpid.c",
|
||||||
|
"./_hol0.s",
|
||||||
|
"./_inn2.s",
|
||||||
|
"./isatty.c",
|
||||||
|
"./kill.c",
|
||||||
|
"./lseek.c",
|
||||||
|
"./open.c",
|
||||||
|
"./read.c",
|
||||||
|
"./signal.c",
|
||||||
|
"./time.c",
|
||||||
|
"./_trap.s",
|
||||||
|
"./write.c",
|
||||||
generated
|
generated
|
||||||
},
|
},
|
||||||
deps = {
|
deps = {
|
||||||
|
|
|
@ -9,5 +9,7 @@ plat_testsuite {
|
||||||
"floats", -- floats aren't supported
|
"floats", -- floats aren't supported
|
||||||
"long-long",
|
"long-long",
|
||||||
},
|
},
|
||||||
tests = { "./*.c" },
|
tests = {
|
||||||
|
"./parsefcb_c.c",
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
74
plat/em/libsys/build.lua
Normal file
74
plat/em/libsys/build.lua
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
bundle {
|
||||||
|
name = "srcs",
|
||||||
|
srcs = {
|
||||||
|
"./access.e",
|
||||||
|
"./acct.e",
|
||||||
|
"./alarm.e",
|
||||||
|
"./brk.e",
|
||||||
|
"./chdir.e",
|
||||||
|
"./chmod.e",
|
||||||
|
"./chown.e",
|
||||||
|
"./chroot.e",
|
||||||
|
"./close.e",
|
||||||
|
"./creat.e",
|
||||||
|
"./dup2.e",
|
||||||
|
"./dup.e",
|
||||||
|
"./errno.e",
|
||||||
|
"./execl.e",
|
||||||
|
"./execle.e",
|
||||||
|
"./execv.e",
|
||||||
|
"./execve.e",
|
||||||
|
"./_exit.e",
|
||||||
|
"./fork.e",
|
||||||
|
"./fstat.e",
|
||||||
|
"./ftime.e",
|
||||||
|
"./getegid.e",
|
||||||
|
"./geteuid.e",
|
||||||
|
"./getgid.e",
|
||||||
|
"./getpid.e",
|
||||||
|
"./getuid.e",
|
||||||
|
"./gtty.c",
|
||||||
|
"./ioctl.e",
|
||||||
|
"./isatty.c",
|
||||||
|
"./kill.e",
|
||||||
|
"./link.e",
|
||||||
|
"./lock.e",
|
||||||
|
"./lseek.e",
|
||||||
|
"./mknod.e",
|
||||||
|
"./mount.e",
|
||||||
|
"./mpxcall.e",
|
||||||
|
"./nice.e",
|
||||||
|
"./open.e",
|
||||||
|
"./pause.e",
|
||||||
|
"./pipe.e",
|
||||||
|
"./prof.e",
|
||||||
|
"./ptrace.e",
|
||||||
|
"./read.e",
|
||||||
|
"./sbrk.e",
|
||||||
|
"./setgid.e",
|
||||||
|
"./setsig.e",
|
||||||
|
"./setuid.e",
|
||||||
|
"./signal.c",
|
||||||
|
"./sigtrp.e",
|
||||||
|
"./stat.e",
|
||||||
|
"./stime.e",
|
||||||
|
"./stty.c",
|
||||||
|
"./sync.e",
|
||||||
|
"./tell.c",
|
||||||
|
"./time.c",
|
||||||
|
"./times.e",
|
||||||
|
"./umask.e",
|
||||||
|
"./umount.e",
|
||||||
|
"./unlink.e",
|
||||||
|
"./utime.e",
|
||||||
|
"./wait.e",
|
||||||
|
"./write.e",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bundle {
|
||||||
|
name = "headers",
|
||||||
|
srcs = {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,13 +1,10 @@
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib",
|
name = "lib",
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.e",
|
"plat/em/libsys+srcs",
|
||||||
"./*.c",
|
|
||||||
"plat/em/libsys/*.c",
|
|
||||||
"plat/em/libsys/*.e",
|
|
||||||
},
|
},
|
||||||
deps = {
|
deps = {
|
||||||
"plat/em/libsys/*.h",
|
"plat/em/libsys+headers",
|
||||||
"lang/cem/libcc.ansi/headers+headers",
|
"lang/cem/libcc.ansi/headers+headers",
|
||||||
"plat/em22/include+pkg",
|
"plat/em22/include+pkg",
|
||||||
"h+emheaders",
|
"h+emheaders",
|
||||||
|
|
35
plat/linux/libsys/build.lua
Normal file
35
plat/linux/libsys/build.lua
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
bundle {
|
||||||
|
name = "srcs",
|
||||||
|
srcs = {
|
||||||
|
"./close.c",
|
||||||
|
"./creat.c",
|
||||||
|
"./execve.c",
|
||||||
|
"./_exit.c",
|
||||||
|
"./fork.c",
|
||||||
|
"./getpid.c",
|
||||||
|
"./gettimeofday.c",
|
||||||
|
"./_hol0.s",
|
||||||
|
"./ioctl.c",
|
||||||
|
"./isatty.c",
|
||||||
|
"./kill.c",
|
||||||
|
"./lseek.c",
|
||||||
|
"./open.c",
|
||||||
|
"./read.c",
|
||||||
|
"./sbrk.c",
|
||||||
|
"./signal.c",
|
||||||
|
"./sigprocmask.c",
|
||||||
|
"./unlink.c",
|
||||||
|
"./wait.c",
|
||||||
|
"./waitpid.c",
|
||||||
|
"./write.c",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bundle {
|
||||||
|
name = "headers",
|
||||||
|
srcs = {
|
||||||
|
"./libsys.h",
|
||||||
|
"./syscalls.h",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,12 +1,13 @@
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib",
|
name = "lib",
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.s",
|
"./execl.s",
|
||||||
"plat/linux/libsys/*.c",
|
"./_syscall.s",
|
||||||
"plat/linux/libsys/*.s",
|
"./trapno.s",
|
||||||
|
"plat/linux/libsys+srcs",
|
||||||
},
|
},
|
||||||
deps = {
|
deps = {
|
||||||
"plat/linux/libsys/*.h",
|
"plat/linux/libsys+headers",
|
||||||
"lang/cem/libcc.ansi/headers+headers",
|
"lang/cem/libcc.ansi/headers+headers",
|
||||||
"plat/linux386/include+pkg",
|
"plat/linux386/include+pkg",
|
||||||
},
|
},
|
||||||
|
|
|
@ -1,12 +1,11 @@
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib",
|
name = "lib",
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.s",
|
"./_syscall.s",
|
||||||
"plat/linux/libsys/*.c",
|
"plat/linux/libsys+srcs",
|
||||||
"plat/linux/libsys/*.s",
|
|
||||||
},
|
},
|
||||||
deps = {
|
deps = {
|
||||||
"plat/linux/libsys/*.h",
|
"plat/linux/libsys+headers",
|
||||||
"lang/cem/libcc.ansi/headers+headers",
|
"lang/cem/libcc.ansi/headers+headers",
|
||||||
"plat/linux68k/include+pkg",
|
"plat/linux68k/include+pkg",
|
||||||
},
|
},
|
||||||
|
|
|
@ -25,7 +25,7 @@ acklibrary {
|
||||||
"plat/linux/libsys/write.c",
|
"plat/linux/libsys/write.c",
|
||||||
},
|
},
|
||||||
deps = {
|
deps = {
|
||||||
"plat/linux/libsys/*.h",
|
"plat/linux/libsys+headers",
|
||||||
"lang/cem/libcc.ansi/headers+headers",
|
"lang/cem/libcc.ansi/headers+headers",
|
||||||
"plat/linuxmips/include+pkg",
|
"plat/linuxmips/include+pkg",
|
||||||
},
|
},
|
||||||
|
|
|
@ -20,7 +20,10 @@ clibrary {
|
||||||
|
|
||||||
cprogram {
|
cprogram {
|
||||||
name = "emuppc",
|
name = "emuppc",
|
||||||
srcs = { "./*.c" },
|
srcs = {
|
||||||
|
"./emu.c",
|
||||||
|
"./main.c",
|
||||||
|
},
|
||||||
deps = {
|
deps = {
|
||||||
"+dispatcher_lib"
|
"+dispatcher_lib"
|
||||||
}
|
}
|
||||||
|
|
|
@ -27,7 +27,7 @@ acklibrary {
|
||||||
"plat/linux/libsys/write.c",
|
"plat/linux/libsys/write.c",
|
||||||
},
|
},
|
||||||
deps = {
|
deps = {
|
||||||
"plat/linux/libsys/*.h",
|
"plat/linux/libsys+headers",
|
||||||
"lang/cem/libcc.ansi/headers+headers",
|
"lang/cem/libcc.ansi/headers+headers",
|
||||||
"plat/linuxppc/include+pkg",
|
"plat/linuxppc/include+pkg",
|
||||||
},
|
},
|
||||||
|
|
|
@ -1,8 +1,39 @@
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib",
|
name = "lib",
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.c",
|
"./brk.c",
|
||||||
"./*.s",
|
"./close.s",
|
||||||
|
"./creat.c",
|
||||||
|
"./errno.s",
|
||||||
|
"./getpid.s",
|
||||||
|
"./gettimeofday.c",
|
||||||
|
"./_hol0.s",
|
||||||
|
"./isatty.s",
|
||||||
|
"./kill.c",
|
||||||
|
"./lseek.c",
|
||||||
|
"./open.c",
|
||||||
|
"./read.c",
|
||||||
|
"./setmode.c",
|
||||||
|
"./signal.c",
|
||||||
|
"./sys_exists.s",
|
||||||
|
"./sys_fdmodes.c",
|
||||||
|
"./sys_getdate.s",
|
||||||
|
"./sys_getmode.c",
|
||||||
|
"./sys_gettime.s",
|
||||||
|
"./sys_initmain.c",
|
||||||
|
"./sys_iseof.c",
|
||||||
|
"./sys_isopen.s",
|
||||||
|
"./sys_isreadyr.s",
|
||||||
|
"./sys_rawcreat.s",
|
||||||
|
"./sys_rawlseek.s",
|
||||||
|
"./sys_rawopen.s",
|
||||||
|
"./sys_rawrw.s",
|
||||||
|
"./sys_seteof.c",
|
||||||
|
"./sys_seterrno.c",
|
||||||
|
"./sys_setmode.c",
|
||||||
|
"./sys_xret.s",
|
||||||
|
"./unlink.s",
|
||||||
|
"./write.c",
|
||||||
},
|
},
|
||||||
deps = {
|
deps = {
|
||||||
"lang/cem/libcc.ansi/headers+headers",
|
"lang/cem/libcc.ansi/headers+headers",
|
||||||
|
|
|
@ -3,7 +3,15 @@ clibrary {
|
||||||
vars = {
|
vars = {
|
||||||
["+cflags"] = {"-Iplat/pc86/emu/x86emu", "-DDEBUG"}
|
["+cflags"] = {"-Iplat/pc86/emu/x86emu", "-DDEBUG"}
|
||||||
},
|
},
|
||||||
srcs = {"./x86emu/*.c"}
|
srcs = {
|
||||||
|
"./x86emu/debug.c",
|
||||||
|
"./x86emu/decode.c",
|
||||||
|
"./x86emu/fpu.c",
|
||||||
|
"./x86emu/ops2.c",
|
||||||
|
"./x86emu/ops.c",
|
||||||
|
"./x86emu/prim_ops.c",
|
||||||
|
"./x86emu/sys.c",
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
cprogram {
|
cprogram {
|
||||||
|
|
|
@ -1,8 +1,22 @@
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib",
|
name = "lib",
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.c",
|
"./brk.c",
|
||||||
"./*.s",
|
"./close.c",
|
||||||
|
"./creat.c",
|
||||||
|
"./errno.s",
|
||||||
|
"./getpid.c",
|
||||||
|
"./_hol0.s",
|
||||||
|
"./isatty.c",
|
||||||
|
"./kill.c",
|
||||||
|
"./lseek.c",
|
||||||
|
"./open.c",
|
||||||
|
"./read.c",
|
||||||
|
"./signal.c",
|
||||||
|
"./_sys_rawread.s",
|
||||||
|
"./_sys_rawwrite.s",
|
||||||
|
"./time.c",
|
||||||
|
"./write.c",
|
||||||
},
|
},
|
||||||
deps = {
|
deps = {
|
||||||
"lang/cem/libcc.ansi/headers+headers",
|
"lang/cem/libcc.ansi/headers+headers",
|
||||||
|
|
|
@ -1,8 +1,87 @@
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib",
|
name = "lib",
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.c",
|
"./access.s",
|
||||||
"./*.s",
|
"./acct.s",
|
||||||
|
"./alarm.s",
|
||||||
|
"./chdir.s",
|
||||||
|
"./chmod.s",
|
||||||
|
"./chown.s",
|
||||||
|
"./chroot.s",
|
||||||
|
"./cleanup.c",
|
||||||
|
"./close.s",
|
||||||
|
"./creat.s",
|
||||||
|
"./dup.s",
|
||||||
|
"./errno.s",
|
||||||
|
"./execle.s",
|
||||||
|
"./execl.s",
|
||||||
|
"./execve.s",
|
||||||
|
"./execv.s",
|
||||||
|
"./exit.c",
|
||||||
|
"./_exit.s",
|
||||||
|
"./fetchi.s",
|
||||||
|
"./fork.s",
|
||||||
|
"./fperr.s",
|
||||||
|
"./fstat.s",
|
||||||
|
"./ftime.s",
|
||||||
|
"./getgid.s",
|
||||||
|
"./getgrp.s",
|
||||||
|
"./getpid.s",
|
||||||
|
"./getppid.s",
|
||||||
|
"./getuid.s",
|
||||||
|
"./gldav.s",
|
||||||
|
"./gtty.c",
|
||||||
|
"./ioctl.s",
|
||||||
|
"./isatty.c",
|
||||||
|
"./killbkg.s",
|
||||||
|
"./killpg.s",
|
||||||
|
"./kill.s",
|
||||||
|
"./link.s",
|
||||||
|
"./lock.s",
|
||||||
|
"./login.s",
|
||||||
|
"./lseek.s",
|
||||||
|
"./lstat.s",
|
||||||
|
"./mknod.s",
|
||||||
|
"./mount.s",
|
||||||
|
"./mpxcall.s",
|
||||||
|
"./nice.s",
|
||||||
|
"./nostk.s",
|
||||||
|
"./open.s",
|
||||||
|
"./pause.s",
|
||||||
|
"./phys.s",
|
||||||
|
"./pipe.s",
|
||||||
|
"./profil.s",
|
||||||
|
"./ptrace.s",
|
||||||
|
"./qfstat.s",
|
||||||
|
"./qstat.s",
|
||||||
|
"./quota.s",
|
||||||
|
"./readlink.s",
|
||||||
|
"./read.s",
|
||||||
|
"./reboot.s",
|
||||||
|
"./renice.s",
|
||||||
|
"./rtp.s",
|
||||||
|
"./sbrk.s",
|
||||||
|
"./setgid.s",
|
||||||
|
"./setgrp.s",
|
||||||
|
"./setuid.s",
|
||||||
|
"./signal.s",
|
||||||
|
"./stat.s",
|
||||||
|
"./stime.s",
|
||||||
|
"./stty.c",
|
||||||
|
"./submit.s",
|
||||||
|
"./symlink.s",
|
||||||
|
"./sync.s",
|
||||||
|
"./time.s",
|
||||||
|
"./times.s",
|
||||||
|
"./ucall.s",
|
||||||
|
"./umask.s",
|
||||||
|
"./umount.s",
|
||||||
|
"./unlink.s",
|
||||||
|
"./utime.s",
|
||||||
|
"./vfork.s",
|
||||||
|
"./vhangup.s",
|
||||||
|
"./wait.s",
|
||||||
|
"./write.s",
|
||||||
},
|
},
|
||||||
deps = {
|
deps = {
|
||||||
"lang/cem/libcc.ansi/headers+headers",
|
"lang/cem/libcc.ansi/headers+headers",
|
||||||
|
|
|
@ -1,8 +1,27 @@
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "lib",
|
name = "lib",
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.c",
|
"./brk.c",
|
||||||
"./*.s",
|
"./close.c",
|
||||||
|
"./creat.c",
|
||||||
|
"./errno.s",
|
||||||
|
"./getpid.c",
|
||||||
|
"./_hol0.s",
|
||||||
|
"./isatty.c",
|
||||||
|
"./kill.c",
|
||||||
|
"./lseek.c",
|
||||||
|
"./open.c",
|
||||||
|
"./pi_fast_mode.s",
|
||||||
|
"./pi_phys_to_user.s",
|
||||||
|
"./pi_uart.s",
|
||||||
|
"./pi_user_to_phys.s",
|
||||||
|
"./read.c",
|
||||||
|
"./select.c",
|
||||||
|
"./signal.c",
|
||||||
|
"./tcgetattr.c",
|
||||||
|
"./tcsetattr.c",
|
||||||
|
"./time.c",
|
||||||
|
"./write.c",
|
||||||
},
|
},
|
||||||
deps = {
|
deps = {
|
||||||
"lang/cem/libcc.ansi/headers+headers",
|
"lang/cem/libcc.ansi/headers+headers",
|
||||||
|
|
9
tests/plat/b/build.lua
Normal file
9
tests/plat/b/build.lua
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
bundle {
|
||||||
|
name = "srcs",
|
||||||
|
srcs = {
|
||||||
|
"./control_b.b",
|
||||||
|
"./incdec_b.b",
|
||||||
|
"./operators_b.b",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
12
tests/plat/bugs/build.lua
Normal file
12
tests/plat/bugs/build.lua
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
bundle {
|
||||||
|
name = "srcs",
|
||||||
|
srcs = {
|
||||||
|
"./bug-157-i80-varargs_c.c",
|
||||||
|
"./bug-164-faddrn_c.c",
|
||||||
|
"./bug-203-ego-sr_c-O3.c",
|
||||||
|
"./bug-22-inn_mod.mod",
|
||||||
|
"./bug-62-notvar_var_e.c",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -20,7 +20,7 @@ definerule("plat_testsuite",
|
||||||
end
|
end
|
||||||
for _, set in ipairs(e.sets) do
|
for _, set in ipairs(e.sets) do
|
||||||
if not skipsets[set] then
|
if not skipsets[set] then
|
||||||
local fs = filenamesof("tests/plat/"..set.."/*")
|
local fs = filenamesof("tests/plat/"..set.."+srcs")
|
||||||
for _, f in ipairs(fs) do
|
for _, f in ipairs(fs) do
|
||||||
testfiles[#testfiles+1] = f
|
testfiles[#testfiles+1] = f
|
||||||
end
|
end
|
||||||
|
|
42
tests/plat/core/build.lua
Normal file
42
tests/plat/core/build.lua
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
bundle {
|
||||||
|
name = "srcs",
|
||||||
|
srcs = {
|
||||||
|
"./aar_e.e",
|
||||||
|
"./and_e.e",
|
||||||
|
"./andv_e.e",
|
||||||
|
"./brk_c.c",
|
||||||
|
"./bss_e.c",
|
||||||
|
"./calloc_c.c",
|
||||||
|
"./cii_e.e",
|
||||||
|
"./cmi_e.e",
|
||||||
|
"./cms_e.e",
|
||||||
|
"./cmu_e.e",
|
||||||
|
"./csa_e.c",
|
||||||
|
"./csb_e.c",
|
||||||
|
"./_dummy_e.c",
|
||||||
|
"./dup_e.e",
|
||||||
|
"./exg_e.e",
|
||||||
|
"./inn_e.e",
|
||||||
|
"./intadd_e.c",
|
||||||
|
"./intcmp_e.c",
|
||||||
|
"./intdiv_e.c",
|
||||||
|
"./intrem_e.c",
|
||||||
|
"./intshift_e.c",
|
||||||
|
"./intsub_e.c",
|
||||||
|
"./ior_e.e",
|
||||||
|
"./iorv_e.e",
|
||||||
|
"./lar_e.e",
|
||||||
|
"./newdispose_p.p",
|
||||||
|
"./pascalsets_p.p",
|
||||||
|
"./rck_e.e",
|
||||||
|
"./rotate_e.e",
|
||||||
|
"./sar_e.e",
|
||||||
|
"./set_e.e",
|
||||||
|
"./setjmp_c.c",
|
||||||
|
"./structcopy_e.c",
|
||||||
|
"./xor_e.e",
|
||||||
|
"./xorv_e.e",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
12
tests/plat/floats/build.lua
Normal file
12
tests/plat/floats/build.lua
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
bundle {
|
||||||
|
name = "srcs",
|
||||||
|
srcs = {
|
||||||
|
"./doublecmp_e.c",
|
||||||
|
"./from_d_to_si_e.c",
|
||||||
|
"./from_d_to_ui_e.c",
|
||||||
|
"./from_si_to_d_e.c",
|
||||||
|
"./from_ui_to_d_e.c",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
7
tests/plat/lib/build.lua
Normal file
7
tests/plat/lib/build.lua
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
bundle {
|
||||||
|
name = "srcs",
|
||||||
|
srcs = {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
15
tests/plat/long-long/build.lua
Normal file
15
tests/plat/long-long/build.lua
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
bundle {
|
||||||
|
name = "srcs",
|
||||||
|
srcs = {
|
||||||
|
"./lladdsub_e.c",
|
||||||
|
"./llbitset_e.c",
|
||||||
|
"./llcmp_e.c",
|
||||||
|
"./llconvert_e.c",
|
||||||
|
"./lldivrem_e.c",
|
||||||
|
"./llmul_e.c",
|
||||||
|
"./llshift_e.c",
|
||||||
|
"./llswitch_e.c",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
13
tests/plat/m2/build.lua
Normal file
13
tests/plat/m2/build.lua
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
bundle {
|
||||||
|
name = "srcs",
|
||||||
|
srcs = {
|
||||||
|
"./ConvTest_mod.mod",
|
||||||
|
"./NestProc_mod.mod",
|
||||||
|
"./OpenArray_mod.mod",
|
||||||
|
"./SemaTest_mod.mod",
|
||||||
|
"./Set100_mod.mod",
|
||||||
|
"./StringTest_mod.mod",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -26,7 +26,17 @@ normalrule {
|
||||||
cprogram {
|
cprogram {
|
||||||
name = "em_ass",
|
name = "em_ass",
|
||||||
srcs = {
|
srcs = {
|
||||||
"./ass*.c",
|
"./ass00.c",
|
||||||
|
"./ass30.c",
|
||||||
|
"./ass40.c",
|
||||||
|
"./ass50.c",
|
||||||
|
"./ass60.c",
|
||||||
|
"./ass70.c",
|
||||||
|
"./ass80.c",
|
||||||
|
"./assci.c",
|
||||||
|
"./asscm.c",
|
||||||
|
"./assda.c",
|
||||||
|
"./assrl.c",
|
||||||
"+asstb",
|
"+asstb",
|
||||||
},
|
},
|
||||||
deps = {
|
deps = {
|
||||||
|
@ -37,7 +47,11 @@ cprogram {
|
||||||
--"modules/src/data+lib",
|
--"modules/src/data+lib",
|
||||||
--"modules/src/object+lib",
|
--"modules/src/object+lib",
|
||||||
"modules/src/system+lib",
|
"modules/src/system+lib",
|
||||||
"./ass*.h",
|
"./ass00.h",
|
||||||
|
"./assci.h",
|
||||||
|
"./asscm.h",
|
||||||
|
"./assex.h",
|
||||||
|
"./assrl.h",
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@ local cgglexer = flex {
|
||||||
cprogram {
|
cprogram {
|
||||||
name = "cgg",
|
name = "cgg",
|
||||||
srcs = concat(
|
srcs = concat(
|
||||||
"./*.c",
|
"./main.c",
|
||||||
matching(filenamesof(cggparser), "%.c$"),
|
matching(filenamesof(cggparser), "%.c$"),
|
||||||
matching(filenamesof(cgglexer), "%.c$")
|
matching(filenamesof(cgglexer), "%.c$")
|
||||||
),
|
),
|
||||||
|
|
|
@ -14,17 +14,257 @@ local function build_ego(name)
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
build_ego("bo")
|
cprogram {
|
||||||
build_ego("ca")
|
name = "bo",
|
||||||
build_ego("cf")
|
srcs = {
|
||||||
build_ego("cj")
|
"./bo/bo.c",
|
||||||
build_ego("cs")
|
},
|
||||||
build_ego("ic")
|
deps = {
|
||||||
build_ego("il")
|
"util/ego/share+lib",
|
||||||
build_ego("lv")
|
"modules/src/em_data+lib",
|
||||||
build_ego("sp")
|
"h+emheaders",
|
||||||
build_ego("sr")
|
},
|
||||||
build_ego("ud")
|
vars = {
|
||||||
|
["+cflags"] = {"-DDEBUG", "-DVERBOSE", "-DNOTCOMPACT"}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
cprogram {
|
||||||
|
name = "ca",
|
||||||
|
srcs = {
|
||||||
|
"./ca/ca.c",
|
||||||
|
"./ca/ca_put.c",
|
||||||
|
},
|
||||||
|
deps = {
|
||||||
|
"./ca/ca.h",
|
||||||
|
"./ca/ca_put.h",
|
||||||
|
"util/ego/share+lib",
|
||||||
|
"modules/src/em_data+lib",
|
||||||
|
"h+emheaders",
|
||||||
|
},
|
||||||
|
vars = {
|
||||||
|
["+cflags"] = {"-DDEBUG", "-DVERBOSE", "-DNOTCOMPACT"}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
cprogram {
|
||||||
|
name = "cf",
|
||||||
|
srcs = {
|
||||||
|
"./cf/cf.c",
|
||||||
|
"./cf/cf_idom.c",
|
||||||
|
"./cf/cf_loop.c",
|
||||||
|
"./cf/cf_succ.c",
|
||||||
|
|
||||||
|
},
|
||||||
|
deps = {
|
||||||
|
"./cf/cf.h",
|
||||||
|
"./cf/cf_idom.h",
|
||||||
|
"./cf/cf_loop.h",
|
||||||
|
"./cf/cf_succ.h",
|
||||||
|
"util/ego/share+lib",
|
||||||
|
"modules/src/em_data+lib",
|
||||||
|
"h+emheaders",
|
||||||
|
},
|
||||||
|
vars = {
|
||||||
|
["+cflags"] = {"-DDEBUG", "-DVERBOSE", "-DNOTCOMPACT"}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
cprogram {
|
||||||
|
name = "cj",
|
||||||
|
srcs = {
|
||||||
|
"./cj/cj.c",
|
||||||
|
},
|
||||||
|
deps = {
|
||||||
|
"util/ego/share+lib",
|
||||||
|
"modules/src/em_data+lib",
|
||||||
|
"h+emheaders",
|
||||||
|
},
|
||||||
|
vars = {
|
||||||
|
["+cflags"] = {"-DDEBUG", "-DVERBOSE", "-DNOTCOMPACT"}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
cprogram {
|
||||||
|
name = "cs",
|
||||||
|
srcs = {
|
||||||
|
"./cs/cs_alloc.c",
|
||||||
|
"./cs/cs_aux.c",
|
||||||
|
"./cs/cs_avail.c",
|
||||||
|
"./cs/cs.c",
|
||||||
|
"./cs/cs_debug.c",
|
||||||
|
"./cs/cs_elim.c",
|
||||||
|
"./cs/cs_entity.c",
|
||||||
|
"./cs/cs_getent.c",
|
||||||
|
"./cs/cs_kill.c",
|
||||||
|
"./cs/cs_partit.c",
|
||||||
|
"./cs/cs_profit.c",
|
||||||
|
"./cs/cs_stack.c",
|
||||||
|
"./cs/cs_vnm.c",
|
||||||
|
},
|
||||||
|
deps = {
|
||||||
|
"./cs/cs_alloc.h",
|
||||||
|
"./cs/cs_aux.h",
|
||||||
|
"./cs/cs_avail.h",
|
||||||
|
"./cs/cs_debug.h",
|
||||||
|
"./cs/cs_elim.h",
|
||||||
|
"./cs/cs_entity.h",
|
||||||
|
"./cs/cs_getent.h",
|
||||||
|
"./cs/cs.h",
|
||||||
|
"./cs/cs_kill.h",
|
||||||
|
"./cs/cs_partit.h",
|
||||||
|
"./cs/cs_profit.h",
|
||||||
|
"./cs/cs_stack.h",
|
||||||
|
"./cs/cs_vnm.h",
|
||||||
|
"util/ego/share+lib",
|
||||||
|
"modules/src/em_data+lib",
|
||||||
|
"h+emheaders",
|
||||||
|
},
|
||||||
|
vars = {
|
||||||
|
["+cflags"] = {"-DDEBUG", "-DVERBOSE", "-DNOTCOMPACT"}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
cprogram {
|
||||||
|
name = "ic",
|
||||||
|
srcs = {
|
||||||
|
"./ic/ic_aux.c",
|
||||||
|
"./ic/ic.c",
|
||||||
|
"./ic/ic_io.c",
|
||||||
|
"./ic/ic_lib.c",
|
||||||
|
"./ic/ic_lookup.c",
|
||||||
|
},
|
||||||
|
deps = {
|
||||||
|
"./ic/ic_aux.h",
|
||||||
|
"./ic/ic.h",
|
||||||
|
"./ic/ic_io.h",
|
||||||
|
"./ic/ic_lib.h",
|
||||||
|
"./ic/ic_lookup.h",
|
||||||
|
"util/ego/share+lib",
|
||||||
|
"modules/src/em_data+lib",
|
||||||
|
"h+emheaders",
|
||||||
|
},
|
||||||
|
vars = {
|
||||||
|
["+cflags"] = {"-DDEBUG", "-DVERBOSE", "-DNOTCOMPACT"}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
cprogram {
|
||||||
|
name = "il",
|
||||||
|
srcs = {
|
||||||
|
"./il/il1_anal.c",
|
||||||
|
"./il/il1_aux.c",
|
||||||
|
"./il/il1_cal.c",
|
||||||
|
"./il/il1_formal.c",
|
||||||
|
"./il/il2_aux.c",
|
||||||
|
"./il/il3_aux.c",
|
||||||
|
"./il/il3_change.c",
|
||||||
|
"./il/il3_subst.c",
|
||||||
|
"./il/il_aux.c",
|
||||||
|
"./il/il.c",
|
||||||
|
},
|
||||||
|
deps = {
|
||||||
|
"./il/il1_anal.h",
|
||||||
|
"./il/il1_aux.h",
|
||||||
|
"./il/il1_cal.h",
|
||||||
|
"./il/il1_formal.h",
|
||||||
|
"./il/il2_aux.h",
|
||||||
|
"./il/il3_aux.h",
|
||||||
|
"./il/il3_change.h",
|
||||||
|
"./il/il3_subst.h",
|
||||||
|
"./il/il_aux.h",
|
||||||
|
"./il/il.h",
|
||||||
|
"util/ego/share+lib",
|
||||||
|
"modules/src/em_data+lib",
|
||||||
|
"h+emheaders",
|
||||||
|
},
|
||||||
|
vars = {
|
||||||
|
["+cflags"] = {"-DDEBUG", "-DVERBOSE", "-DNOTCOMPACT"}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
cprogram {
|
||||||
|
name = "lv",
|
||||||
|
srcs = {
|
||||||
|
"./lv/lv.c",
|
||||||
|
},
|
||||||
|
deps = {
|
||||||
|
"./lv/lv.h",
|
||||||
|
"util/ego/share+lib",
|
||||||
|
"modules/src/em_data+lib",
|
||||||
|
"h+emheaders",
|
||||||
|
},
|
||||||
|
vars = {
|
||||||
|
["+cflags"] = {"-DDEBUG", "-DVERBOSE", "-DNOTCOMPACT"}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
cprogram {
|
||||||
|
name = "sp",
|
||||||
|
srcs = {
|
||||||
|
"./sp/sp.c",
|
||||||
|
},
|
||||||
|
deps = {
|
||||||
|
"util/ego/share+lib",
|
||||||
|
"modules/src/em_data+lib",
|
||||||
|
"h+emheaders",
|
||||||
|
},
|
||||||
|
vars = {
|
||||||
|
["+cflags"] = {"-DDEBUG", "-DVERBOSE", "-DNOTCOMPACT"}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
cprogram {
|
||||||
|
name = "sr",
|
||||||
|
srcs = {
|
||||||
|
"./sr/sr_aux.c",
|
||||||
|
"./sr/sr.c",
|
||||||
|
"./sr/sr_cand.c",
|
||||||
|
"./sr/sr_expr.c",
|
||||||
|
"./sr/sr_iv.c",
|
||||||
|
"./sr/sr_reduce.c",
|
||||||
|
"./sr/sr_xform.c",
|
||||||
|
},
|
||||||
|
deps = {
|
||||||
|
"./sr/sr_aux.h",
|
||||||
|
"./sr/sr_cand.h",
|
||||||
|
"./sr/sr_expr.h",
|
||||||
|
"./sr/sr.h",
|
||||||
|
"./sr/sr_iv.h",
|
||||||
|
"./sr/sr_reduce.h",
|
||||||
|
"./sr/sr_xform.h",
|
||||||
|
"util/ego/share+lib",
|
||||||
|
"modules/src/em_data+lib",
|
||||||
|
"h+emheaders",
|
||||||
|
},
|
||||||
|
vars = {
|
||||||
|
["+cflags"] = {"-DDEBUG", "-DVERBOSE", "-DNOTCOMPACT"}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
cprogram {
|
||||||
|
name = "ud",
|
||||||
|
srcs = {
|
||||||
|
"./ud/ud_aux.c",
|
||||||
|
"./ud/ud.c",
|
||||||
|
"./ud/ud_const.c",
|
||||||
|
"./ud/ud_copy.c",
|
||||||
|
"./ud/ud_defs.c",
|
||||||
|
},
|
||||||
|
deps = {
|
||||||
|
"./ud/ud_aux.h",
|
||||||
|
"./ud/ud_const.h",
|
||||||
|
"./ud/ud_copy.h",
|
||||||
|
"./ud/ud_defs.h",
|
||||||
|
"./ud/ud.h",
|
||||||
|
"util/ego/share+lib",
|
||||||
|
"modules/src/em_data+lib",
|
||||||
|
"h+emheaders",
|
||||||
|
},
|
||||||
|
vars = {
|
||||||
|
["+cflags"] = {"-DDEBUG", "-DVERBOSE", "-DNOTCOMPACT"}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
cprogram {
|
cprogram {
|
||||||
name = "em_ego",
|
name = "em_ego",
|
||||||
|
|
|
@ -18,13 +18,31 @@ normalrule {
|
||||||
|
|
||||||
cprogram {
|
cprogram {
|
||||||
name = "ra",
|
name = "ra",
|
||||||
srcs = { "./ra*.c" },
|
srcs = {
|
||||||
|
"./ra_allocl.c",
|
||||||
|
"./ra_aux.c",
|
||||||
|
"./ra.c",
|
||||||
|
"./ra_interv.c",
|
||||||
|
"./ra_items.c",
|
||||||
|
"./ra_lifet.c",
|
||||||
|
"./ra_pack.c",
|
||||||
|
"./ra_profits.c",
|
||||||
|
"./ra_xform.c",
|
||||||
|
},
|
||||||
deps = {
|
deps = {
|
||||||
"util/ego/share+lib",
|
"util/ego/share+lib",
|
||||||
"modules/src/em_data+lib",
|
"modules/src/em_data+lib",
|
||||||
"h+emheaders",
|
"h+emheaders",
|
||||||
"+itemtab_h",
|
"+itemtab_h",
|
||||||
"./ra*.h",
|
"./ra_allocl.h",
|
||||||
|
"./ra_aux.h",
|
||||||
|
"./ra.h",
|
||||||
|
"./ra_interv.h",
|
||||||
|
"./ra_items.h",
|
||||||
|
"./ra_lifet.h",
|
||||||
|
"./ra_pack.h",
|
||||||
|
"./ra_profits.h",
|
||||||
|
"./ra_xform.h",
|
||||||
},
|
},
|
||||||
vars = {
|
vars = {
|
||||||
["+cflags"] = {"-DVERBOSE", "-DNOTCOMPACT"}
|
["+cflags"] = {"-DVERBOSE", "-DNOTCOMPACT"}
|
||||||
|
|
|
@ -48,7 +48,23 @@ clibrary {
|
||||||
"./init_glob.c",
|
"./init_glob.c",
|
||||||
},
|
},
|
||||||
deps = {
|
deps = {
|
||||||
"./*.h",
|
"./alloc.h",
|
||||||
|
"./cset.h",
|
||||||
|
"./debug.h",
|
||||||
|
"./def.h",
|
||||||
|
"./files.h",
|
||||||
|
"./get.h",
|
||||||
|
"./global.h",
|
||||||
|
"./go.h",
|
||||||
|
"./init_glob.h",
|
||||||
|
"./locals.h",
|
||||||
|
"./lset.h",
|
||||||
|
"./map.h",
|
||||||
|
"./parser.h",
|
||||||
|
"./put.h",
|
||||||
|
"./stack_chg.h",
|
||||||
|
"./types.h",
|
||||||
|
"./utils.h",
|
||||||
"+classdefs_h",
|
"+classdefs_h",
|
||||||
"+pop_push_h",
|
"+pop_push_h",
|
||||||
"h+emheaders",
|
"h+emheaders",
|
||||||
|
|
|
@ -87,7 +87,46 @@ clibrary {
|
||||||
cprogram {
|
cprogram {
|
||||||
name = "int",
|
name = "int",
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.c",
|
"./alloc.c",
|
||||||
|
"./core.c",
|
||||||
|
"./data.c",
|
||||||
|
"./disassemble.c",
|
||||||
|
"./do_array.c",
|
||||||
|
"./do_branch.c",
|
||||||
|
"./do_comp.c",
|
||||||
|
"./do_conv.c",
|
||||||
|
"./do_fpar.c",
|
||||||
|
"./do_incdec.c",
|
||||||
|
"./do_intar.c",
|
||||||
|
"./do_load.c",
|
||||||
|
"./do_logic.c",
|
||||||
|
"./do_misc.c",
|
||||||
|
"./do_proc.c",
|
||||||
|
"./do_ptrar.c",
|
||||||
|
"./do_sets.c",
|
||||||
|
"./do_store.c",
|
||||||
|
"./do_unsar.c",
|
||||||
|
"./dump.c",
|
||||||
|
"./fra.c",
|
||||||
|
"./global.c",
|
||||||
|
"./init.c",
|
||||||
|
"./io.c",
|
||||||
|
"./log.c",
|
||||||
|
"./main.c",
|
||||||
|
"./m_ioctl.c",
|
||||||
|
"./moncalls.c",
|
||||||
|
"./monstruct.c",
|
||||||
|
"./m_sigtrp.c",
|
||||||
|
"./proctab.c",
|
||||||
|
"./read.c",
|
||||||
|
"./rsb.c",
|
||||||
|
"./segment.c",
|
||||||
|
"./stack.c",
|
||||||
|
"./switch.c",
|
||||||
|
"./tally.c",
|
||||||
|
"./text.c",
|
||||||
|
"./trap.c",
|
||||||
|
"./warn.c",
|
||||||
},
|
},
|
||||||
deps = {
|
deps = {
|
||||||
"h+emheaders",
|
"h+emheaders",
|
||||||
|
|
|
@ -1,6 +1,20 @@
|
||||||
cprogram {
|
cprogram {
|
||||||
name = "led",
|
name = "led",
|
||||||
srcs = { "./*.c" },
|
srcs = {
|
||||||
|
"./archive.c",
|
||||||
|
"./error.c",
|
||||||
|
"./extract.c",
|
||||||
|
"./finish.c",
|
||||||
|
"./main.c",
|
||||||
|
"./memory.c",
|
||||||
|
"./output.c",
|
||||||
|
"./read.c",
|
||||||
|
"./relocate.c",
|
||||||
|
"./save.c",
|
||||||
|
"./scan.c",
|
||||||
|
"./sym.c",
|
||||||
|
"./write.c",
|
||||||
|
},
|
||||||
deps = {
|
deps = {
|
||||||
"./archive.h", "./const.h", "./debug.h", "./defs.h",
|
"./archive.h", "./const.h", "./debug.h", "./defs.h",
|
||||||
"./error.h", "./extract.h", "./finish.h", "./mach.h",
|
"./error.h", "./extract.h", "./finish.h", "./mach.h",
|
||||||
|
|
|
@ -2,12 +2,16 @@ include("first/yacc.lua")
|
||||||
|
|
||||||
flex {
|
flex {
|
||||||
name = "flex",
|
name = "flex",
|
||||||
srcs = { "./*.l" },
|
srcs = {
|
||||||
|
"./scan.l",
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
yacc {
|
yacc {
|
||||||
name = "yacc",
|
name = "yacc",
|
||||||
srcs = { "./*.y" },
|
srcs = {
|
||||||
|
"./gram.y",
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
normalrule {
|
normalrule {
|
||||||
|
@ -41,7 +45,7 @@ clibrary {
|
||||||
cprogram {
|
cprogram {
|
||||||
name = "mcgg",
|
name = "mcgg",
|
||||||
srcs = {
|
srcs = {
|
||||||
"./*.c",
|
"./iburg.c",
|
||||||
matching(filenamesof("+flex"), "%.c$"),
|
matching(filenamesof("+flex"), "%.c$"),
|
||||||
matching(filenamesof("+yacc"), "%.c$")
|
matching(filenamesof("+yacc"), "%.c$")
|
||||||
},
|
},
|
||||||
|
|
|
@ -27,7 +27,20 @@ normalrule {
|
||||||
cprogram {
|
cprogram {
|
||||||
name = "ncgg",
|
name = "ncgg",
|
||||||
srcs = concat(
|
srcs = concat(
|
||||||
"./*.c",
|
"./coerc.c",
|
||||||
|
"./emlookup.c",
|
||||||
|
"./error.c",
|
||||||
|
"./expr.c",
|
||||||
|
"./hall.c",
|
||||||
|
"./instruct.c",
|
||||||
|
"./iocc.c",
|
||||||
|
"./lookup.c",
|
||||||
|
"./main.c",
|
||||||
|
"./output.c",
|
||||||
|
"./set.c",
|
||||||
|
"./strlookup.c",
|
||||||
|
"./subr.c",
|
||||||
|
"./var.c",
|
||||||
matching(filenamesof(cggparser), "%.c$"),
|
matching(filenamesof(cggparser), "%.c$"),
|
||||||
matching(filenamesof(cgglexer), "%.c$"),
|
matching(filenamesof(cgglexer), "%.c$"),
|
||||||
"+keywords"
|
"+keywords"
|
||||||
|
|
|
@ -61,7 +61,21 @@ local function variant(name, cflags)
|
||||||
srcs = {
|
srcs = {
|
||||||
"+pattern_c",
|
"+pattern_c",
|
||||||
"+pop_push_c",
|
"+pop_push_c",
|
||||||
"./*.c",
|
"./alloc.c",
|
||||||
|
"./backward.c",
|
||||||
|
"./cleanup.c",
|
||||||
|
"./flow.c",
|
||||||
|
"./getline.c",
|
||||||
|
"./lookup.c",
|
||||||
|
"./main.c",
|
||||||
|
"./peephole.c",
|
||||||
|
"./process.c",
|
||||||
|
"./putline.c",
|
||||||
|
"./reg.c",
|
||||||
|
"./special.c",
|
||||||
|
"./tes.c",
|
||||||
|
"./util.c",
|
||||||
|
"./var.c",
|
||||||
},
|
},
|
||||||
deps = concat(
|
deps = concat(
|
||||||
headers,
|
headers,
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue