在make调用中使用BUILD_MODE可以吗?

时间:2017-05-27 02:55:54

标签: c++ travis-ci gnu-make

我们正在为使用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获得。不执行各种makefile目标,例如make no-asm

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

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

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

1 个答案:

答案 0 :(得分:0)

  

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

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

这有效,但......

  

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

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

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