summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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) {