Skip to content

Refactor toucan-view code into a library #152

Refactor toucan-view code into a library

Refactor toucan-view code into a library #152

Workflow file for this run

name: CI
on: [push]
jobs:
linux-build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
path: toucan
submodules: recursive
- name: Setup
run: |
echo "$PWD/install-Debug/bin" >> $GITHUB_PATH
echo "LD_LIBRARY_PATH=$PWD/install-Debug/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV
sudo apt-get update
sudo apt-get install xorg-dev libglu1-mesa-dev mesa-common-dev mesa-utils xvfb
- name: Build
run: |
bash toucan/SuperBuild.sh Debug
- name: Install
run: |
cmake --build build-Debug --config Debug --target install
- name: Tests
run: |
build-Debug/tests/toucan-test/toucan-test toucan/data
linux-package:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
path: toucan
submodules: recursive
- name: Setup
run: |
echo "$PWD/install-Release/bin" >> $GITHUB_PATH
echo "LD_LIBRARY_PATH=$PWD/install-Release/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV
sudo apt-get update
sudo apt-get install xorg-dev libglu1-mesa-dev mesa-common-dev mesa-utils xvfb
- name: Build
run: |
bash toucan/SuperBuild.sh Release
- name: Install
run: |
cmake --build build-Release --config Release --target install
- name: Package
run: |
cmake --build build-Release --config Release --target package
- name: Upload artifact
id: linux-package-artifact
uses: actions/upload-artifact@v4
with:
name: toucan-Linux
path: build-Release/toucan-*.tar.gz
- name: Upload artifact ID
run: echo 'Artifact ID ${{ steps.linux-package-artifact.outputs.artifact-id }}'
- name: Upload artifact URL
run: echo 'Artifact URL ${{ steps.linux-package-artifact.outputs.artifact-url }}'
macos-12-build:
runs-on: macos-12
steps:
- uses: actions/checkout@v4
with:
path: toucan
submodules: recursive
# \bug DYLD_LIBRARY_PATH is not being set here?
- name: Setup
run: |
echo "$PWD/install-Debug/bin" >> $GITHUB_PATH
echo "DYLD_LIBRARY_PATH=$PWD/install-Debug/lib:$DYLD_LIBRARY_PATH" >> $GITHUB_ENV
- name: Build
run: |
bash toucan/SuperBuild.sh Debug
- name: Install
run: |
cmake --build build-Debug --config Debug --target install
- name: Tests
run: |
build-Debug/tests/toucan-test/toucan-test toucan/data
macos-14-build:
runs-on: macos-14
steps:
- uses: actions/checkout@v4
with:
path: toucan
submodules: recursive
# \bug DYLD_LIBRARY_PATH is not being set here?
- name: Setup
run: |
echo "$PWD/install-Debug/bin" >> $GITHUB_PATH
echo "DYLD_LIBRARY_PATH=$PWD/install-Debug/lib:$DYLD_LIBRARY_PATH" >> $GITHUB_ENV
- name: Build
run: |
bash toucan/SuperBuild.sh Debug
- name: Install
run: |
cmake --build build-Debug --config Debug --target install
- name: Tests
run: |
build-Debug/tests/toucan-test/toucan-test toucan/data
macos-14-package:
runs-on: macos-14
steps:
- uses: actions/checkout@v4
with:
path: toucan
submodules: recursive
# \bug DYLD_LIBRARY_PATH is not being set here?
- name: Setup
run: |
echo "$PWD/install-Debug/bin" >> $GITHUB_PATH
echo "DYLD_LIBRARY_PATH=$PWD/install-Debug/lib:$DYLD_LIBRARY_PATH" >> $GITHUB_ENV
- name: Build
run: |
bash toucan/SuperBuild.sh Release
- name: Install
run: |
cmake --build build-Release --config Release --target install
- name: Package
run: |
cmake --build build-Release --config Release --target package
- name: Upload artifact
id: macos-package-artifact
uses: actions/upload-artifact@v4
with:
name: toucan-macOS
path: build-Release/toucan-*.tar.gz
- name: Upload artifact ID
run: echo 'Artifact ID ${{ steps.macos-package-artifact.outputs.artifact-id }}'
- name: Upload artifact URL
run: echo 'Artifact URL ${{ steps.macos-package-artifact.outputs.artifact-url }}'
windows-build:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
with:
path: toucan
submodules: recursive
- uses: ilammy/setup-nasm@v1
# \bug Any spaces before the ">>" will be considered part of the path.
- name: Setup
shell: cmd
run: |
echo %CD%\install-Debug\bin>> %GITHUB_PATH%
echo %CD%\install-Debug\lib>> %GITHUB_PATH%
echo CTEST_OUTPUT_ON_FAILURE=1 >> %GITHUB_ENV%
- name: Build
shell: cmd
run: |
toucan\SuperBuild.bat Debug
- name: Install
shell: cmd
run: |
cmake --build build-Debug --config Debug --target INSTALL
- name: Tests
shell: cmd
run: |
build-Debug\tests\toucan-test\Debug\toucan-test.exe toucan\data
windows-package:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
with:
path: toucan
submodules: recursive
- uses: ilammy/setup-nasm@v1
# \bug Any spaces before the ">>" will be considered part of the path.
- name: Setup
shell: cmd
run: |
echo %CD%\install-Debug\bin>> %GITHUB_PATH%
echo %CD%\install-Debug\lib>> %GITHUB_PATH%
- name: Build
shell: cmd
run: |
toucan\SuperBuild.bat Release
- name: Install
shell: cmd
run: |
cmake --build build-Release --config Release --target INSTALL
- name: Package
shell: cmd
run: |
cmake --build build-Release --config Release --target PACKAGE
- name: Upload artifact
id: windows-package-artifact
uses: actions/upload-artifact@v4
with:
name: toucan-Windows
path: build-Release\toucan-*.zip
- name: Upload artifact ID
run: echo 'Artifact ID ${{ steps.windows-package-artifact.outputs.artifact-id }}'
- name: Upload artifact URL
run: echo 'Artifact URL ${{ steps.windows-package-artifact.outputs.artifact-url }}'