Skip to content

Commit db5ea37

Browse files
authored
Create linux-simple.yml
1 parent 4873f55 commit db5ea37

File tree

1 file changed

+82
-0
lines changed

1 file changed

+82
-0
lines changed

.github/workflows/linux-simple.yml

+82
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
name: Linux builds (basic)
2+
3+
on: [push, pull_request]
4+
5+
jobs:
6+
build:
7+
name: ${{matrix.compiler.cxx}}, C++${{matrix.std}}, ${{matrix.build_type}}
8+
runs-on: ubuntu-20.04
9+
strategy:
10+
fail-fast: false
11+
matrix:
12+
compiler:
13+
- {cxx: g++-5, other_pkgs: g++-5}
14+
- {cxx: g++-6, other_pkgs: g++-6}
15+
- {cxx: g++-7, other_pkgs: g++-7}
16+
- {cxx: g++-8, other_pkgs: g++-8}
17+
- {cxx: g++-9, other_pkgs: g++-9}
18+
- {cxx: g++-10, other_pkgs: g++-10}
19+
- {cxx: clang++-6.0, other_pkgs: clang-6.0}
20+
- {cxx: clang++-7, other_pkgs: clang-7}
21+
- {cxx: clang++-8, other_pkgs: clang-8}
22+
- {cxx: clang++-9, other_pkgs: clang-9}
23+
- {cxx: clang++-10, other_pkgs: clang-10}
24+
build_type: [Debug, Release]
25+
std: [11, 14, 17, 20]
26+
#std: [11, 14, 17, 20]
27+
#exclude:
28+
# - compiler.cxx: "g++-{5,6,7,8,9,10}"
29+
# std: 17
30+
# - compiler.cxx: "g++-{5,6,7,8,9,10}"
31+
# std: 20
32+
# - compiler.cxx: "clang++-{6.0,7,8,9,10}"
33+
# std: 17
34+
# - compiler.cxx: "clang++-{6.0,7,8,9,10}"
35+
# std: 20
36+
37+
steps:
38+
- uses: actions/checkout@v4
39+
40+
- name: Add repositories for older GCC
41+
run: |
42+
sudo apt-add-repository 'deb http://azure.archive.ubuntu.com/ubuntu/ bionic main'
43+
sudo apt-add-repository 'deb http://azure.archive.ubuntu.com/ubuntu/ bionic universe'
44+
if: ${{ matrix.compiler.cxx == 'g++-5' || matrix.compiler.cxx == 'g++-6' }}
45+
46+
- name: Prepare environment
47+
run: |
48+
sudo apt-get update
49+
sudo apt-get install -y ninja-build ${{matrix.compiler.other_pkgs}}
50+
51+
- name: Configure CMake
52+
env:
53+
CXX: ${{matrix.compiler.cxx}}
54+
run: |
55+
cmake -B build \
56+
-DCMAKE_BUILD_TYPE=${{matrix.built_type}} \
57+
-DCMAKE_CXX_STANDARD=${{matrix.std}} \
58+
-DCMAKE_CXX_STANDARD_REQUIRED=ON \
59+
-DCMAKE_CXX_EXTENSIONS=OFF \
60+
-DRAPIDFUZZ_BUILD_TESTING=1 \
61+
-DRAPIDFUZZ_ENABLE_LINTERS=1 \
62+
-DRAPIDFUZZ_BUILD_FUZZERS=1 \
63+
-G Ninja
64+
65+
- name: Build
66+
working-directory: build
67+
run: ninja
68+
69+
- name: Test
70+
working-directory: build
71+
run: ctest -C ${{matrix.BUILD_TYPE}} --rerun-failed --output-on-failure -j `nproc`
72+
73+
- name: Fuzz Test
74+
working-directory: build
75+
run: |
76+
fuzzing/fuzz_lcs_similarity -max_total_time=30
77+
fuzzing/fuzz_levenshtein_distance -max_total_time=30
78+
fuzzing/fuzz_levenshtein_editops -max_total_time=30
79+
fuzzing/fuzz_indel_distance -max_total_time=30
80+
fuzzing/fuzz_indel_editops -max_total_time=30
81+
fuzzing/fuzz_osa_distance -max_total_time=30
82+
fuzzing/fuzz_damerau_levenshtein_distance -max_total_time=30

0 commit comments

Comments
 (0)