From 7fe83f23b8184975c6179b6ea54db912972adf5f Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Tue, 2 Aug 2005 23:15:56 +0000 Subject: r8955: Move a bit more of the build process to the Makefile (This used to be commit 670a7a8de570a9c89ea09bb473d9b1d8cabf6830) --- source4/build/smb_build/makefile.pm | 38 ++++++++++++++++++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) (limited to 'source4/build') diff --git a/source4/build/smb_build/makefile.pm b/source4/build/smb_build/makefile.pm index d5dbfa1751..1ccdb3239d 100644 --- a/source4/build/smb_build/makefile.pm +++ b/source4/build/smb_build/makefile.pm @@ -96,6 +96,9 @@ SHLD_FLAGS=@LDSHFLAGS@ @LDFLAGS@ -Lbin XSLTPROC=@XSLTPROC@ +LEX=@LEX@ +YACC=@YACC@ + __EOD__ } @@ -119,7 +122,7 @@ sub _prepare_SUFFIXES($) $output = << '__EOD__'; .SUFFIXES: -.SUFFIXES: .c .d .o .h .h.gch .a .so .1 .1.xml .3 .3.xml .5 .5.xml .7 .7.xml +.SUFFIXES: .c .et .y .l .d .o .h .h.gch .a .so .1 .1.xml .3 .3.xml .5 .5.xml .7 .7.xml __EOD__ @@ -220,6 +223,36 @@ dynconfig.o: dynconfig.c Makefile __EOD__ } +sub _prepare_et_rule() +{ + return << '__EOD__'; + +.et.c: + $(MAKE) bin/compile_et + ./bin/compile_et $< + mv `basename $@` $@ + +__EOD__ +} + +sub _prepare_yacc_rule() +{ + return << '__EOD__'; +.y.c: + $(YACC) -d -o $@ $< + +__EOD__ +} + +sub _prepare_lex_rule() +{ + return << '__EOD__'; +.l.c: + $(LEX) -o $@ $< + +__EOD__ +} + sub _prepare_depend_CC_rule() { return << '__EOD__'; @@ -869,6 +902,9 @@ sub _prepare_makefile_in($) $output .= _prepare_dummy_MAKEDIR(); $output .= _prepare_std_CC_rule("c","o",'@PICFLAG@',"Compiling","Rule for std objectfiles"); $output .= _prepare_std_CC_rule("h","h.gch",'@PICFLAG@',"Precompiling","Rule for precompiled headerfiles"); + $output .= _prepare_lex_rule(); + $output .= _prepare_yacc_rule(); + $output .= _prepare_et_rule(); $output .= _prepare_depend_CC_rule(); -- cgit