Skip to content

Merge pull request #48 from ko-matsu/feature/upgrade-ci-20240908 #300

Merge pull request #48 from ko-matsu/feature/upgrade-ci-20240908

Merge pull request #48 from ko-matsu/feature/upgrade-ci-20240908 #300

name: push check
on:
push:
branches:
- cmake_build
- cfd-develop
- dlc-develop
- cfd-stable-*
- feature/*
pull_request:
branches:
- cmake_build
- cfd-develop
- dlc-develop
- cfd-stable-*
- feature/*
jobs:
cmake-build:
timeout-minutes: 20
name: cmake build
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [windows-2022, windows-2019, macos-14, macos-13, macos-12, ubuntu-24.04, ubuntu-22.04, ubuntu-20.04]
generator: ['Unix Makefiles']
include:
- os: windows-2022
generator: 'Visual Studio 17 2022'
- os: windows-2019
generator: 'Visual Studio 16 2019'
- os: windows-2019
generator: 'MSYS Makefiles'
exclude:
- os: windows-2022
generator: 'Unix Makefiles'
- os: windows-2019
generator: 'Unix Makefiles'
steps:
- uses: actions/checkout@v4
with:
submodules: true
- name: setup python
uses: actions/setup-python@v5
with:
python-version: '3.x'
architecture: x64
- name: cmake-generate
if: "matrix.generator == 'Unix Makefiles' || matrix.generator == 'MSYS Makefiles'"
run: |
cmake -S . -B build -G "${{ matrix.generator }}" -DENABLE_SHARED=on -DENABLE_ELEMENTS=on -DCMAKE_BUILD_PARALLEL_LEVEL=2 -DGENERATE_WALLY=off -DTARGET_RPATH="./wrap_js/build/Release;\$\${ORIGIN}/;\${ORIGIN}/"
- name: cmake-generate-vs
if: "matrix.generator != 'Unix Makefiles' && matrix.generator != 'MSYS Makefiles'"
run: |
cmake -S . -B build -G "${{ matrix.generator }}" -A x64 -DENABLE_SHARED=on -DENABLE_ELEMENTS=on -DCMAKE_BUILD_PARALLEL_LEVEL=2 -DGENERATE_WALLY=off -DTARGET_RPATH="./wrap_js/build/Release;\$\${ORIGIN}/;\${ORIGIN}/"
- name: cmake-build
run: |
cmake --version
cmake --build build --config Release
- name: test
run: |
cd build
ctest -C Release --output-on-failure
cmake-swig-python-build:
timeout-minutes: 20
name: cmake swig python build
runs-on: ${{ matrix.os }}
strategy:
matrix:
# os: [macos-13, windows-2022, ubuntu-22.04]
os: [ubuntu-22.04]
steps:
- uses: actions/checkout@v4
with:
submodules: true
- name: setup python
uses: actions/setup-python@v5
with:
python-version: '3.x'
architecture: x64
- name: cmake-generate-python-config
if: matrix.os != 'windows-2022'
run: |
cmake -S . -B build -G "Unix Makefiles" -DENABLE_SHARED=on -DENABLE_ELEMENTS=on -DCMAKE_BUILD_PARALLEL_LEVEL=2 -DENABLE_SWIG_PYTHON=on -DGENERATE_WALLY=off -DTARGET_RPATH="./wrap_js/build/Release;../"
- name: cmake-generate-windows-python-config
if: matrix.os == 'windows-2022'
run: |
cmake -S . -B build -G "Visual Studio 17 2022" -A x64 -DENABLE_SHARED=on -DENABLE_ELEMENTS=on -DCMAKE_BUILD_PARALLEL_LEVEL=2 -DENABLE_SWIG_PYTHON=on -DGENERATE_WALLY=off -DTARGET_RPATH="./wrap_js/build/Release;../"
- name: cmake-build
run: |
cmake --version
cmake --build build --config Release
- name: test
run: |
cd build
ctest -C Release --output-on-failure
cmake-swig-java-build:
timeout-minutes: 20
name: cmake swig java build
runs-on: ${{ matrix.os }}
strategy:
matrix:
# os: [macos-13, windows-2022, ubuntu-22.04]
os: [ubuntu-22.04]
java: ['8', '11', '17', '21']
steps:
- uses: actions/checkout@v4
with:
submodules: true
- name: setup java
uses: actions/setup-java@v4
with:
java-version: ${{ matrix.java }}
architecture: x64
distribution: 'temurin'
- name: cmake-generate-java-config
if: matrix.os != 'windows-2022'
run: |
cmake -S . -B build -G "Unix Makefiles" -DENABLE_SHARED=on -DENABLE_ELEMENTS=on -DCMAKE_BUILD_PARALLEL_LEVEL=2 -DENABLE_SWIG_JAVA=on -DGENERATE_WALLY=off -DTARGET_RPATH="./wrap_js/build/Release;../"
- name: cmake-generate-windows-java-config
if: matrix.os == 'windows-2022'
run: |
cmake -S . -B build -G "Visual Studio 17 2022" -A x64 -DENABLE_SHARED=on -DENABLE_ELEMENTS=on -DCMAKE_BUILD_PARALLEL_LEVEL=2 -DENABLE_SWIG_JAVA=on -DGENERATE_WALLY=off -DTARGET_RPATH="./wrap_js/build/Release;../"
- name: cmake-build
run: |
cmake --version
cmake --build build --config Release
- name: test
run: |
cd build
ctest -C Release --output-on-failure