cython : fix warning (#148) #578
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: [push] | |
jobs: | |
ubuntu-24_04-python3-ggwave-deb: | |
runs-on: ubuntu-24.04 | |
steps: | |
- name: Clone | |
uses: actions/checkout@v1 | |
with: | |
submodules: recursive | |
- name: Dependencies | |
run: | | |
sudo apt update | |
sudo apt install cython3 build-essential debhelper-compat | |
sudo apt install dh-python python3-all-dev python3-build | |
sudo apt install python3-cogapp python3-venv | |
- name: Build Debian package for Python bindings | |
run: | | |
cd bindings/python | |
make deb | |
ubuntu-24_04-libggwave-dev-deb: | |
runs-on: ubuntu-24.04 | |
strategy: | |
matrix: | |
build: [Release] | |
steps: | |
- name: Clone | |
uses: actions/checkout@v1 | |
with: | |
submodules: recursive | |
- name: Dependencies | |
run: | | |
sudo apt update | |
sudo apt install build-essential | |
- name: Build Debian package for libggwave | |
run: | | |
cmake . -DGGWAVE_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=${{ matrix.build }} | |
make | |
cpack | |
- name: Inspect generated Debian package | |
run: | | |
dpkg --contents dist/libggwave-dev_*.deb | |
dpkg -I dist/libggwave-dev_*.deb | |
sha256sum dist/libggwave-dev_*.deb | |
ubuntu-24_04-target-deb: | |
runs-on: ubuntu-24.04 | |
strategy: | |
matrix: | |
build: [Release] | |
steps: | |
- name: Clone | |
uses: actions/checkout@v1 | |
with: | |
submodules: recursive | |
- name: Dependencies | |
run: | | |
sudo apt update | |
sudo apt install cython3 build-essential debhelper-compat | |
sudo apt install dh-python python3-all-dev python3-build | |
sudo apt install python3-cogapp python3-venv | |
- name: Build Debian packages | |
run: | | |
cmake . -DGGWAVE_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=${{ matrix.build }} | |
make deb | |
- name: Inspect generated Debian packages | |
run: | | |
dpkg --contents dist/libggwave*.deb | |
dpkg -I dist/libggwave*.deb | |
dpkg --contents dist/python3*.deb | |
dpkg -I dist/python3*.deb | |
sha256sum dist/*.deb | |
ubuntu-24_04-gcc: | |
runs-on: ubuntu-24.04 | |
strategy: | |
matrix: | |
build: [Debug, Release] | |
steps: | |
- name: Clone | |
uses: actions/checkout@v1 | |
with: | |
submodules: recursive | |
- name: Dependencies | |
run: | | |
sudo apt update | |
sudo apt install build-essential xorg-dev libglu1-mesa-dev | |
sudo apt install cmake | |
sudo apt install libsdl2-dev | |
- name: Configure | |
run: cmake . -DCMAKE_BUILD_TYPE=${{ matrix.build }} | |
- name: Build | |
run: | | |
make | |
ctest --output-on-failure | |
./bin/test-ggwave-cpp --full | |
ubuntu-24_04-python: | |
runs-on: ubuntu-24.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
build: [Release] | |
python-version: [3.8.18, 3.9.20, 3.11.11, 3.12.9] | |
steps: | |
- name: Clone | |
uses: actions/checkout@v1 | |
with: | |
submodules: recursive | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Dependencies | |
run: | | |
sudo apt update | |
sudo apt install build-essential | |
sudo apt install cmake | |
python3 -m venv venv | |
source venv/bin/activate && pip install setuptools cython cogapp | |
- name: Configure | |
run: cmake . -DGGWAVE_SUPPORT_PYTHON=ON -DGGWAVE_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=${{ matrix.build }} | |
- name: Build | |
run: | | |
source venv/bin/activate | |
make | |
ctest --output-on-failure | |
ubuntu-24_04-gcc-sanitized: | |
runs-on: ubuntu-24.04 | |
strategy: | |
matrix: | |
sanitizer: [ADDRESS, THREAD, UNDEFINED] | |
steps: | |
- name: Clone | |
uses: actions/checkout@v1 | |
with: | |
submodules: recursive | |
- name: Dependencies | |
run: | | |
sudo apt update | |
sudo apt install build-essential | |
sudo apt install cmake | |
- name: Configure | |
run: cmake . -DCMAKE_BUILD_TYPE=Debug -DGGWAVE_BUILD_EXAMPLES=OFF -DGGWAVE_SANITIZE_${{ matrix.sanitizer }}=ON | |
- name: Build | |
run: | | |
make | |
ctest --output-on-failure | |
ubuntu-24_04-clang: | |
runs-on: ubuntu-24.04 | |
strategy: | |
matrix: | |
build: [Release] | |
steps: | |
- name: Clone | |
uses: actions/checkout@v1 | |
with: | |
submodules: recursive | |
- name: Dependencies | |
run: | | |
sudo apt update | |
sudo apt install build-essential xorg-dev libglu1-mesa-dev | |
sudo apt install cmake | |
sudo apt install libsdl2-dev | |
- name: Configure | |
run: cmake . -DCMAKE_BUILD_TYPE=${{ matrix.build }} -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=clang | |
- name: Build | |
run: | | |
make | |
ctest --output-on-failure | |
macOS-latest: | |
runs-on: macOS-latest | |
strategy: | |
matrix: | |
build: [Release] | |
steps: | |
- name: Clone | |
uses: actions/checkout@v1 | |
with: | |
submodules: recursive | |
- name: Dependencies | |
run: | | |
brew update | |
brew install sdl2 | |
- name: Configure | |
run: cmake . -DCMAKE_BUILD_TYPE=${{ matrix.build }} | |
- name: Build | |
run: | | |
make | |
ctest --output-on-failure | |
emscripten: | |
runs-on: ubuntu-24.04 | |
strategy: | |
matrix: | |
build: [Release] | |
steps: | |
- name: Clone | |
uses: actions/checkout@v1 | |
with: | |
submodules: recursive | |
- name: Dependencies | |
run: | | |
wget -q https://github.com/emscripten-core/emsdk/archive/master.tar.gz | |
tar -xvf master.tar.gz | |
emsdk-master/emsdk update | |
emsdk-master/emsdk install latest | |
emsdk-master/emsdk activate latest | |
- name: Configure | |
run: echo "tmp" | |
- name: Build | |
run: | | |
pushd emsdk-master | |
source ./emsdk_env.sh | |
popd | |
emcmake cmake . -DCMAKE_BUILD_TYPE=${{ matrix.build }} | |
make && ctest --output-on-failure | |
windows-msys2: | |
runs-on: windows-latest | |
defaults: | |
run: | |
shell: msys2 {0} | |
strategy: | |
matrix: | |
build: [Release] | |
steps: | |
- name: Clone | |
uses: actions/checkout@v1 | |
with: | |
submodules: recursive | |
- name: Dependencies | |
uses: msys2/setup-msys2@v2 | |
with: | |
msystem: MINGW64 | |
update: true | |
install: make mingw-w64-x86_64-cmake mingw-w64-x86_64-dlfcn mingw-w64-x86_64-gcc mingw-w64-x86_64-SDL2 mingw-w64-x86_64-cmake | |
- name: Configure | |
run: cmake . -DCMAKE_BUILD_TYPE=${{ matrix.build }} -G "Unix Makefiles" | |
- name: Build | |
run: | | |
ls -alh . | |
make | |
ctest --output-on-failure |