|
7 | 7 | branches: [ master ]
|
8 | 8 |
|
9 | 9 | jobs:
|
10 |
| - build: |
| 10 | + build-ubuntu-gcc: |
| 11 | + runs-on: ubuntu-latest |
| 12 | + steps: |
| 13 | + - uses: actions/checkout@v2 |
| 14 | + - name: install g++ |
| 15 | + run: | |
| 16 | + sudo add-apt-repository ppa:ubuntu-toolchain-r/test |
| 17 | + sudo apt-get install g++-10 |
| 18 | + - name: compile |
| 19 | + run: | |
| 20 | + cd cpp |
| 21 | + find . -name *.cpp -print0 | xargs -n1 -0 g++-10 -Wall -Wextra -std=c++20 |
11 | 22 |
|
| 23 | + build-ubuntu-gcc-no-sign: |
12 | 24 | runs-on: ubuntu-latest
|
| 25 | + steps: |
| 26 | + - uses: actions/checkout@v2 |
| 27 | + - name: install g++ |
| 28 | + run: | |
| 29 | + sudo add-apt-repository ppa:ubuntu-toolchain-r/test |
| 30 | + sudo apt-get install g++-10 |
| 31 | + - name: compile |
| 32 | + run: | |
| 33 | + cd cpp |
| 34 | + find . -name *.cpp -print0 | xargs -n1 -0 g++-10 -Wall -Wextra -Wno-sign-compare -std=c++20 |
13 | 35 |
|
| 36 | + build-ubuntu-gcc-analyzer: |
| 37 | + runs-on: ubuntu-latest |
14 | 38 | steps:
|
15 | 39 | - uses: actions/checkout@v2
|
16 | 40 | - name: install g++
|
17 | 41 | run: |
|
18 | 42 | sudo add-apt-repository ppa:ubuntu-toolchain-r/test
|
19 |
| - sudo apt-get update |
20 | 43 | sudo apt-get install g++-10
|
21 | 44 | - name: compile
|
22 | 45 | run: |
|
23 | 46 | cd cpp
|
24 | 47 | find . -name *.cpp -print0 | xargs -n1 -0 g++-10 -fanalyzer -Wno-analyzer-null-dereference -std=c++20
|
| 48 | +
|
| 49 | + build-ubuntu-gcc-7-warnings: |
| 50 | + runs-on: ubuntu-latest |
| 51 | + steps: |
| 52 | + - uses: actions/checkout@v2 |
| 53 | + - name: install g++-7 |
| 54 | + run: | |
| 55 | + sudo add-apt-repository ppa:ubuntu-toolchain-r/test |
| 56 | + sudo apt-get install g++-7 |
| 57 | + - name: compile |
| 58 | + run: | |
| 59 | + cd cpp |
| 60 | + find . -name *.cpp -print0 | xargs -n1 -0 g++-7 -Wall -Wextra -std=c++17 |
| 61 | +
|
| 62 | + build-ubuntu-clang: |
| 63 | + runs-on: ubuntu-latest |
| 64 | + steps: |
| 65 | + - uses: actions/checkout@v2 |
| 66 | + - name: install clang |
| 67 | + run: | |
| 68 | + sudo apt-key adv --fetch-keys https://apt.llvm.org/llvm-snapshot.gpg.key |
| 69 | + sudo add-apt-repository "deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-10 main" |
| 70 | + sudo apt-get install clang-10 |
| 71 | + - name: compile |
| 72 | + run: | |
| 73 | + cd cpp |
| 74 | + find . -name *.cpp -print0 | xargs -n1 -0 clang++-10 -Wall -Wextra -std=c++20 |
| 75 | + |
| 76 | + build-macos-clang: |
| 77 | + runs-on: macos-latest |
| 78 | + steps: |
| 79 | + - uses: actions/checkout@v2 |
| 80 | + - name: compile |
| 81 | + run: | |
| 82 | + cd cpp |
| 83 | + mkdir bits |
| 84 | + echo $'#include <vector>\n#include <set>\n#include <map>\n#include <unordered_set>\n#include <unordered_map>\n#include <queue>\n#include <deque>\n#include <stack>\n#include <iostream>\n#include <iomanip>\n#include <complex>\n#include <cassert>\n#include <random>\n#include <chrono>\n#include <functional>\n#include <array>\n#include <bitset>\n#include <numeric>\n' > bits/stdc++.h |
| 85 | + find . -name *.cpp -print0 | xargs -n1 -0 clang++ -Wall -Wextra -std=c++2a -isystem . |
| 86 | +
|
| 87 | + build-macos-clang-no-sign: |
| 88 | + runs-on: macos-latest |
| 89 | + steps: |
| 90 | + - uses: actions/checkout@v2 |
| 91 | + - name: compile |
| 92 | + run: | |
| 93 | + cd cpp |
| 94 | + mkdir bits |
| 95 | + echo $'#include <vector>\n#include <set>\n#include <map>\n#include <unordered_set>\n#include <unordered_map>\n#include <queue>\n#include <deque>\n#include <stack>\n#include <iostream>\n#include <iomanip>\n#include <complex>\n#include <cassert>\n#include <random>\n#include <chrono>\n#include <functional>\n#include <array>\n#include <bitset>\n#include <numeric>\n' > bits/stdc++.h |
| 96 | + find . -name *.cpp -print0 | xargs -n1 -0 clang++ -Wall -Wextra -Wno-sign-compare -std=c++2a -isystem . |
| 97 | +
|
| 98 | + build-windows-visual-cpp: |
| 99 | + runs-on: windows-2019 |
| 100 | + steps: |
| 101 | + - uses: actions/checkout@v2 |
| 102 | + - name: compile |
| 103 | + run: | |
| 104 | + function Invoke-Environment { |
| 105 | + param |
| 106 | + ( |
| 107 | + [Parameter(Mandatory=$true)] |
| 108 | + [string] $Command |
| 109 | + ) |
| 110 | + $Command = "`"" + $Command + "`"" |
| 111 | + cmd /c "$Command > nul 2>&1 && set" | . { process { |
| 112 | + if ($_ -match '^([^=]+)=(.*)') { |
| 113 | + [System.Environment]::SetEnvironmentVariable($matches[1], $matches[2]) |
| 114 | + } |
| 115 | + }} |
| 116 | + } |
| 117 | + mkdir bits |
| 118 | + & C:\msys64\usr\bin\echo.exe -e '#include \74vector\76\n#include \74set\76\n#include \74map\76\n#include \74unordered_set\76\n#include \74unordered_map\76\n#include \74queue\76\n#include \74deque\76\n#include \74stack\76\n#include \74iostream\76\n#include \74iomanip\76\n#include \74complex\76\n#include \74cassert\76\n#include \74random\76\n#include \74chrono\76\n#include \74functional\76\n#include \74array\76\n#include \74bitset\76\n#include \74numeric\76\n' > bits\stdc++.h |
| 119 | + Invoke-Environment "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvarsamd64_x86.bat" |
| 120 | + & C:\msys64\usr\bin\find . -name \*.cpp -exec C:\msys64\usr\bin\sh.exe -c 'for n; do cl //std:c++17 //EHsc //I . "$n" || exit 1; done' C:\msys64\usr\bin\sh.exe '{}' + |
0 commit comments