我正在使用 GNU make,并在一个项目中包含一个 3rd 方库,该项目具有一个构建系统,如果CFLAGS
在调用它时在环境中定义它,它就会发疯。CFLAGS
出于其他原因,我喜欢在我的环境中进行定义。库的构建是从另一个 makefile 调用的,所以我说例如:
第三方:
$(MAKE) -f Makefile.3rdparty
但是我想确保CFLAGS
在第 3 方 Makefile 上调用 make 时未设置。我能找到的最接近的事情是:
CFLAGS:=
但这仍然CFLAGS
在环境中设置,它只是一个空字符串。除了做一些可怕的事情,比如说:
第三方:
bash -c "unset CFLAGS; $(MAKE) -f Makefile.3rdparty"
有没有一种简单的方法可以CFLAGS
从我的主生成文件中“取消设置”变量,以便在调用第三方库时它根本不存在于环境中?