add cairo's live-demo #40
Workflow file for this run
This file contains 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: Build | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- main | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
build: | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 120 | |
strategy: | |
matrix: | |
os: | |
- ubuntu-latest | |
- windows-latest | |
- macos-latest | |
steps: | |
- name: Download deps | |
shell: bash | |
run: | | |
if [[ ${RUNNER_OS} == "Linux" ]]; then | |
sudo apt-get update | |
sudo apt-get install -y lib{pango1.0,x11,xext,xft,xinerama,mpv}-dev\ | |
lib{xcursor,xrender,xfixes,webkit2gtk-4.1,vlc,png,gl1-mesa}-dev\ | |
ninja-build libglu1-mesa-dev | |
fi | |
- uses: actions/checkout@v2 | |
- uses: seanmiddleditch/gha-setup-ninja@master | |
- name: build cfltk | |
run: | | |
git clone https://github.com/MoAlyousef/cfltk | |
pushd cfltk || return 1 | |
git submodule update --init --recursive | |
case ${RUNNER_OS} in | |
Linux ) cmake -Bbin -GNinja -DFLTK_USE_SYSTEM_LIBPNG=OFF -DFLTK_USE_SYSTEM_LIBJPEG=OFF -DFLTK_USE_SYSTEM_ZLIB=OFF -DCFLTK_LINK_IMAGES=ON -DOpenGL_GL_PREFERENCE=GLVND -DFLTK_BUILD_GL=ON -DCFLTK_USE_OPENGL=ON -DCFLTK_SINGLE_THREADED=OFF -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCFLTK_CARGO_BUILD=ON -DFLTK_BUILD_EXAMPLES=OFF -DFLTK_BUILD_TEST=OFF -DFLTK_OPTION_LARGE_FILE=ON -DFLTK_BUILD_HTML_DOCS=OFF -DFLTK_BUILD_PDF_DOCS=OFF -DCMAKE_INSTALL_PREFIX=bin -DCMAKE_BUILD_TYPE=Release -DFLTK_GRAPHICS_CAIRO=ON -DFLTK_USE_PANGO=ON -DFLTK_BACKEND_WAYLAND=OFF;; | |
macOS ) cmake -Bbin -GNinja -DFLTK_USE_SYSTEM_LIBPNG=OFF -DFLTK_USE_SYSTEM_LIBJPEG=OFF -DFLTK_USE_SYSTEM_ZLIB=OFF -DCFLTK_LINK_IMAGES=ON -DOpenGL_GL_PREFERENCE=GLVND -DFLTK_BUILD_GL=ON -DCFLTK_USE_OPENGL=ON -DCFLTK_SINGLE_THREADED=OFF -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCFLTK_CARGO_BUILD=ON -DFLTK_BUILD_EXAMPLES=OFF -DFLTK_BUILD_TEST=OFF -DFLTK_OPTION_LARGE_FILE=ON -DFLTK_BUILD_HTML_DOCS=OFF -DFLTK_BUILD_PDF_DOCS=OFF -DCMAKE_INSTALL_PREFIX=bin -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES=x86_64;; | |
* ) cmake -Bbin -GNinja -DFLTK_USE_SYSTEM_LIBPNG=OFF -DFLTK_USE_SYSTEM_LIBJPEG=OFF -DFLTK_USE_SYSTEM_ZLIB=OFF -DCFLTK_LINK_IMAGES=ON -DOpenGL_GL_PREFERENCE=GLVND -DFLTK_BUILD_GL=ON -DCFLTK_USE_OPENGL=ON -DCFLTK_SINGLE_THREADED=OFF -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCFLTK_CARGO_BUILD=ON -DFLTK_BUILD_EXAMPLES=OFF -DFLTK_BUILD_TEST=OFF -DFLTK_OPTION_LARGE_FILE=ON -DFLTK_BUILD_HTML_DOCS=OFF -DFLTK_BUILD_PDF_DOCS=OFF -DCMAKE_INSTALL_PREFIX=bin -DCMAKE_BUILD_TYPE=Release;; | |
esac | |
cmake --build bin --parallel --target install | |
export CFLTK_BUNDLE_DIR="${PWD}/bin/lib" | |
shell: bash | |
- name: Build cairo | |
working-directory: demos/cairo | |
shell: bash | |
run: | | |
if [[ ${RUNNER_OS} == "Linux" ]]; then | |
cargo build --quiet || cargo build --verbose | |
fi | |
- name: Build base64 | |
working-directory: demos/base64 | |
shell: bash | |
run: | | |
if [[ ${RUNNER_OS} == "Linux" ]]; then | |
cargo build --quiet || cargo build --verbose | |
fi | |
- name: Build cairo_shadow_button | |
working-directory: demos/cairo_shadow_button | |
shell: bash | |
run: | | |
if [[ ${RUNNER_OS} == "Linux" ]]; then | |
cargo build --quiet || cargo build --verbose | |
fi | |
- name: Build calculator | |
working-directory: demos/calculator | |
shell: bash | |
run: | | |
if [[ ${RUNNER_OS} == "Linux" ]]; then | |
cargo build --quiet || cargo build --verbose | |
fi | |
- name: Build csv | |
working-directory: demos/csv | |
shell: bash | |
run: | | |
if [[ ${RUNNER_OS} == "Linux" ]]; then | |
cargo build --quiet || cargo build --verbose | |
fi | |
- name: Build dialect | |
working-directory: demos/dialect | |
shell: bash | |
run: | | |
if [[ ${RUNNER_OS} == "Linux" ]]; then | |
cargo build --quiet || cargo build --verbose | |
fi | |
- name: Build flightbooker | |
working-directory: demos/flightbooker | |
shell: bash | |
run: | | |
if [[ ${RUNNER_OS} == "Linux" ]]; then | |
cargo build --quiet || cargo build --verbose | |
fi | |
- name: Build resters | |
working-directory: demos/resters | |
shell: bash | |
run: | | |
if [[ ${RUNNER_OS} == "Linux" ]]; then | |
cargo build --quiet || cargo build --verbose | |
fi | |
- name: Build sudokusolver | |
working-directory: demos/sudokusolver | |
shell: bash | |
run: | | |
if [[ ${RUNNER_OS} == "Linux" ]]; then | |
cargo build --quiet || cargo build --verbose | |
fi |