for d in $(DIRS) {
SOURCES += [ Wildcard $(d) : *.c *.h ] ;
}
+
+actions RunBuiltinGenerator bind GENERATOR {
+ $(GENERATOR) $(>) > $(<)
+}
+
+rule BuiltinGenerator {
+ local target = [ LocateTarget $(<) : $(SUBDIR) ] ;
+ local source = [ SearchSource $(>) ] ;
+ local generator = [ SearchSource $(3) ] ;
+ local header = $(target) ;
+ Depends $(<) : $(target) ;
+ Depends $(target) : $(generator) ;
+ Depends $(target) : $(source) ;
+ RunBuiltinGenerator $(target) : $(source) ;
+ GENERATOR on $(target) = $(generator) ;
+
+ Includes $(header:G=) : $(header) ;
+
+ Clean clean : $(target) ;
+
+ return $(target) ;
+}
+BuiltinGenerator gen_builtins.h : builtins/builtins.c : create_builtins_h.sh ;
+
Application cparser : $(SOURCES) ;
-CppFlags cparser : -DFIRM_BACKEND -I$(top_srcdir)/libfirm/include ;
+CppFlags cparser : -I$(top_srcdir)/libfirm/include ;
IncludeDir cparser : . ;
CFlags cparser : -std=c99 ;
LinkWith cparser : firm ;