-
-
Notifications
You must be signed in to change notification settings - Fork 120
81 lines (74 loc) · 2.97 KB
/
test_ubuntu.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
name: Test bit7z on Ubuntu with multiple configurations
on: [pull_request, push]
jobs:
build_linux:
runs-on: ubuntu-latest
if: |
github.event_name == 'pull_request'
|| contains(github.event.head_commit.message, '[test]')
|| contains(github.event.head_commit.message, '[test-linux]')
|| startsWith(github.ref, 'refs/tags/v')
strategy:
fail-fast: false
matrix:
build_type: [Debug, Release]
c_compiler: [gcc-9, gcc-10, gcc-11, gcc-12, gcc-13, clang-13, clang-14, clang-15]
bit7z_auto_format: [OFF, ON]
bit7z_regex_matching: [OFF, ON]
bit7z_link_libcpp: [OFF, ON]
bit7z_7zip_version: [22.01, 23.01]
include:
- c_compiler: gcc-9
cpp_compiler: g++-9
use_system_7zip: OFF
- c_compiler: gcc-10
cpp_compiler: g++-10
use_system_7zip: OFF
- c_compiler: gcc-11
cpp_compiler: g++-11
use_system_7zip: OFF
- c_compiler: gcc-12
cpp_compiler: g++-12
use_system_7zip: OFF
- c_compiler: gcc-13
cpp_compiler: g++-13
use_system_7zip: OFF
- c_compiler: clang-13
cpp_compiler: clang++-13
use_system_7zip: OFF
- c_compiler: clang-14
cpp_compiler: clang++-14
use_system_7zip: OFF
- c_compiler: clang-15
cpp_compiler: clang++-15
use_system_7zip: OFF
exclude:
- c_compiler: gcc-9
bit7z_link_libcpp: ON
- c_compiler: gcc-10
bit7z_link_libcpp: ON
- c_compiler: gcc-11
bit7z_link_libcpp: ON
- c_compiler: gcc-12
bit7z_link_libcpp: ON
- c_compiler: gcc-13
bit7z_link_libcpp: ON
steps:
- uses: actions/checkout@v3
- name: Fix missing libc++ and libc++abi packages for clang-13 compiler
shell: bash
if: ${{ matrix.bit7z_link_libcpp == 'ON' && contains(matrix.c_compiler, 'clang-13') }}
run: sudo apt-get purge libc++-14-dev libc++abi-14-dev -y && sudo apt-get install libc++-13-dev libc++abi-13-dev -y
- name: Fix missing libc++ and libc++abi packages for clang-15 compiler
shell: bash
if: ${{ matrix.bit7z_link_libcpp == 'ON' && contains(matrix.c_compiler, 'clang-15') }}
run: sudo apt-get purge libc++-14-dev libc++abi-14-dev -y && sudo apt-get install libc++-15-dev libc++abi-15-dev -y
- name: Building and testing bit7z
uses: ./.github/actions/test_action
with:
c_compiler: ${{ matrix.c_compiler }}
cpp_compiler: ${{ matrix.cpp_compiler }}
sevenzip_version: ${{ matrix.bit7z_7zip_version }}
build_type: ${{ matrix.build_type }}
build_flags: |
-DBIT7Z_TESTS_USE_SYSTEM_7ZIP=OFF -DBIT7Z_AUTO_FORMAT=${{ matrix.bit7z_auto_format }} -DBIT7Z_REGEX_MATCHING=${{ matrix.bit7z_regex_matching }} -DBIT7Z_LINK_LIBCPP=${{ matrix.bit7z_link_libcpp }}