[arch-commits] Commit in juce/trunk (14 files)
David Runge
dvzrv at gemini.archlinux.org
Sun Sep 26 18:41:36 UTC 2021
Date: Sunday, September 26, 2021 @ 18:41:36
Author: dvzrv
Revision: 1025694
upgpkg: juce 6.1.2-1: Upgrade to 6.1.2.
Split into juce and juce-docs.
Update all patches, so that they apply to juce > 6.1 (which employs cmake).
Update juce_VSTInterface.h in accordance with Debian's juce package.
Simplify the applying of patches in prepare().
Use custom CPPFLAGS overrides to prevent the use of vendored libraries.
Add fst as optdepend for juce to build FST plugins.
Added:
juce/trunk/juce-6.1.2-cmake_install.patch
juce/trunk/juce-6.1.2-cmake_juce_utils.patch
juce/trunk/juce-6.1.2-cmake_link_against_system_deps.patch
juce/trunk/juce-6.1.2-fst_vst.patch
juce/trunk/juce-6.1.2-projucer_disable_update_check.patch
juce/trunk/juce-6.1.2-projucer_juce_paths.patch
Modified:
juce/trunk/PKGBUILD
juce/trunk/juce_VSTInterface.h
Deleted:
juce/trunk/juce-5.4.5-disable_update_check.patch
juce/trunk/juce-5.4.5-disable_usage_data.patch
juce/trunk/juce-5.4.5-fix_include_defines.patch
juce/trunk/juce-5.4.5-juce_vst.patch
juce/trunk/juce-5.4.5-jucepath.patch
juce/trunk/juce-5.4.5-link_to_systemlibs.patch
-------------------------------------------------+
PKGBUILD | 136 ++++++++++++----------
juce-5.4.5-disable_update_check.patch | 23 ---
juce-5.4.5-disable_usage_data.patch | 28 ----
juce-5.4.5-fix_include_defines.patch | 106 -----------------
juce-5.4.5-juce_vst.patch | 67 ----------
juce-5.4.5-jucepath.patch | 22 ---
juce-5.4.5-link_to_systemlibs.patch | 69 -----------
juce-6.1.2-cmake_install.patch | 48 +++++++
juce-6.1.2-cmake_juce_utils.patch | 20 +++
juce-6.1.2-cmake_link_against_system_deps.patch | 88 ++++++++++++++
juce-6.1.2-fst_vst.patch | 27 ++++
juce-6.1.2-projucer_disable_update_check.patch | 11 +
juce-6.1.2-projucer_juce_paths.patch | 22 +++
juce_VSTInterface.h | 1
14 files changed, 296 insertions(+), 372 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2021-09-26 18:32:57 UTC (rev 1025693)
+++ PKGBUILD 2021-09-26 18:41:36 UTC (rev 1025694)
@@ -1,53 +1,51 @@
# Maintainer: David Runge <dvzrv at archlinux.org>
_name=JUCE
-pkgname=juce
-pkgver=5.4.7
+pkgbase=juce
+pkgname=(juce juce-docs)
+pkgver=6.1.2
pkgrel=1
pkgdesc="Cross-platform C++ framework"
arch=('x86_64')
-url="https://github.com/weareroli/juce/"
+url="https://github.com/juce-framework/juce/"
license=('Apache' 'BSD' 'GPL3' 'ISC')
-depends=('atk' 'cairo' 'gcc-libs' 'gdk-pixbuf2' 'glib2' 'glibc' 'gtk3'
-'harfbuzz' 'libfreetype.so' 'libjpeg-turbo' 'libpng' 'libsoup' 'libx11'
-'libxext' 'libxinerama' 'pango' 'webkit2gtk' 'zlib')
-makedepends=('doxygen' 'gendesk' 'graphviz' 'python')
-source=("$pkgname-$pkgver.tar.gz::https://github.com/weareroli/${pkgname}/archive/${pkgver}.tar.gz"
- "$pkgname-5.4.5-disable_update_check.patch"
- "$pkgname-5.4.5-disable_usage_data.patch"
- "$pkgname-5.4.5-fix_include_defines.patch"
- "$pkgname-5.4.5-link_to_systemlibs.patch"
- "$pkgname-5.4.5-juce_vst.patch"
- "$pkgname-5.4.5-jucepath.patch"
- "${pkgname}_VSTInterface.h")
-sha512sums=('9aad52eb52ca457c37b1921c9e5a373f6fca0a026ccfac6a308c0031c586184c919c003502d9eb43c162018b53e8229773ac9959fc86c6b0081a7b392bff0a86'
- '5e7516d37deeb6faf9bd7ccf6b0da68f610992b9a4dfb8010baec1dba56cf2310c390c3d0876b5e2f30c89c69555ad34c088887a0254c59f121d2af38334b3d3'
- '85ca210a4d904a00de0830385a9e103493d47981acdb24335494fddc4af3f8b89cc05d1935cc4695c9e136bce5f91c1568c2135a8fe4ce565f396c3ba0153460'
- '69bc445275e88594ab6077285442bb3af97e2e4a7776f409d5e0ce2aae214a0eadedb82960c666ee45ea459f8ffb519873ecb0577eecf11e4728ee46e6ee042f'
- '062197ee6860c2c9cf655131df042df536d0b9aab58b304ca35a9d335231932dc49d92cb439c347f3dc863fc60ae6ae2357fbca8d057b9ce3b06fdbf16ff05df'
- '570c56d27824bba9e766a9f78aaf0c24f2273c98f7d08dc2bb4fdaf90a84bc6bfdaed44c7f3b3c94b845841ae4e970c0bc99407a9604313d77378d323a84443a'
- 'c7ad5fadedd09f6f810cc27736f0def236f3b107de00079fb24509fc27750b26225bed7e9b19b0fa9873d5dae7b686cd9929298bb0107fd44645aad1a69c9168'
- '37c0e4610a3fb6b928f0e57460354e3bbc8e284279acc4ee6ef560c6a3a016f58122d6cdaf27a519a4cc2a7c5e2a258a38f5d6d3863ded4154b39d221ae02a9a')
+makedepends=('alsa-lib' 'cmake' 'freetype2' 'doxygen' 'gendesk' 'graphviz'
+'gtk3' 'jack' 'ladspa' 'libjpeg-turbo' 'libpng' 'python' 'webkit2gtk' 'zlib')
+source=(
+ "$pkgname-$pkgver.tar.gz::https://github.com/juce-framework/${pkgname}/archive/${pkgver}.tar.gz"
+ "${pkgname}-6.1.2-cmake_install.patch"
+ "${pkgname}-6.1.2-cmake_juce_utils.patch"
+ "${pkgname}-6.1.2-cmake_link_against_system_deps.patch"
+ "${pkgname}-6.1.2-fst_vst.patch"
+ "${pkgname}-6.1.2-projucer_disable_update_check.patch"
+ "${pkgname}-6.1.2-projucer_juce_paths.patch"
+ "${pkgname}_VSTInterface.h"
+)
+sha512sums=('0427be40e9cea3b215358f0661e9dabcbc4f1be7aba7d0f44e35f8426dd49ba31da99d0f18a6ee28b3dce50114a1647157802e6231d9b912269f179191ebccc1'
+ '52aba043ad3e5154b67f4d140f1d1e936962325763b47bbec57e1ef0a9cccbe6fa0b99598a756cb76853b5c1c5084b32055fc6a76f992b10323d867c82023399'
+ '91ef9ced3a72db3b24d5892149cb3ac19fd132a0cc48a36afe1664864e7deb4928a3a19a92aee11f277beccbb8e500e4fa1aba74d77a52b3517ce4bb429904c6'
+ '08b0b5a945dc77073b77b2ec678d48394d7baf2bcb0213b2d5e37ab755d8e33b86511045f412f15fd9ba32aced330e611d0fa9f10b10468956898751fb50a754'
+ 'dddf5510f9391fc663db29174215e9575e9ec3956bb649c8a83564b0dcfa1202cc430fadd8faafa390b45c3a2e79ba75e3cdfb118db1e5c35836fad954b67e32'
+ '2e1b823d9e5611e2c9efa1459f309f9add76d163411bb32cbd8c93f9751c6b97842af430f866f9ebce02d7602a655fd1f9d62f0530e5dc4d2621cbbd5444aad8'
+ '766b761bf60a09fd01e9e6422df5b34c5305d41672b82b2c54819c581a952af5d7c8c39868c8615b57b14f772624bae4545ec878f2098ab5b8afb2ecf59146a1'
+ '36a244740872cd203db3e1cebba5a5e245a3300a8c6c76046455ecc38083348f069987d0cba8f569390b4f0ba855799b8ff559cb540f02382b67a46d5b9cc420')
+b2sums=('40ee2769aa165337d9cad6dadf1e4ee60a0dd4e69ebbcacc8e98469a5556c4884ddf2a3704778ede8a6112eab4062d768e92aa07e547be8afef2771bc130e962'
+ '2419fd707b03a5e33cef03576cbeddb99ab4fd67f4fbec8047668ffb1daf78803cd608d7255893394e6d83dce5afd51608793384567228130a0082bcc9a67f60'
+ '8accc2bb2def2b6c91084879071299c0d94e652dad61f15457d8a3c49507db30dcbd25f0311cc044661470ff986d7566ef503ec183b6ada535341dcb456d8e6d'
+ 'adae21dc435805fb73381c71e942b5a7ad65063310cbd33d9aa49d8c2a7abd94bd6f712ebe6a43a1efe243feba86149dc2b6b40e5a3e60b18e929b141bb939b8'
+ 'b0a8758f6a97a487b7734839d59f0c0684d69ac67acba168a707296eeb82fb13c630506dcb05f45e1eaf9620adc881c6c467fdc3f3cfbb0326a4e6ebf36407e8'
+ 'cd6c59deed414529c49dbf8506905cc7848bb48073e054d4cf2450c17c7268860330bd2d2e6d30e5a2a68cec2106e3498619e85ce602439f75ba9393084498f6'
+ '4d42e73b4d15f0ef16a55d927de43127518f4420fe54f78b2c2a0e57a08eb192138f65f381017d0f1e6ca286009f63f16c269b58e7405c35894c0bc3ac91de7b'
+ 'f56e59984bde66d482fdeae3cefc0d4dc9e25c9c170f2f0b46ec53bd63ec72432b1764ff282ef8093c1029a427852c09087827d22023b526786a03977cbb7a32')
prepare() {
mv -v "${_name}-$pkgver" "$pkgname-$pkgver"
cd "$pkgname-$pkgver"
- # setting juce path
- patch -Np1 -i "../$pkgname-5.4.5-jucepath.patch"
- # setting juce vst
- patch -Np1 -i "../$pkgname-5.4.5-juce_vst.patch"
- # disable checking for update in projucer
- patch -Np1 -i "../$pkgname-5.4.5-disable_update_check.patch"
- # disable sending usage data in projucer
- patch -Np1 -i "../$pkgname-5.4.5-disable_usage_data.patch"
- # fix include defines in projucer
- patch -Np1 -i "../$pkgname-5.4.5-fix_include_defines.patch"
- # link to system libs, if flac, jack, libogg, vorbis, libjpeg, libpng or zlib
- # are in use
- patch -Np1 -i "../$pkgname-5.4.5-link_to_systemlibs.patch"
- # disabling -march=native
- sed -e 's/\-march=native//g' \
- -i extras/Projucer/Builds/LinuxMakefile/Makefile
+ for _patch in ../*.patch; do
+ printf "Applying patch %s\n" "${_patch}"
+ patch -Np1 -i "${_patch}"
+ done
+
gendesk -n \
--pkgname "com.juce_projucer" \
--name "Projucer" \
@@ -56,7 +54,8 @@
--icon "Projucer" \
--genericname "Code manager and editor" \
--categories "Development"
- # devendor bundled sources for flac, libogg, vorbis, libjpeg, libpng and zlib
+ # remove bundled sources for flac, libogg, vorbis, libjpeg, libpng and zlib
+ # as we are linking against system libs
rm -rvf modules/juce_audio_formats/codecs/flac/ \
modules/juce_audio_formats/codecs/oggvorbis/ \
modules/juce_audio_plugin_client/AU/ \
@@ -67,33 +66,56 @@
build() {
cd "$pkgname-$pkgver"
- # enabling GPL mode via CPPFLAGS
- CPPFLAGS+=" -DJUCER_ENABLE_GPL_MODE=1" \
- LDFLAGS+=" $(pkg-config --libs libjpeg libpng zlib)" \
- make -C extras/Projucer/Builds/LinuxMakefile/ V=1
- cd doxygen
- make
+ # enable GPL mode via CPPFLAGS
+ export CPPFLAGS+=" -DJUCER_ENABLE_GPL_MODE=1"
+ export CPPFLAGS+=" -DJUCE_INCLUDE_FLAC_CODE=0"
+ export CPPFLAGS+=" -DJUCE_INCLUDE_JPEGLIB_CODE=0"
+ export CPPFLAGS+=" -DJUCE_INCLUDE_OGGVORBIS_CODE=0"
+ export CPPFLAGS+=" -DJUCE_INCLUDE_PNGLIB_CODE=0"
+ export CPPFLAGS+=" -DJUCE_INCLUDE_ZLIB_CODE=0 -DJUCE_ZLIB_INCLUDE_PATH='<zlib.h>'"
+
+ cmake -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE='None' \
+ -DJUCE_BUILD_EXTRAS=ON \
+ -DJUCE_TOOL_INSTALL_DIR='bin' \
+ -Wno-dev \
+ -B build \
+ -S .
+ make VERBOSE=1 -C build
+ make -C docs/doxygen
}
-package() {
+package_juce() {
+ depends=('gcc-libs' 'glibc' 'hicolor-icon-theme' 'libpng' 'libfreetype.so'
+ 'libjpeg.so' 'zlib')
+ optdepends=('fst: for building FST plugins')
+
cd "$pkgname-$pkgver"
- install -vDm 755 extras/Projucer/Builds/LinuxMakefile/build/Projucer \
+ make DESTDIR="${pkgdir}" VERBOSE=1 -C build install
+
+ # install custom vst2 handling from juce < 5.4.1
+ install -vDm 644 ../juce_VSTInterface.h \
+ -t "${pkgdir}/usr/share/juce/modules/juce_audio_processors/format_types/"
+ # projucer has no install target
+ install -vDm 755 build/extras/Projucer/Projucer_artefacts/None/Projucer \
-t "${pkgdir}/usr/bin"
# xdg desktop integration
install -vDm 644 *.desktop -t "${pkgdir}/usr/share/applications/"
install -vDm 644 examples/Assets/juce_icon.png \
"${pkgdir}/usr/share/icons/hicolor/512x512/apps/Projucer.png"
- # modules
- install -vDm 644 ChangeList.txt -t "${pkgdir}/usr/share/${pkgname}"
- install -vdm 755 "${pkgdir}/usr/share/${pkgname}/modules"
- cp -av modules/* "${pkgdir}/usr/share/${pkgname}/modules"
- install -vDm 644 "../${pkgname}_VSTInterface.h" \
- -t "${pkgdir}/usr/share/${pkgname}/modules/juce_audio_processors/format_types"
# docs
- install -vdm 755 "${pkgdir}/usr/share/doc/${pkgname}/html"
- cp -av doxygen/doc/* "${pkgdir}/usr/share/doc/${pkgname}/html"
- install -vDm 644 {ChangeList.txt,README.md} \
+ install -vDm 644 {{BREAKING-CHANGES,ChangeList}.txt,README.md} \
-t "${pkgdir}/usr/share/doc/${pkgname}"
# license
install -vDm 644 LICENSE.md -t "${pkgdir}/usr/share/licenses/${pkgname}"
}
+
+package_juce-docs() {
+ cd "$pkgbase-$pkgver"
+ (
+ cd docs/doxygen/doc
+ find . -type f -exec install -vDm 644 {} "${pkgdir}/usr/share/doc/${pkgbase}/html/"{} \;
+ )
+ # license
+ install -vDm 644 LICENSE.md -t "${pkgdir}/usr/share/licenses/${pkgname}"
+}
Deleted: juce-5.4.5-disable_update_check.patch
===================================================================
--- juce-5.4.5-disable_update_check.patch 2021-09-26 18:32:57 UTC (rev 1025693)
+++ juce-5.4.5-disable_update_check.patch 2021-09-26 18:41:36 UTC (rev 1025694)
@@ -1,23 +0,0 @@
-From: =?utf-8?q?IOhannes_m_zm=C3=B6lnig?= <umlaeute at debian.org>
-Date: Thu, 9 Nov 2017 00:00:00 +0100
-Subject: prevent Projucer from checking for updates
-
- The check-for-updates only makes sense for user-installed Projucer, not for
- the Debian packaged version.
-Forwarded: not-needed
----
- extras/Projucer/Source/Application/jucer_AutoUpdater.cpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/extras/Projucer/Source/Application/jucer_AutoUpdater.cpp b/extras/Projucer/Source/Application/jucer_AutoUpdater.cpp
-index a54b527..2014b10 100644
---- a/extras/Projucer/Source/Application/jucer_AutoUpdater.cpp
-+++ b/extras/Projucer/Source/Application/jucer_AutoUpdater.cpp
-@@ -42,6 +42,7 @@ LatestVersionCheckerAndUpdater::~LatestVersionCheckerAndUpdater()
-
- void LatestVersionCheckerAndUpdater::checkForNewVersion (bool showAlerts)
- {
-+ return; // DONT check for new versions on Debian
- if (! isThreadRunning())
- {
- showAlertWindows = showAlerts;
Deleted: juce-5.4.5-disable_usage_data.patch
===================================================================
--- juce-5.4.5-disable_usage_data.patch 2021-09-26 18:32:57 UTC (rev 1025693)
+++ juce-5.4.5-disable_usage_data.patch 2021-09-26 18:41:36 UTC (rev 1025694)
@@ -1,28 +0,0 @@
-From: =?utf-8?q?IOhannes_m_zm=C3=B6lnig?= <umlaeute at debian.org>
-Date: Mon, 26 Mar 2018 00:00:00 +0200
-Subject: default to not-sending usage-data to ROLI
-
- we prefer to have privacy enabled by default...
-Forwarded: no
----
- .../Application/Windows/jucer_ApplicationUsageDataWindowComponent.h | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/extras/Projucer/Source/Application/Windows/jucer_ApplicationUsageDataWindowComponent.h b/extras/Projucer/Source/Application/Windows/jucer_ApplicationUsageDataWindowComponent.h
-index c9a06df..6a48b68 100644
---- a/extras/Projucer/Source/Application/Windows/jucer_ApplicationUsageDataWindowComponent.h
-+++ b/extras/Projucer/Source/Application/Windows/jucer_ApplicationUsageDataWindowComponent.h
-@@ -69,10 +69,10 @@ public:
-
- auto* controller = ProjucerApplication::getApp().licenseController.get();
-
-- if (controller != nullptr && controller->getState().applicationUsageDataState == LicenseState::ApplicationUsageData::disabled)
-- shareApplicationUsageDataToggle->setToggleState (false, dontSendNotification);
-- else
-+ if (controller != nullptr && controller->getState().applicationUsageDataState == LicenseState::ApplicationUsageData::enabled)
- shareApplicationUsageDataToggle->setToggleState (true, dontSendNotification);
-+ else
-+ shareApplicationUsageDataToggle->setToggleState (false, dontSendNotification);
-
- addAndMakeVisible (shareApplicationUsageDataLabel);
- shareApplicationUsageDataLabel.setFont (Font (14.0f));
Deleted: juce-5.4.5-fix_include_defines.patch
===================================================================
--- juce-5.4.5-fix_include_defines.patch 2021-09-26 18:32:57 UTC (rev 1025693)
+++ juce-5.4.5-fix_include_defines.patch 2021-09-26 18:41:36 UTC (rev 1025694)
@@ -1,106 +0,0 @@
-From: =?utf-8?q?IOhannes_m_zm=C3=B6lnig?= <umlaeute at debian.org>
-Date: Sun, 11 Feb 2018 00:00:00 +0100
-Subject: clamp a few defines to fixed values
-
- on Debian we only ever allow using the system provided libraries
- (zlib, flac, oggvorbis,...)
-Origin: Debian
-Forwarded: not-needed
----
- .../utility/juce_CheckSettingMacros.h | 25 +++++++++++++++++
- modules/juce_core/juce_core.h | 32 +++++++++++++++++++++-
- 2 files changed, 56 insertions(+), 1 deletion(-)
-
-diff --git a/modules/juce_audio_plugin_client/utility/juce_CheckSettingMacros.h b/modules/juce_audio_plugin_client/utility/juce_CheckSettingMacros.h
-index b5278b1..4c0a9ba 100644
---- a/modules/juce_audio_plugin_client/utility/juce_CheckSettingMacros.h
-+++ b/modules/juce_audio_plugin_client/utility/juce_CheckSettingMacros.h
-@@ -24,6 +24,30 @@
- ==============================================================================
- */
-
-+/* Debian specific overrides */
-+#if JucePlugin_Build_LV2 && ! defined (JucePlugin_LV2URI)
-+# warning JUCE/Debian using default LV2URI
-+# define JucePlugin_LV2URI JucePlugin_Name
-+#endif
-+
-+#if JucePlugin_Build_AU
-+# warning JUCE/Debian disabled AU support
-+# undef JucePlugin_Build_AU
-+# define JucePlugin_Build_AU 0
-+#endif
-+
-+#if JucePlugin_Build_RTAS
-+# warning JUCE/Debian disabled RTAS support
-+# undef JucePlugin_Build_RTAS
-+# define JucePlugin_Build_RTAS 0
-+#endif
-+
-+#if JucePlugin_Build_AAX
-+# warning JUCE/Debian disabled AAX support
-+# undef JucePlugin_Build_AAX
-+# define JucePlugin_Build_AAX 0
-+#endif
-+
- // The following checks should cause a compile error if you've forgotten to
- // define all your plugin settings properly..
-
-@@ -40,6 +64,7 @@
- #endif
- #define JUCE_CHECKSETTINGMACROS_H
-
-+
- #ifndef JucePlugin_IsSynth
- #error "You need to define the JucePlugin_IsSynth value!"
- #endif
-diff --git a/modules/juce_core/juce_core.h b/modules/juce_core/juce_core.h
-index 9cd4146..e26e139 100644
---- a/modules/juce_core/juce_core.h
-+++ b/modules/juce_core/juce_core.h
-@@ -64,6 +64,36 @@
-
- #include "system/juce_TargetPlatform.h"
-
-+/** Debian specific constants
-+ - Debian, we don't use embedded libraries
-+*/
-+#ifdef JUCE_INCLUDE_ZLIB_CODE
-+# undef JUCE_INCLUDE_ZLIB_CODE
-+#endif
-+#define JUCE_INCLUDE_ZLIB_CODE 0
-+
-+#ifdef JUCE_INCLUDE_FLAC_CODE
-+# undef JUCE_INCLUDE_FLAC_CODE
-+#endif
-+#define JUCE_INCLUDE_FLAC_CODE 0
-+
-+#ifdef JUCE_INCLUDE_OGGVORBIS_CODE
-+# undef JUCE_INCLUDE_OGGVORBIS_CODE
-+#endif
-+#define JUCE_INCLUDE_OGGVORBIS_CODE 0
-+
-+#ifdef JUCE_INCLUDE_JPEGLIB_CODE
-+# undef JUCE_INCLUDE_JPEGLIB_CODE
-+#endif
-+#define JUCE_INCLUDE_JPEGLIB_CODE 0
-+
-+#ifdef JUCE_INCLUDE_PNGLIB_CODE
-+# undef JUCE_INCLUDE_PNGLIB_CODE
-+#endif
-+#define JUCE_INCLUDE_PNGLIB_CODE 0
-+/** Debian specifics END
-+*/
-+
- //==============================================================================
- /** Config: JUCE_FORCE_DEBUG
-
-@@ -123,7 +153,7 @@
- specify the path where your zlib headers live.
- */
- #ifndef JUCE_INCLUDE_ZLIB_CODE
-- #define JUCE_INCLUDE_ZLIB_CODE 1
-+ #define JUCE_INCLUDE_ZLIB_CODE 0
- #endif
-
- #ifndef JUCE_ZLIB_INCLUDE_PATH
Deleted: juce-5.4.5-juce_vst.patch
===================================================================
--- juce-5.4.5-juce_vst.patch 2021-09-26 18:32:57 UTC (rev 1025693)
+++ juce-5.4.5-juce_vst.patch 2021-09-26 18:41:36 UTC (rev 1025694)
@@ -1,67 +0,0 @@
-From: Debian Multimedia Maintainers <debian-multimedia at lists.debian.org>
-Date: Wed, 23 Oct 2019 09:44:36 +0200
-Subject: provide missing VST2 replacement header
-
-Last-Update: 2019-01-12
-
-backprted from the original JUCE-5.3.1 header
-Last-Update: 2019-01-12
----
- modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp | 4 +---
- .../juce_audio_processors/format_types/juce_VSTPluginFormat.cpp | 7 ++++---
- 2 files changed, 5 insertions(+), 6 deletions(-)
-
-diff --git a/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp b/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp
-index 9b9a7f9..632677d 100644
---- a/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp
-+++ b/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp
-@@ -101,8 +101,7 @@ namespace Vst2
- // field in the Projucer. The VST2 SDK can be obtained from the
- // vstsdk3610_11_06_2018_build_37 (or older) VST3 SDK or JUCE version 5.3.2. You
- // also need a VST2 license from Steinberg to distribute VST2 plug-ins.
--#include "pluginterfaces/vst2.x/aeffect.h"
--#include "pluginterfaces/vst2.x/aeffectx.h"
-+#include "../../juce_audio_processors/format_types/juce_VSTInterface.h"
- }
-
- using namespace juce;
-@@ -124,7 +123,6 @@ using namespace juce;
- #pragma pack (push, 8)
- #endif
-
--#define JUCE_VSTINTERFACE_H_INCLUDED 1
-
- #include "../utility/juce_IncludeModuleHeaders.h"
- #include "../utility/juce_FakeMouseMoveGenerator.h"
-diff --git a/modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp b/modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp
-index 85dfb78..ad0a8e5 100644
---- a/modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp
-+++ b/modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp
-@@ -49,7 +49,6 @@
- #endif
-
- #define VST_FORCE_DEPRECATED 0
--#define JUCE_VSTINTERFACE_H_INCLUDED 1
-
- namespace Vst2
- {
-@@ -58,8 +57,7 @@ namespace Vst2
- // paths or use the "VST (Legacy) SDK Folder" field in the Projucer. The VST2
- // SDK can be obtained from the vstsdk3610_11_06_2018_build_37 (or older) VST3
- // SDK or JUCE version 5.3.2.
--#include <pluginterfaces/vst2.x/aeffect.h>
--#include <pluginterfaces/vst2.x/aeffectx.h>
-+#include "../../juce_audio_processors/format_types/juce_VSTInterface.h"
- }
-
- #include "juce_VSTCommon.h"
-@@ -81,6 +79,9 @@ namespace Vst2
-
- #include "juce_VSTMidiEventList.h"
-
-+#define resvd2 hostSpace2
-+#define nanoSeconds systemTimeNanoseconds
-+
- #if JUCE_MINGW
- #ifndef WM_APPCOMMAND
- #define WM_APPCOMMAND 0x0319
Deleted: juce-5.4.5-jucepath.patch
===================================================================
--- juce-5.4.5-jucepath.patch 2021-09-26 18:32:57 UTC (rev 1025693)
+++ juce-5.4.5-jucepath.patch 2021-09-26 18:41:36 UTC (rev 1025694)
@@ -1,22 +0,0 @@
-diff -ruN a/extras/Projucer/Source/Settings/jucer_StoredSettings.cpp b/extras/Projucer/Source/Settings/jucer_StoredSettings.cpp
---- a/extras/Projucer/Source/Settings/jucer_StoredSettings.cpp 2019-10-16 11:09:54.000000000 +0200
-+++ b/extras/Projucer/Source/Settings/jucer_StoredSettings.cpp 2020-01-07 15:11:25.562748860 +0100
-@@ -381,15 +381,15 @@
- {
- if (key == Ids::jucePath)
- {
-- return (os == TargetOS::windows ? "C:\\JUCE" : "~/JUCE");
-+ return (os == TargetOS::windows ? "C:\\JUCE" : "/usr/share/juce");
- }
- else if (key == Ids::defaultJuceModulePath)
- {
-- return (os == TargetOS::windows ? "C:\\JUCE\\modules" : "~/JUCE/modules");
-+ return (os == TargetOS::windows ? "C:\\JUCE\\modules" : "/usr/share/juce/modules");
- }
- else if (key == Ids::defaultUserModulePath)
- {
-- return (os == TargetOS::windows ? "C:\\modules" : "~/modules");
-+ return (os == TargetOS::windows ? "C:\\modules" : "~/.local/share/JUCE/modules");
- }
- else if (key == Ids::vstLegacyPath || key == Ids::vst3Path)
- {
Deleted: juce-5.4.5-link_to_systemlibs.patch
===================================================================
--- juce-5.4.5-link_to_systemlibs.patch 2021-09-26 18:32:57 UTC (rev 1025693)
+++ juce-5.4.5-link_to_systemlibs.patch 2021-09-26 18:41:36 UTC (rev 1025694)
@@ -1,69 +0,0 @@
-From: Debian Multimedia Maintainers <debian-multimedia at lists.debian.org>
-Date: Wed, 23 Oct 2019 09:44:36 +0200
-Subject: have Projucer link against the system libraries
-
-Origin: Debian
-Forwarded: no
-Last-Update: 2019-08-21
-
-since the Debian package has removed 3rd-party libraries (jpeg, png, flag,
-ogg/vorbis), we must use against the system libraries.
-Last-Update: 2019-08-21
----
- .../ProjectSaving/jucer_ProjectExport_Make.h | 36 ++++++++++++++++++++++
- 1 file changed, 36 insertions(+)
-
-diff --git a/extras/Projucer/Source/ProjectSaving/jucer_ProjectExport_Make.h b/extras/Projucer/Source/ProjectSaving/jucer_ProjectExport_Make.h
-index 88fd4f1..cdac636 100644
---- a/extras/Projucer/Source/ProjectSaving/jucer_ProjectExport_Make.h
-+++ b/extras/Projucer/Source/ProjectSaving/jucer_ProjectExport_Make.h
-@@ -464,6 +464,39 @@ private:
- if (isCurlEnabled() && ! isLoadCurlSymbolsLazilyEnabled())
- packages.add ("libcurl");
-
-+ // on Debian, a number of 3rd-party libs have been stripped away,
-+ // so we need to link to the system libraries
-+ if (project.getEnabledModules().isModuleEnabled ("juce_core"))
-+ {
-+ packages.add ("zlib");
-+ }
-+ if (project.getEnabledModules().isModuleEnabled ("juce_graphics"))
-+ {
-+ packages.add ("libjpeg");
-+ packages.add ("libpng");
-+ }
-+ if (project.getEnabledModules().isModuleEnabled ("juce_audio_formats"))
-+ {
-+ if(project.isConfigFlagEnabled ("JUCE_USE_FLAC", true))
-+ {
-+ packages.add ("flac");
-+ }
-+
-+ if(project.isConfigFlagEnabled ("JUCE_USE_OGGVORBIS", true))
-+ {
-+ packages.add ("vorbis");
-+ packages.add ("vorbisfile");
-+ packages.add ("vorbisenc");
-+ packages.add ("ogg");
-+ }
-+ }
-+ if (project.getEnabledModules().isModuleEnabled ("juce_audio_devices"))
-+ {
-+ if(project.isConfigFlagEnabled ("JUCE_JACK", true))
-+ {
-+ packages.add ("jack");
-+ }
-+ }
- packages.removeDuplicates (false);
-
- return packages;
-@@ -563,6 +596,9 @@ private:
- StringArray result (linuxLibs);
-
- auto libraries = StringArray::fromTokens (getExternalLibrariesString(), ";", "\"'");
-+#ifdef DEBIAN_JUCERPROJECT_LIBS
-+ libraries.addArray(StringArray::fromTokens (DEBIAN_JUCERPROJECT_LIBS, ";", "\"'"));
-+#endif
- libraries.removeEmptyStrings();
-
- for (auto& lib : libraries)
Added: juce-6.1.2-cmake_install.patch
===================================================================
--- juce-6.1.2-cmake_install.patch (rev 0)
+++ juce-6.1.2-cmake_install.patch 2021-09-26 18:41:36 UTC (rev 1025694)
@@ -0,0 +1,48 @@
+diff -ruN a/CMakeLists.txt b/CMakeLists.txt
+--- a/CMakeLists.txt 2021-09-20 14:26:04.000000000 +0200
++++ b/CMakeLists.txt 2021-09-25 23:53:15.171028235 +0200
+@@ -119,10 +119,10 @@
+ COMPATIBILITY ExactVersion
+ ${extra_version_arg})
+
+-set(JUCE_INSTALL_DESTINATION "lib/cmake/JUCE-${JUCE_VERSION}" CACHE STRING
++set(JUCE_INSTALL_DESTINATION "lib/cmake/juce" CACHE STRING
+ "The location, relative to the install prefix, where the JUCE config file will be installed")
+
+-set(JUCE_MODULE_PATH "include/JUCE-${JUCE_VERSION}/modules")
++set(JUCE_MODULE_PATH "share/juce/modules")
+ set(UTILS_INSTALL_DIR "${JUCE_INSTALL_DESTINATION}")
+ set(JUCEAIDE_PATH "${JUCE_TOOL_INSTALL_DIR}/${JUCE_JUCEAIDE_NAME}")
+ configure_package_config_file("${JUCE_CMAKE_UTILS_DIR}/JUCEConfig.cmake.in"
+@@ -130,7 +130,6 @@
+ PATH_VARS UTILS_INSTALL_DIR JUCEAIDE_PATH JUCE_MODULE_PATH
+ INSTALL_DESTINATION "${JUCE_INSTALL_DESTINATION}")
+
+-set(JUCE_MODULE_PATH "${JUCE_MODULES_DIR}")
+ set(UTILS_INSTALL_DIR "${CMAKE_CURRENT_SOURCE_DIR}/extras/Build/CMake")
+ get_target_property(JUCEAIDE_PATH juceaide IMPORTED_LOCATION)
+ configure_package_config_file("${JUCE_CMAKE_UTILS_DIR}/JUCEConfig.cmake.in"
+diff -ruN a/extras/Build/juceaide/CMakeLists.txt b/extras/Build/juceaide/CMakeLists.txt
+--- a/extras/Build/juceaide/CMakeLists.txt 2021-09-20 14:26:04.000000000 +0200
++++ b/extras/Build/juceaide/CMakeLists.txt 2021-09-25 21:41:25.590399181 +0200
+@@ -100,7 +100,7 @@
+
+ add_executable(juce::juceaide ALIAS juceaide)
+
+- set(JUCE_TOOL_INSTALL_DIR "bin/JUCE-${JUCE_VERSION}" CACHE STRING
++ set(JUCE_TOOL_INSTALL_DIR "bin" CACHE STRING
+ "The location, relative to the install prefix, where juceaide will be installed")
+
+ install(PROGRAMS "${imported_location}" DESTINATION "${JUCE_TOOL_INSTALL_DIR}")
+diff -ruN a/modules/CMakeLists.txt b/modules/CMakeLists.txt
+--- a/modules/CMakeLists.txt 2021-09-20 14:26:04.000000000 +0200
++++ b/modules/CMakeLists.txt 2021-09-25 21:39:39.876766842 +0200
+@@ -22,7 +22,7 @@
+ # ==============================================================================
+
+ juce_add_modules(
+- INSTALL_PATH "include/JUCE-${JUCE_VERSION}/modules"
++ INSTALL_PATH "share/juce/modules"
+ ALIAS_NAMESPACE juce
+ juce_analytics
+ juce_audio_basics
Added: juce-6.1.2-cmake_juce_utils.patch
===================================================================
--- juce-6.1.2-cmake_juce_utils.patch (rev 0)
+++ juce-6.1.2-cmake_juce_utils.patch 2021-09-26 18:41:36 UTC (rev 1025694)
@@ -0,0 +1,20 @@
+diff -ruN a/extras/Build/CMake/JUCEUtils.cmake b/extras/Build/CMake/JUCEUtils.cmake
+--- a/extras/Build/CMake/JUCEUtils.cmake 2021-09-20 14:26:04.000000000 +0200
++++ b/extras/Build/CMake/JUCEUtils.cmake 2021-09-25 19:28:31.202649065 +0200
+@@ -83,6 +83,7 @@
+ if((CMAKE_SYSTEM_NAME STREQUAL "Linux") OR (CMAKE_SYSTEM_NAME MATCHES ".*BSD"))
+ _juce_create_pkgconfig_target(JUCE_CURL_LINUX_DEPS libcurl)
+ _juce_create_pkgconfig_target(JUCE_BROWSER_LINUX_DEPS webkit2gtk-4.0 gtk+-x11-3.0)
++ _juce_create_pkgconfig_target(JUCE_IMG_LINUX_DEPS libjpeg libpng)
+ elseif(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
+ find_program(JUCE_XCRUN xcrun)
+
+@@ -225,6 +226,8 @@
+ if(needs_browser)
+ target_link_libraries(${target} PRIVATE juce::pkgconfig_JUCE_BROWSER_LINUX_DEPS)
+ endif()
++
++ target_link_libraries(${target} PRIVATE juce::pkgconfig_JUCE_IMG_LINUX_DEPS)
+ elseif(APPLE)
+ get_target_property(needs_storekit ${target} JUCE_NEEDS_STORE_KIT)
+
Added: juce-6.1.2-cmake_link_against_system_deps.patch
===================================================================
--- juce-6.1.2-cmake_link_against_system_deps.patch (rev 0)
+++ juce-6.1.2-cmake_link_against_system_deps.patch 2021-09-26 18:41:36 UTC (rev 1025694)
@@ -0,0 +1,88 @@
+diff -ruN a/extras/AudioPerformanceTest/CMakeLists.txt e/extras/AudioPerformanceTest/CMakeLists.txt
+--- a/extras/AudioPerformanceTest/CMakeLists.txt 2021-09-20 14:26:04.000000000 +0200
++++ e/extras/AudioPerformanceTest/CMakeLists.txt 2021-09-25 20:11:11.782908700 +0200
+@@ -32,6 +32,11 @@
+ JUCE_USE_CURL=0 JUCE_WEB_BROWSER=0)
+
+ target_link_libraries(AudioPerformanceTest PRIVATE
++ "FLAC"
++ "ogg"
++ "vorbis"
++ "vorbisenc"
++ "vorbisfile"
+ juce::juce_audio_utils
+ juce::juce_recommended_config_flags
+ juce::juce_recommended_lto_flags
+diff -ruN a/extras/AudioPluginHost/CMakeLists.txt e/extras/AudioPluginHost/CMakeLists.txt
+--- a/extras/AudioPluginHost/CMakeLists.txt 2021-09-20 14:26:04.000000000 +0200
++++ e/extras/AudioPluginHost/CMakeLists.txt 2021-09-25 20:31:04.882600939 +0200
+@@ -55,6 +55,10 @@
+ JUCE_WEB_BROWSER=0)
+
+ target_link_libraries(AudioPluginHost PRIVATE
++ "ogg"
++ "vorbis"
++ "vorbisenc"
++ "vorbisfile"
+ juce::juce_audio_utils
+ juce::juce_cryptography
+ juce::juce_dsp
+diff -ruN a/extras/NetworkGraphicsDemo/CMakeLists.txt e/extras/NetworkGraphicsDemo/CMakeLists.txt
+--- a/extras/NetworkGraphicsDemo/CMakeLists.txt 2021-09-20 14:26:04.000000000 +0200
++++ e/extras/NetworkGraphicsDemo/CMakeLists.txt 2021-09-25 20:14:30.376577084 +0200
+@@ -31,6 +31,13 @@
+ JUCE_USE_CURL=0 JUCE_WEB_BROWSER=0)
+
+ target_link_libraries(NetworkGraphicsDemo PRIVATE
++ "FLAC"
++ "ogg"
++ "png"
++ "vorbis"
++ "vorbisenc"
++ "vorbisfile"
++ "z"
+ juce::juce_audio_utils
+ juce::juce_cryptography
+ juce::juce_opengl
+diff -ruN a/extras/UnitTestRunner/CMakeLists.txt e/extras/UnitTestRunner/CMakeLists.txt
+--- a/extras/UnitTestRunner/CMakeLists.txt 2021-09-20 14:26:04.000000000 +0200
++++ e/extras/UnitTestRunner/CMakeLists.txt 2021-09-25 20:22:11.631027145 +0200
+@@ -33,6 +33,13 @@
+ JUCE_WEB_BROWSER=0)
+
+ target_link_libraries(UnitTestRunner PRIVATE
++ "FLAC"
++ "ogg"
++ "png16"
++ "vorbis"
++ "vorbisenc"
++ "vorbisfile"
++ "z"
+ juce::juce_analytics
+ juce::juce_audio_utils
+ juce::juce_dsp
+diff -ruN a/extras/Build/juceaide/CMakeLists.txt b/extras/Build/juceaide/CMakeLists.txt
+--- a/extras/Build/juceaide/CMakeLists.txt 2021-09-20 14:26:04.000000000 +0200
++++ b/extras/Build/juceaide/CMakeLists.txt 2021-09-25 18:52:06.968927572 +0200
+@@ -37,6 +37,9 @@
+ JUCE_USE_CURL=0)
+
+ target_link_libraries(juceaide PRIVATE
++ "jpeg"
++ "png16"
++ "z"
+ juce::juce_build_tools
+ juce::juce_recommended_config_flags
+ juce::juce_recommended_lto_flags
+diff -ruN a/extras/Projucer/CMakeLists.txt b/extras/Projucer/CMakeLists.txt
+--- a/extras/Projucer/CMakeLists.txt 2021-09-20 14:26:04.000000000 +0200
++++ b/extras/Projucer/CMakeLists.txt 2021-09-25 19:02:39.550915895 +0200
+@@ -158,6 +158,8 @@
+ ../Build/CMake/juce_runtime_arch_detection.cpp)
+
+ target_link_libraries(Projucer PRIVATE
++ "png16"
++ "jpeg"
+ ProjucerData
+ juce::juce_build_tools
+ juce::juce_cryptography
Added: juce-6.1.2-fst_vst.patch
===================================================================
--- juce-6.1.2-fst_vst.patch (rev 0)
+++ juce-6.1.2-fst_vst.patch 2021-09-26 18:41:36 UTC (rev 1025694)
@@ -0,0 +1,27 @@
+diff -ruN a/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp b/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp
+--- a/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp 2021-09-20 14:26:04.000000000 +0200
++++ b/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp 2021-09-26 00:58:02.047887074 +0200
+@@ -84,8 +84,7 @@
+ // field in the Projucer. The VST2 SDK can be obtained from the
+ // vstsdk3610_11_06_2018_build_37 (or older) VST3 SDK or JUCE version 5.3.2. You
+ // also need a VST2 license from Steinberg to distribute VST2 plug-ins.
+-#include "pluginterfaces/vst2.x/aeffect.h"
+-#include "pluginterfaces/vst2.x/aeffectx.h"
++#include "../../juce_audio_processors/format_types/juce_VSTInterface.h"
+ }
+
+ JUCE_END_IGNORE_WARNINGS_MSVC
+diff -ruN a/modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp b/modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp
+--- a/modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp 2021-09-20 14:26:04.000000000 +0200
++++ b/modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp 2021-09-26 01:03:15.142161924 +0200
+@@ -46,8 +46,8 @@
+ // paths or use the "VST (Legacy) SDK Folder" field in the Projucer. The VST2
+ // SDK can be obtained from the vstsdk3610_11_06_2018_build_37 (or older) VST3
+ // SDK or JUCE version 5.3.2.
+-#include <pluginterfaces/vst2.x/aeffect.h>
+-#include <pluginterfaces/vst2.x/aeffectx.h>
++#define FST2VST 1
++#include <pluginterfaces/fst/fst.h>
+ }
+
+ #include "juce_VSTCommon.h"
Added: juce-6.1.2-projucer_disable_update_check.patch
===================================================================
--- juce-6.1.2-projucer_disable_update_check.patch (rev 0)
+++ juce-6.1.2-projucer_disable_update_check.patch 2021-09-26 18:41:36 UTC (rev 1025694)
@@ -0,0 +1,11 @@
+diff -ruN a/extras/Projucer/Source/Application/jucer_AutoUpdater.cpp b/extras/Projucer/Source/Application/jucer_AutoUpdater.cpp
+--- a/extras/Projucer/Source/Application/jucer_AutoUpdater.cpp 2021-09-20 14:26:04.000000000 +0200
++++ b/extras/Projucer/Source/Application/jucer_AutoUpdater.cpp 2021-09-26 00:16:57.933901901 +0200
+@@ -41,6 +41,7 @@
+
+ void LatestVersionCheckerAndUpdater::checkForNewVersion (bool background)
+ {
++ return;
+ if (! isThreadRunning())
+ {
+ backgroundCheck = background;
Added: juce-6.1.2-projucer_juce_paths.patch
===================================================================
--- juce-6.1.2-projucer_juce_paths.patch (rev 0)
+++ juce-6.1.2-projucer_juce_paths.patch 2021-09-26 18:41:36 UTC (rev 1025694)
@@ -0,0 +1,22 @@
+diff -ruN a/extras/Projucer/Source/Settings/jucer_StoredSettings.cpp b/extras/Projucer/Source/Settings/jucer_StoredSettings.cpp
+--- a/extras/Projucer/Source/Settings/jucer_StoredSettings.cpp 2021-09-20 14:26:04.000000000 +0200
++++ b/extras/Projucer/Source/Settings/jucer_StoredSettings.cpp 2021-09-26 00:35:56.119917679 +0200
+@@ -358,15 +358,15 @@
+ {
+ if (key == Ids::jucePath)
+ {
+- return (os == TargetOS::windows ? "C:\\JUCE" : "~/JUCE");
++ return (os == TargetOS::windows ? "C:\\JUCE" : "/usr/share/doc/juce");
+ }
+ else if (key == Ids::defaultJuceModulePath)
+ {
+- return (os == TargetOS::windows ? "C:\\JUCE\\modules" : "~/JUCE/modules");
++ return (os == TargetOS::windows ? "C:\\JUCE\\modules" : "/usr/share/juce/modules");
+ }
+ else if (key == Ids::defaultUserModulePath)
+ {
+- return (os == TargetOS::windows ? "C:\\modules" : "~/modules");
++ return (os == TargetOS::windows ? "C:\\modules" : "~/.local/share/juce/modules");
+ }
+ else if (key == Ids::vstLegacyPath)
+ {
Modified: juce_VSTInterface.h
===================================================================
--- juce_VSTInterface.h 2021-09-26 18:32:57 UTC (rev 1025693)
+++ juce_VSTInterface.h 2021-09-26 18:41:36 UTC (rev 1025694)
@@ -352,6 +352,7 @@
, audioMasterWillReplaceOrAccumulate = hostOpcodeWillReplace
};
+typedef enum VstPlugInToHostOpcodes AudioMasterOpcodesX;
//==============================================================================
enum VstProcessingSampleType
More information about the arch-commits
mailing list