Module Name:    src
Committed By:   mrg
Date:           Tue Feb  7 04:53:54 UTC 2023

Modified Files:
        src/share/mk: bsd.lib.mk

Log Message:
fix code attempting to skip adding "-g" if "-g*" already is used.

in bsd.lib.mk there's a check for "MKDEBUG != no" that will add
-g to CFLAGS (maybe) and to CSHLIBFLAGS (always), given that it
isn't in CFLAGS already.. except the conditional is "||" instead
of "&&" and since the MKDEBUG/NODEBUG checks pass, the CFLAGS
check isn't even performed.

additionally, check CXXFLAGS as well as CFLAGS.

this fixes the attempt to use "-g1" in the llvmrt build, which
fails because the compile lines end up being "... -g1 .. -g ..",
(the "-g" comes from the CSHLIBFLAGS variable in that case.)

this reduces the size of llvm-enabled gallium debug by ~1.5GiB
on amd64.


To generate a diff of this commit:
cvs rdiff -u -r1.389 -r1.390 src/share/mk/bsd.lib.mk

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

Modified files:

Index: src/share/mk/bsd.lib.mk
diff -u src/share/mk/bsd.lib.mk:1.389 src/share/mk/bsd.lib.mk:1.390
--- src/share/mk/bsd.lib.mk:1.389	Tue Mar 29 22:48:04 2022
+++ src/share/mk/bsd.lib.mk	Tue Feb  7 04:53:54 2023
@@ -1,4 +1,4 @@
-#	$NetBSD: bsd.lib.mk,v 1.389 2022/03/29 22:48:04 christos Exp $
+#	$NetBSD: bsd.lib.mk,v 1.390 2023/02/07 04:53:54 mrg Exp $
 #	@(#)bsd.lib.mk	8.3 (Berkeley) 4/22/94
 
 .include <bsd.init.mk>
@@ -169,8 +169,10 @@ MKSHLIBOBJS= yes
 MKSHLIBOBJS= no
 .endif
 
-.if (${MKDEBUG:Uno} != "no" && !defined(NODEBUG)) || \
-    (defined(CFLAGS) && !empty(CFLAGS:M*-g*))
+# Avoid adding "-g" if we already have a "-g*" option.
+.if (${MKDEBUG:Uno} != "no" && !defined(NODEBUG)) && \
+    (!defined(CFLAGS) || empty(CFLAGS:M-g*)) && \
+    (!defined(CXXFLAGS) || empty(CXXFLAGS:M-g*))
 # We only add -g to the shared library objects
 # because we don't currently split .a archives.
 CSHLIBFLAGS+=	-g

Reply via email to