Remove empty generated file upon gperf failure
Prior to this change the build could fail as follows, if gperf is not
available (or fails):
- make(1) stops due to the gperf error, but an empty target file
(cfns.h) is still created
- the empty cfns.h is newer than the source cfns.gperf so it is not
regenerated on subsequent builds
- the gcc build fails (undefined reference to libc_name_p)
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
This commit is contained in:
@@ -30,7 +30,7 @@ LDADD= ${LIBBACKEND} ${LIBCPP} ${LIBDECNUMBER} ${LIBIBERTY}
|
|||||||
# C++ parser
|
# C++ parser
|
||||||
cfns.h: cfns.gperf
|
cfns.h: cfns.gperf
|
||||||
gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L ANSI-C \
|
gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L ANSI-C \
|
||||||
${.ALLSRC} > ${.TARGET}
|
${.ALLSRC} > ${.TARGET} || (rm -f ${.TARGET}; false)
|
||||||
CLEANFILES= cfns.h
|
CLEANFILES= cfns.h
|
||||||
|
|
||||||
DOBJS+= ${SRCS:N*.h:R:S/$/.o/g}
|
DOBJS+= ${SRCS:N*.h:R:S/$/.o/g}
|
||||||
|
|||||||
Reference in New Issue
Block a user