在我的makefile中,我有一个带有目录列表的变量,如下所示:
DIRS = /usr /usr/share/ /lib
Run Code Online (Sandbox Code Playgroud)
现在,我需要从它创建PATH变量,它基本相同,但使用分号作为分隔符:
PATH = /usr:/usr/share/:/lib
Run Code Online (Sandbox Code Playgroud)
我怎么做?我的意思是,我如何用分号而不是空格加入DIRS列表的元素?
Eri*_*ski 36
您可以使用该$(subst)
命令,结合一个小技巧来获取具有单个空间值的变量:
p = /usr /usr/share /lib
noop=
space = $(noop) $(noop)
all:
@echo $(subst $(space),:,$(p))
Run Code Online (Sandbox Code Playgroud)
希望有所帮助,
埃里克·梅尔斯基
Dav*_*son 10
最干净的表格(我能找到):
classpathify = $(subst $(eval) ,:,$(wildcard $1))
cp = a b c d/*.jar
target:
echo $(call classpathify,$(cp))
# prints a:b:c:d/1.jar:d/2.jar
Run Code Online (Sandbox Code Playgroud)
笔记:
归档时间: |
|
查看次数: |
10386 次 |
最近记录: |