使用Appveyor和两个工具集MSVS和MinGW构建项目

时间:2017-06-15 14:37:43

标签: c++ mingw rapidjson appveyor

有一个很好的项目RapidJson。它使用Appveyor CI来测试Windows和MSVC 2015的构建。我将为MinGW添加构建配置。但我找不到办法如何做到这一点。

请从官方存储库中考虑appveyor.yml

os: Visual Studio 2015 CTP  
version: 1.1.0.{build}

configuration:
- Debug
- Release

environment:
  matrix:
  # - VS_VERSION: 9 2008
  #   VS_PLATFORM: win32
  # - VS_VERSION: 9 2008
  #   VS_PLATFORM: x64
  - VS_VERSION: 10 2010
    VS_PLATFORM: win32
  - VS_VERSION: 10 2010
    VS_PLATFORM: x64
  - VS_VERSION: 11 2012
    VS_PLATFORM: win32
  - VS_VERSION: 11 2012
    VS_PLATFORM: x64
  - VS_VERSION: 12 2013
    VS_PLATFORM: win32
  - VS_VERSION: 12 2013
    VS_PLATFORM: x64
  - VS_VERSION: 14 2015
    VS_PLATFORM: win32
  - VS_VERSION: 14 2015
    VS_PLATFORM: x64

before_build:
- git submodule update --init --recursive
- cmake -H. -BBuild/VS -G "Visual Studio %VS_VERSION%" -DCMAKE_GENERATOR_PLATFORM=%VS_PLATFORM% -DCMAKE_VERBOSE_MAKEFILE=ON -DBUILD_SHARED_LIBS=true -Wno-dev

build:
  project: Build\VS\RapidJSON.sln
  parallel: true
  verbosity: minimal

test_script:
- cd Build\VS && if %CONFIGURATION%==Debug (ctest --verbose -E perftest --build-config %CONFIGURATION%) else (ctest --verbose --build-config %CONFIGURATION%)

我知道我需要添加

environment:
  matrix:
  - PROFILE: MINGWx64
    PLATFORM: x64

然后在before_build步骤中生成cmake -BBuild/MinGW -G"MinGW Makefile" ... 在构建步骤cmake --build上 test_script看起来很相似,但我不明白我应该如何为不同的平台编写不同的构建步骤 请帮忙。提前谢谢。

0 个答案:

没有答案