Try a lot harder to get dependancies right. This involves some ugly
looking ${.OBJDIR} work that has the up-side of actually working in upgrade and make -jN cases. This needs to be revisited further, and it is conceivable that the ${.OBJDIR} stuff can be simplified, but the sheer number of edge cases and other causes make this Hard(tm). For now, this works.
This commit is contained in:
parent
5ec3441dd2
commit
f5eb4a6a5e
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=118080
@ -106,26 +106,30 @@ asn1_compile: \
|
||||
gen_length.c \
|
||||
hash.c \
|
||||
emalloc.c \
|
||||
lex.o \
|
||||
main.c \
|
||||
parse.o \
|
||||
symbol.c \
|
||||
getarg.c \
|
||||
warnerr.c \
|
||||
${.OBJDIR}/lex.o \
|
||||
${.OBJDIR}/parse.o \
|
||||
${.OBJDIR}/print_version.o \
|
||||
get_window_size.c \
|
||||
strupr.c
|
||||
${CC} ${CFLAGS} ${LDFLAGS} -o ${.TARGET} ${.OODATE} ${LDADD}
|
||||
|
||||
.ORDER: ${.OBJDIR}/roken.h ${.OBJDIR}/parse.c ${.OBJDIR}/parse.h ${.OBJDIR}/lex.c
|
||||
|
||||
${.OBJDIR}/parse.o: ${.OBJDIR}/parse.c ${.OBJDIR}/roken.h
|
||||
|
||||
.ORDER: ${.OBJDIR}/parse.c ${.OBJDIR}/parse.h
|
||||
${.OBJDIR}/lex.o: ${.OBJDIR}/lex.c ${.OBJDIR}/parse.h ${.OBJDIR}/roken.h
|
||||
|
||||
${.OBJDIR}/parse.h ${.OBJDIR}/parse.c: parse.y
|
||||
${YACC} -d ${.OODATE}
|
||||
cp y.tab.c parse.c
|
||||
cp y.tab.h parse.h
|
||||
|
||||
lex.o: lex.l ${.OBJDIR}/parse.h ${.OBJDIR}/roken.h
|
||||
${.OBJDIR}/lex.c: lex.l
|
||||
${LEX} -t ${LFLAGS} ${.OODATE} > ${.TARGET}
|
||||
|
||||
${.OBJDIR}/print_version.o: ${.OBJDIR}/print_version.h print_version.c \
|
||||
${.OBJDIR}/roken.h
|
||||
|
Loading…
Reference in New Issue
Block a user