diff options
author | Ryan Algar | 2022-06-18 15:16:40 -0700 |
---|---|---|
committer | Ryan Algar | 2022-06-19 11:31:44 -0700 |
commit | 8f9c1572de9be94c5fad8c5f1d2cb38e18f969ef (patch) | |
tree | 063d5c427afb664c7fff178b1ba16d74c3038308 | |
parent | 0418bc37b734e682a3488c94aea8941888ff102c (diff) | |
download | aur-8f9c1572de9be94c5fad8c5f1d2cb38e18f969ef.tar.gz |
Update to v2.3.3
-rw-r--r-- | .SRCINFO | 34 | ||||
-rw-r--r-- | .gitignore | 2 | ||||
-rw-r--r-- | .gitlab-ci.yml | 48 | ||||
-rw-r--r-- | AppConfig.patch | 7 | ||||
-rw-r--r-- | Makefile.patch | 7 | ||||
-rw-r--r-- | PKGBUILD | 114 | ||||
-rw-r--r-- | add-missing-include.patch | 25 |
7 files changed, 144 insertions, 93 deletions
@@ -1,45 +1,29 @@ pkgbase = odin2-synthesizer - pkgdesc = 24 voice polyphonic synthesizer, with modulation and FX. (Standalone, VST3, LV2) - pkgver = 2.3.1 + pkgdesc = 24 voice polyphonic synthesizer, with modulation and FX. (Standalone, VST3, LV2, CLAP) + pkgver = 2.3.3 pkgrel = 1 url = https://www.thewavewarden.com/odin2 install = .install arch = x86_64 license = GPL3 - makedepends = atk - makedepends = cairo - makedepends = doxygen - makedepends = gdk-pixbuf2 - makedepends = gendesk + makedepends = alsa-lib + makedepends = cmake + makedepends = curl makedepends = git - makedepends = graphviz - makedepends = gtk3 - makedepends = harfbuzz - makedepends = libfreetype.so=6-64 - makedepends = libjpeg-turbo - makedepends = libpng - makedepends = libsoup makedepends = libx11 - makedepends = libxext - makedepends = libxinerama makedepends = lv2 - makedepends = pango - makedepends = python + makedepends = mesa makedepends = webkit2gtk depends = man-pages depends = ttf-font optdepends = ttf-dejavu: One of these may be needed for fonts to render correctly optdepends = ttf-liberation: One of these may be needed for fonts to render correctly - provides = odin2 + provides = odin2-synthesizer conflicts = odin2-synthesizer-bin backup = opt/odin2/odin2.conf backup = opt/odin2/Soundbanks/User Patches - source = /odin2::git+https://github.com/TheWaveWarden/odin2.git - source = /JUCE::git+https://github.com/lv2-porting-project/JUCE.git - source = AppConfig.patch - source = Makefile.patch - sha256sums = SKIP - sha256sums = SKIP + source = git+https://github.com/TheWaveWarden/odin2.git + source = add-missing-include.patch sha256sums = SKIP sha256sums = SKIP diff --git a/.gitignore b/.gitignore index 73b4766d4a8c..bcf39fd63ff9 100644 --- a/.gitignore +++ b/.gitignore @@ -12,5 +12,5 @@ pkg/ *.deb # Odin2 specific ignores -JUCE/ odin2/ +*.log diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 000000000000..87a6ffb4e8aa --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,48 @@ +--- +default: + image: archlinux:base-devel + tags: + - docker + interruptible: true + before_script: + - if [[ ! -d $CI_PROJECT_DIR/.paccache ]] ; then mkdir "$CI_PROJECT_DIR/.paccache" ; fi + - sed -i "s|/var/cache/pacman/pkg/|$CI_PROJECT_DIR/.paccache/|" /etc/pacman.conf + - sed -i "s|^#CacheDir|CacheDir|" /etc/pacman.conf + - sed -i "s|^#MAKEFLAGS|MAKEFLAGS|" /etc/makepkg.conf + - pacman -Syyu --noconfirm +cache: + paths: + - .paccache/ + +stages: + - code-analysis + - build + - release + +shellcheck: + stage: code-analysis + script: + - pacman -Syu --noconfirm shellcheck + - shellcheck -s bash PKGBUILD -e 2034,2154,2164 + +build: + stage: build + script: + - useradd -M pkgbuild + - 'echo "pkgbuild ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/pkgbuild' + - sudo -u pkgbuild makepkg -s --noconfirm + artifacts: + name: package + paths: + - "*.pkg.tar.zst" + expire_in: 1h + +release: + stage: release + rules: + - if: $CI_COMMIT_TAG + script: + - apk add bash findutils github-cli + - mv build/proton-shunt.exe "build/proton-shunt-$CI_COMMIT_TAG.exe" + - chmod u+x pipeline/github-release.sh + - ./pipeline/github-release.sh diff --git a/AppConfig.patch b/AppConfig.patch deleted file mode 100644 index 0bfe1f1843e1..000000000000 --- a/AppConfig.patch +++ /dev/null @@ -1,7 +0,0 @@ -18d17 -<
-19a19,22 ->
-> #define JucePlugin_Build_LV2 1
-> #define JucePlugin_LV2URI "https://www.thewavewarden.com/odin2"
-> #define JucePlugin_MaxNumOutputChannels 2
diff --git a/Makefile.patch b/Makefile.patch deleted file mode 100644 index 5d65325e3f2a..000000000000 --- a/Makefile.patch +++ /dev/null @@ -1,7 +0,0 @@ ---- Makefile 2020-10-25 15:14:21.710302240 -0700 -+++ MakePatched 2020-10-25 15:19:09.001404572 -0700 -@@ -798,3 +798,4 @@ - -include $(OBJECTS_VST3:%.o=%.d) - -include $(OBJECTS_STANDALONE_PLUGIN:%.o=%.d) - -include $(OBJECTS_SHARED_CODE:%.o=%.d) -+include ../../LV2.mak @@ -2,86 +2,94 @@ # Upstream: TheWaveWarden (Frederik Siepe) <info AT thewavewarden DOT com> pkgname=odin2-synthesizer -pkgver=2.3.1 +pkgver=2.3.3 pkgrel=1 -pkgdesc='24 voice polyphonic synthesizer, with modulation and FX. (Standalone, VST3, LV2)' +pkgdesc='24 voice polyphonic synthesizer, with modulation and FX. (Standalone, VST3, LV2, CLAP)' license=('GPL3') arch=('x86_64') url='https://www.thewavewarden.com/odin2' -provides=('odin2') +provides=('odin2-synthesizer') conflicts=('odin2-synthesizer-bin') depends=('man-pages' 'ttf-font') -makedepends=('atk' - 'cairo' - 'doxygen' - 'gdk-pixbuf2' - 'gendesk' +makedepends=('alsa-lib' + 'cmake' + 'curl' 'git' - 'graphviz' - 'gtk3' - 'harfbuzz' - 'libfreetype.so=6-64' - 'libjpeg-turbo' - 'libpng' - 'libsoup' 'libx11' - 'libxext' - 'libxinerama' 'lv2' - 'pango' - 'python' + 'mesa' 'webkit2gtk') optdepends=('ttf-dejavu: One of these may be needed for fonts to render correctly' 'ttf-liberation: One of these may be needed for fonts to render correctly') -source=("${srcdir}/${pkgname%-synthesizer}::git+https://github.com/TheWaveWarden/odin2.git" - "${srcdir}/JUCE::git+https://github.com/lv2-porting-project/JUCE.git" - 'AppConfig.patch' - 'Makefile.patch') -sha256sums=('SKIP' 'SKIP' 'SKIP' 'SKIP') +source=( + "git+https://github.com/TheWaveWarden/odin2.git" + "add-missing-include.patch") +sha256sums=('SKIP' 'SKIP') backup=('opt/odin2/odin2.conf' 'opt/odin2/Soundbanks/User Patches') install='.install' prepare() { - # Checkout the correct branch of JUCE, and build Projucer - cd "${srcdir}/JUCE" - git checkout -q b13af2df9530bf473ff9a85936e5700027bd2af4 - cd extras/Projucer/Builds/LinuxMakefile - make -j"$(nproc)" CONFIG=Release - - # Export Odin 2 build files with Projucer - git checkout lv2 - git checkout -q f00a420bc348d79c4688b33b2b905b8ca0f25a3a - export GDK_BACKEND=x11 - build/Projucer --set-global-search-path linux defaultJuceModulePath "${srcdir}/JUCE/modules" - build/Projucer --resave "${srcdir}/${pkgname%-synthesizer}/Odin.jucer" - - # Patch Odin 2 build files for LV2 Support - patch -N "${srcdir}/${pkgname%-synthesizer}/JuceLibraryCode/AppConfig.h" "${srcdir}/AppConfig.patch" - patch -N "${srcdir}/${pkgname%-synthesizer}/Builds/LinuxMakefile/Makefile" "${srcdir}/Makefile.patch" + + # Checkout the correct branch and generate the build files + cd "${srcdir}/odin2" + git checkout -q v2.3.3 + git submodule update --init --recursive + cd "${srcdir}/odin2/libs/JUCELV2" + git apply "${srcdir}/add-missing-include.patch" + cd "${srcdir}/odin2" + cmake -B build -D CMAKE_BUILD_TYPE=Release } build() { - cd "${srcdir}/odin2/Builds/LinuxMakefile" - git checkout v2.3.1 - git submodule update --init --recursive - make clean - make CONFIG=Release -j"$(nproc)" + + cd "${srcdir}/odin2" + cmake --build build --config Release } check() { - cd "${srcdir}/odin2/Builds/LinuxMakefile/build" - [[ -d Odin2.vst3 && -d Odin2_.lv2 ]] || return 1 + + local _outdir="${srcdir}/odin2/build/Odin2_artefacts/Release" + + # VST3 + [[ -f $_outdir/VST3/Odin2.vst3/Contents/x86_64-linux/Odin2.so ]] + + # LV2 + for _file in manifest.ttl Odin2.so Odin2.ttl presets.ttl ; do + [[ -f $_outdir/LV2/Odin2.lv2/$_file ]] + done + + # CLAP + [[ -f $_outdir/CLAP/Odin2.clap ]] + + # Standalone + [[ -f $_outdir/Standalone/Odin2 ]] } package() { - install -Dm 755 "${srcdir}/odin2/Builds/LinuxMakefile/build/Odin2.vst3/Contents/x86_64-linux/Odin2.so" "${pkgdir}/usr/lib/vst3/Odin2.vst3/Contents/x86_64-linux/Odin2.so" - install -Dm 755 "${srcdir}/odin2/Builds/LinuxMakefile/build/Odin2_.lv2/Odin2_.so" "${pkgdir}/usr/lib/lv2/Odin2.lv2/Odin2_.so" - install -Dm 644 "${srcdir}/odin2/Builds/LinuxMakefile/build/Odin2_.lv2/Odin2_.ttl" "${pkgdir}/usr/lib/lv2/Odin2.lv2/Odin2_.ttl" - install -Dm 644 "${srcdir}/odin2/Builds/LinuxMakefile/build/Odin2_.lv2/presets.ttl" "${pkgdir}/usr/lib/lv2/Odin2.lv2/presets.ttl" - install -Dm 644 "${srcdir}/odin2/Builds/LinuxMakefile/build/Odin2_.lv2/manifest.ttl" "${pkgdir}/usr/lib/lv2/Odin2.lv2/manifest.ttl" + local _outdir="${srcdir}/odin2/build/Odin2_artefacts/Release" + + # VST3 + install -Dm 755 "$_outdir/VST3/Odin2.vst3/Contents/x86_64-linux/Odin2.so" \ + "${pkgdir}/usr/lib/vst3/Odin2.vst3/Contents/x86_64-linux/Odin2.so" + + # LV2 + install -Dm 755 "$_outdir/LV2/Odin2.lv2/Odin2.so" \ + "${pkgdir}/usr/lib/lv2/Odin2.lv2/Odin2.so" + install -Dm 644 "$_outdir/LV2/Odin2.lv2/Odin2.ttl" \ + "${pkgdir}/usr/lib/lv2/Odin2.lv2/Odin2.ttl" + install -Dm 644 "$_outdir/LV2/Odin2.lv2/presets.ttl" \ + "${pkgdir}/usr/lib/lv2/Odin2.lv2/presets.ttl" + install -Dm 644 "$_outdir/LV2/Odin2.lv2/manifest.ttl" \ + "${pkgdir}/usr/lib/lv2/Odin2.lv2/manifest.ttl" + + # CLAP + install -Dm 755 "$_outdir/CLAP/Odin2.clap" \ + "${pkgdir}/usr/lib/clap/Odin2.clap" - install -Dm 755 "${srcdir}/odin2/Builds/LinuxMakefile/build/Odin2" "${pkgdir}/usr/bin/odin2-synthesizer" + # Standalone + install -Dm 755 "$_outdir/Standalone/Odin2" \ + "${pkgdir}/usr/bin/odin2-synthesizer" } diff --git a/add-missing-include.patch b/add-missing-include.patch new file mode 100644 index 000000000000..9257dbf927b9 --- /dev/null +++ b/add-missing-include.patch @@ -0,0 +1,25 @@ +From 5ea95fb74bba1d2200dcc098d058f512afda26fc Mon Sep 17 00:00:00 2001 +From: Ryan Algar <59636191+ralgar@users.noreply.github.com> +Date: Sat, 18 Jun 2022 12:26:23 -0700 +Subject: [PATCH] Add missing <utility> include + +--- + modules/juce_gui_basics/juce_gui_basics.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/modules/juce_gui_basics/juce_gui_basics.h b/modules/juce_gui_basics/juce_gui_basics.h +index f497d0385..7aa655afa 100644 +--- a/modules/juce_gui_basics/juce_gui_basics.h ++++ b/modules/juce_gui_basics/juce_gui_basics.h +@@ -54,6 +54,8 @@ + #pragma once
+ #define JUCE_GUI_BASICS_H_INCLUDED
+
++#include <utility>
++
+ #include <juce_graphics/juce_graphics.h>
+ #include <juce_data_structures/juce_data_structures.h>
+
+-- +2.36.1 + |