Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
206 changes: 65 additions & 141 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,168 +4,92 @@ on:
push:

env:
HVCC_VERSION: 424308377a8b0e4291e0bfda3bcf68ae9fd88f33
HVCC_COMMIT_HASH: 424308377a8b0e4291e0bfda3bcf68ae9fd88f33
CACHE_VERSION: 1
DEBIAN_FRONTEND: noninteractive
GIT_LFS_SKIP_SMUDGE: 1

jobs:
linux-x86_64:
runs-on: ubuntu-20.04
linux:
strategy:
matrix:
target: [linux-arm64, linux-armhf, linux-i686, linux-riscv64, linux-x86_64]
runs-on: ubuntu-latest
container:
image: ubuntu:20.04
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
submodules: recursive
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.9
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install git+https://github.com/Wasted-Audio/hvcc.git@${{ env.HVCC_VERSION }}
sudo apt-get update -qq
sudo apt-get install -yqq libgl1-mesa-dev

- name: Build plugins
- name: Install git
run: |
hvcc wstd_eq.pd -n WSTD_EQ -m wstd_eq.json -o WSTD_EQ -g dpf -p dep/heavylib/ dep/ --copyright "Copyright (c) Wasted Audio 2023 - GPL-3.0-or-later"
cp override/* WSTD_EQ/plugin/source/
make -C WSTD_EQ WITH_LTO=true -j $(nproc)

- name: Set sha8 (non-release)
if: startsWith(github.ref, 'refs/tags/') != true
id: slug1
run: echo "action_tag=$(echo ${{ github.sha }} | cut -c1-8)" >> $GITHUB_ENV
- name: Set tag (release)
if: startsWith(github.ref, 'refs/tags/')
id: slug2
run: echo "action_tag=$(echo ${{ github.ref_name }})" >> $GITHUB_ENV

- name: Pack binaries
apt-get update -qq && apt-get install -yqq --no-install-recommends ca-certificates curl git openssl
curl -sLO https://launchpad.net/~kxstudio-debian/+archive/ubuntu/toolchain/+files/git_2.34.1-1ubuntu1~bpo20.04.1~ppa1_amd64.deb
curl -sLO https://launchpad.net/~kxstudio-debian/+archive/ubuntu/toolchain/+files/git-man_2.34.1-1ubuntu1~bpo20.04.1~ppa1_all.deb
dpkg -i *.deb
rm *.deb
- name: Install and use python3.9
run: |
cd WSTD_EQ
mv bin WSTD_EQ
tar -c -h -z -f ${{ github.event.repository.name }}-linux-x86_64-${{ github.event.pull_request.number || env.action_tag }}.tar.gz WSTD_EQ/
- uses: actions/upload-artifact@v3
apt-get install -yqq python3 python3.9
update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.9 1
- name: Install pip
run: apt-get install -yqq --no-install-recommends python3-pip
- name: Checkout repository
uses: actions/checkout@v4
with:
name: ${{ github.event.repository.name }}-linux-x86_64-${{ github.event.pull_request.number || env.action_tag }}
path: |
WSTD_EQ/*.tar.gz
- uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
submodules: recursive
- uses: distrho/dpf-makefile-action@v1
with:
tag_name: ${{ github.ref_name }}
name: ${{ github.ref_name }}
draft: false
prerelease: false
files: |
WSTD_EQ/*.tar.gz
target: ${{ matrix.target }}
hvcc: True
dpf_path: 'dep/dpf'

win64:
runs-on: ubuntu-20.04
windows:
strategy:
matrix:
target: [win32, win64]
runs-on: ubuntu-22.04
steps:
- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Python
uses: actions/setup-python@v4
- uses: distrho/dpf-makefile-action@v1
with:
python-version: 3.9
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install git+https://github.com/Wasted-Audio/hvcc.git@${{ env.HVCC_VERSION }}
sudo apt-get update -qq
sudo apt-get install -yqq binutils-mingw-w64-x86-64 g++-mingw-w64-x86-64 mingw-w64 wine-stable
target: ${{ matrix.target }}
hvcc: True
dpf_path: 'dep/dpf'

- name: Build win64 cross-compiled plugins
env:
CC: x86_64-w64-mingw32-gcc
CXX: x86_64-w64-mingw32-g++
EXE_WRAPPER: wine
PKG_CONFIG: "false"
WINEDEBUG: "-all"
run: |
hvcc wstd_eq.pd -n WSTD_EQ -m wstd_eq.json -o WSTD_EQ -g dpf -p dep/heavylib/ dep/ --copyright "Copyright (c) Wasted Audio 2023 - GPL-3.0-or-later"
cp override/* WSTD_EQ/plugin/source/
make -C WSTD_EQ WITH_LTO=true -j $(nproc)

- name: Set sha8 (non-release)
if: startsWith(github.ref, 'refs/tags/') != true
id: slug1
run: echo "action_tag=$(echo ${{ github.sha }} | cut -c1-8)" >> $GITHUB_ENV
- name: Set tag (release)
if: startsWith(github.ref, 'refs/tags/')
id: slug2
run: echo "action_tag=$(echo ${{ github.ref_name }})" >> $GITHUB_ENV
- name: Pack binaries
run: |
cd WSTD_EQ
mv bin WSTD_EQ
tar -c -h -z -f ${{ github.event.repository.name }}-win64-${{ github.event.pull_request.number || env.action_tag }}.tar.gz WSTD_EQ/
- uses: actions/upload-artifact@v3
macos:
strategy:
matrix:
target: [macos-intel, macos-universal]
runs-on: macos-13
steps:
- uses: actions/checkout@v4
with:
name: ${{ github.event.repository.name }}-win64-${{ github.event.pull_request.number || env.action_tag }}
path: |
WSTD_EQ/*.tar.gz
- uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
submodules: recursive
- uses: distrho/dpf-makefile-action@v1
with:
tag_name: ${{ github.ref_name }}
name: ${{ github.ref_name }}
draft: false
prerelease: false
files: |
WSTD_EQ/*.tar.gz
target: ${{ matrix.target }}
hvcc: True
dpf_path: 'dep/dpf'

macos-universal:
runs-on: macos-11
pluginval:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Python
uses: actions/setup-python@v4
- uses: distrho/dpf-makefile-action@v1
with:
python-version: 3.9
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install git+https://github.com/Wasted-Audio/hvcc.git@${{ env.HVCC_VERSION }}
target: pluginval
hvcc: True
dpf_path: 'dep/dpf'

- name: Build macOS universal plugins
env:
CFLAGS: -arch x86_64 -arch arm64 -DMAC_OS_X_VERSION_MAX_ALLOWED=MAC_OS_X_VERSION_10_12 -mmacosx-version-min=10.12 -mtune=generic -msse -msse2
CXXFLAGS: -arch x86_64 -arch arm64 -DMAC_OS_X_VERSION_MAX_ALLOWED=MAC_OS_X_VERSION_10_12 -mmacosx-version-min=10.12 -mtune=generic -msse -msse2
LDFLAGS: -arch x86_64 -arch arm64 -mmacosx-version-min=10.12
run: |
hvcc wstd_eq.pd -n WSTD_EQ -m wstd_eq.json -o WSTD_EQ -g dpf -p dep/heavylib/ dep/ --copyright "Copyright (c) Wasted Audio 2023 - GPL-3.0-or-later"
cp override/* WSTD_EQ/plugin/source/
make -C WSTD_EQ NOOPT=true WITH_LTO=true -j $(sysctl -n hw.logicalcpu)
cd WSTD_EQ
../dep/dpf/utils/package-osx-bundles.sh

- name: Set sha8 (non-release)
if: startsWith(github.ref, 'refs/tags/') != true
id: slug1
run: echo "action_tag=$(echo ${{ github.sha }} | cut -c1-8)" >> $GITHUB_ENV
- name: Set tag (release)
if: startsWith(github.ref, 'refs/tags/')
id: slug2
run: echo "action_tag=$(echo ${{ github.ref_name }})" >> $GITHUB_ENV

- uses: actions/upload-artifact@v3
source:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
with:
name: ${{ github.event.repository.name }}-macOS-universal-${{ github.event.pull_request.number || env.action_tag }}
path: |
WSTD_EQ/*-macOS.pkg

- uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
submodules: recursive
- uses: distrho/dpf-makefile-action@v1
with:
tag_name: ${{ github.ref_name }}
name: ${{ github.ref_name }}
draft: false
prerelease: false
files: |
WSTD_EQ/*-macOS.pkg
target: source
19 changes: 19 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
#!/usr/bin/make -f

include dep/dpf/Makefile.base.mk

PLUGINS = WSTD_EQ
PREGEN = $(PLUGINS:%=%/plugin/source)

all: build

build: pregen
$(foreach p, $(PLUGINS), $(MAKE) -C $(p);)
mkdir bin
$(foreach p, $(PLUGINS), mv $(p)/bin/* bin/;)

pregen: $(PREGEN)

%/plugin/source: %.json %.pd override/*.*
hvcc $*.pd -m $*.json -n $* -o $* -g dpf -p dep/heavylib/ dep/ --copyright "Copyright (c) Wasted Audio 2023 - GPL-3.0-or-later"
cp override/*.* $*/plugin/source/
2 changes: 1 addition & 1 deletion wstd_eq.json → WSTD_EQ.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
"wstd.clrs"
],
"enable_ui": true,
"enable_modgui": true,
"enable_modgui": false,
"ui_size": {
"width": 120,
"height": 520
Expand Down
File renamed without changes.