将具有给定前缀的所有变量传递给编译命令

时间:2018-06-19 22:42:02

标签: makefile gnu-make

是否可以从GNU makefile内获取具有给定前缀的所有变量,并将它们作为Get-ChildItem "C:\Users\MG\Desktop\ScanFolder\*.csv" |Select-Object -ExpandProperty Name 定义传递给编译命令?

例如,假设存在以下变量:

-D

是否有一种方法可以从make内自动生成字符串DEFINE_FOO=cat DEFINE_BAR=dog ,以便它自动提取以后添加的带有前缀-DFOO=cat -DBAR=dog的所有变量?

1 个答案:

答案 0 :(得分:3)

如果使用GNU make,则可以这样操作:

CPPFLAGS += $(patsubst DEFINE_%,-D%,$(foreach V,\
                $(filter DEFINE_%,$(.VARIABLES)),$V=$($V)))