Makefile make-获取不带文件名的文件路径
我的Makefile中有一个获取所有src文件的规则:Makefile make-获取不带文件名的文件路径,makefile,compilation,gnu-make,Makefile,Compilation,Gnu Make,我的Makefile中有一个获取所有src文件的规则: CFILES := $(shell find ./ -type f -name '*.c') 如何仅获取CFILES的文件路径(不带文件名) 例如: /drivers/fb/fb.c变为/drivers/fb /stivalle/stivalle.c变成/stivalledirname是你的朋友。(别忘了man dirname) 乙二醇 请参阅上的GNU make部分 所以你可以写: DIRS := $(dir $(CFILES)) 这
CFILES := $(shell find ./ -type f -name '*.c')
如何仅获取CFILES
的文件路径(不带文件名)
例如:
/drivers/fb/fb.c
变为/drivers/fb
/stivalle/stivalle.c
变成/stivalle
dirname
是你的朋友。(别忘了man dirname
)
乙二醇
请参阅上的GNU make部分 所以你可以写:
DIRS := $(dir $(CFILES))
这将为您提供带有尾随斜杠的路径。如果要删除尾部斜杠,可以使用:
DIRS := $(patsubst %/,%,$(dir $(CFILES)))
DIRS := $(sort $(patsubst %/,%,$(dir $(CFILES))))
如果您在同一目录中有多个源文件,这也将为您提供副本。如果每个目录只需要一个实例,则可以使用:
DIRS := $(patsubst %/,%,$(dir $(CFILES)))
DIRS := $(sort $(patsubst %/,%,$(dir $(CFILES))))
我如何在
c文件上使用它?