aboutsummaryrefslogtreecommitdiffstats
path: root/Mk
diff options
context:
space:
mode:
authorbdrewery <bdrewery@FreeBSD.org>2016-05-20 06:06:28 +0800
committerbdrewery <bdrewery@FreeBSD.org>2016-05-20 06:06:28 +0800
commit2cc70973034e5efce565209c239e8076d055e1d1 (patch)
tree268c08b13c5647c1f6e67a2db9d947c7a7f3058f /Mk
parentff1560d2e44d39e23a0924485a0217e417fcfef3 (diff)
downloadfreebsd-ports-gnome-2cc70973034e5efce565209c239e8076d055e1d1.tar.gz
freebsd-ports-gnome-2cc70973034e5efce565209c239e8076d055e1d1.tar.zst
freebsd-ports-gnome-2cc70973034e5efce565209c239e8076d055e1d1.zip
Use MK_* to prevent debug files if possible.
A longstanding bug with the base /usr/share/mk files is that /etc/src.conf *does* get pulled in when building ports which use /usr/share/mk. This despite the documentation saying it is only used for "the FreeBSD tree". If users have a WITH_DEBUG_FILES=yes in their src.conf then the previous WITHOUT_DEBUG_FILES=yes would hit an error. Fixing pulling in src.conf is risky. MK_* overrides work fine here after recent stable/9 and stable/10 updates. If you run into the WITH_ vs WITHOUT_ problem on a release build then you can protect your src.conf value with something like: .if !${.CURDIR:M*ports*} WITH_DEBUG_FILES=yes .endif PR: D6271 With hat: portmgr Sponsored by: EMC / Isilon Storage Division
Diffstat (limited to 'Mk')
-rw-r--r--Mk/bsd.port.mk10
1 files changed, 10 insertions, 0 deletions
diff --git a/Mk/bsd.port.mk b/Mk/bsd.port.mk
index 033f90d63ac7..76f3f1a675e0 100644
--- a/Mk/bsd.port.mk
+++ b/Mk/bsd.port.mk
@@ -1638,10 +1638,20 @@ INSTALL_TARGET:= ${INSTALL_TARGET:S/^install-strip$/install/g}
# XXX PIE support to be added here
MAKE_ENV+= NO_PIE=yes
+# We prefer to pass MK_*=no but it was only supported after a certain
+# revision. Passing WITHOUT_* may conflict with a make.conf or src.conf's
+# WITH_* value. Note that ports *do* pull in src.conf.
+.if (${OSVERSION} >= 903510 && ${OSVERSION} < 1000000) || \
+ (${OSVERSION} >= 1003503 && ${OSVERSION} < 1100000) || \
+ ${OSVERSION} >= 1100000
# We will control debug files. Don't let builds that use /usr/share/mk
# split out debug symbols since the plist won't know to expect it.
+MAKE_ARGS+= MK_DEBUG_FILES=no
+MAKE_ARGS+= MK_KERNEL_SYMBOLS=no
+.else
MAKE_ENV+= WITHOUT_DEBUG_FILES=yes
MAKE_ENV+= WITHOUT_KERNEL_SYMBOLS=yes
+.endif
.if defined(NOPORTDOCS)
PLIST_SUB+= PORTDOCS="@comment "