首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

怎么去掉${CFLAGS}其中一个FLAG

2013-09-28 
如何去掉${CFLAGS}其中一个FLAG ?如何去掉${CFLAGS}其中一个FLAG ?上层Makefile中的CFLAGS包含了一个与本M

如何去掉${CFLAGS}其中一个FLAG ?
如何去掉${CFLAGS}其中一个FLAG ?

上层Makefile中的CFLAGS包含了一个与本Makefile中冲突的一个FLAG,如何去掉其中一个呢?



上面是一个Makefile。

目的是删除CFLAGS中"my_flag=123456"这个字符串。

下面是make时指定CFLAGS的输出。

删除之前是带有my_flag=xxx的,删除之后就没有这一项了。

根据需要修改filter-out的参数就行了。

filter-out是makefile中的函数,你可以网上搜索一下用法 。
[解决办法]
Makefile


override CFLAGS:=$(filter-out -msoft-float,$(CFLAGS))

all:
        @echo $(CFLAGS)

执行结果

$] CFLAGS="-O2 -Wall my_flag=xxx -msoft-float" make
-O2 -Wall my_flag=xxx

热点排行