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 \
|
gen_length.c \
|
||||||
hash.c \
|
hash.c \
|
||||||
emalloc.c \
|
emalloc.c \
|
||||||
lex.o \
|
|
||||||
main.c \
|
main.c \
|
||||||
parse.o \
|
|
||||||
symbol.c \
|
symbol.c \
|
||||||
getarg.c \
|
getarg.c \
|
||||||
warnerr.c \
|
warnerr.c \
|
||||||
|
${.OBJDIR}/lex.o \
|
||||||
|
${.OBJDIR}/parse.o \
|
||||||
${.OBJDIR}/print_version.o \
|
${.OBJDIR}/print_version.o \
|
||||||
get_window_size.c \
|
get_window_size.c \
|
||||||
strupr.c
|
strupr.c
|
||||||
${CC} ${CFLAGS} ${LDFLAGS} -o ${.TARGET} ${.OODATE} ${LDADD}
|
${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
|
${.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
|
${.OBJDIR}/parse.h ${.OBJDIR}/parse.c: parse.y
|
||||||
${YACC} -d ${.OODATE}
|
${YACC} -d ${.OODATE}
|
||||||
cp y.tab.c parse.c
|
cp y.tab.c parse.c
|
||||||
cp y.tab.h parse.h
|
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}/print_version.o: ${.OBJDIR}/print_version.h print_version.c \
|
||||||
${.OBJDIR}/roken.h
|
${.OBJDIR}/roken.h
|
||||||
|
Loading…
Reference in New Issue
Block a user