Update DPF to pull in fix for plugin GUI on some hosts. #227
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, pull_request] | |
jobs: | |
linux: | |
strategy: | |
matrix: | |
target: [linux-arm64, linux-armhf, linux-riscv64, linux-x86_64] | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- uses: distrho/dpf-cmake-action@v1 | |
with: | |
dpf_path: ./modules/dpf | |
lto: true | |
pawpaw: true | |
target: ${{ matrix.target }} | |
macos: | |
env: | |
WELCOME_TXT: ${{ github.workspace }}/utils/macos-installer-welcome.txt | |
strategy: | |
matrix: | |
target: [macos-universal-10.15] | |
runs-on: macos-11 | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- uses: distrho/dpf-cmake-action@v1 | |
with: | |
dpf_path: ./modules/dpf | |
lto: true | |
pawpaw: true | |
target: ${{ matrix.target }} | |
windows: | |
strategy: | |
matrix: | |
target: [win64] | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- uses: distrho/dpf-cmake-action@v1 | |
with: | |
dpf_path: ./modules/dpf | |
lto: true | |
pawpaw: true | |
target: ${{ matrix.target }} | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: ${{ env.ARTIFACT_BASENAME }}-installer | |
path: | | |
*-installer.exe | |
- uses: softprops/action-gh-release@v1 | |
if: startsWith(github.ref, 'refs/tags/') | |
with: | |
tag_name: ${{ github.ref_name }} | |
name: ${{ github.ref_name }} | |
draft: false | |
prerelease: false | |
files: | | |
*-installer.exe | |
wasm: | |
strategy: | |
matrix: | |
target: [standalone, mod] | |
runs-on: ubuntu-22.04 | |
env: | |
EMSCRIPTEN_VERSION: 3.1.27 | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- name: Set up cache | |
id: cache | |
uses: actions/cache@v3 | |
with: | |
path: | | |
~/emsdk | |
key: emsdk-v1 | |
- name: Set up dependencies | |
run: | | |
sudo apt-get update -qq | |
sudo apt-get install -yqq brotli | |
mkdir bin | |
[ -d ~/emsdk ] || git clone https://github.com/emscripten-core/emsdk.git ~/emsdk | |
cd ~/emsdk && ./emsdk install ${{ env.EMSCRIPTEN_VERSION }} && ./emsdk activate ${{ env.EMSCRIPTEN_VERSION }} | |
- name: Build simd-optimized | |
env: | |
AR: emar | |
CC: emcc | |
CXX: em++ | |
NM: emnm | |
RANLIB: emranlib | |
STRIP: emstrip | |
PKG_CONFIG: false | |
CFLAGS: -O3 -ffast-math -fdata-sections -ffunction-sections -fno-strict-aliasing -flto -msse -msse2 -msse3 -msimd128 | |
CXXFLAGS: -O3 -ffast-math -fdata-sections -ffunction-sections -fno-strict-aliasing -flto -msse -msse2 -msse3 -msimd128 -DPUGL_WASM_NO_KEYBOARD_INPUT -DPUGL_WASM_NO_MOUSEWHEEL_INPUT | |
LDFLAGS: -O3 -fdata-sections -ffunction-sections -fno-strict-aliasing -flto -Wl,--gc-sections -sAGGRESSIVE_VARIABLE_ELIMINATION=1 -Werror=lto-type-mismatch | |
run: | | |
source ~/emsdk/emsdk_env.sh | |
make -C src/standalone features | |
make -C src/standalone NOOPT=true MOD_BUILD=${{ matrix.target == 'mod' }} -j $(nproc) | |
mv build/bin/*.* bin/ | |
- name: Cleanup | |
run: | | |
rm -rf build modules/dpf/build | |
- name: Build non-optimized | |
env: | |
AR: emar | |
CC: emcc | |
CXX: em++ | |
NM: emnm | |
RANLIB: emranlib | |
STRIP: emstrip | |
PKG_CONFIG: false | |
CFLAGS: -O3 -ffast-math -fdata-sections -ffunction-sections -fno-strict-aliasing -flto | |
CXXFLAGS: -O3 -ffast-math -fdata-sections -ffunction-sections -fno-strict-aliasing -flto -DPUGL_WASM_NO_KEYBOARD_INPUT -DPUGL_WASM_NO_MOUSEWHEEL_INPUT | |
LDFLAGS: -O3 -fdata-sections -ffunction-sections -fno-strict-aliasing -flto -Wl,--gc-sections -sAGGRESSIVE_VARIABLE_ELIMINATION=1 -Werror=lto-type-mismatch | |
run: | | |
source ~/emsdk/emsdk_env.sh | |
make -C src/standalone features | |
make -C src/standalone NOOPT=true NOSIMD=true MOD_BUILD=${{ matrix.target == 'mod' }} -j $(nproc) | |
mv build/bin/*.* bin/ | |
- name: Pack binaries | |
run: | | |
cd bin | |
brotli -k -q 11 *.* | |
zip -r -9 ../${{ github.event.repository.name }}-wasm-${{ matrix.target }}.zip $(ls *.*) | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: ${{ github.event.repository.name }}-wasm-${{ matrix.target }} | |
path: | | |
*.zip | |
pluginval: | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- uses: distrho/dpf-cmake-action@v1 | |
with: | |
dpf_path: ./modules/dpf | |
target: pluginval | |
source: | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- uses: distrho/dpf-cmake-action@v1 | |
with: | |
dpf_path: ./modules/dpf | |
target: source |