diff options
author | Azamat H. Hackimov <azamat.hackimov@gmail.com> | 2024-02-18 23:31:20 +0300 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2024-03-23 08:29:07 +0000 |
commit | 2dd375c26a958c83bee4119b499fa65adb4b3f29 (patch) | |
tree | da3b5ce94b6a9369412c43777b280e61ae346cd7 /media-sound/audacity | |
parent | app-containers/buildah: update RDEPEND in live (diff) | |
download | gentoo-2dd375c26a958c83bee4119b499fa65adb4b3f29.tar.gz gentoo-2dd375c26a958c83bee4119b499fa65adb4b3f29.tar.bz2 gentoo-2dd375c26a958c83bee4119b499fa65adb4b3f29.zip |
media-sound/audacity: add 3.4.2, update 9999
Closes: https://bugs.gentoo.org/916782
Closes: https://bugs.gentoo.org/920363
Signed-off-by: Azamat H. Hackimov <azamat.hackimov@gmail.com>
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'media-sound/audacity')
-rw-r--r-- | media-sound/audacity/Manifest | 3 | ||||
-rw-r--r-- | media-sound/audacity/audacity-3.4.2.ebuild | 218 | ||||
-rw-r--r-- | media-sound/audacity/audacity-9999.ebuild | 94 | ||||
-rw-r--r-- | media-sound/audacity/files/audacity-3.4.2-audiocom-std-string.patch | 30 |
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 + |