• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1name: POSIX
2
3on:
4  pull_request:
5  push:
6    branches:
7      - master
8      - develop
9      - feature/**
10
11env:
12  LIBRARY: serialization
13  UBSAN_OPTIONS: print_stacktrace=1
14
15jobs:
16  CI:
17    strategy:
18      fail-fast: false
19      matrix:
20        include:
21          - toolset: gcc-4.7
22            cxxstd: "03,11"
23            os: ubuntu-16.04
24            install: g++-4.7
25          - toolset: gcc-4.8
26            cxxstd: "03,11"
27            os: ubuntu-16.04
28            install: g++-4.8
29          - toolset: gcc-4.9
30            cxxstd: "03,11"
31            os: ubuntu-16.04
32            install: g++-4.9
33          - toolset: gcc-5
34            cxxstd: "03,11,14,1z"
35            os: ubuntu-16.04
36          - toolset: gcc-6
37            cxxstd: "03,11,14,1z"
38            os: ubuntu-16.04
39            install: g++-6
40          - toolset: gcc-7
41            cxxstd: "03,11,14,17"
42            os: ubuntu-18.04
43          - toolset: gcc-8
44            cxxstd: "03,11,14,17,2a"
45            os: ubuntu-18.04
46          - toolset: gcc-9
47            cxxstd: "03,11,14,17,2a"
48            os: ubuntu-18.04
49          - toolset: gcc-10
50            cxxstd: "03,11,14,17,2a"
51            os: ubuntu-18.04
52          - toolset: clang
53            cxxstd: "03,11,14,17,2a"
54            os: ubuntu-18.04
55          - toolset: clang
56            cxxstd: "03,11,14,17,2a"
57            os: macos-10.15
58
59    runs-on: ${{matrix.os}}
60
61    steps:
62      - uses: actions/checkout@v2
63
64      - name: Install packages
65        if: matrix.install
66        run: sudo apt install ${{matrix.install}}
67
68      - name: Setup Boost
69        run: |
70          REF=${GITHUB_BASE_REF:-$GITHUB_REF}
71          BOOST_BRANCH=develop && [ "$REF" == "master" ] && BOOST_BRANCH=master || true
72          cd ..
73          git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
74          cd boost-root
75          cp -r $GITHUB_WORKSPACE/* libs/$LIBRARY
76          git submodule update --init tools/boostdep
77          python tools/boostdep/depinst/depinst.py --git_args "--jobs 3" $LIBRARY
78          ./bootstrap.sh
79          ./b2 -d0 headers
80
81      - name: Run tests
82        run: |
83          cd ../boost-root
84          ./b2 -j3 libs/$LIBRARY/test toolset=${{matrix.toolset}} cxxstd=${{matrix.cxxstd}} variant=debug,release
85