diff options
author | bdrewery <bdrewery@FreeBSD.org> | 2016-04-18 18:13:58 +0000 |
---|---|---|
committer | bdrewery <bdrewery@FreeBSD.org> | 2016-04-18 18:13:58 +0000 |
commit | 0cc8656eb968e6b5a098f6307911006932447c3c (patch) | |
tree | 0df5667ab90d3c8696803c12426cb486102d64b6 /gnu/lib | |
parent | 3842fa6c223b41ebdb85fff66386e94652bf4aad (diff) | |
download | FreeBSD-src-0cc8656eb968e6b5a098f6307911006932447c3c.zip FreeBSD-src-0cc8656eb968e6b5a098f6307911006932447c3c.tar.gz |
Follow-up r297842: Rework header generation to fix always rebuilding.
This reworks the handling of common headers to just include the needed
logic rather than invoke MAKE. This avoids the problem listed in r297842
and avoids other dependency tracking issues.
Pointyhat to: bdrewery
Reported by: Nikolai Lifanov <lifanov@mail.lifanov.com>
Sponsored by: EMC / Isilon Storage Division
Diffstat (limited to 'gnu/lib')
-rw-r--r-- | gnu/lib/csu/Makefile | 8 | ||||
-rw-r--r-- | gnu/lib/libgcc/Makefile | 13 | ||||
-rw-r--r-- | gnu/lib/libgcov/Makefile | 10 |
3 files changed, 13 insertions, 18 deletions
diff --git a/gnu/lib/csu/Makefile b/gnu/lib/csu/Makefile index 0e50152..b7cefe8 100644 --- a/gnu/lib/csu/Makefile +++ b/gnu/lib/csu/Makefile @@ -7,10 +7,11 @@ GCCDIR= ${.CURDIR}/../../../contrib/gcc GCCLIB= ${.CURDIR}/../../../contrib/gcclibs CCDIR= ${.CURDIR}/../../usr.bin/cc .include "${CCDIR}/Makefile.tgt" +.include "${CCDIR}/cc_tools/Makefile.hdrs" .PATH: ${GCCDIR}/config/${GCC_CPU} ${GCCDIR} -SRCS= crtstuff.c tconfig.h tm.h options.h +SRCS= crtstuff.c ${COMMONHDRS} OBJS= crtbegin.o crtend.o crtbeginT.o SOBJS= crtbeginS.o crtendS.o CSTD?= gnu89 @@ -70,8 +71,7 @@ crtendS.o: ${ENDSRC} ${CC} ${CFLAGS} -g0 -DCRT_END ${CRTS_CFLAGS} \ -c -o ${.TARGET} ${.ALLSRC:N*.h} -CLEANFILES+= tm.h tconfig.h options.h optionlist cs-tconfig.h cs-tm.h -tm.h tconfig.h options.h: ${CCDIR}/cc_tools/Makefile .PHONY - (cd ${.CURDIR}; ${MAKE} -f ${.ALLSRC} MFILE=${.ALLSRC} GCCDIR=${GCCDIR} ${.TARGET}) +COMMONHDRS+= tm.h tconfig.h options.h +CLEANFILES+= ${COMMONHDRS} optionlist cs-tconfig.h cs-tm.h .include <bsd.lib.mk> diff --git a/gnu/lib/libgcc/Makefile b/gnu/lib/libgcc/Makefile index 643d10d..10e1c0f 100644 --- a/gnu/lib/libgcc/Makefile +++ b/gnu/lib/libgcc/Makefile @@ -3,6 +3,7 @@ PACKAGE= clibs GCCDIR= ${.CURDIR}/../../../contrib/gcc GCCLIB= ${.CURDIR}/../../../contrib/gcclibs +CCDIR= ${.CURDIR}/../../usr.bin/cc COMPILERRTDIR= ${.CURDIR}/../../../contrib/compiler-rt UNWINDINCDIR= ${.CURDIR}/../../../contrib/llvm/projects/libunwind/include UNWINDSRCDIR= ${.CURDIR}/../../../contrib/llvm/projects/libunwind/src @@ -17,7 +18,8 @@ SHLIBDIR?= /lib # MK_SSP= no -.include "${.CURDIR}/../../usr.bin/cc/Makefile.tgt" +.include "${CCDIR}/Makefile.tgt" +.include "${CCDIR}/cc_tools/Makefile.hdrs" .if ${TARGET_CPUARCH} == "arm" CFLAGS+= -DTARGET_ARM_EABI @@ -29,7 +31,7 @@ CFLAGS+= -DIN_GCC -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED \ -DHAVE_GTHR_DEFAULT \ -I${GCCLIB}/include \ -I${GCCDIR}/config -I${GCCDIR} -I. \ - -I${.CURDIR}/../../usr.bin/cc/cc_tools + -I${CCDIR}/cc_tools LDFLAGS+= -nodefaultlibs LIBADD+= c @@ -340,13 +342,6 @@ ${_src:R:S/$/.So/}: ${_src} ${COMMONHDRS} .endfor -#----------------------------------------------------------------------- -# -# Generated headers -# -${COMMONHDRS}: ${.CURDIR}/../../usr.bin/cc/cc_tools/Makefile .PHONY - (cd ${.CURDIR}; ${MAKE} -f ${.ALLSRC} MFILE=${.ALLSRC} GCCDIR=${GCCDIR} ${.TARGET}) - CLEANFILES += ${COMMONHDRS} CLEANFILES += cs-*.h option* diff --git a/gnu/lib/libgcov/Makefile b/gnu/lib/libgcov/Makefile index 34932aa..65d0fdb 100644 --- a/gnu/lib/libgcov/Makefile +++ b/gnu/lib/libgcov/Makefile @@ -4,17 +4,20 @@ MK_PROFILE= no MK_SSP= no .include <src.opts.mk> -.include "${.CURDIR}/../../usr.bin/cc/Makefile.tgt" GCCDIR= ${.CURDIR}/../../../contrib/gcc GCCLIB= ${.CURDIR}/../../../contrib/gcclibs +CCDIR= ${.CURDIR}/../../usr.bin/cc +.include "${CCDIR}/Makefile.tgt" +.include "${CCDIR}/cc_tools/Makefile.hdrs" + .PATH: ${GCCDIR}/config/${GCC_CPU} ${GCCDIR} LIB= gcov CFLAGS+= -DIN_GCC -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED CFLAGS+= -D_PTHREADS -DGTHREAD_USE_WEAK -CFLAGS+= -I${.CURDIR}/../../usr.bin/cc/cc_tools \ +CFLAGS+= -I${CCDIR}/cc_tools \ -I${GCCLIB}/include -I${GCCDIR}/config -I${GCCDIR} -I. .if ${TARGET_CPUARCH} == "arm" @@ -45,9 +48,6 @@ CC_S = ${CC} -c ${CFLAGS} ${PICFLAG} -DSHARED COMMONHDRS= tm.h tconfig.h gcov-iov.h options.h CLEANFILES+= ${COMMONHDRS} cs-tm.h cs-tconfig.h options.h optionlist -${COMMONHDRS}: ${.CURDIR}/../../usr.bin/cc/cc_tools/Makefile .PHONY - (cd ${.CURDIR}; ${MAKE} -f ${.ALLSRC} MFILE=${.ALLSRC} GCCDIR=${GCCDIR} ${.TARGET}) - ${OBJS} beforedepend: ${COMMONHDRS} ${OBJS_T}: libgcov.c |