|
@@ -0,0 +1,64 @@
|
|
|
+-- $Source$
|
|
|
+-- $State$
|
|
|
+
|
|
|
+local d = ROOTDIR.."lang/basic/src/"
|
|
|
+
|
|
|
+local lpars = LLgen {
|
|
|
+ file (d.."basic.g"),
|
|
|
+}
|
|
|
+
|
|
|
+local tokentab_h = simple {
|
|
|
+ outputs = {"%U%/token.h"},
|
|
|
+ command = {
|
|
|
+ "cd %out[1]:dirname% && %in[1]% %in[2]%"
|
|
|
+ },
|
|
|
+
|
|
|
+ file (d.."maketokentab"),
|
|
|
+ lpars
|
|
|
+}
|
|
|
+
|
|
|
+local cfile_with_headers = cfile {
|
|
|
+ class = "cfile_with_headers",
|
|
|
+ dynamicheaders = {
|
|
|
+ file (d),
|
|
|
+ lpars,
|
|
|
+ tokentab_h
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+lang_basic_compiler = cprogram {
|
|
|
+ cfile_with_headers (d.."bem.c"),
|
|
|
+ cfile_with_headers (d.."symbols.c"),
|
|
|
+ cfile_with_headers (d.."initialize.c"),
|
|
|
+ cfile_with_headers (d.."compile.c"),
|
|
|
+ cfile_with_headers (d.."parsepar.c"),
|
|
|
+ cfile_with_headers (d.."gencode.c"),
|
|
|
+ cfile_with_headers (d.."util.c"),
|
|
|
+ cfile_with_headers (d.."graph.c"),
|
|
|
+ cfile_with_headers (d.."eval.c"),
|
|
|
+ cfile_with_headers (d.."func.c"),
|
|
|
+
|
|
|
+ foreach {
|
|
|
+ rule = cfile_with_headers,
|
|
|
+ ith { lpars, from=2 }
|
|
|
+ },
|
|
|
+
|
|
|
+ lib_em_mes,
|
|
|
+ lib_emk,
|
|
|
+ lib_em_data,
|
|
|
+ lib_alloc,
|
|
|
+ lib_print,
|
|
|
+ lib_string,
|
|
|
+ lib_system,
|
|
|
+
|
|
|
+ outputs = {"%U%/em_bem"},
|
|
|
+ install = {
|
|
|
+ pm.install("%BINDIR%%PLATDEP%/em_bem"),
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+-- Revision history
|
|
|
+-- $Log$
|
|
|
+-- Revision 1.1 2006-07-26 23:08:09 dtrg
|
|
|
+-- Added support for the Basic compiler.
|
|
|
+--
|