Commit c00cc015 authored by Alexandre Julliard's avatar Alexandre Julliard

makefiles: Generate explicit build rules for bison files from makedep.

parent efef36c0
...@@ -36,7 +36,7 @@ CROSSOBJS = $(OBJS:.o=.cross.o) ...@@ -36,7 +36,7 @@ CROSSOBJS = $(OBJS:.o=.cross.o)
# Implicit rules # Implicit rules
.SUFFIXES: .mc .rc .res .idl .tlb .h .y .tab.c .tab.h .ok .man.in .man _c.c _i.c _p.c _s.c _r.res _t.res .cross.o .po .mo @MAINTAINER_MODE@ .sfd .ttf .svg .ico .bmp .SUFFIXES: .mc .rc .res .idl .tlb .h .ok .man.in .man _c.c _i.c _p.c _s.c _r.res _t.res .cross.o .po .mo @MAINTAINER_MODE@ .sfd .ttf .svg .ico .bmp
.c.o: .c.o:
$(CC) -c $(ALLCFLAGS) -o $@ $< $(CC) -c $(ALLCFLAGS) -o $@ $<
...@@ -47,12 +47,6 @@ CROSSOBJS = $(OBJS:.o=.cross.o) ...@@ -47,12 +47,6 @@ CROSSOBJS = $(OBJS:.o=.cross.o)
.c.cross.o: .c.cross.o:
$(CROSSCC) -c $(INCLUDES) $(DEFS) -DWINE_CROSSTEST $(CPPFLAGS) $(CFLAGS) -o $@ $< $(CROSSCC) -c $(INCLUDES) $(DEFS) -DWINE_CROSSTEST $(CPPFLAGS) $(CFLAGS) -o $@ $<
.y.tab.c:
$(BISON) $(BISONFLAGS) -p $*_ -o $@ $<
.y.tab.h:
$(BISON) $(BISONFLAGS) -p $*_ -o $*.tab.c -d $<
.mc.res: .mc.res:
$(WMC) -U -O res $(PORCFLAGS) -o $@ $< $(WMC) -U -O res $(PORCFLAGS) -o $@ $<
......
...@@ -941,9 +941,18 @@ static void output_sources(void) ...@@ -941,9 +941,18 @@ static void output_sources(void)
{ {
/* add source file dependency for parallel makes */ /* add source file dependency for parallel makes */
char *header = strmake( "%s.tab.h", obj ); char *header = strmake( "%s.tab.h", obj );
if (find_include_file( header )) output( "%s.tab.c: %s\n", obj, header ); if (find_include_file( header ))
free( header ); {
output( "%s.tab.h: %s\n", obj, source->filename );
output( "\t$(BISON) $(BISONFLAGS) -p %s_ -o %s.tab.c -d %s\n",
obj, obj, source->filename );
output( "%s.tab.c: %s %s\n", obj, source->filename, header );
}
else output( "%s.tab.c: %s\n", obj, source->filename );
output( "\t$(BISON) $(BISONFLAGS) -p %s_ -o $@ %s\n", obj, source->filename );
column += output( "%s.tab.o: %s.tab.c", obj, obj ); column += output( "%s.tab.o: %s.tab.c", obj, obj );
free( header );
} }
else if (!strcmp( ext, "l" )) /* lex file */ else if (!strcmp( ext, "l" )) /* lex file */
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment