1
- name : Linux CI
1
+ name : build
2
2
3
3
on : [push]
4
4
24
24
run : |
25
25
sudo apt-get install cmake pkg-config
26
26
sudo apt-get install libgl1-mesa-dev libglu1-mesa-dev
27
- sudo apt-get install libx11-xcb-dev libfontenc-dev libice-dev libsm-dev libxau-dev libxaw7-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxft-dev libxi-dev libxinerama-dev libxkbfile-dev libxmu-dev libxmuu-dev libxpm-dev libxrandr-dev libxrender-dev libxres-dev libxss-dev libxt-dev libxtst-dev libxv-dev libxvmc-dev libxxf86vm-dev xtrans-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-xkb-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-randr0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-xinerama0-dev xkb-data libxcb-dri3-dev uuid-dev libxcb-util-dev
27
+ sudo apt-get install libx11-xcb-dev libfontenc-dev libice-dev libsm-dev libxau-dev libxaw7-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxft-dev libxi-dev libxinerama-dev libxkbfile-dev libxmu-dev libxmuu-dev libxpm-dev libxrandr-dev libxrender-dev libxres-dev libxss-dev libxt-dev libxtst-dev libxv-dev libxvmc-dev libxxf86vm-dev xtrans-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-xkb-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-randr0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-xinerama0-dev xkb-data libxcb-dri3-dev uuid-dev libxcb-util-dev libxcb-cursor-dev
28
28
sudo apt-get install python3 pip
29
- pip install conan
29
+ pip install " conan<2.0"
30
30
31
31
- name : Install dependencies (ENABLE_CONAN=OFF)
32
32
if : matrix.cmake-var == 'ENABLE_CONAN=OFF'
@@ -37,28 +37,28 @@ jobs:
37
37
- name : Install GCC
38
38
if : matrix.compiler == 'GCC'
39
39
run : |
40
- echo "CC=/usr/bin/gcc-11 " >> $GITHUB_ENV
41
- echo "CXX=/usr/bin/g++-11 " >> $GITHUB_ENV
40
+ echo "CC=/usr/bin/gcc-12 " >> $GITHUB_ENV
41
+ echo "CXX=/usr/bin/g++-12 " >> $GITHUB_ENV
42
42
sudo update-alternatives --remove-all cc
43
43
sudo update-alternatives --remove-all c++
44
44
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
45
- sudo apt-get install -y gcc-11 g++-11
46
- sudo update-alternatives --install /usr/bin/cc gcc /usr/bin/gcc-11 1000 \
47
- --slave /usr/bin/c++ g++ /usr/bin/g++-11
45
+ sudo apt-get install -y gcc-12 g++-12
46
+ sudo update-alternatives --install /usr/bin/cc gcc /usr/bin/gcc-12 1000 \
47
+ --slave /usr/bin/c++ g++ /usr/bin/g++-12
48
48
49
49
- name : Install Clang
50
50
if : matrix.compiler == 'Clang'
51
51
run : |
52
- echo "CC=/usr/bin/clang-13 " >> $GITHUB_ENV
53
- echo "CXX=/usr/bin/clang++-13 " >> $GITHUB_ENV
52
+ echo "CC=/usr/bin/clang-16 " >> $GITHUB_ENV
53
+ echo "CXX=/usr/bin/clang++-16 " >> $GITHUB_ENV
54
54
sudo update-alternatives --remove-all cc
55
55
sudo update-alternatives --remove-all c++
56
56
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
57
- sudo apt-add-repository -y "deb http://apt.llvm.org/$(lsb_release -cs)/ llvm-toolchain-$(lsb_release -cs)-13 main"
58
- sudo apt-get install -y clang-13 lld-13
59
- sudo update-alternatives --install /usr/bin/cc clang /usr/bin/clang-13 1000 \
60
- --slave /usr/bin/ld lld /usr/bin/lld-13
61
- sudo update-alternatives --install /usr/bin/c++ clang++ /usr/bin/clang++-13 1000
57
+ sudo apt-add-repository -y "deb http://apt.llvm.org/$(lsb_release -cs)/ llvm-toolchain-$(lsb_release -cs)-16 main"
58
+ sudo apt-get install -y clang-16 lld-16
59
+ sudo update-alternatives --install /usr/bin/cc clang /usr/bin/clang-16 1000 \
60
+ --slave /usr/bin/ld lld /usr/bin/lld-16
61
+ sudo update-alternatives --install /usr/bin/c++ clang++ /usr/bin/clang++-16 1000
62
62
63
63
- name : Configure CMake
64
64
run : |
71
71
- name : Test
72
72
working-directory : ${{github.workspace}}/build
73
73
run : ctest -C ${{env.BUILD_TYPE}}
74
+ windows-build :
75
+ strategy :
76
+ fail-fast : false
77
+ matrix :
78
+ build-type : [Release]
79
+
80
+ runs-on : windows-latest
81
+ env :
82
+ BUILD_TYPE : ${{matrix.build-type}}
83
+
84
+ steps :
85
+ - name : Checkout repo
86
+ uses : actions/checkout@v3
87
+
88
+ - name : Set up Python
89
+ uses : actions/setup-python@v3
90
+ with :
91
+ python-version : ' 3.10'
92
+ - run : |
93
+ python -m pip install --upgrade pip
94
+ pip install wheel
95
+
96
+ - name : Install Conan
97
+ run : pip install "conan<2.0"
98
+
99
+ - name : Configure CMake
100
+ run : |
101
+ cmake -B ${{github.workspace}}/build -G "Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DENABLE_CONAN=ON
102
+
103
+ - name : Build
104
+ run : cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}
105
+
106
+ - name : Test
107
+ working-directory : ${{github.workspace}}/build
108
+ run : ctest -C ${{env.BUILD_TYPE}}
109
+ wasm-build :
110
+ runs-on : ubuntu-latest
111
+ env :
112
+ BUILD_TYPE : Release
113
+
114
+ steps :
115
+ - name : Checkout repo
116
+ uses : actions/checkout@v3
117
+
118
+ - name : Install Emscripten
119
+ run : |
120
+ sudo apt-get install git cmake
121
+ sudo apt-get install python3 pip
122
+ git clone https://github.com/emscripten-core/emsdk.git
123
+ cd emsdk
124
+ git pull
125
+ ./emsdk install latest
126
+ ./emsdk activate latest
127
+ source ./emsdk_env.sh
128
+
129
+ - name : Configure CMake
130
+ run : |
131
+ source ./emsdk/emsdk_env.sh
132
+ emcmake cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
133
+
134
+ - name : Build
135
+ run : |
136
+ source ./emsdk/emsdk_env.sh
137
+ cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} -- -j $(nproc)
138
+
139
+ - name : Test
140
+ working-directory : ${{github.workspace}}/build
141
+ run : ctest -C ${{env.BUILD_TYPE}}
0 commit comments