builds/toplevel.mk: Don't use `\#` in functions. The behaviour changed in GNU make 4.3, where `#` (without the backslash) would be necessary. Using a variable instead the code works with both older and newer GNU make versions. Fixes #1252.
diff --git a/builds/toplevel.mk b/builds/toplevel.mk
index 5a3ff2a..7530be7 100644
--- a/builds/toplevel.mk
+++ b/builds/toplevel.mk
@@ -201,21 +201,23 @@ include $(TOP_DIR)/builds/modules.mk
# get FreeType version string, using a
# poor man's `sed' emulation with make's built-in string functions
#
+hash := \#
+
work := $(strip $(shell $(CAT) \
$(subst /,$(SEP),$(TOP_DIR)/include/freetype/freetype.h)))
work := $(subst |,x,$(work))
work := $(subst $(space),|,$(work))
-work := $(subst \#define|FREETYPE_MAJOR|,$(space),$(work))
+work := $(subst $(hash)define|FREETYPE_MAJOR|,$(space),$(work))
work := $(word 2,$(work))
major := $(subst |,$(space),$(work))
major := $(firstword $(major))
-work := $(subst \#define|FREETYPE_MINOR|,$(space),$(work))
+work := $(subst $(hash)define|FREETYPE_MINOR|,$(space),$(work))
work := $(word 2,$(work))
minor := $(subst |,$(space),$(work))
minor := $(firstword $(minor))
-work := $(subst \#define|FREETYPE_PATCH|,$(space),$(work))
+work := $(subst $(hash)define|FREETYPE_PATCH|,$(space),$(work))
work := $(word 2,$(work))
patch := $(subst |,$(space),$(work))
patch := $(firstword $(patch))