diff mbox series

[bug#57984] gnu: Update zynaddsubfx to 3.0.6

Message ID iEAOKU91w7D9H189aG2TUnnWti0n6z6WqAXdxclb0lBkGttiI3RTylLVMykKN7qTO--c1taRH2Fn5sOCDm4kwo14AxK8K7NANtrQv5xIcJU=@proton.me
State New
Headers show
Series [bug#57984] gnu: Update zynaddsubfx to 3.0.6 | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git-branch success View Git branch
cbaines/applying patch success View Laminar job
cbaines/issue success View issue

Commit Message

Sughosha Oct. 15, 2022, 1:37 p.m. UTC
Thank you Maxim and Maxime for your detailed review. I considered all of the changes you pointed out, and here are the attatchments of the new patch files. Regarding recursive clone, I packages the runtime dependencies seperately but I left the mruby gems, since they seem to be needed just as source (without needing to be compiled) as they are to be configured by mruby for mruby-zest. I am also not familier with mruby or ruby.

Thanks,

Sughosha

Comments

Sughosha Oct. 15, 2022, 2:13 p.m. UTC | #1
Oops, sorry for messing with the patches. I was switching branches and messed somewhere. Here are the proper patches.

Thank you.

Sughosha
diff mbox series

Patch

From 17adfad1899b58edb51e5c6fd56b5200ca8f4cdc Mon Sep 17 00:00:00 2001
From: Sughosha <sughosha@proton.me>
Date: Sat, 15 Oct 2022 15:16:30 +0200
Subject: [PATCH 4/4] gnu: zynaddsubfx: Update to 3.0.6 and switch to
 zyn-fusion

* gnu/packages/music.scm (zynaddsubfx): Update to 3.0.6.

[arguments]: Switch from NTK to Zest and use gexp.

[inputs]: Replace ntk with mruby-zest.

[native-inputs]: New dependencies.
---
 gnu/packages/music.scm | 68 ++++++++++++++++++++++++------------------
 1 file changed, 39 insertions(+), 29 deletions(-)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index a09eb6528d..5d3c19bc78 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -3133,42 +3133,52 @@  (define-public mruby-zest
 (define-public zynaddsubfx
   (package
     (name "zynaddsubfx")
-    (version "3.0.5")
+    (version (package-version mruby-zest))
     (source (origin
               (method url-fetch)
               (uri (string-append
-                    "mirror://sourceforge/zynaddsubfx/zynaddsubfx/"
-                    version "/zynaddsubfx-" version ".tar.bz2"))
+                    "mirror://sourceforge/zynaddsubfx/zynaddsubfx/" version
+                    "/zynaddsubfx-" version ".tar.bz2"))
               (sha256
                (base32
-                "0qwzg14h043rmyf9jqdylxhyfy4sl0vsr0gjql51wjhid0i34ivl"))))
+                "1bkirvcg0lz1i7ypnz3dyh218yhrqpnijxs8n3wlgwbcixvn1lfb"))))
     (build-system cmake-build-system)
     (arguments
-     `(#:phases
-       (modify-phases %standard-phases
-         ;; Move SSE compiler optimization flags from generic target to
-         ;; athlon64 and core2 targets, because otherwise the build would fail
-         ;; on non-Intel machines.
-         (add-after 'unpack 'remove-sse-flags-from-generic-target
-          (lambda _
-            (substitute* "src/CMakeLists.txt"
-              (("-msse -msse2 -mfpmath=sse") "")
-              (("-march=(athlon64|core2)" flag)
-               (string-append flag " -msse -msse2 -mfpmath=sse")))
-            #t)))))
-    (inputs
-     (list liblo
-           ntk
-           mesa
-           alsa-lib
-           jack-1
-           fftw
-           minixml
-           libxpm
-           zlib))
-    (native-inputs
-     (list pkg-config))
-    (home-page "http://zynaddsubfx.sf.net/")
+     (list #:configure-flags #~(list "-DGuiModule=zest"
+                                     (string-append "-DZYN_DATADIR="
+                                                    #$output
+                                                    "/share/zynaddsubfx"))
+           #:phases #~(modify-phases %standard-phases
+                        (add-after 'unpack 'remove-sse-flags-from-generic-target
+                          (lambda _
+                            (substitute* "src/CMakeLists.txt"
+                              (("-msse -msse2 -mfpmath=sse")
+                               "")
+                              (("-march=(athlon64|core2)" flag)
+                               (string-append flag
+                                              " -msse -msse2 -mfpmath=sse")))))
+                        (add-after 'unpack 'fix-zyn-fusion-path
+                          (lambda _
+                            (substitute* "src/main.cpp"
+                              (("\\./zyn-fusion")
+                               (string-append #$mruby-zest
+                                              "/bin/zyn-fusion")))
+                            (substitute*
+                             "src/Plugin/ZynAddSubFX/ZynAddSubFX-UI-Zest.cpp"
+                              (("\\./libzest\\.so")
+                               (string-append #$mruby-zest
+                                              "/lib/zyn-fusion/libzest.so"))))))))
+    (inputs (list alsa-lib
+                  fftwf
+                  jack-1
+                  liblo
+                  libxpm
+                  mesa
+                  minixml
+                  mruby-zest
+                  zlib))
+    (native-inputs (list doxygen pkg-config ruby))
+    (home-page "https://zynaddsubfx.sourceforge.io/")
     (synopsis "Software synthesizer")
     (description
      "ZynAddSubFX is a feature heavy realtime software synthesizer.  It offers
-- 
2.38.0