Skip to content

unify include styles #34

unify include styles

unify include styles #34

Workflow file for this run

##############################################################################
# GitHub Actions Workflow to test building PolyFit on Windows, Ubuntu, and macOS.
#
# Copyright (C) 2022 Liangliang Nan <[email protected]>
#
# Licensed under GNU LGPL.3, see LICENCE file
##############################################################################
name: Test Build PolyFit
on: [push, pull_request]
jobs:
build:
name: "Build on ${{ matrix.platform }} - ${{ matrix.build_type }}"
strategy:
fail-fast: false
matrix:
platform: [windows-latest, ubuntu-latest, macos-latest]
build_type: [Debug, Release]
runs-on: ${{ matrix.platform }}
steps:
# Checkout the code
- uses: actions/checkout@v3
# Install dependencies for each platform
- name: Install Dependencies (Ubuntu)
if: runner.os == 'Linux'
run: |
sudo apt-get update || true
sudo apt-get install -y cmake build-essential libgl1-mesa-dev \
mesa-common-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev \
libcgal-dev qt6-base-dev libglu1-mesa-dev freeglut3-dev
- name: Install Dependencies (macOS)
if: runner.os == 'macOS'
run: |
brew update || true
brew install cmake cgal qt
# Set up Conda on Windows
- name: Set up Conda (Windows)
if: runner.os == 'Windows'
uses: conda-incubator/setup-miniconda@v3
with:
architecture: x64
activate-environment: PolyFitDev
auto-activate-base: false
channels: conda-forge,defaults
# Install Conda packages on Windows
- name: Install Dependencies via Conda (Windows)
if: runner.os == 'Windows'
shell: bash -l {0}
run: |
conda install -y \
ninja \
conda-forge::qt6-main \
conda-forge::cgal || exit 1
# Configure the project
- name: Configure (Linux & macOS)
if: runner.os != 'Windows'
run: |
cmake -S . -B build/${{ matrix.build_type }} -G "Unix Makefiles"
- name: Configure (Windows)
if: runner.os == 'Windows'
shell: bash -l {0}
run: |
cmake -S . -B build/${{ matrix.build_type }} \
-G "Visual Studio 17 2022" \
-A x64 \
-DCMAKE_PREFIX_PATH="$CONDA_PREFIX/Library"
# Build the project
- name: Build (Linux & macOS)
if: runner.os != 'Windows'
run: cmake --build build/${{ matrix.build_type }}
- name: Build (Windows)
if: runner.os == 'Windows'
shell: bash -l {0}
run: cmake --build build/${{ matrix.build_type }} --config ${{ matrix.build_type }}