是否可以在 make 调用中使用 BUILD_MODE

Is it OK to use BUILD_MODE in a make invocation?

本文关键字:BUILD MODE 调用 make 是否      更新时间:2023-10-16

我们正在为使用 GNUmake 构建的C++库进行 Travis CI 设置。配置文件位于 .travis.yml 。它是用于测试和实验的库的 Git 克隆。

配置文件在matrix中有一些库配置:

matrix:
  - BUILD_MODE="shared"
  - BUILD_MODE="static"
  - BUILD_MODE="no-asm"
  - BUILD_MODE="asan"
  - BUILD_MODE="ubsan"
  - BUILD_MODE="valgrind"

我们的script规则是:

script:
  - make clean &>/dev/null && make
  - ./cryptest.exe v && ./cryptest.exe tv all

由于我们只使用 make ,为matrix中的每个项目构建相同的默认配置。构建结果可在Travis/noloader/cryptopp获得。各种生成文件目标(如 make no-asm(不会执行。

我的问题是,是否可以将script规则更改为以下内容:

script:
  - make clean &>/dev/null && make "$BUILD_MODE"
  - ./cryptest.exe v && ./cryptest.exe tv all

或者,是否以不同的方式实现不同的配置?如果是这样,那么我们该怎么做?

我的问题是,是否可以将脚本规则更改为以下内容:

script:
  - make clean &>/dev/null && make "$BUILD_MODE"
  - ./cryptest.exe v && ./cryptest.exe tv all

这有效,但是...


或者,是否以不同的方式实现不同的配置?如果是这样,那么我们该怎么做?

。我们不确定这是否是推荐的做事方式。

如果有人知道最佳实践是什么,那么请添加一个答案。如果它来自可靠的来源,比如特拉维斯文档,我很乐意接受它。