127 lines
No EOL
4.4 KiB
YAML
127 lines
No EOL
4.4 KiB
YAML
# name: Build Deps
|
|
name: Build deps
|
|
|
|
on:
|
|
pull_request:
|
|
branches:
|
|
- main
|
|
paths:
|
|
- 'deps/**'
|
|
- .github/workflows/build_deps.yml
|
|
push:
|
|
branches:
|
|
- main
|
|
paths:
|
|
- 'deps/**'
|
|
- .github/workflows/build_deps.yml
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
build_deps:
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
# - os: ubuntu-22.04
|
|
- os: windows-latest
|
|
# - os: macos-12
|
|
# arch: x86_64
|
|
# - os: macos-12
|
|
# arch: arm64
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
|
|
- name: setup dev on Windows
|
|
if: matrix.os == 'Windows'
|
|
uses: microsoft/setup-msbuild@v1.1
|
|
|
|
- name: Get the date on Ubuntu and macOS
|
|
if: matrix.os != 'windows-latest'
|
|
id: get-date-unix
|
|
run: echo "date=$(date +'%Y%m%d')" >> $GITHUB_ENV
|
|
shell: bash
|
|
|
|
- name: Get the date on Windows
|
|
if: matrix.os == 'windows-latest'
|
|
id: get-date-windows
|
|
run: echo "date=$(Get-Date -Format 'yyyyMMdd')" | Out-File -Append -FilePath $env:GITHUB_ENV -Encoding utf8
|
|
shell: pwsh
|
|
|
|
- name: Build on Windows
|
|
if: matrix.os == 'windows-latest'
|
|
working-directory: ${{ github.workspace }}
|
|
run: |
|
|
choco install strawberryperl
|
|
mkdir ${{ github.workspace }}/deps/build
|
|
mkdir ${{ github.workspace }}/deps/build/OrcaSlicer_dep
|
|
.\build_release_vs2022.bat deps
|
|
cd ${{ github.workspace }}/deps/build
|
|
|
|
- name: Build on Mac x86_64
|
|
if: matrix.os == 'macos-12' && matrix.arch == 'x86_64'
|
|
working-directory: ${{ github.workspace }}
|
|
run: |
|
|
brew install cmake git gettext
|
|
mkdir -p ${{ github.workspace }}/deps/build_x86_64
|
|
mkdir -p ${{ github.workspace }}/deps/build_x86_64/OrcaSlicer_dep_x86_64
|
|
./build_release_macos.sh -dp -a x86_64
|
|
|
|
- name: Build on Mac arm64
|
|
if: matrix.os == 'macos-12' && matrix.arch == 'arm64'
|
|
working-directory: ${{ github.workspace }}
|
|
run: |
|
|
brew install cmake git gettext
|
|
mkdir -p ${{ github.workspace }}/deps/build_arm64
|
|
mkdir -p ${{ github.workspace }}/deps/build_arm64/OrcaSlicer_dep_arm64
|
|
./build_release_macos.sh -dp -a arm64
|
|
|
|
- name: Build on Ubuntu
|
|
if: matrix.os == 'ubuntu-22.04'
|
|
working-directory: ${{ github.workspace }}
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install -y cmake git g++ build-essential libgl1-mesa-dev m4 \
|
|
libwayland-dev libxkbcommon-dev wayland-protocols extra-cmake-modules pkgconf \
|
|
libglu1-mesa-dev libcairo2-dev libgtk-3-dev libsoup2.4-dev libwebkit2gtk-4.0-dev \
|
|
libgstreamer1.0-dev libgstreamer-plugins-good1.0-dev libgstreamer-plugins-base1.0-dev \
|
|
gstreamer1.0-plugins-bad libosmesa6-dev wget sudo autoconf curl libunwind-dev
|
|
mkdir -p ${{ github.workspace }}/deps/build
|
|
mkdir -p ${{ github.workspace }}/deps/build/destdir
|
|
sudo ./BuildLinux.sh -ur
|
|
sudo chown $USER -R ./
|
|
./BuildLinux.sh -dr
|
|
|
|
- name: Upload Mac arm64 artifacts
|
|
if: matrix.os == 'macos-12' && matrix.arch == 'arm64'
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: OrcaSlicer_dep_mac_arm64_${{ env.date }}
|
|
path: ${{ github.workspace }}/deps/build_arm64/OrcaSlicer_dep*.tar.gz
|
|
|
|
- name: Upload Mac x86_64 artifacts
|
|
if: matrix.os == 'macos-12' && matrix.arch == 'x86_64'
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: OrcaSlicer_dep_mac_x86_64_${{ env.date }}
|
|
path: ${{ github.workspace }}/deps/build_x86_64/OrcaSlicer_dep*.tar.gz
|
|
|
|
- name: Upload Windows artifacts
|
|
if: matrix.os == 'windows-latest'
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: OrcaSlicer_dep_win64_${{ env.date }}
|
|
path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep
|
|
|
|
- name: Upload Ubuntu artifacts
|
|
if: matrix.os == 'ubuntu-22.04'
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: OrcaSlicer_dep_ubuntu_${{ env.date }}
|
|
path: ${{ github.workspace }}/deps/build/destdir
|
|
|