summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiroslav Šulc <fordfrog@gentoo.org>2024-10-31 20:05:11 +0100
committerMiroslav Šulc <fordfrog@gentoo.org>2024-10-31 20:05:21 +0100
commit7a64113fee10ee2a0131aae6f2eb241f0f754b64 (patch)
tree2a14ad2e828c5716dc46a630f5e6d161cb6ec6f4 /media-sound/audacity
parentnet-libs/webkit-gtk: 2.46.2 -> 2.46.3 (diff)
downloadgentoo-7a64113fee10ee2a0131aae6f2eb241f0f754b64.tar.gz
gentoo-7a64113fee10ee2a0131aae6f2eb241f0f754b64.tar.bz2
gentoo-7a64113fee10ee2a0131aae6f2eb241f0f754b64.zip
media-sound/audacity: bump to 3.7.0 + scrubbed patches
Closes: https://bugs.gentoo.org/937282 Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
Diffstat (limited to 'media-sound/audacity')
-rw-r--r--media-sound/audacity/Manifest1
-rw-r--r--media-sound/audacity/audacity-3.7.0.ebuild227
-rw-r--r--media-sound/audacity/files/audacity-3.2.3-allow-overriding-alsa-jack.patch9
-rw-r--r--media-sound/audacity/files/audacity-3.2.3-disable-ccache.patch8
-rw-r--r--media-sound/audacity/files/audacity-3.3.3-Findlibmad.patch8
-rw-r--r--media-sound/audacity/files/audacity-3.3.3-fix-includes.patch9
-rw-r--r--media-sound/audacity/files/audacity-3.3.3-fix-rpaths.patch20
-rw-r--r--media-sound/audacity/files/audacity-3.3.3-local-threadpool-libraries.patch10
-rw-r--r--media-sound/audacity/files/audacity-3.3.3-remove-conan-test-dependency.patch6
-rw-r--r--media-sound/audacity/files/audacity-3.3.3-upstream-fix-rapidjson.patch12
-rw-r--r--media-sound/audacity/files/audacity-3.4.2-audiocom-std-string.patch6
-rw-r--r--media-sound/audacity/files/audacity-3.4.2-fix-build-with-use-lv2-off.patch6
-rw-r--r--media-sound/audacity/files/audacity-3.7.0-allow-overriding-alsa-jack.patch39
-rw-r--r--media-sound/audacity/files/audacity-3.7.0-audiocom-std-string.patch24
-rw-r--r--media-sound/audacity/files/audacity-3.7.0-disable-ccache.patch22
-rw-r--r--media-sound/audacity/files/audacity-3.7.0-local-threadpool-libraries.patch30
-rw-r--r--media-sound/audacity/files/audacity-3.7.0-portsmf.patch11
17 files changed, 366 insertions, 82 deletions
diff --git a/media-sound/audacity/Manifest b/media-sound/audacity/Manifest
index 291b854872b1..0abf0ef1fa63 100644
--- a/media-sound/audacity/Manifest
+++ b/media-sound/audacity/Manifest
@@ -1,3 +1,4 @@
DIST Audacity-3.3.3.tar.gz 57120215 BLAKE2B 566aa2529f2708c80eb8e2887c3f3b2a1477d0825133b960f824d0697716d5b5e3a3ba0bcb14a20afc2eba7ac544da154339d1cd37261225b06326e8ee3f730c SHA512 c484e747f5207785b1872d031be2c3c50e7bbce087909c41930e593e2ab5777e0ab527a2770d90d89854bdd131e3f1f7afe3696b30420e3d8370e9f95527c937
DIST audacity-sources-3.4.2.tar.gz 57499669 BLAKE2B deb7cda94903826900c6d900883573a03a587ec3e03c6773a5452e3252f4c61ec76f09975f8e275b0fb8941f4e7d10eca66387d2f7c0a3f033ff4e1b1f08acc5 SHA512 5c754d2faa5867a98f24e8eae3fdb5d640483830ea9b62f94c6670e3689d87e61df6c14e9d557717d9fbfaca3b207188325369d8876248f1fc9edad43e4b500c
+DIST audacity-sources-3.7.0.tar.gz 61801488 BLAKE2B 97ff912d60c07a4e7509ad60814b944f3a0feb6b892328aee9375d64673eb2460bc54ef0dc2385173d92f8121ce330d0529a48940b0e08a434cbf05a8912f05c SHA512 0306cae5c42eb3b86781e37866fe1f95c0564c5a14525c69bbe9cfd614ee31d5296fa845bfd4be5f7a4c3e9ac67224e75dd114a16df9b5c6d1a1c79ce1d874bb
DIST progschj-ThreadPool-20140926.h 2612 BLAKE2B 54d050ad443512e60e5c99449dd7133f3884c1067288cfc36b96c06855537b83d9b599cd8b8fb7f24e20cbc4898585b11d98d3a33dc7571a886b57c806ad3b14 SHA512 f927489de9afe0217bb0552c45bea238693f9f183a062cb12a48e19576dc50a4d0ba449a12397012ae790cc5ebd741decc08128b66f795310dba4778122e9f3d
diff --git a/media-sound/audacity/audacity-3.7.0.ebuild b/media-sound/audacity/audacity-3.7.0.ebuild
new file mode 100644
index 000000000000..3b9ac4e8b0de
--- /dev/null
+++ b/media-sound/audacity/audacity-3.7.0.ebuild
@@ -0,0 +1,227 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+WX_GTK_VER="3.2-gtk3"
+
+inherit cmake wxwidgets xdg virtualx
+
+DESCRIPTION="Free crossplatform audio editor"
+HOMEPAGE="https://www.audacityteam.org/"
+
+# A header-only thread pool library, without a build system, about 100
+# lines of code. Probably not worth packaging individually. Check
+# cmake-proxies/CMakeLists.txt and search for "ThreadPool".
+MY_THREADPOOL_DATE=20140926
+MY_THREADPOOL="https://raw.githubusercontent.com/progschj/ThreadPool/9a42ec1329f259a5f4881a291db1dcb8f2ad9040/ThreadPool.h -> progschj-ThreadPool-${MY_THREADPOOL_DATE}.h"
+
+if [[ ${PV} = 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/audacity/audacity.git"
+else
+ KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+ MY_P="Audacity-${PV}"
+ S="${WORKDIR}/${PN}-sources-${PV}"
+ SRC_URI="https://github.com/audacity/audacity/releases/download/Audacity-${PV}/${PN}-sources-${PV}.tar.gz"
+fi
+
+SRC_URI+=" audiocom? ( ${MY_THREADPOOL} )"
+
+# GPL-2+, GPL-3 - Audacity itself
+# ZLIB - The ThreadPool single-header library
+# CC-BY-3.0 - Documentation
+LICENSE="GPL-2+
+ GPL-3
+ audiocom? ( ZLIB )
+"
+SLOT="0"
+IUSE="alsa audiocom ffmpeg +flac id3tag +ladspa +lv2 mpg123 +ogg
+ opus +portmixer sbsms test twolame vamp +vorbis wavpack"
+REQUIRED_USE="
+ opus? ( ogg )
+ vorbis? ( ogg )
+"
+RESTRICT="!test? ( test )"
+
+# dev-db/sqlite:3 hard dependency.
+# dev-libs/glib:2, x11-libs/gtk+:3 hard dependency, from
+# cmake-proxies/cmake-modules/dependencies/wxwidgets.cmake
+# sys-apps/util-linux hard dependency, from cmake-proxies/CMakeLists.txt
+# for libuuid
+# portmidi became non-optional: building without it results in build
+# failures, even with some of the Debian patches. It's probably not
+# in our best interest to fix that as a patch series.
+# glib, gtk and gdk are all directly relied on in the source, not just
+
+# Libraries used at runtime via dlopen:
+# - dev-libs/{serd,sord} - for LV2 support
+# - media-libs/{opus,sratom} :: For Opus and LV2 respectively
+# - media-sound/lame :: For MP3 export
+# - media-video/ffmpeg :: For generic FFMPEG export
+# This one has the interesting property of many versions being
+# supported at runtime. See: libraries/lib-ffmpeg-support/impl
+# Current support grid:
+# - Lavf - 5[789]
+# - Lavc - 5[789]
+# - Lavu - 5[2567]
+
+RDEPEND="dev-db/sqlite:3
+ dev-libs/expat
+ dev-libs/glib:2
+ media-libs/libjpeg-turbo:=
+ media-libs/libpng:=
+ media-libs/libsndfile
+ media-libs/libsoundtouch:=
+ media-libs/portaudio[alsa?]
+ media-libs/portmidi
+ media-libs/portsmf:=
+ media-libs/soxr
+ media-sound/lame
+ sys-apps/util-linux
+ sys-libs/zlib:=
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:3
+ x11-libs/wxGTK:${WX_GTK_VER}[X]
+ alsa? ( media-libs/alsa-lib )
+ audiocom? (
+ net-misc/curl
+ )
+ ffmpeg? ( media-video/ffmpeg )
+ flac? ( media-libs/flac:=[cxx] )
+ id3tag? ( media-libs/libid3tag:= )
+ lv2? (
+ dev-libs/serd
+ dev-libs/sord
+ media-libs/lilv
+ media-libs/lv2
+ media-libs/sratom
+ media-libs/suil
+ )
+ mpg123? ( media-sound/mpg123-base )
+ ogg? ( media-libs/libogg )
+ opus? (
+ media-libs/opus
+ media-libs/opusfile
+ )
+ sbsms? ( media-libs/libsbsms )
+ twolame? ( media-sound/twolame )
+ vamp? ( media-libs/vamp-plugin-sdk )
+ vorbis? ( media-libs/libvorbis )
+ wavpack? ( media-sound/wavpack )
+"
+DEPEND="${RDEPEND}
+ dev-libs/rapidjson
+ x11-base/xorg-proto
+ test? ( <dev-cpp/catch-3:0 )"
+BDEPEND="|| ( dev-lang/nasm dev-lang/yasm )
+ sys-devel/gettext
+ virtual/pkgconfig"
+
+PATCHES=(
+ # fixes include path
+ "${FILESDIR}/audacity-3.7.0-portsmf.patch"
+
+ # disables ccache
+ "${FILESDIR}/audacity-3.7.0-disable-ccache.patch"
+
+ # Disables some header-based detection
+ "${FILESDIR}/audacity-3.7.0-allow-overriding-alsa-jack.patch"
+
+ # For has_networking
+ "${FILESDIR}/audacity-3.7.0-local-threadpool-libraries.patch"
+
+ # Allows running tests without conan
+ "${FILESDIR}/audacity-3.3.3-remove-conan-test-dependency.patch"
+
+ # #920363
+ "${FILESDIR}/audacity-3.7.0-audiocom-std-string.patch"
+)
+
+src_prepare() {
+ cmake_src_prepare
+
+ # Keep in sync with has_networking and the ThreadPool.h SRC_URI.
+ if use audiocom; then
+ mkdir -p "${S}/lib-src/threadpool/ThreadPool/" || die
+ cp "${DISTDIR}/progschj-ThreadPool-${MY_THREADPOOL_DATE}.h" \
+ "${S}/lib-src/threadpool/ThreadPool/ThreadPool.h" || die
+ fi
+
+ # Remove documentation incorrect installations
+ sed -i -e \
+ '/install( FILES "${topdir}\/LICENSE.txt" "${topdir}\/README.md"/,+1d' \
+ src/CMakeLists.txt || die
+}
+
+src_configure() {
+ setup-wxwidgets
+
+ # * always use system libraries if possible
+ # * USE_VST was omitted, it appears to no longer have dependencies
+ # (this is different from VST3)
+ local mycmakeargs=(
+ # Tell the CMake-based build system it's building a release.
+ -DAUDACITY_BUILD_LEVEL=2
+
+ -Daudacity_conan_enabled=off
+
+ -Daudacity_has_networking=$(usex audiocom on off)
+ # Not useful on Gentoo.
+ -Daudacity_has_updates_check=OFF
+ -Daudacity_has_audiocom_upload=$(usex audiocom on off)
+
+ # Disable telemetry features.
+ -Daudacity_has_sentry_reporting=off
+ -Daudacity_has_crashreports=off
+
+ -Daudacity_has_tests=$(usex test on off)
+
+ # The VST3 SDK is unpackaged, and it appears to be under a breed
+ # of a proprietary license and the GPL.
+ -Daudacity_has_vst3=off
+
+ -Daudacity_lib_preference=system
+ -Daudacity_obey_system_dependencies=ON
+ -Daudacity_use_expat=system
+ -Daudacity_use_ffmpeg=$(usex ffmpeg loaded off)
+ -Daudacity_use_libid3tag=$(usex id3tag system off)
+ -Daudacity_use_ladspa=$(usex ladspa)
+ -Daudacity_use_lame=system
+ -Daudacity_use_wxwidgets=system
+ -Daudacity_use_libflac=$(usex flac system off)
+ -Daudacity_use_libmp3lame=system
+ -Daudacity_use_libmpg123=$(usex mpg123 system off)
+ -Daudacity_use_libogg=$(usex ogg system off)
+ -Daudacity_use_libopus=$(usex opus system off)
+ -Daudacity_use_libsndfile=system
+ -Daudacity_use_libvorbis=$(usex vorbis system off)
+ -Daudacity_use_lv2=$(usex lv2 system off)
+ -Daudacity_use_midi=system
+ -Daudacity_use_nyquist=local
+ -Daudacity_use_opusfile=$(usex opus system off)
+ -Daudacity_use_pch=off
+ -Daudacity_use_portaudio=system
+ -Daudacity_use_portmixer=$(usex portmixer system off)
+ -Daudacity_use_portsmf=system
+ -Daudacity_use_rapidjson=system
+ -Daudacity_use_sbsms=$(usex sbsms system off)
+ -Daudacity_use_soundtouch=system
+ -Daudacity_use_soxr=system
+ -Daudacity_use_twolame=$(usex twolame system off)
+ -Daudacity_use_vamp=$(usex vamp system off)
+ -Daudacity_use_wavpack=$(usex wavpack system off)
+
+ # See the allow-overriding-alsa-jack.patch patch
+ -DPA_HAS_ALSA=$(usex alsa on off)
+ ## Keep watch of PA_HAS_OSS in lib-src/portmixer/CMakeLists.txt;
+ ## AFAICT it introduces no deps as-is, but that could change.
+ ## Similar goes for PA_HAS_JACK.
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ virtx cmake_src_test
+}
diff --git a/media-sound/audacity/files/audacity-3.2.3-allow-overriding-alsa-jack.patch b/media-sound/audacity/files/audacity-3.2.3-allow-overriding-alsa-jack.patch
index 53ac8edc33fb..00852c3889a9 100644
--- a/media-sound/audacity/files/audacity-3.2.3-allow-overriding-alsa-jack.patch
+++ b/media-sound/audacity/files/audacity-3.2.3-allow-overriding-alsa-jack.patch
@@ -4,13 +4,6 @@ Date: Sat, 17 Dec 2022 21:13:56 +0100
Subject: [PATCH] portmixer: Allow overriding PA_HAS_{ALSA,JACK}
Not included for OSS as OSS is always included AFAICT.
----
- CMakeLists.txt | 3 +++
- lib-src/portmixer/CMakeLists.txt | 9 ++++++---
- 2 files changed, 9 insertions(+), 3 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 42e765691..c18a939e6 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -624,6 +624,9 @@ cmd_option( ${_OPT}use_portmixer "Build PortMixer support into Audacity" On)
@@ -23,8 +16,6 @@ index 42e765691..c18a939e6 100644
endif()
cmd_option( ${_OPT}use_nyquist "Build Nyquist support into Audacity" On)
-diff --git a/lib-src/portmixer/CMakeLists.txt b/lib-src/portmixer/CMakeLists.txt
-index 65a384fa0..1ddc8ed50 100644
--- a/lib-src/portmixer/CMakeLists.txt
+++ b/lib-src/portmixer/CMakeLists.txt
@@ -8,9 +8,12 @@ if (UNIX AND NOT APPLE)
diff --git a/media-sound/audacity/files/audacity-3.2.3-disable-ccache.patch b/media-sound/audacity/files/audacity-3.2.3-disable-ccache.patch
index a40847bb941c..c18e9e521d62 100644
--- a/media-sound/audacity/files/audacity-3.2.3-disable-ccache.patch
+++ b/media-sound/audacity/files/audacity-3.2.3-disable-ccache.patch
@@ -3,14 +3,6 @@ From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@aarsen.me>
Date: Fri, 16 Dec 2022 23:37:36 +0100
Subject: [PATCH] Don't force enable ccache
----
-Analogous to the similar patches in prior versions.
-
-CMakeLists.txt | 8 --------
- 1 file changed, 8 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 9c1c7baf2..42e765691 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -142,14 +142,6 @@ set( CMAKE_PREFIX_PATH
diff --git a/media-sound/audacity/files/audacity-3.3.3-Findlibmad.patch b/media-sound/audacity/files/audacity-3.3.3-Findlibmad.patch
index 7237614782b3..908d7efeb316 100644
--- a/media-sound/audacity/files/audacity-3.3.3-Findlibmad.patch
+++ b/media-sound/audacity/files/audacity-3.3.3-Findlibmad.patch
@@ -7,14 +7,6 @@ Date: Fri, 14 Jul 2023 21:17:45 +0000
Subject: [PATCH] Add missing Findlibmad.cmake file
This fixes compiling against the system installed libmad.
----
- cmake-proxies/cmake-modules/Findlibmad.cmake | 35 ++++++++++++++++++++
- 1 file changed, 35 insertions(+)
- create mode 100644 cmake-proxies/cmake-modules/Findlibmad.cmake
-
-diff --git a/cmake-proxies/cmake-modules/Findlibmad.cmake b/cmake-proxies/cmake-modules/Findlibmad.cmake
-new file mode 100644
-index 000000000000..0858c2d93e24
--- /dev/null
+++ b/cmake-proxies/cmake-modules/Findlibmad.cmake
@@ -0,0 +1,35 @@
diff --git a/media-sound/audacity/files/audacity-3.3.3-fix-includes.patch b/media-sound/audacity/files/audacity-3.3.3-fix-includes.patch
index 2e8685a09a3f..4e9d2d0788d3 100644
--- a/media-sound/audacity/files/audacity-3.3.3-fix-includes.patch
+++ b/media-sound/audacity/files/audacity-3.3.3-fix-includes.patch
@@ -4,13 +4,6 @@ Date: Fri, 14 Jul 2023 21:08:52 +0000
Subject: [PATCH] Fix ImportMP3_MAD and ImportQT include directives
This fixes 'file not found' errors.
----
- src/import/ImportMP3_MAD.cpp | 6 +++---
- src/import/ImportQT.cpp | 8 ++++----
- 2 files changed, 7 insertions(+), 7 deletions(-)
-
-diff --git a/src/import/ImportMP3_MAD.cpp b/src/import/ImportMP3_MAD.cpp
-index fa26eaca49dd..9e6dfdf3a534 100644
--- a/src/import/ImportMP3_MAD.cpp
+++ b/src/import/ImportMP3_MAD.cpp
@@ -62,10 +62,10 @@ static Importer::RegisteredUnusableImportPlugin registered
@@ -27,8 +20,6 @@ index fa26eaca49dd..9e6dfdf3a534 100644
// PRL: include these last,
// and correct some preprocessor namespace pollution from wxWidgets that
-diff --git a/src/import/ImportQT.cpp b/src/import/ImportQT.cpp
-index f931b5a63fc1..5b49c1630b7f 100644
--- a/src/import/ImportQT.cpp
+++ b/src/import/ImportQT.cpp
@@ -17,8 +17,8 @@
diff --git a/media-sound/audacity/files/audacity-3.3.3-fix-rpaths.patch b/media-sound/audacity/files/audacity-3.3.3-fix-rpaths.patch
index b3fcdb85b022..5588f2e2b968 100644
--- a/media-sound/audacity/files/audacity-3.3.3-fix-rpaths.patch
+++ b/media-sound/audacity/files/audacity-3.3.3-fix-rpaths.patch
@@ -8,9 +8,8 @@ Fixes: https://github.com/audacity/audacity/issues/3289
Forwarded: https://github.com/audacity/audacity/pull/3671
[1] https://gitlab.kitware.com/cmake/community/-/wikis/doc/cmake/RPATH-handling#caveats
-diff -Nuar a/CMakeLists.txt b/CMakeLists.txt
---- a/CMakeLists.txt 2023-06-08 15:17:02.000000000 +0200
-+++ b/CMakeLists.txt 2023-07-14 01:18:46.452163033 +0200
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
@@ -412,6 +412,7 @@
set( _LIBDIR "${CMAKE_INSTALL_LIBDIR}" )
set( _DATADIR "${CMAKE_INSTALL_DATADIR}" )
@@ -19,9 +18,8 @@ diff -Nuar a/CMakeLists.txt b/CMakeLists.txt
set( _PKGDATA "${_DATADIR}/audacity/" )
set( _MANDIR "${CMAKE_INSTALL_MANDIR}" )
set( _MODDIR "${_PKGLIB}/modules" )
-diff -Nuar a/cmake-proxies/cmake-modules/AudacityFunctions.cmake b/cmake-proxies/cmake-modules/AudacityFunctions.cmake
---- a/cmake-proxies/cmake-modules/AudacityFunctions.cmake 2023-06-08 15:17:02.000000000 +0200
-+++ b/cmake-proxies/cmake-modules/AudacityFunctions.cmake 2023-07-14 01:23:42.025628702 +0200
+--- a/cmake-proxies/cmake-modules/AudacityFunctions.cmake
++++ b/cmake-proxies/cmake-modules/AudacityFunctions.cmake
@@ -338,6 +338,17 @@
set( "${var}" "${node}" PARENT_SCOPE )
endfunction()
@@ -70,17 +68,15 @@ diff -Nuar a/cmake-proxies/cmake-modules/AudacityFunctions.cmake b/cmake-proxies
)
if( NOT CMAKE_SYSTEM_NAME MATCHES "Windows|Darwin" )
-diff -Nuar a/modules/mod-script-pipe/CMakeLists.txt b/modules/mod-script-pipe/CMakeLists.txt
---- a/modules/mod-script-pipe/CMakeLists.txt 2023-06-08 15:17:02.000000000 +0200
-+++ b/modules/mod-script-pipe/CMakeLists.txt 2023-07-14 01:25:10.730068564 +0200
+--- a/modules/mod-script-pipe/CMakeLists.txt
++++ b/modules/mod-script-pipe/CMakeLists.txt
@@ -15,3 +15,4 @@
)
audacity_module( mod-script-pipe "${SOURCES}" "Audacity"
"${DEFINES}" "" )
+install_audacity_module( mod-script-pipe )
-diff -Nuar a/src/CMakeLists.txt b/src/CMakeLists.txt
---- a/src/CMakeLists.txt 2023-06-08 15:17:02.000000000 +0200
-+++ b/src/CMakeLists.txt 2023-07-14 01:26:23.098427419 +0200
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
@@ -1557,11 +1557,6 @@
RUNTIME
RESOURCE DESTINATION "${_PKGDATA}" )
diff --git a/media-sound/audacity/files/audacity-3.3.3-local-threadpool-libraries.patch b/media-sound/audacity/files/audacity-3.3.3-local-threadpool-libraries.patch
index a3ef6cf3859d..8ca232d5896a 100644
--- a/media-sound/audacity/files/audacity-3.3.3-local-threadpool-libraries.patch
+++ b/media-sound/audacity/files/audacity-3.3.3-local-threadpool-libraries.patch
@@ -5,9 +5,8 @@ From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@aarsen.me>
Date: Sun, 18 Dec 2022 13:37:35 +0100
Subject: [PATCH] Allow using local dependency for threadpool
-diff -Nuar a/cmake-proxies/cmake-modules/DependenciesList.cmake b/cmake-proxies/cmake-modules/DependenciesList.cmake
---- a/cmake-proxies/cmake-modules/DependenciesList.cmake 2023-07-14 03:40:22.518292749 +0200
-+++ b/cmake-proxies/cmake-modules/DependenciesList.cmake 2023-07-14 03:40:43.790398232 +0200
+--- a/cmake-proxies/cmake-modules/DependenciesList.cmake
++++ b/cmake-proxies/cmake-modules/DependenciesList.cmake
@@ -56,7 +56,6 @@
audacity_find_package(PortAudio REQUIRED)
@@ -16,9 +15,8 @@ diff -Nuar a/cmake-proxies/cmake-modules/DependenciesList.cmake b/cmake-proxies/
audacity_find_package(CURL REQUIRED CONAN_PACKAGE_NAME libcurl)
endif()
-diff -Nuar a/libraries/lib-network-manager/CMakeLists.txt b/libraries/lib-network-manager/CMakeLists.txt
---- a/libraries/lib-network-manager/CMakeLists.txt 2023-07-14 03:38:42.061794613 +0200
-+++ b/libraries/lib-network-manager/CMakeLists.txt 2023-07-14 03:38:27.913724456 +0200
+--- a/libraries/lib-network-manager/CMakeLists.txt
++++ b/libraries/lib-network-manager/CMakeLists.txt
@@ -43,4 +43,8 @@
set ( DEFINES INTERFACE "HAS_NETWORKING" )
diff --git a/media-sound/audacity/files/audacity-3.3.3-remove-conan-test-dependency.patch b/media-sound/audacity/files/audacity-3.3.3-remove-conan-test-dependency.patch
index 63dd3b58f0f0..2898cd1a53cf 100644
--- a/media-sound/audacity/files/audacity-3.3.3-remove-conan-test-dependency.patch
+++ b/media-sound/audacity/files/audacity-3.3.3-remove-conan-test-dependency.patch
@@ -9,12 +9,6 @@ Subject: [PATCH] Remove dependency on conan for unit tests
These run fine with catch2 installed from system package manager; there
is no reason to enforce conan dependency.
----
- CMakeLists.txt | 12 ++++--------
- 1 file changed, 4 insertions(+), 8 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index cbe79a43b933..7b682c4e729d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -228,15 +228,11 @@ cmd_option( ${_OPT}has_url_schemes_support
diff --git a/media-sound/audacity/files/audacity-3.3.3-upstream-fix-rapidjson.patch b/media-sound/audacity/files/audacity-3.3.3-upstream-fix-rapidjson.patch
index c95676a18cfe..e3c110e72d07 100644
--- a/media-sound/audacity/files/audacity-3.3.3-upstream-fix-rapidjson.patch
+++ b/media-sound/audacity/files/audacity-3.3.3-upstream-fix-rapidjson.patch
@@ -6,14 +6,6 @@ From: Dmitry Vedenko <dmitry@crsib.me>
Date: Mon, 7 Aug 2023 17:12:49 +0300
Subject: [PATCH] Fixes RapidJSON missing from Linux builds
----
- .../cmake-modules/dependencies/rapidjson.cmake | 15 +++++++++++++--
- linux/packages/arch/dependencies.sh | 1 +
- linux/packages/fedora34/dependencies.sh | 1 +
- 3 files changed, 15 insertions(+), 2 deletions(-)
-
-diff --git a/cmake-proxies/cmake-modules/dependencies/rapidjson.cmake b/cmake-proxies/cmake-modules/dependencies/rapidjson.cmake
-index c44aad81b8e4..ba95962a6eb6 100644
--- a/cmake-proxies/cmake-modules/dependencies/rapidjson.cmake
+++ b/cmake-proxies/cmake-modules/dependencies/rapidjson.cmake
@@ -1,7 +1,18 @@
@@ -37,8 +29,6 @@ index c44aad81b8e4..ba95962a6eb6 100644
+ endif()
endif()
endif()
-diff --git a/linux/packages/arch/dependencies.sh b/linux/packages/arch/dependencies.sh
-index d34012442efd..8aa8792057d4 100755
--- a/linux/packages/arch/dependencies.sh
+++ b/linux/packages/arch/dependencies.sh
@@ -44,6 +44,7 @@ deps=(
@@ -49,8 +39,6 @@ index d34012442efd..8aa8792057d4 100755
)
pacman -Syu --noconfirm \
-diff --git a/linux/packages/fedora34/dependencies.sh b/linux/packages/fedora34/dependencies.sh
-index 8f6ce8ff2eb8..1e039612b095 100755
--- a/linux/packages/fedora34/dependencies.sh
+++ b/linux/packages/fedora34/dependencies.sh
@@ -54,6 +54,7 @@ deps=(
diff --git a/media-sound/audacity/files/audacity-3.4.2-audiocom-std-string.patch b/media-sound/audacity/files/audacity-3.4.2-audiocom-std-string.patch
index f06799030b4b..3a0289c69a0f 100644
--- a/media-sound/audacity/files/audacity-3.4.2-audiocom-std-string.patch
+++ b/media-sound/audacity/files/audacity-3.4.2-audiocom-std-string.patch
@@ -9,12 +9,6 @@ std::string {aka std::_cxx11::basic_string<char>}`
See: https://bugs.gentoo.org/920363
Signed-off-by: Azamat H. Hackimov <azamat.hackimov@gmail.com>
----
- libraries/lib-cloud-audiocom/OAuthService.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/libraries/lib-cloud-audiocom/OAuthService.h b/libraries/lib-cloud-audiocom/OAuthService.h
-index bd01f1656..18761df6d 100644
--- a/libraries/lib-cloud-audiocom/OAuthService.h
+++ b/libraries/lib-cloud-audiocom/OAuthService.h
@@ -12,6 +12,7 @@
diff --git a/media-sound/audacity/files/audacity-3.4.2-fix-build-with-use-lv2-off.patch b/media-sound/audacity/files/audacity-3.4.2-fix-build-with-use-lv2-off.patch
index 8c47ff8642d7..4a21f19dd0e5 100644
--- a/media-sound/audacity/files/audacity-3.4.2-fix-build-with-use-lv2-off.patch
+++ b/media-sound/audacity/files/audacity-3.4.2-fix-build-with-use-lv2-off.patch
@@ -7,12 +7,6 @@ libraries/lib-lv2/LV2Utils.h:18:10: fatal error: lilv/lilv.h: No such file or di
18 | #include "lilv/lilv.h" // for lilv_free
| ^~~~~~~~~~~~~
compilation terminated.
----
- libraries/CMakeLists.txt | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/libraries/CMakeLists.txt b/libraries/CMakeLists.txt
-index b1ebefa1b023..879cd948791d 100644
--- a/libraries/CMakeLists.txt
+++ b/libraries/CMakeLists.txt
@@ -50,7 +50,6 @@ set( LIBRARIES
diff --git a/media-sound/audacity/files/audacity-3.7.0-allow-overriding-alsa-jack.patch b/media-sound/audacity/files/audacity-3.7.0-allow-overriding-alsa-jack.patch
new file mode 100644
index 000000000000..c0689d4724ac
--- /dev/null
+++ b/media-sound/audacity/files/audacity-3.7.0-allow-overriding-alsa-jack.patch
@@ -0,0 +1,39 @@
+From e46dbcb9763f4367705c66009703f15ff0ff5558 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@aarsen.me>
+Date: Sat, 17 Dec 2022 21:13:56 +0100
+Subject: [PATCH] portmixer: Allow overriding PA_HAS_{ALSA,JACK}
+
+Not included for OSS as OSS is always included AFAICT.
+
+REBASED
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -615,6 +607,9 @@ cmd_option( ${_OPT}use_portmixer "Build PortMixer support into Audacity" On)
+ if( ${_OPT}use_portmixer )
+ set(USE_PORTMIXER Yes)
+ add_subdirectory( "lib-src/portmixer" )
++else()
++ # Suppress bogus warnings about unused variables
++ set (unusedIgnore "${PA_HAS_ALSA}${PA_HAS_JACK}${PA_HAS_OSS}")
+ endif()
+
+ cmd_option( ${_OPT}use_nyquist "Build Nyquist support into Audacity" On)
+--- a/lib-src/portmixer/CMakeLists.txt
++++ b/lib-src/portmixer/CMakeLists.txt
+@@ -8,9 +8,12 @@ if (UNIX AND NOT APPLE)
+ include(CheckIncludeFile)
+ set(CMAKE_REQUIRED_LIBRARIES portaudio::portaudio)
+
+- check_include_file( "pa_jack.h" PA_HAS_JACK )
+-
+- check_include_file( "pa_linux_alsa.h" PA_HAS_ALSA )
++ if ( NOT DEFINED PA_HAS_JACK )
++ check_include_file( "pa_jack.h" PA_HAS_JACK )
++ endif()
++ if ( NOT DEFINED PA_HAS_ALSA )
++ check_include_file( "pa_linux_alsa.h" PA_HAS_ALSA )
++ endif()
+ if( PA_HAS_ALSA )
+ find_package( ALSA REQUIRED QUIET )
+ endif()
diff --git a/media-sound/audacity/files/audacity-3.7.0-audiocom-std-string.patch b/media-sound/audacity/files/audacity-3.7.0-audiocom-std-string.patch
new file mode 100644
index 000000000000..b844429c8776
--- /dev/null
+++ b/media-sound/audacity/files/audacity-3.7.0-audiocom-std-string.patch
@@ -0,0 +1,24 @@
+From 23f1df0b13c46cef746674434640588864f8c453 Mon Sep 17 00:00:00 2001
+From: "Azamat H. Hackimov" <azamat.hackimov@gmail.com>
+Date: Sun, 18 Feb 2024 23:16:28 +0300
+Subject: [PATCH] Fix compilation with audiocom
+
+Fix error `OAuthService.h: error: field mAccessToken has incomplete type
+std::string {aka std::_cxx11::basic_string<char>}`
+
+See: https://bugs.gentoo.org/920363
+
+Signed-off-by: Azamat H. Hackimov <azamat.hackimov@gmail.com>
+
+REBASED
+
+--- a/libraries/lib-cloud-audiocom/OAuthService.h
++++ b/libraries/lib-cloud-audiocom/OAuthService.h
+@@ -12,6 +12,7 @@
+
+ #include <chrono>
+ #include <functional>
++#include <string>
+ #include <string_view>
+ #include <string>
+ #include <mutex>
diff --git a/media-sound/audacity/files/audacity-3.7.0-disable-ccache.patch b/media-sound/audacity/files/audacity-3.7.0-disable-ccache.patch
new file mode 100644
index 000000000000..9c2b9ebebde6
--- /dev/null
+++ b/media-sound/audacity/files/audacity-3.7.0-disable-ccache.patch
@@ -0,0 +1,22 @@
+From afd777fbcbaa9e9c14b80374c60ecd631eb537ea Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@aarsen.me>
+Date: Fri, 16 Dec 2022 23:37:36 +0100
+Subject: [PATCH] Don't force enable ccache
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -140,14 +140,6 @@ set( CMAKE_PREFIX_PATH
+ set( CMAKE_CXX_STANDARD 17 )
+ set( CMAKE_CXX_STANDARD_REQUIRED ON )
+
+-# Use ccache if available
+-find_program( CCACHE_PROGRAM ccache )
+-mark_as_advanced( FORCE CCACHE_PROGRAM )
+-
+-if( CCACHE_PROGRAM )
+- set_property( GLOBAL PROPERTY RULE_LAUNCH_COMPILE "${CCACHE_PROGRAM}" )
+-endif()
+-
+ # Define option() prefix
+ set( _OPT "audacity_" )
+
diff --git a/media-sound/audacity/files/audacity-3.7.0-local-threadpool-libraries.patch b/media-sound/audacity/files/audacity-3.7.0-local-threadpool-libraries.patch
new file mode 100644
index 000000000000..c47ae9bd508a
--- /dev/null
+++ b/media-sound/audacity/files/audacity-3.7.0-local-threadpool-libraries.patch
@@ -0,0 +1,30 @@
+This is an adapted version of:
+
+From 7b5f56ec441fb472b61bae14e1efa353db4d7aca Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@aarsen.me>
+Date: Sun, 18 Dec 2022 13:37:35 +0100
+Subject: [PATCH] Allow using local dependency for threadpool
+
+REBASED
+
+--- a/cmake-proxies/cmake-modules/DependenciesList.cmake
++++ b/cmake-proxies/cmake-modules/DependenciesList.cmake
+@@ -63,7 +63,6 @@ endif()
+ audacity_find_package(PortAudio REQUIRED)
+
+ if( ${_OPT}has_networking )
+- audacity_find_package(ThreadPool REQUIRED)
+ audacity_find_package(CURL REQUIRED CONAN_PACKAGE_NAME libcurl)
+ endif()
+
+--- a/libraries/lib-network-manager/CMakeLists.txt
++++ b/libraries/lib-network-manager/CMakeLists.txt
+@@ -53,4 +53,8 @@ PRIVATE
+ set ( DEFINES INTERFACE "HAS_NETWORKING" PRIVATE "WIN32_LEAN_AND_MEAN" )
+
+
++add_library ( threadpool::threadpool INTERFACE IMPORTED GLOBAL )
++target_include_directories ( threadpool::threadpool INTERFACE
++ ${CMAKE_SOURCE_DIR}/lib-src/threadpool
++)
+ audacity_library( ${TARGET} "${SOURCES}" "${LIBRARIES}" "${DEFINES}" "" )
diff --git a/media-sound/audacity/files/audacity-3.7.0-portsmf.patch b/media-sound/audacity/files/audacity-3.7.0-portsmf.patch
new file mode 100644
index 000000000000..612f8b7b5161
--- /dev/null
+++ b/media-sound/audacity/files/audacity-3.7.0-portsmf.patch
@@ -0,0 +1,11 @@
+--- a/libraries/lib-note-track/WrapAllegro.h
++++ b/libraries/lib-note-track/WrapAllegro.h
+@@ -13,7 +13,7 @@
+ #elif defined(__linux__)
+
+ #include <cstring> // Allegro include fails if this header isn't included due to no memcpy
+-#include "allegro.h"
++#include <portsmf/allegro.h>
+
+ #else //_MSC_VER
+