From ebe0a1c9f1d1529a3f2c64d628686f500d460b0e Mon Sep 17 00:00:00 2001 From: Dmitry Goncharov Date: Sun, 30 Apr 2023 09:30:19 -0400 Subject: [SV 64115] Suppress warnings about undefined GNUMAKEFLAGS * src/variable.c (defined_vars): Add GNUMAKEFLAGS to defined variables. * tests/scripts/options/warn: Add a test. --- src/variable.c | 1 + tests/scripts/options/warn | 11 +++++++++++ 2 files changed, 12 insertions(+) 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) { -- cgit v1.2.1