summaryrefslogtreecommitdiff
path: root/source4/build/smb_build/makefile.pm
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2005-08-02 23:15:56 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:31:00 -0500
commit7fe83f23b8184975c6179b6ea54db912972adf5f (patch)
tree99924bfe0b0cd60a80927fbe2b83aabc28566858 /source4/build/smb_build/makefile.pm
parent798fbb45e3eadbfdd5f17396a331c33ba6010d03 (diff)
downloadsamba-7fe83f23b8184975c6179b6ea54db912972adf5f.tar.gz
samba-7fe83f23b8184975c6179b6ea54db912972adf5f.tar.bz2
samba-7fe83f23b8184975c6179b6ea54db912972adf5f.zip
r8955: Move a bit more of the build process to the Makefile
(This used to be commit 670a7a8de570a9c89ea09bb473d9b1d8cabf6830)
Diffstat (limited to 'source4/build/smb_build/makefile.pm')
-rw-r--r--source4/build/smb_build/makefile.pm38
1 files changed, 37 insertions, 1 deletions
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();