summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Goncharov <dgoncharov@users.sf.net>2023-04-30 09:30:19 -0400
committerPaul Smith <psmith@gnu.org>2023-04-30 09:40:50 -0400
commitebe0a1c9f1d1529a3f2c64d628686f500d460b0e (patch)
tree6e7e5eaca668d4dbf365de19e1da61e94a205157
parent0880e5c86ab7ba92c3ba0f83bab1a230906ee657 (diff)
downloadmake-git-ebe0a1c9f1d1529a3f2c64d628686f500d460b0e.tar.gz
[SV 64115] Suppress warnings about undefined GNUMAKEFLAGS
* src/variable.c (defined_vars): Add GNUMAKEFLAGS to defined variables. * tests/scripts/options/warn: Add a test.
-rw-r--r--src/variable.c1
-rw-r--r--tests/scripts/options/warn11
2 files changed, 12 insertions, 0 deletions
diff --git a/src/variable.c b/src/variable.c
index bfaef6c1..63a8968b 100644
--- a/src/variable.c
+++ b/src/variable.c
@@ -1916,6 +1916,7 @@ static const struct defined_vars defined_vars[] = {
{ STRING_SIZE_TUPLE ("VPATH") },
{ STRING_SIZE_TUPLE ("GPATH") },
{ STRING_SIZE_TUPLE (WARNINGS_NAME) },
+ { STRING_SIZE_TUPLE (GNUMAKEFLAGS_NAME) },
{ NULL, 0 }
};
diff --git a/tests/scripts/options/warn b/tests/scripts/options/warn
index 8c66658e..2b862a58 100644
--- a/tests/scripts/options/warn
+++ b/tests/scripts/options/warn
@@ -16,6 +16,17 @@ all:; @#HELPER# env MAKEFLAGS
!,
'--warn-undefined-variables', "MF= --warn=undefined-var\nMAKEFLAGS= --warn=undefined-var");
+# sv 64115.
+# Verify that -R along with --warn-undefined-variables do not warn about
+# internal variables, such as GNUMAKEFLAGS.
+
+run_make_test(q!
+$(info MF=$(MAKEFLAGS))
+all:; @#HELPER# env MAKEFLAGS
+!,
+ '-R --warn-undefined-variables', "MF=rR --warn=undefined-var\nMAKEFLAGS=rR --warn=undefined-var");
+
+
# Verify parsing of --warn in various forms.
while (my ($f, $r) = each %warn_test) {