From bc04bfd31878505cfb87d776e46ba9d5cc2d552d Mon Sep 17 00:00:00 2001 From: "Jason A. Donenfeld" Date: Tue, 12 Dec 2023 19:49:17 +0100 Subject: media-sound/reaper-bin: build libSwell from source Signed-off-by: Jason A. Donenfeld --- media-sound/reaper-bin/Manifest | 1 + .../files/libSwell-makefile-cflags.patch | 31 ++++ media-sound/reaper-bin/reaper-bin-7.07-r1.ebuild | 158 +++++++++++++++++++++ media-sound/reaper-bin/reaper-bin-7.07.ebuild | 143 ------------------- 4 files changed, 190 insertions(+), 143 deletions(-) create mode 100644 media-sound/reaper-bin/files/libSwell-makefile-cflags.patch create mode 100644 media-sound/reaper-bin/reaper-bin-7.07-r1.ebuild delete mode 100644 media-sound/reaper-bin/reaper-bin-7.07.ebuild (limited to 'media-sound') diff --git a/media-sound/reaper-bin/Manifest b/media-sound/reaper-bin/Manifest index a137e7b0d969..b6c4a4de5a2f 100644 --- a/media-sound/reaper-bin/Manifest +++ b/media-sound/reaper-bin/Manifest @@ -1,3 +1,4 @@ +DIST WDL-d974e49ac5afb57be6329674e046649a4f30bce9.tar.gz 2468612 BLAKE2B f09ab35041ca5e774c7bdb1982ea1267bb73af9782b176304bf943642f9a487c2670960bb72a485093f8b2e09d6f5d9363a1476a9f6ca947f90f9137133ac1cf SHA512 f63cdec3ba957de77c6ff62a9b2d501ba43bfbadd814b6b59027bfddf918b35d109a748427269aedbad70c06e8d940df8ad8d67acca5f0586c32802c28843fab DIST reaper707_linux_aarch64.tar.xz 10872932 BLAKE2B 92c94de3be59eb1509472e63904eff1e2123e80618381545c9ef7673665c624ea83713f6b435adadd35c54e70210b468c79c9e75376d24c4272473e37d424d0e SHA512 1bff4e77e1c050f716cab23f5c6446524c08b91f8cd0b1c74de198b803e8c699fc3dd0145a8a9f195b0219b59acad592239700baef5ec66e29b8c317615681b4 DIST reaper707_linux_armv7l.tar.xz 10527968 BLAKE2B fc4ef0a1ff5c336e05ef120d2f32f32de6c07ecc0652abb2aff756b1b96b63b098641dde29b8d7ac958b5f7e50b370076c1d171899a2342186507e14175ccd07 SHA512 9bd87c775a48b8d11cc1d9869dc78ea615c8cc5eeea615b12b58249940f2708de4b209b1af293a8728fcc574f1bc07e1cde89a3c370a6b0efee74940956a811a DIST reaper707_linux_i686.tar.xz 12150956 BLAKE2B 9b97f0d47ba17402ee67a74f0014c28da53f0f7c8b090416ee27babda1707493fbdcd5e33c749e42c14c959775af17ab885662941f3e76b3c84f5fd371e333a3 SHA512 70822d91b6a4728ad10a2d234692b7a21844b591a57a04784b2261591d22e3824b586dfc2e8e282fafba61a2dd5a1c155c7d000b6af74da059d7d9682ee1f690 diff --git a/media-sound/reaper-bin/files/libSwell-makefile-cflags.patch b/media-sound/reaper-bin/files/libSwell-makefile-cflags.patch new file mode 100644 index 000000000000..dd87a76756c8 --- /dev/null +++ b/media-sound/reaper-bin/files/libSwell-makefile-cflags.patch @@ -0,0 +1,31 @@ +diff -ru justinfrankel-WDL-d974e49/WDL/swell/Makefile justinfrankel-WDL-d974e49.new/WDL/swell/Makefile +--- justinfrankel-WDL-d974e49/WDL/swell/Makefile 2023-12-10 17:12:41.000000000 +0100 ++++ justinfrankel-WDL-d974e49.new/WDL/swell/Makefile 2023-12-12 19:42:19.161433462 +0100 +@@ -17,7 +17,7 @@ + + COMPILER=GCC + +-CFLAGS = -pipe -fvisibility=hidden -fno-math-errno -fPIC -DPIC -Wall -Wshadow -Wno-unused-function -Wno-multichar -Wtype-limits ++CFLAGS += -fvisibility=hidden -fno-math-errno -fPIC -DPIC -Wall -Wshadow -Wno-unused-function -Wno-multichar -Wtype-limits + + CFLAGS += -DSWELL_MAKING_DYLIB + +@@ -63,16 +63,9 @@ + + + ifdef DEBUG +-CFLAGS += -O0 -g -D_DEBUG ++CFLAGS += -D_DEBUG + else +-CFLAGS += -O2 -DNDEBUG +- ifdef DEBUG_INFO +- CFLAGS += -g +- else +- ifneq ($(COMPILER),CLANG) +- CFLAGS += -s +- endif +- endif ++CFLAGS += -DNDEBUG + endif + + LINKEXTRA = -lpthread -ldl diff --git a/media-sound/reaper-bin/reaper-bin-7.07-r1.ebuild b/media-sound/reaper-bin/reaper-bin-7.07-r1.ebuild new file mode 100644 index 000000000000..cdf5489d9c6e --- /dev/null +++ b/media-sound/reaper-bin/reaper-bin-7.07-r1.ebuild @@ -0,0 +1,158 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit desktop xdg + +DESCRIPTION="Digital audio workstation" +HOMEPAGE="https://www.reaper.fm" + +WDL_COMMIT="d974e49ac5afb57be6329674e046649a4f30bce9" + +SRC_URI=" + amd64? ( https://www.reaper.fm/files/$(ver_cut 1).x/reaper$(ver_cut 1)$(printf %02d $(ver_cut 2))_linux_x86_64.tar.xz ) + x86? ( https://www.reaper.fm/files/$(ver_cut 1).x/reaper$(ver_cut 1)$(printf %02d $(ver_cut 2))_linux_i686.tar.xz ) + arm64? ( https://www.reaper.fm/files/$(ver_cut 1).x/reaper$(ver_cut 1)$(printf %02d $(ver_cut 2))_linux_aarch64.tar.xz ) + arm? ( https://www.reaper.fm/files/$(ver_cut 1).x/reaper$(ver_cut 1)$(printf %02d $(ver_cut 2))_linux_armv7l.tar.xz ) + https://github.com/justinfrankel/WDL/archive/${WDL_COMMIT}.tar.gz -> WDL-${WDL_COMMIT}.tar.gz +" + +LICENSE="Cockos" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~x86" +RESTRICT="mirror" + +IUSE="+jack pulseaudio mp3 ffmpeg" + +RDEPEND=" + ${DEPEND} + media-libs/alsa-lib + media-libs/libglvnd + jack? ( virtual/jack ) + pulseaudio? ( media-libs/libpulse ) + mp3? ( media-sound/lame ) + ffmpeg? ( media-video/ffmpeg ) +" + +DEPEND=" + x11-libs/gtk+:3[X] + x11-libs/libX11 + x11-libs/libXi + media-libs/fontconfig + media-libs/freetype +" + +S="${WORKDIR}" + +src_prepare() { + default + cd "WDL-${WDL_COMMIT}" || die + eapply "${FILESDIR}"/libSwell-makefile-cflags.patch +} + +src_compile() { + emake -C "WDL-${WDL_COMMIT}/WDL/swell" ALLOW_WARNINGS=1 +} + +QA_PREBUILT="*/*.so */reaper */reaper_host_*" + +src_install() { + cd "reaper_linux_"* || die + mv -fv "../WDL-${WDL_COMMIT}/WDL/swell/libSwell.so" REAPER/ || die + + ./install-reaper.sh --install "${D}"/opt || die + rm -f "${D}"/opt/REAPER/uninstall-reaper.sh + + dosym ../../opt/REAPER/reaper /usr/bin/reaper + + # The following is pulled out of install-reaper.sh to match desktop.eclass. + cd REAPER || die + + newicon -s 256 Resources/main.png cockos-reaper.png + doicon -s 256 Resources/cockos-reaper-backup.png + doicon -s 256 Resources/cockos-reaper-document.png + doicon -s 256 Resources/cockos-reaper-theme.png + doicon -s 256 Resources/cockos-reaper-peak.png + doicon -s 256 Resources/cockos-reaper-template.png + doicon -s 256 Resources/cockos-reaper-template2.png + + cat > cockos-reaper.desktop <<-EOF + [Desktop Entry] + Encoding=UTF-8 + Type=Application + Name=REAPER + Comment=REAPER + Categories=Audio;Video;AudioVideo;AudioVideoEditing;Recorder; + Exec="/usr/bin/reaper" %F + Icon=cockos-reaper + MimeType=application/x-reaper-project;application/x-reaper-project-backup;application/x-reaper-theme + StartupWMClass=REAPER + EOF + domenu cockos-reaper.desktop + + cat > application-x-reaper.xml <<-EOF + + + + + REAPER project + + + + + + REAPER project backup + + + + + + + REAPER configuration + + + + + REAPER fx chain + + + + + + REAPER track template + + + + + REAPER theme + + + + + + + REAPER undo + + + + + REAPER undo backup + + + + REAPER peak file + + + + + + REAPER proxy + + + + EOF + insopts -m 0644 + insinto /usr/share/mime + doins application-x-reaper.xml +} diff --git a/media-sound/reaper-bin/reaper-bin-7.07.ebuild b/media-sound/reaper-bin/reaper-bin-7.07.ebuild deleted file mode 100644 index 349be01721e7..000000000000 --- a/media-sound/reaper-bin/reaper-bin-7.07.ebuild +++ /dev/null @@ -1,143 +0,0 @@ -# Copyright 2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit desktop xdg - -DESCRIPTION="Digital audio workstation" -HOMEPAGE="https://www.reaper.fm" - -SRC_URI=" - amd64? ( https://www.reaper.fm/files/$(ver_cut 1).x/reaper$(ver_cut 1)$(printf %02d $(ver_cut 2))_linux_x86_64.tar.xz ) - x86? ( https://www.reaper.fm/files/$(ver_cut 1).x/reaper$(ver_cut 1)$(printf %02d $(ver_cut 2))_linux_i686.tar.xz ) - arm64? ( https://www.reaper.fm/files/$(ver_cut 1).x/reaper$(ver_cut 1)$(printf %02d $(ver_cut 2))_linux_aarch64.tar.xz ) - arm? ( https://www.reaper.fm/files/$(ver_cut 1).x/reaper$(ver_cut 1)$(printf %02d $(ver_cut 2))_linux_armv7l.tar.xz ) -" - -LICENSE="Cockos" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~x86" - -IUSE="+jack pulseaudio mp3 ffmpeg" - -RDEPEND=" - media-libs/alsa-lib - media-libs/fontconfig - media-libs/libglvnd - x11-libs/gtk+:3[X] - x11-libs/libX11 - x11-libs/libXi - jack? ( virtual/jack ) - pulseaudio? ( media-libs/libpulse ) - mp3? ( media-sound/lame ) - ffmpeg? ( media-video/ffmpeg ) -" - -S="${WORKDIR}" - -QA_PREBUILT="*/*.so */reaper */reaper_host_*" - -src_install() { - local -A ARCH_MAP=( - [amd64]=x86_64 - [x86]=i686 - [arm64]=aarch64 - [arm]=armv7l - ) - cd "reaper_linux_${ARCH_MAP[$ARCH]}" || die - ./install-reaper.sh --install "${D}"/opt || die - rm -f "${D}"/opt/REAPER/uninstall-reaper.sh - - dosym ../../opt/REAPER/reaper /usr/bin/reaper - - # The following is pulled out of install-reaper.sh to match desktop.eclass. - cd REAPER || die - - newicon -s 256 Resources/main.png cockos-reaper.png - doicon -s 256 Resources/cockos-reaper-backup.png - doicon -s 256 Resources/cockos-reaper-document.png - doicon -s 256 Resources/cockos-reaper-theme.png - doicon -s 256 Resources/cockos-reaper-peak.png - doicon -s 256 Resources/cockos-reaper-template.png - doicon -s 256 Resources/cockos-reaper-template2.png - - cat > cockos-reaper.desktop <<-EOF - [Desktop Entry] - Encoding=UTF-8 - Type=Application - Name=REAPER - Comment=REAPER - Categories=Audio;Video;AudioVideo;AudioVideoEditing;Recorder; - Exec="/usr/bin/reaper" %F - Icon=cockos-reaper - MimeType=application/x-reaper-project;application/x-reaper-project-backup;application/x-reaper-theme - StartupWMClass=REAPER - EOF - domenu cockos-reaper.desktop - - cat > application-x-reaper.xml <<-EOF - - - - - REAPER project - - - - - - REAPER project backup - - - - - - - REAPER configuration - - - - - REAPER fx chain - - - - - - REAPER track template - - - - - REAPER theme - - - - - - - REAPER undo - - - - - REAPER undo backup - - - - REAPER peak file - - - - - - REAPER proxy - - - - EOF - insopts -m 0644 - insinto /usr/share/mime - doins application-x-reaper.xml -} -- cgit v1.2.3-65-gdbad