let jam create gen_builtins.h
[cparser] / .build_plugin
1 DIRS = . adt driver wrappergen ;
2 SOURCES = ;
3 for d in $(DIRS) {
4         SOURCES += [ Wildcard $(d) : *.c *.h ] ;
5 }
6
7 actions RunGenerator bind GENERATOR {
8         $(GENERATOR) $(>) > $(<)
9 }
10
11 rule BuiltinGenerator {
12         local target = [ LocateTarget $(<) : $(SUBDIR) ] ;
13         local source = [ SearchSource $(>) ] ;
14         local generator = [ SearchSource $(3) ] ;
15         local header = $(target) ;
16         Depends $(<) : $(target) ;
17         Depends $(target) : $(generator) ;
18         Depends $(target) : $(source) ;
19         RunGenerator $(target) : $(source) ;
20         GENERATOR on $(target) = $(generator) ;
21
22         Includes $(header:G=) : $(header) ;
23
24         Clean clean : $(target) ;
25
26         return $(target) ;
27 }
28 BuiltinGenerator gen_builtins.h : builtins/builtins.c : create_builtins_h.sh ;
29
30 Application cparser : $(SOURCES) ;
31 CppFlags cparser : -DFIRM_BACKEND -I$(top_srcdir)/libfirm/include ;
32 IncludeDir cparser : . ;
33 CFlags cparser : -std=c99 ;
34 LinkWith cparser : firm ;
35 LFlags cparser : -lm ;