]> granicus.if.org Git - libexpat/blob - .travis.yml
Merge pull request #360 from libexpat/improve-cmake
[libexpat] / .travis.yml
1 # Copyright (C) 2017 Sebastian Pipping <sebastian@pipping.org>
2 # Licensed under the MIT license
3
4 language: cpp
5 os:
6   - linux
7   - osx
8 dist: trusty
9
10 git:
11   depth: 50
12
13 env:
14   global:
15     - CFLAGS='-g -pipe'
16   matrix:
17     - MODE=cmake-oos
18     - MODE=cppcheck
19     - MODE=distcheck
20     - MODE=qa-sh CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=address
21
22 matrix:
23   include:
24     - os: linux
25       env: MODE=clang-format
26     - os: linux
27       env: MODE=cmake-oos CMAKE_ARGS="-DEXPAT_ATTR_INFO=ON -DEXPAT_BUILD_FUZZERS=ON -DCMAKE_C_FLAGS=-fsanitize=address -DCMAKE_CXX_FLAGS=-fsanitize=address -DCMAKE_EXE_LINKER_FLAGS=-fsanitize=address -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++"
28     - os: linux
29       env: MODE=coverage-sh
30     - os: linux
31       env: MODE=qa-sh CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=address CMAKE_ARGS=-DEXPAT_ATTR_INFO=ON
32     - os: linux
33       env: MODE=qa-sh CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=address CMAKE_ARGS=-DEXPAT_CONTEXT_BYTES=OFF
34     - os: linux
35       env: MODE=qa-sh CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=address CMAKE_ARGS=-DEXPAT_DTD=OFF
36     - os: linux
37       env: MODE=qa-sh CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=address CMAKE_ARGS=-DEXPAT_LARGE_SIZE=ON
38     - os: linux
39       env: MODE=qa-sh CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=address CMAKE_ARGS=-DEXPAT_MIN_SIZE=ON
40     - os: linux
41       env: MODE=qa-sh CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=address CMAKE_ARGS=-DEXPAT_NS=OFF
42     - os: linux
43       env: MODE=qa-sh CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=memory
44     - os: linux
45       env: MODE=qa-sh CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=undefined
46     - os: linux
47       env: MODE=qa-sh CC=gcc CXX=g++ LD=ld QA_PROCESSOR=gcov
48     - os: linux
49       env: MODE=qa-sh CC=i686-w64-mingw32-gcc CXX=i686-w64-mingw32-g++ LD=i686-w64-mingw32-ld QA_PROCESSOR=gcov CMAKE_ARGS="-DCMAKE_SYSTEM_NAME=Windows -DWIN32=ON -DMINGW=ON -DEXPAT_ATTR_INFO=ON"
50     - os: linux
51       env: MODE=qa-sh CC=i686-w64-mingw32-gcc CXX=i686-w64-mingw32-g++ LD=i686-w64-mingw32-ld QA_PROCESSOR=gcov CMAKE_ARGS="-DCMAKE_SYSTEM_NAME=Windows -DWIN32=ON -DMINGW=ON -DEXPAT_ATTR_INFO=ON -DEXPAT_CHAR_TYPE=wchar_t"
52
53 addons:
54   homebrew:
55     update: true
56     brewfile: true
57   apt:
58     sources:
59       - llvm-toolchain-trusty
60       - ubuntu-toolchain-r-test
61     packages:
62       - clang-9
63       - clang-format-9
64       - cmake
65       - cppcheck
66       - docbook2x
67       - dos2unix
68       - lcov
69       - libbsd-dev
70       - lzip
71       - mingw-w64
72       - moreutils
73       - wine
74
75 script:
76   - ./.travis.sh