当其中一个失败时,停止多个文件GCC编译

我创建了以下bash构建脚本文件:

BLD_INCLUDE="-I..source/module1 -I..source/module2" SRC_MOD1="$(find ../source/module1 -name '*.c')" SRC_MOD2="$(find ../source/module2 -name '*.c')" BLD_SOURCES="../source/program.c $SRC_MOD1 $SRC_MOD2" BLD_LINKER="" #if there is any need of linker - irrelevant here gcc $BLD_FLAGS $BLD_INCLUDE -o outputobject $BLD_SOURCES $BLD_LINKER 

我正在构建这样的因为我需要编译很多文件。

问题是,当使用gcc执行多个文件时,如上所述,如果其中一个文件的编译失败,它会提示错误以及“编译终止”,然后继续执行其他文件。

我想要的行为是,即使其中一个文件无法编译,整个编译也会停止。

也就是说,在我的情况下:假设缺少一个头文件。 现在gcc尝试编译第一个.c ,发现缺少头文件,提示

致命错误:文件丢失错误编译终止。

然后继续执行其他.c文件。 由于头文件总共缺失,它不断给我这个错误并继续执行。

我希望这个构建脚本在编译失败时立即终止,即使是其中一个文件也是如此。

编辑: 与多个文件编译错误时不是Stop GCC的重复,它起源于这个问题本身(阅读评论)。 这个问题甚至可以追溯到这一点。