svn commit: r346732 - projects/runtime-coverage-v2
Enji Cooper
ngie at FreeBSD.org
Fri Apr 26 07:43:39 UTC 2019
Author: ngie
Date: Fri Apr 26 07:43:38 2019
New Revision: 346732
URL: https://svnweb.freebsd.org/changeset/base/346732
Log:
Retry building lib/libclang_rt/profile for buildworld
Building lib/libclang_rt/profile doesn't work with _libraries; try to compile
it with cross-tools instead after passing along --target=, etc.
Modified:
projects/runtime-coverage-v2/Makefile.inc1
Modified: projects/runtime-coverage-v2/Makefile.inc1
==============================================================================
--- projects/runtime-coverage-v2/Makefile.inc1 Fri Apr 26 06:58:40 2019 (r346731)
+++ projects/runtime-coverage-v2/Makefile.inc1 Fri Apr 26 07:43:38 2019 (r346732)
@@ -722,7 +722,7 @@ TMAKE= \
XMAKE= ${BMAKE} \
TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
MK_GDB=no \
- MK_TESTS=no MK_COVERAGE=no
+ MK_TESTS=no MK_COVERAGE=no MK_COVERAGE_SUPPORT=${MK_COVERAGE}
# kernel-tools stage
KTMAKEENV= INSTALL="sh ${.CURDIR}/tools/install.sh" \
@@ -786,7 +786,7 @@ BFLAGS+= -B${WORLDTMP}/usr/bin
(defined(X_COMPILER_TYPE) && ${X_COMPILER_TYPE} == gcc)
.elif ${WANT_COMPILER_TYPE} == clang || \
(defined(X_COMPILER_TYPE) && ${X_COMPILER_TYPE} == clang)
-XCFLAGS+= -target ${TARGET_TRIPLE}
+XCFLAGS+= -target=${TARGET_TRIPLE}
.endif
XCFLAGS+= --sysroot=${WORLDTMP}
@@ -1117,7 +1117,6 @@ _libraries:
${_+_}cd ${.CURDIR}; \
${WMAKE} -DNO_FSCHG MK_HTML=no -DNO_LINT MK_MAN=no \
MK_PROFILE=no MK_TESTS=no MK_TESTS_SUPPORT=${MK_TESTS} \
- MK_COVERAGE=no MK_COVERAGE_SUPPORT=${MK_COVERAGE} \
libraries
everything: .PHONY
@echo
@@ -2467,6 +2466,9 @@ _elftctools= lib/libelftc \
.endif
.if ${MK_CLANG_BOOTSTRAP} != "no"
+.if ${MK_COVERAGE_SUPPORT} != "no"
+_coverage_libs+= lib/clang_rt/profile
+.endif
_clang= usr.bin/clang
.endif
.if ${MK_LLD_BOOTSTRAP} != "no"
@@ -2505,6 +2507,15 @@ cross-tools: .MAKE .PHONY
${MAKE} DIRPRFX=${_tool}/ all; \
${MAKE} DIRPRFX=${_tool}/ DESTDIR=${WORLDTMP} install
.endfor
+.for _tool in ${_coverage_libs}
+ ${_+_}@${ECHODIR} "===> ${_tool} (obj,all,install)"; \
+ cd ${.CURDIR}/${_tool}; \
+ if [ -z "${NO_OBJWALK}" ]; then ${MAKE} DIRPRFX=${_tool}/ obj; fi; \
+ ${MAKE} CFLAGS="${XCFLAGS:M*target=} ${CFLAGS}" \
+ DIRPRFX=${_tool}/ all; \
+ ${MAKE} CFLAGS="${XCFLAGS:M*target=} ${CFLAGS}" \
+ DIRPRFX=${_tool}/ DESTDIR=${WORLDTMP} install
+.endif
#
# native-xtools is the current target for qemu-user cross builds of ports
@@ -2719,16 +2730,6 @@ libraries: .MAKE .PHONY
_prereq_libs= lib/libcompiler_rt
.if ${MK_SSP} != "no"
_prereq_libs+= gnu/lib/libssp/libssp_nonshared
-.endif
-
-#
-# The coverage libraries must be built for the target prior to ${_startup_libs}
-# for world to have runtime coverage instrumentation.
-#
-.if ${MK_COVERAGE_SUPPORT} != "no"
-.if ${MK_CLANG} != "no"
-_prereq_libs+= lib/libclang_rt/profile
-.endif
.endif
# These dependencies are not automatically generated:
More information about the svn-src-projects
mailing list