travis-ci – 如何在Travis CI中以两种不同的方式编译项目?

我有一个使用Qt编写的项目,它支持Qt4和Qt5.

目前我已将travis配置为使用linux和OSX上的gcc和clang编译项目.

我想进一步拆分它,以便项目同时将Qt4和Qt5构建为单独的构建,因此在OS,编译器和Qt版本的总分裂中有8种不同的排列.

我目前的travis.yml是

language: cpp
os:
  - linux
  - osx
compiler:
  - gcc
  - clang
script: mkdir build && cd build && cmake .. -DWITH_SERVER=1 && make
install: ./travis-dependencies.sh
cache: apt

使用其他cmake参数配置Qt4与Qt5选择.

如何更改此选项以进一步拆分构建矩阵?

最佳答案 Travis支持团队的建议是使用环境变量来拆分构建:

language: cpp
env:
  - QT="-DWITH_QT4=0"
  - QT="-DWITH_QT4=1"
os:
  - linux
  - osx
compiler:
  - gcc
  - clang
script: mkdir build && cd build && cmake .. $QT -DWITH_SERVER=1 && make
install: ./travis-dependencies.sh
cache: apt
点赞