Я использую GNU make и в том числе стороннюю библиотеку в проекте, у которого есть система сборки, которая идет в ярость, если CFLAGS
определяется в среде при ее вызове. Мне нравится иметь CFLAGS
, определенный в моей среде по другим причинам. Библиотечная сборка вызывается из другого make файла, так что я говорю, например:
3rdparty: $(MAKE) -f Makefile.3rdparty
Но я хотел бы быть уверенным, что CFLAGS
не работает, когда я вызываю make на стороннем Makefile. Самое ближайшее, что я могу найти, это сказать:
CFLAGS:=
Но это все еще оставляет CFLAGS
установленным в среде, это просто пустая строка. Кроме
от чего-то отвратительного, как говоря:
3rdparty: bash -c "unset CFLAGS; $(MAKE) -f Makefile.3rdparty"
Есть ли простой способ "отменить" переменную CFLAGS
из моего основного файла makefile, чтобы он вообще не присутствовал в среде при вызове библиотеки сторонних разработчиков?