这个问题特定于GNU make。给出makefile中的版本字符串,例如:
VER = 1.23.345.6
是否可以从字符串中剥离尾随组件?假设期望的结果是前两个组件,即(major.minor):
VERPREFIX = 1.23
尽管可以使用支持正则表达式的命令行程序$(shell)
来实现它(例如sed
或perl
),但我想知道GNU中的本机文本过滤功能是否正常可以达到同样的效果。
答案 0 :(得分:1)
尝试:
# Create a variable $S containing a space
E :=
S := $E $E
# Get the first and second elements of a version string
VERPREFIX := $(subst $S,.,$(wordlist 1,2,$(subst .,$S,$(VER))))