svn commit: r346583 - projects/runtime-coverage-v2/share/mk

Enji Cooper ngie at FreeBSD.org
Mon Apr 22 21:24:10 UTC 2019


Author: ngie
Date: Mon Apr 22 21:24:08 2019
New Revision: 346583
URL: https://svnweb.freebsd.org/changeset/base/346583

Log:
  Add `coverage` to *COMPILER_FEATURES variable to bsd.compiler.mk and test for it
  
  Testing for this value is better than testing for a C++11 capable compiler,
  COMPILER_TYPE == clang, etc.
  
  While here, add checks to bsd.lib.mk and bsd.prog.mk to force coverage support
  off if not using a coverage capable toolchain.

Modified:
  projects/runtime-coverage-v2/share/mk/bsd.compiler.mk
  projects/runtime-coverage-v2/share/mk/bsd.lib.mk
  projects/runtime-coverage-v2/share/mk/bsd.prog.mk
  projects/runtime-coverage-v2/share/mk/src.opts.mk

Modified: projects/runtime-coverage-v2/share/mk/bsd.compiler.mk
==============================================================================
--- projects/runtime-coverage-v2/share/mk/bsd.compiler.mk	Mon Apr 22 19:55:47 2019	(r346582)
+++ projects/runtime-coverage-v2/share/mk/bsd.compiler.mk	Mon Apr 22 21:24:08 2019	(r346583)
@@ -200,11 +200,15 @@ ${X_}COMPILER_FREEBSD_VERSION=	unknown
 .endif
 
 ${X_}COMPILER_FEATURES=
-.if ${${X_}COMPILER_TYPE} == "clang" || \
-	(${${X_}COMPILER_TYPE} == "gcc" && ${${X_}COMPILER_VERSION} >= 40800)
+.if ${${X_}COMPILER_TYPE} == "clang"
 ${X_}COMPILER_FEATURES+=	c++11
 .endif
+.if ${${X_}COMPILER_TYPE} == "gcc" && ${${X_}COMPILER_VERSION} >= 40800)
+${X_}COMPILER_FEATURES+=	c++11
+${X_}COMPILER_FEATURES+=	coverage
+.endif
 .if ${${X_}COMPILER_TYPE} == "clang" && ${${X_}COMPILER_VERSION} >= 60000
+${X_}COMPILER_FEATURES+=	coverage
 ${X_}COMPILER_FEATURES+=	retpoline
 .endif
 

Modified: projects/runtime-coverage-v2/share/mk/bsd.lib.mk
==============================================================================
--- projects/runtime-coverage-v2/share/mk/bsd.lib.mk	Mon Apr 22 19:55:47 2019	(r346582)
+++ projects/runtime-coverage-v2/share/mk/bsd.lib.mk	Mon Apr 22 21:24:08 2019	(r346583)
@@ -5,6 +5,11 @@
 .include <bsd.init.mk>
 .include <bsd.compiler.mk>
 
+# TODO: this shouldn't be here.
+.if !${COMPILER_FEATURES:Mcoverage}
+MK_COVERAGE:=	no
+.endif
+
 .if defined(LIB_CXX) || defined(SHLIB_CXX)
 _LD=	${CXX}
 .else

Modified: projects/runtime-coverage-v2/share/mk/bsd.prog.mk
==============================================================================
--- projects/runtime-coverage-v2/share/mk/bsd.prog.mk	Mon Apr 22 19:55:47 2019	(r346582)
+++ projects/runtime-coverage-v2/share/mk/bsd.prog.mk	Mon Apr 22 21:24:08 2019	(r346583)
@@ -4,6 +4,11 @@
 .include <bsd.init.mk>
 .include <bsd.compiler.mk>
 
+# TODO: this shouldn't be here.
+.if !${COMPILER_FEATURES:Mcoverage}
+MK_COVERAGE:=	no
+.endif
+
 .SUFFIXES: .out .o .bc .c .cc .cpp .cxx .C .m .y .l .ll .ln .s .S .asm
 
 # XXX The use of COPTS in modern makefiles is discouraged.

Modified: projects/runtime-coverage-v2/share/mk/src.opts.mk
==============================================================================
--- projects/runtime-coverage-v2/share/mk/src.opts.mk	Mon Apr 22 19:55:47 2019	(r346582)
+++ projects/runtime-coverage-v2/share/mk/src.opts.mk	Mon Apr 22 21:24:08 2019	(r346583)
@@ -407,7 +407,7 @@ __DEFAULT_YES_OPTIONS+=OPENMP
 __DEFAULT_NO_OPTIONS+=OPENMP
 .endif
 
-.if ${COMPILER_TYPE} != "clang"
+.if !${COMPILER_FEATURES:Mcoverage}
 BROKEN_OPTIONS+=COVERAGE
 BROKEN_OPTIONS+=COVERAGE_SUPPORT
 .endif


More information about the svn-src-projects mailing list