Skip to content

Commit cb7d025

Browse files
authored
Merge pull request #15 from 7bitcoder/dev
2.0.0-rc
2 parents 8622817 + 9061472 commit cb7d025

File tree

232 files changed

+8453
-4724
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

232 files changed

+8453
-4724
lines changed

.github/actions/cmake-build/action.yml

-35
This file was deleted.

.github/actions/conan-install/action.yml

-20
This file was deleted.

.github/workflows/DevCI.yml

+16-19
Original file line numberDiff line numberDiff line change
@@ -2,41 +2,38 @@ name: DevCI
22

33
on:
44
push:
5-
branches: ["dev"]
5+
branches: [ "dev" ]
66
paths-ignore:
77
- "Docs/**"
88
- ".readthedocs.yaml"
99
- "README.md"
1010

11-
env:
12-
BUILD_TYPE: Release
13-
BUILD_DIR: ${{github.workspace}}/build
14-
1511
jobs:
1612
test:
1713
strategy:
1814
fail-fast: false
1915
matrix:
20-
libraryType: [HeaderOnly, Static, Shared]
21-
os: [ubuntu-22.04, macos-12, windows-2022]
16+
os: [ ubuntu-22.04, macos-12, windows-2022 ]
17+
library_type: [ HeaderOnly, Static, Shared ]
18+
std: [ 17, 20 ]
19+
build_type: [ Release ]
2220

2321
runs-on: ${{matrix.os}}
2422

2523
steps:
2624
- uses: actions/checkout@v3
2725

28-
- name: Install Conan Packages
29-
uses: ./.github/actions/conan-install
30-
with:
31-
install-dir: ${{ env.BUILD_DIR }}
26+
- name: Create Build Environment
27+
run: cmake -E make_directory ${{runner.workspace}}/build
28+
29+
- name: Configure
30+
run: cmake -B ${{runner.workspace}}/build -DCMAKE_BUILD_TYPE=${{matrix.build_type}} -DCMAKE_CXX_STANDARD=${{matrix.std}} -D_7BIT_DI_LIBRARY_TYPE=${{matrix.library_type}} -D_7BIT_DI_BUILD_TESTS=ON -D_7BIT_DI_BUILD_EXAMPLES=ON
3231

33-
- name: CMake Build
34-
uses: ./.github/actions/cmake-build
35-
with:
36-
build-dir: ${{ env.BUILD_DIR }}
37-
build-type: ${{ env.BUILD_TYPE }}
38-
library-type: ${{ matrix.libraryType }}
32+
- name: Build
33+
run: cmake --build ${{runner.workspace}}/build --config ${{matrix.build_type}} -j
3934

4035
- name: Test
41-
working-directory: ${{ env.BUILD_DIR }}
42-
run: ctest -C ${{env.BUILD_TYPE}}
36+
working-directory: ${{runner.workspace}}/build/Tests
37+
run: ctest -C ${{matrix.build_type}}
38+
env:
39+
CTEST_OUTPUT_ON_FAILURE: True

.github/workflows/Linux.yml

+85
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
name: Linux
2+
3+
on:
4+
pull_request:
5+
branches: [ "main" ]
6+
paths-ignore:
7+
- "Docs/**"
8+
- ".readthedocs.yaml"
9+
- "README.md"
10+
11+
jobs:
12+
test:
13+
strategy:
14+
fail-fast: false
15+
matrix:
16+
compiler:
17+
- { tool: gcc, ver: 7 }
18+
- { tool: gcc, ver: 8 }
19+
- { tool: gcc, ver: 9 }
20+
- { tool: gcc, ver: 10 }
21+
- { tool: gcc, ver: 11 }
22+
- { tool: gcc, ver: 12 }
23+
- { tool: gcc, ver: 13 }
24+
- { tool: clang, ver: 7 }
25+
- { tool: clang, ver: 8 }
26+
- { tool: clang, ver: 9 }
27+
- { tool: clang, ver: 10 }
28+
- { tool: clang, ver: 11 }
29+
- { tool: clang, ver: 12 }
30+
- { tool: clang, ver: 13 }
31+
- { tool: clang, ver: 14 }
32+
- { tool: clang, ver: 15 }
33+
build_type: [ Release ]
34+
os: [ ubuntu-20.04, ubuntu-22.04 ]
35+
std: [ 17 ]
36+
library_type: [ Static ]
37+
include:
38+
- compiler: { tool: gcc }
39+
cxx: g++
40+
cc: gcc
41+
generator: Ninja
42+
- compiler: { tool: clang }
43+
cxx: clang++
44+
cc: clang
45+
generator: Ninja
46+
exclude:
47+
- { os: ubuntu-20.04, compiler: { tool: gcc, ver: 12 } }
48+
- { os: ubuntu-20.04, compiler: { tool: gcc, ver: 13 } }
49+
- { os: ubuntu-20.04, compiler: { tool: clang, ver: 13 } }
50+
- { os: ubuntu-20.04, compiler: { tool: clang, ver: 14 } }
51+
- { os: ubuntu-20.04, compiler: { tool: clang, ver: 15 } }
52+
- { os: ubuntu-22.04, compiler: { tool: gcc, ver: 7 } }
53+
- { os: ubuntu-22.04, compiler: { tool: gcc, ver: 8 } }
54+
- { os: ubuntu-22.04, compiler: { tool: clang, ver: 7 } }
55+
- { os: ubuntu-22.04, compiler: { tool: clang, ver: 8 } }
56+
- { os: ubuntu-22.04, compiler: { tool: clang, ver: 9 } }
57+
- { os: ubuntu-22.04, compiler: { tool: clang, ver: 10 } }
58+
59+
runs-on: ${{matrix.os}}
60+
steps:
61+
- uses: actions/checkout@v3
62+
63+
- name: Create Build Environment
64+
env:
65+
PACKAGES: ${{ matrix.compiler.tool == 'gcc' && format('gcc-{0} g++-{0}', matrix.compiler.ver) || format('{0}-{1}', matrix.compiler.tool, matrix.compiler.ver) }}
66+
run: |
67+
sudo apt update
68+
sudo apt install ${{env.PACKAGES}} ninja-build -y
69+
sudo apt install locales-all
70+
cmake -E make_directory ${{runner.workspace}}/build
71+
72+
- name: Configure
73+
env:
74+
CXX: ${{matrix.cxx}}-${{matrix.compiler.ver}}
75+
CC: ${{matrix.cc}}-${{matrix.compiler.ver}}
76+
run: cmake -B ${{runner.workspace}}/build -G "${{matrix.generator}}" -DCMAKE_BUILD_TYPE=${{matrix.build_type}} -DCMAKE_CXX_STANDARD=${{matrix.std}} -D_7BIT_DI_LIBRARY_TYPE=${{matrix.library_type}} -D_7BIT_DI_BUILD_TESTS=ON
77+
78+
- name: Build
79+
run: cmake --build ${{runner.workspace}}/build --config ${{matrix.build_type}} -j
80+
81+
- name: Test
82+
working-directory: ${{runner.workspace}}/build/Tests
83+
run: ctest -C ${{matrix.build_type}}
84+
env:
85+
CTEST_OUTPUT_ON_FAILURE: True

.github/workflows/MacOs.yml

+60
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
name: MacOs
2+
3+
on:
4+
pull_request:
5+
branches: [ "main" ]
6+
paths-ignore:
7+
- "Docs/**"
8+
- ".readthedocs.yaml"
9+
- "README.md"
10+
11+
jobs:
12+
test:
13+
strategy:
14+
fail-fast: false
15+
matrix:
16+
compiler: [
17+
{ tool: apple-clang },
18+
{ tool: gcc, ver: 9 },
19+
{ tool: gcc, ver: 10 },
20+
{ tool: gcc, ver: 11 },
21+
{ tool: gcc, ver: 12 },
22+
{ tool: gcc, ver: 13 } ]
23+
build_type: [ Release ]
24+
os: [ macos-12, macos-13 ]
25+
std: [ 17 ]
26+
library_type: [ Static ]
27+
include:
28+
- compiler: { tool: gcc }
29+
cxx: g++
30+
cc: gcc
31+
- compiler: { tool: apple-clang }
32+
cxx: ''
33+
cc: ''
34+
exclude:
35+
- { os: macos-12, compiler: { tool: gcc, ver: 9 } }
36+
37+
runs-on: ${{matrix.os}}
38+
steps:
39+
- uses: actions/checkout@v3
40+
41+
- name: Create Build Environment
42+
if: matrix.compiler.tool != 'apple-clang'
43+
run: |
44+
brew update &&
45+
brew install ${{matrix.compiler.tool}}@${{matrix.compiler.ver}} ninja
46+
cmake -E make_directory ${{runner.workspace}}/build
47+
echo "CXX=${{matrix.cxx}}-${{matrix.compiler.ver}}" >> $GITHUB_ENV
48+
echo "CC=${{matrix.cc}}-${{matrix.compiler.ver}}" >> $GITHUB_ENV
49+
50+
- name: Configure
51+
run: cmake -B ${{runner.workspace}}/build -DCMAKE_BUILD_TYPE=${{matrix.build_type}} -DCMAKE_CXX_STANDARD=${{matrix.std}} -D_7BIT_DI_LIBRARY_TYPE=${{matrix.library_type}} -D_7BIT_DI_BUILD_TESTS=ON
52+
53+
- name: Build
54+
run: cmake --build ${{runner.workspace}}/build --config ${{matrix.build_type}} -j
55+
56+
- name: Test
57+
working-directory: ${{runner.workspace}}/build/Tests
58+
run: ctest -C ${{matrix.build_type}}
59+
env:
60+
CTEST_OUTPUT_ON_FAILURE: True

.github/workflows/MainCI.yml

-76
This file was deleted.

0 commit comments

Comments
 (0)