pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/mk



Module Name:    pkgsrc
Committed By:   rillig
Date:           Tue Jun  2 06:58:14 UTC 2020

Modified Files:
        pkgsrc/mk: compiler.mk
        pkgsrc/mk/compiler: gcc.mk

Log Message:
mk/compiler.mk: check for too late GCC_REQD and USE_LANGUAGES

For USE_LANGUAGES there is already a pkglint warning, but for GCC_REQD it
is missing.  It's better to have this check directly in the
infrastructure since it is more reliable.

This check is disabled by default, to not cause any new breakage.
It should be enabled in bulk builds.


To generate a diff of this commit:
cvs rdiff -u -r1.94 -r1.95 pkgsrc/mk/compiler.mk
cvs rdiff -u -r1.212 -r1.213 pkgsrc/mk/compiler/gcc.mk

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/mk/compiler.mk
diff -u pkgsrc/mk/compiler.mk:1.94 pkgsrc/mk/compiler.mk:1.95
--- pkgsrc/mk/compiler.mk:1.94  Tue Jul 23 13:57:04 2019
+++ pkgsrc/mk/compiler.mk       Tue Jun  2 06:58:13 2020
@@ -1,4 +1,4 @@
-# $NetBSD: compiler.mk,v 1.94 2019/07/23 13:57:04 gdt Exp $
+# $NetBSD: compiler.mk,v 1.95 2020/06/02 06:58:13 rillig Exp $
 #
 # This Makefile fragment implements handling for supported C/C++/Fortran
 # compilers.
@@ -37,6 +37,10 @@
 #      If set to yes, use symlinks for the compiler drivers, otherwise
 #      shell scripts are created.  The default is yes.
 #
+# CHECK_COMPILER
+#      If set to yes, fail early if the compiler.mk variables are not
+#      set correctly.
+#
 # The following variables may be set by a package:
 #
 # USE_LANGUAGES
@@ -90,6 +94,9 @@ USE_LANGUAGES+=               c++
 .  endif
 .endfor
 
+#.READONLY: USE_LANGUAGES
+_USE_LANGUAGES_EFFECTIVE:=     ${USE_LANGUAGES}
+
 COMPILER_USE_SYMLINKS?=        yes
 
 _COMPILERS=            ccc clang gcc hp icc ido \
@@ -265,3 +272,12 @@ ALL_ENV+=          CCVER=${DRAGONFLY_CCVER}
 .endif
 
 .endif # BSD_COMPILER_MK
+
+.if ${CHECK_COMPILER:Uno:tl} == yes
+.  if ${USE_LANGUAGES:O:u} != ${_USE_LANGUAGES_EFFECTIVE:O:u}
+.warning For ${PKGPATH}, only languages "${_USE_LANGUAGES_EFFECTIVE}" are used, the others in "${USE_LANGUAGES}" were defined too late.
+.  endif
+.  if ${GCC_REQD:U:O:u} != ${_GCC_REQD_EFFECTIVE:U:O:u}
+.warning For ${PKGPATH}, only GCC_REQD "${_GCC_REQD_EFFECTIVE}" are used, the others in "${GCC_REQD}" were defined too late.
+.  endif
+.endif

Index: pkgsrc/mk/compiler/gcc.mk
diff -u pkgsrc/mk/compiler/gcc.mk:1.212 pkgsrc/mk/compiler/gcc.mk:1.213
--- pkgsrc/mk/compiler/gcc.mk:1.212     Sun May 31 00:00:13 2020
+++ pkgsrc/mk/compiler/gcc.mk   Tue Jun  2 06:58:13 2020
@@ -1,4 +1,4 @@
-# $NetBSD: gcc.mk,v 1.212 2020/05/31 00:00:13 sjmulder Exp $
+# $NetBSD: gcc.mk,v 1.213 2020/06/02 06:58:13 rillig Exp $
 #
 # This is the compiler definition for the GNU Compiler Collection.
 #
@@ -1070,4 +1070,7 @@ COMPILER_INCLUDE_DIRS=    ${_GCCBINDIR:H}/i
 COMPILER_LIB_DIRS=     ${_GCCBINDIR:H}/lib ${_OPSYS_LIB_DIRS}
 .endif
 
+#.READONLY: GCC_REQD
+_GCC_REQD_EFFECTIVE:=  ${GCC_REQD}
+
 .endif # COMPILER_GCC_MK



Home | Main Index | Thread Index | Old Index