We need the "$(space)" variable to contain a single whitespace character. We do this by assigning and then appending an empty string to the variable. Variable appends get separated by a single whitespace historically, but GNU make 4.3 introduced a behaviour regression. https://lists.gnu.org/archive/html/bug-make/2020-01/msg00057.html [quote] * WARNING: Backward-incompatibility! Previously appending using '+=' to an empty variable would result in a value starting with a space. Now the initial space is only added if the variable already contains some value. Similarly, appending an empty string does not add a trailing space. [/quote] This patch tries a new trick to get a single whitespace by getting make to expand two non-existant variables separated by a space. Signed-off-by: Daniel P. Berrangé <berrange@xxxxxxxxxx> --- build-aux/syntax-check.mk | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/build-aux/syntax-check.mk b/build-aux/syntax-check.mk index b829c8a18b..3020921be8 100644 --- a/build-aux/syntax-check.mk +++ b/build-aux/syntax-check.mk @@ -687,8 +687,7 @@ msg_gen_function += virLastErrorPrefixMessage # msg_gen_function += vshPrint # msg_gen_function += vshError -space = -space += +space = $(null) $(null) func_re= ($(subst $(space),|,$(msg_gen_function))) # Look for diagnostics that aren't marked for translation. -- 2.24.1