Makefile 函数 notdir 学习
notdir是Makefile的一个内建函数,它用于从一列文件名中剥去目录部分。notdir函数的语法如下:
$(notdir names)
names
是你想要处理的文件名列表。
下面是一个使用notdir
函数的简单示例:
FILES = /path/to/foo.c /another/path/to/bar.c
BASENAMES = $(notdir $(FILES))
all:
@echo $(BASENAMES)
在这个示例中,FILES
变量包含了两个完整的文件路径。我们使用notdir
函数剥去这些文件的目录部分,得到的结果保存在BASENAMES
变量中。
当你运行make all时,将会在命令行中打印出foo.c bar.c
,这是FILES
中的文件名部分:
(*^~^*) ~/workbase/test> make all
foo.c bar.c
注意,如果你的文件名列表中包含了空格或者特殊字符,你可能需要用引号来保护它们,例如FILES = "/path/to/foo bar.c" "/another/path/to/bar.c"
。