private ClassLoader loader = ClassLoader.getSystemClassLoader();
private Map loaded = new HashMap();
private PrintWriter out = new PrintWriter(System.out);
- private Preprocessor preprocessor = new Preprocessor(null, null, Collections.EMPTY_LIST);
+ private Preprocessor preprocessor;
private Source[] sources;
private File builddir = new File(".");
private File sourcedir = new File(".");
- public Compiler() { }
+ public Compiler() {
+ List defs = Collections.EMPTY_LIST;
+
+ String define = System.getProperty("org.ibex.tool.preprocessor.define");
+ if (define != null) {
+ defs = new ArrayList();
+ StringTokenizer st = new StringTokenizer(define.toUpperCase(), ",");
+ while (st.hasMoreTokens()) defs.add(st.nextToken().trim());
+ }
+
+ preprocessor = new Preprocessor(null, null, defs);
+ }
+
public void setBuildDir(String dir) { builddir = new File(dir == null ? "." : dir); }
public void setSourceDir(String dir) { sourcedir = new File(dir == null ? "." : dir); }