summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'media-sound/audacity')
-rw-r--r--media-sound/audacity/Manifest3
-rw-r--r--media-sound/audacity/audacity-3.4.2.ebuild218
-rw-r--r--media-sound/audacity/audacity-9999.ebuild94
-rw-r--r--media-sound/audacity/files/audacity-3.4.2-audiocom-std-string.patch30
4 files changed, 295 insertions, 50 deletions
diff --git a/media-sound/audacity/Manifest b/media-sound/audacity/Manifest
index 6af378802534..ab7fe68fc43e 100644
--- a/media-sound/audacity/Manifest
+++ b/media-sound/audacity/Manifest
@@ -1,6 +1,7 @@
DIST Audacity-2.4.2.tar.gz 61248430 BLAKE2B bb7e31e22d2a09c38767b019ed5c2c2be31741594715d73452fc4622d171a6209e87009b6f820873cc1cff2f6b85547a3dea0a2d8d4dd7195617509e571ee9b8 SHA512 0d9cdabf5ba2c7207e8d8e4a8bdfc3e7d32277386436ecb480e3ff781720f5449a56b310ba91c78ca67afb752e2ab736abd5b7ce40d19d153bfc4a2067343a3d
DIST Audacity-3.2.5.tar.gz 57017533 BLAKE2B b8e48cab1c89cadb343a17fcb1d811a7363231152867f842ffff6dd8329103c9a407beb3f0b587e35e711070230c5c86d5aa97578b5a7c08bdbb029570677a24 SHA512 850ce4dc27e2c6d0b63bf0c0186deb417febc49b561e572a697f0e7ae2a7b2b3f39816b7beeacf9cbfb9525de85923e2ce6d06486fcf1855e34e2ecd1b7e3582
+DIST Audacity-3.3.3.tar.gz 57120215 BLAKE2B 566aa2529f2708c80eb8e2887c3f3b2a1477d0825133b960f824d0697716d5b5e3a3ba0bcb14a20afc2eba7ac544da154339d1cd37261225b06326e8ee3f730c SHA512 c484e747f5207785b1872d031be2c3c50e7bbce087909c41930e593e2ab5777e0ab527a2770d90d89854bdd131e3f1f7afe3696b30420e3d8370e9f95527c937
DIST audacity-manual-2.4.2.zip 22459298 BLAKE2B 001ca56f73c3c48f9b49b3b6478c6de6fb4c305fb869b11d93e41d5aee7ee45133bd7047c4d281fed4859d6c6061352dfaeb995e7b2602e42e09ab04e05e00dc SHA512 8afc7faffb0da87efe0c2cb64f8593777357252b4893ae0522ec7b37b4f7806ad9582ca9e4b751d085c2598aba6b580dacd805daa00b236a4ff8f6663a80135c
DIST audacity-manual-3.2.5.tar.gz 22260237 BLAKE2B e3c96282b5eeffe5854781cfe316fb40c10212c9bc07a081433cf947363f79892e7397b53a31aa33337b5d0b6a00e14bd420d6f064515455055233a45f5ebf47 SHA512 9bd2f2b3268ff7259f1fa0957ab3f15e7b58d72a3199be4e271bac67d9d0b44967b2b783ea36f9392ed1bdf004274754468b3902c3a72a204d08333a5c07894c
-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 progschj-ThreadPool-20140926.h 2612 BLAKE2B 54d050ad443512e60e5c99449dd7133f3884c1067288cfc36b96c06855537b83d9b599cd8b8fb7f24e20cbc4898585b11d98d3a33dc7571a886b57c806ad3b14 SHA512 f927489de9afe0217bb0552c45bea238693f9f183a062cb12a48e19576dc50a4d0ba449a12397012ae790cc5ebd741decc08128b66f795310dba4778122e9f3d
diff --git a/media-sound/audacity/audacity-3.4.2.ebuild b/media-sound/audacity/audacity-3.4.2.ebuild
new file mode 100644
index 000000000000..27f06abecfde
--- /dev/null
+++ b/media-sound/audacity/audacity-3.4.2.ebuild
@@ -0,0 +1,218 @@
+# 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"
+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
+ dev-libs/rapidjson:=
+ 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 )
+ ogg? ( media-libs/libogg )
+ opus? ( media-libs/opus )
+ sbsms? ( media-libs/libsbsms )
+ twolame? ( media-sound/twolame )
+ vamp? ( media-libs/vamp-plugin-sdk )
+ vorbis? ( media-libs/libvorbis )
+ wavpack? ( media-sound/wavpack )
+"
+DEPEND="${RDEPEND}
+ test? ( <dev-cpp/catch-3:0 )"
+BDEPEND="
+ sys-devel/gettext
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ # Equivalent to previous versions
+ "${FILESDIR}/audacity-3.2.3-disable-ccache.patch"
+ # From Debian
+ "${FILESDIR}/audacity-3.3.3-fix-rpaths.patch"
+
+ # Disables some header-based detection
+ "${FILESDIR}/audacity-3.2.3-allow-overriding-alsa-jack.patch"
+
+ # For has_networking
+ "${FILESDIR}/audacity-3.3.3-local-threadpool-libraries.patch"
+
+ # Allows running tests without conan
+ "${FILESDIR}/audacity-3.3.3-remove-conan-test-dependency.patch"
+
+ # #920363
+ "${FILESDIR}/audacity-3.4.2-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 flac 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_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/audacity-9999.ebuild b/media-sound/audacity/audacity-9999.ebuild
index be537c7c96c0..9246a3ee4e7c 100644
--- a/media-sound/audacity/audacity-9999.ebuild
+++ b/media-sound/audacity/audacity-9999.ebuild
@@ -20,10 +20,10 @@ if [[ ${PV} = 9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/audacity/audacity.git"
else
- KEYWORDS="~amd64 ~riscv"
+ KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
MY_P="Audacity-${PV}"
- S="${WORKDIR}/${PN}-${MY_P}"
- SRC_URI="https://github.com/audacity/audacity/archive/${MY_P}.tar.gz"
+ 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} )"
@@ -39,7 +39,6 @@ SLOT="0"
IUSE="alsa audiocom ffmpeg +flac id3tag +ladspa +lv2 mpg123 ogg
opus +portmixer sbsms test twolame vamp +vorbis wavpack"
RESTRICT="!test? ( test )"
-REQUIRED_USE="test? ( mpg123 )"
# dev-db/sqlite:3 hard dependency.
# dev-libs/glib:2, x11-libs/gtk+:3 hard dependency, from
@@ -66,7 +65,9 @@ REQUIRED_USE="test? ( mpg123 )"
RDEPEND="dev-db/sqlite:3
dev-libs/expat
dev-libs/glib:2
- dev-libs/rapidjson
+ dev-libs/rapidjson:=
+ media-libs/libjpeg-turbo:=
+ media-libs/libpng:=
media-libs/libsndfile
media-libs/libsoundtouch:=
media-libs/portaudio[alsa?]
@@ -74,13 +75,13 @@ RDEPEND="dev-db/sqlite:3
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]
- sys-apps/util-linux
alsa? ( media-libs/alsa-lib )
audiocom? (
- dev-libs/rapidjson
net-misc/curl
)
ffmpeg? ( media-video/ffmpeg )
@@ -105,42 +106,44 @@ RDEPEND="dev-db/sqlite:3
"
DEPEND="${RDEPEND}
test? ( <dev-cpp/catch-3:0 )"
-BDEPEND="app-arch/unzip
+BDEPEND="
sys-devel/gettext
virtual/pkgconfig
"
PATCHES=(
# Equivalent to previous versions
- "${FILESDIR}/${PN}-3.2.3-disable-ccache.patch"
+ "${FILESDIR}/audacity-3.2.3-disable-ccache.patch"
# From Debian
- "${FILESDIR}/${PN}-3.3.3-fix-rpaths.patch"
+ "${FILESDIR}/audacity-3.3.3-fix-rpaths.patch"
# Disables some header-based detection
- "${FILESDIR}/${PN}-3.2.3-allow-overriding-alsa-jack.patch"
+ "${FILESDIR}/audacity-3.2.3-allow-overriding-alsa-jack.patch"
# For has_networking
- "${FILESDIR}/${PN}-3.3.3-local-threadpool-libraries.patch"
+ "${FILESDIR}/audacity-3.3.3-local-threadpool-libraries.patch"
# Allows running tests without conan
- "${FILESDIR}/${PN}-3.3.3-remove-conan-test-dependency.patch"
+ "${FILESDIR}/audacity-3.3.3-remove-conan-test-dependency.patch"
+
+ # #920363
+ "${FILESDIR}/audacity-3.4.2-audiocom-std-string.patch"
)
src_prepare() {
cmake_src_prepare
- local header_subs="${S}/libraries/lib-note-track"
- cat <<-EOF >"${header_subs}/WrapAllegro.h" || die
- /* Hack the allegro.h header substitute to use system headers. */
- #include <portsmf/allegro.h>
- EOF
-
# 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
+ 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() {
@@ -154,28 +157,29 @@ src_configure() {
setup-wxwidgets
# * always use system libraries if possible
- # * options listed roughly in the order specified in
- # cmake-proxies/CMakeLists.txt
# * 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_use_nyquist=local
- -Daudacity_use_pch=OFF
- -Daudacity_use_portmixer=$(usex portmixer system off)
- -Daudacity_use_soxr=system
- -Daudacity_conan_enabled=OFF
+ -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_has_vst3=off
+
-Daudacity_lib_preference=system
-Daudacity_obey_system_dependencies=ON
-Daudacity_use_expat=system
@@ -184,34 +188,33 @@ src_configure() {
-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_wavpack=$(usex wavpack system off)
-Daudacity_use_libogg=$(usex ogg system off)
- -Daudacity_use_libflac=$(usex flac system off)
-Daudacity_use_libopus=$(usex flac system off)
- -Daudacity_use_libvorbis=$(usex vorbis system off)
-Daudacity_use_libsndfile=system
- -Daudacity_use_portaudio=system
- -Daudacity_use_midi=system
- -Daudacity_use_vamp=$(usex vamp system off)
+ -Daudacity_use_libvorbis=$(usex vorbis system off)
-Daudacity_use_lv2=$(usex lv2 system off)
+ -Daudacity_use_midi=system
+ -Daudacity_use_nyquist=local
+ -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)
-
- # Disable telemetry features.
- -Daudacity_has_sentry_reporting=off
- -Daudacity_has_crashreports=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.
-
- -Daudacity_has_tests=$(usex test ON OFF)
)
cmake_src_configure
@@ -220,10 +223,3 @@ src_configure() {
src_test() {
virtx cmake_src_test
}
-
-src_install() {
- cmake_src_install
-
- # Remove bad doc install
- rm -r "${ED}"/usr/share/doc || die
-}
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
new file mode 100644
index 000000000000..f06799030b4b
--- /dev/null
+++ b/media-sound/audacity/files/audacity-3.4.2-audiocom-std-string.patch
@@ -0,0 +1,30 @@
+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>
+---
+ 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 @@
+
+ #include <chrono>
+ #include <functional>
++#include <string>
+ #include <string_view>
+ #include <mutex>
+
+--
+2.43.0
+