commit:     bc04bfd31878505cfb87d776e46ba9d5cc2d552d
Author:     Jason A. Donenfeld <zx2c4 <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 12 18:49:17 2023 +0000
Commit:     Jason A. Donenfeld <zx2c4 <AT> gentoo <DOT> org>
CommitDate: Tue Dec 12 18:58:17 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bc04bfd3

media-sound/reaper-bin: build libSwell from source

Signed-off-by: Jason A. Donenfeld <zx2c4 <AT> gentoo.org>

 media-sound/reaper-bin/Manifest                    |  1 +
 .../files/libSwell-makefile-cflags.patch           | 31 ++++++++++++++++++
 ...r-bin-7.07.ebuild => reaper-bin-7.07-r1.ebuild} | 37 +++++++++++++++-------
 3 files changed, 58 insertions(+), 11 deletions(-)

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.ebuild 
b/media-sound/reaper-bin/reaper-bin-7.07-r1.ebuild
similarity index 89%
rename from media-sound/reaper-bin/reaper-bin-7.07.ebuild
rename to media-sound/reaper-bin/reaper-bin-7.07-r1.ebuild
index 349be01721e7..cdf5489d9c6e 100644
--- a/media-sound/reaper-bin/reaper-bin-7.07.ebuild
+++ b/media-sound/reaper-bin/reaper-bin-7.07-r1.ebuild
@@ -8,44 +8,59 @@ 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/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 )
 "
 
+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() {
-       local -A ARCH_MAP=(
-               [amd64]=x86_64
-               [x86]=i686
-               [arm64]=aarch64
-               [arm]=armv7l
-       )
-       cd "reaper_linux_${ARCH_MAP[$ARCH]}" || die
+       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
 

Reply via email to