--- /dev/null
+cprogram {
+ name = "makecldef",
+ srcs = { "./makecldef.c" }
+}
+
+normalrule {
+ name = "classdefs_h",
+ ins = {
+ "+makecldef",
+ matching(filenamesof("modules/src/em_data+lib"), "em_mnem%.h$"),
+ "./cldefs.src"
+ },
+ outleaves = { "classdefs.h" },
+ commands = {
+ "%{ins} > %{outs}"
+ }
+}
+
+normalrule {
+ name = "pop_push_h",
+ ins = {
+ "./pop_push.awk",
+ "h/em_table",
+ },
+ outleaves = { "pop_push.h" },
+ commands = {
+ "awk -f %{ins[1]} < %{ins[2]} > %{outs}"
+ }
+}
+
+clibrary {
+ name = "lib",
+ srcs = {
+ "./debug.c",
+ "./global.c",
+ "./files.c",
+ "./go.c",
+ "./map.c",
+ "./aux.c",
+ "./get.c",
+ "./put.c",
+ "./alloc.c",
+ "./lset.c",
+ "./cset.c",
+ "./parser.c",
+ "./stack_chg.c",
+ "./locals.c",
+ "./init_glob.c",
+ },
+ deps = {
+ "+classdefs_h",
+ "+pop_push_h",
+ "h+emheaders",
+ "modules/src/em_data+lib",
+ },
+ vars = {
+ ["+cflags"] = {"-DVERBOSE", "-DNOTCOMPACT"}
+ }
+}
+
+