aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexei Podtelezhnikov <apodtele@gmail.com>2023-08-24 08:13:18 -0400
committerAlexei Podtelezhnikov <apodtele@gmail.com>2023-08-24 08:13:18 -0400
commit00b07598d96f7c6c96d2d32dbbb9cd11b3adeacd (patch)
tree2d4bac73b67ad58b9658f1f09513a05fdee5996a
parent97251fd5aa2a90041cf4f397a5e887b8d60ab0c2 (diff)
downloadfreetype-00b07598d96f7c6c96d2d32dbbb9cd11b3adeacd.tar.gz
* builds/toplevel.mk: Simplify version extraction.
-rw-r--r--builds/toplevel.mk29
1 files changed, 11 insertions, 18 deletions
diff --git a/builds/toplevel.mk b/builds/toplevel.mk
index 7530be753..8d5063ebb 100644
--- a/builds/toplevel.mk
+++ b/builds/toplevel.mk
@@ -198,29 +198,22 @@ modules:
include $(TOP_DIR)/builds/modules.mk
-# get FreeType version string, using a
-# poor man's `sed' emulation with make's built-in string functions
+# get FreeType version string using 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 $(hash)define|FREETYPE_MAJOR|,$(space),$(work))
-work := $(word 2,$(work))
-major := $(subst |,$(space),$(work))
-major := $(firstword $(major))
-
-work := $(subst $(hash)define|FREETYPE_MINOR|,$(space),$(work))
-work := $(word 2,$(work))
-minor := $(subst |,$(space),$(work))
-minor := $(firstword $(minor))
-
-work := $(subst $(hash)define|FREETYPE_PATCH|,$(space),$(work))
-work := $(word 2,$(work))
-patch := $(subst |,$(space),$(work))
-patch := $(firstword $(patch))
+
+work := $(subst $(hash)define$(space)FREETYPE_MAJOR$(space),MAjOR=,$(work))
+work := $(subst $(hash)define$(space)FREETYPE_MINOR$(space),MInOR=,$(work))
+work := $(subst $(hash)define$(space)FREETYPE_PATCH$(space),PAtCH=,$(work))
+
+major := $(subst MAjOR=,,$(filter MAjOR=%,$(work)))
+minor := $(subst MInOR=,,$(filter MInOR=%,$(work)))
+patch := $(subst PAtCH=,,$(filter PAtCH=%,$(work)))
+
+work :=
# ifneq ($(findstring x0x,x$(patch)x),)
# version := $(major).$(minor)