|
1 |
| -name: C/C++ CI |
| 1 | +name: Make Check |
2 | 2 |
|
3 | 3 | on:
|
4 | 4 | push:
|
|
7 | 7 | branches: [ master ]
|
8 | 8 |
|
9 | 9 | jobs:
|
10 |
| - build: |
11 |
| - |
12 |
| - runs-on: ${{ matrix.os }} |
| 10 | + check-ubuntu: |
| 11 | + runs-on: ubuntu-latest |
13 | 12 | strategy:
|
| 13 | + fail-fast: false |
14 | 14 | matrix:
|
15 |
| - os: [ubuntu-latest, macos-latest] |
16 | 15 | include:
|
17 |
| - - os: ubuntu-latest |
18 |
| - BUILD_TOOLS_INSTALL: sudo apt install automake autoconf libtool libtool-bin libltdl-dev libltdl7 |
19 |
| - LIBXML2_INSTALL: sudo apt install libxml2 libxml2-dev libxslt1.1 libxslt1-dev |
20 |
| - CRYPTO_LIBS_INSTALL: sudo apt install libssl1.0.0 libssl-dev libnspr4 libnspr4-dev libnss3 libnss3-dev libnss3-tools libgcrypt20 libgcrypt20-dev libgnutls28-dev |
21 |
| - - os: macos-latest |
22 |
| - BUILD_TOOLS_INSTALL: brew install automake autoconf libtool |
23 |
| - LIBXML2_INSTALL: brew install libxml2 libxslt |
24 |
| - CRYPTO_LIBS_INSTALL: brew install openssl libgcrypt gnutls |
25 |
| - |
| 16 | + - static_linking: true |
| 17 | + - static_linking: false |
26 | 18 | steps:
|
| 19 | + - name: install dependencies |
| 20 | + run: | |
| 21 | + sudo apt update |
| 22 | + sudo apt install automake autoconf libtool libtool-bin libltdl-dev libltdl7 |
| 23 | + sudo apt install libxml2 libxml2-dev libxslt1.1 libxslt1-dev |
| 24 | + sudo apt install libssl1.0.0 libssl-dev libnspr4 libnspr4-dev libnss3 libnss3-dev libnss3-tools libgcrypt20 libgcrypt20-dev libgnutls28-dev |
27 | 25 | - uses: actions/checkout@v2
|
28 |
| - - name: install build tools |
29 |
| - run: ${{matrix.BUILD_TOOLS_INSTALL}} |
30 |
| - - name: install libxml2/libxslt |
31 |
| - run: ${{matrix.LIBXML2_INSTALL}} |
32 |
| - - name: install crypto libs |
33 |
| - run: ${{matrix.CRYPTO_LIBS_INSTALL}} |
34 |
| - - name: mkdir build |
35 |
| - run: mkdir build |
| 26 | + - run: mkdir build |
36 | 27 | - name: configure
|
37 | 28 | working-directory: build
|
38 |
| - run: ../autogen.sh --enable-werror |
| 29 | + run: ../autogen.sh --enable-werror --enable-static-linking=${{ matrix.static_linking }} |
| 30 | + - name: make |
| 31 | + working-directory: build |
| 32 | + run: make |
| 33 | + - name: make check |
| 34 | + working-directory: build |
| 35 | + run: make check |
| 36 | + |
| 37 | + check-osx: |
| 38 | + runs-on: macos-latest |
| 39 | + strategy: |
| 40 | + fail-fast: false |
| 41 | + matrix: |
| 42 | + include: |
| 43 | + - static_linking: true |
| 44 | + - static_linking: false |
| 45 | + steps: |
| 46 | + - name: install dependencies |
| 47 | + # nss is disabled for now |
| 48 | + run: | |
| 49 | + brew update |
| 50 | + brew install automake autoconf libtool |
| 51 | + brew install libxml2 libxslt |
| 52 | + brew install openssl libgcrypt gnutls |
| 53 | + - uses: actions/checkout@v2 |
| 54 | + - run: mkdir build |
| 55 | + - name: configure |
| 56 | + working-directory: build |
| 57 | + run: ../autogen.sh --enable-werror --enable-static-linking=${{ matrix.static_linking }} |
| 58 | + - name: make |
| 59 | + working-directory: build |
| 60 | + run: make |
| 61 | + - name: make check |
| 62 | + working-directory: build |
| 63 | + run: make check |
| 64 | + |
| 65 | + check-mingw: |
| 66 | + runs-on: windows-latest |
| 67 | + strategy: |
| 68 | + fail-fast: false |
| 69 | + matrix: |
| 70 | + include: |
| 71 | + - msystem: MINGW64 |
| 72 | + arch: x86_64 |
| 73 | + unicode: true |
| 74 | + static_linking: true |
| 75 | + - msystem: MINGW64 |
| 76 | + arch: x86_64 |
| 77 | + unicode: true |
| 78 | + static_linking: false |
| 79 | + - msystem: MINGW64 |
| 80 | + arch: x86_64 |
| 81 | + unicode: false |
| 82 | + static_linking: true |
| 83 | + - msystem: MINGW64 |
| 84 | + arch: x86_64 |
| 85 | + unicode: false |
| 86 | + static_linking: false |
| 87 | + defaults: |
| 88 | + run: |
| 89 | + shell: msys2 {0} |
| 90 | + steps: |
| 91 | + - uses: msys2/setup-msys2@v2 |
| 92 | + with: |
| 93 | + msystem: ${{ matrix.msystem }} |
| 94 | + release: false |
| 95 | + update: false |
| 96 | + install: >- |
| 97 | + git |
| 98 | + base-devel |
| 99 | + mingw-w64-${{ matrix.arch }}-toolchain |
| 100 | + mingw-w64-${{ matrix.arch }}-libtool |
| 101 | + mingw-w64-${{ matrix.arch }}-libxml2 |
| 102 | + mingw-w64-${{ matrix.arch }}-libxslt |
| 103 | + mingw-w64-${{ matrix.arch }}-openssl |
| 104 | + mingw-w64-${{ matrix.arch }}-gnutls |
| 105 | + - run: git config --global core.autocrlf input |
| 106 | + shell: bash |
| 107 | + - uses: actions/checkout@v2 |
| 108 | + - run: mkdir build |
| 109 | + - name: configure |
| 110 | + working-directory: build |
| 111 | + run: pwd && ../autogen.sh --build="${{ matrix.arch }}-w64-mingw32" --host="${{ matrix.arch }}-w64-mingw32" --enable-unicode=${{ matrix.unicode }} --enable-static-linking=${{ matrix.static_linking }} --enable-mscrypto --enable-mscng |
39 | 112 | - name: make
|
40 | 113 | working-directory: build
|
41 | 114 | run: make
|
42 | 115 | - name: make check
|
43 | 116 | working-directory: build
|
44 | 117 | run: make check
|
45 |
| - |
|
0 commit comments