summaryrefslogtreecommitdiff
path: root/appveyor.yml
blob: 741c59fda4cac37601d318c9786b7d08953471c0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
environment:
  RUST_BACKTRACE: 1
  RUST_CHANNEL: "%Configuration%"
  matrix:
  - TARGET: gnu
    LLVM_VERSION: 5.0.0-1
    BINDGEN_FEATURES: testing_only_libclang_5
  - TARGET: gnu
    LLVM_VERSION: 9.0.0-1
    BINDGEN_FEATURES: testing_only_libclang_9
  - TARGET: msvc
    LLVM_VERSION: 5.0.0
    BINDGEN_FEATURES: testing_only_libclang_5
  - TARGET: msvc
    LLVM_VERSION: 9.0.0
    BINDGEN_FEATURES: testing_only_libclang_9

configuration:
- stable
- nightly

platform:
  - x64
  - x86

branches:
  only:
    - main

install:
  - if %PLATFORM% == x86 (set RUST_PLATFORM=i686&set MINGW_BITS=32) else (set RUST_PLATFORM=x86_64&set MINGW_BITS=64)
  - echo %RUST_CHANNEL%
  - echo %RUST_PLATFORM%
  - echo %MINGW_BITS%
  - echo %RUST_PLATFORM%-pc-windows-%TARGET%
  # install Rust
  - appveyor-retry appveyor DownloadFile https://win.rustup.rs/ -FileName rustup-init.exe
  - rustup-init.exe -y --default-host %RUST_PLATFORM%-pc-windows-%TARGET% --default-toolchain %RUST_CHANNEL%
  - set PATH=%PATH%;C:\Users\appveyor\.cargo\bin
  # install LLVM for GNU
  - if %TARGET%==gnu set PATH=C:\msys64\mingw%MINGW_BITS%\bin;C:\msys64\usr\bin\;%PATH%
  - if %TARGET%==gnu set "MINGW_URL=http://repo.msys2.org/mingw/%RUST_PLATFORM%/mingw-w64-%RUST_PLATFORM%"
  - if %TARGET%==gnu set "URL_VER=%LLVM_VERSION%-any.pkg.tar.xz"
  - if %TARGET%==gnu bash -lc "pacman -U --noconfirm $MINGW_URL-clang-$URL_VER $MINGW_URL-llvm-$URL_VER"
  - if %TARGET%==gnu bash -lc "clang --version"
  # install LLVM for MSVC
  - if %TARGET%==msvc appveyor-retry appveyor DownloadFile http://releases.llvm.org/%LLVM_VERSION%/LLVM-%LLVM_VERSION%-win64.exe -FileName llvm-installer.exe
  - if %TARGET%==msvc 7z x llvm-installer.exe -oc:\llvm-binary
  - if %TARGET%==msvc set PATH=C:\llvm-binary\bin;%PATH%
  - if %TARGET%==msvc where clang
  - if %TARGET%==msvc clang --version

build_script:
  - if %TARGET%==msvc .\ci\test.bat
  - if %TARGET%==gnu bash -lc "export BINDGEN_FEATURES=$BINDGEN_FEATURES; cd $APPVEYOR_BUILD_FOLDER; ./ci/test.sh"

test: off