gnu: Fix supercollider.

Message-Id: <f67786eb958a65ba778f67a8f443fa3d24293438.1682453413.git.gabriel@erlikon.ch>
From: Gabriel Wicki <gabriel@erlikon.ch>
Date: Tue, 25 Apr 2023 22:03:03 +0200
Subject: [PATCH 1/2] gnu: Fix supercollider.

* gnu/packages/audio.scm (supercollider): Fix the build.
[configure-flags] Re-enable DLIBSCSYNTH.
[phases] New phase fix-struct-SOUNDFILE-tag.
[inputs] Add ruby and python to appease the build process.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
Gabriel Wicki 2023-04-25 22:35:59 +02:00 committed by Ludovic Courtès
parent ee88acc6e2
commit 06277d8070
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -43,6 +43,7 @@
;;; Copyright © 2023 Sergiu Ivanov <sivanov@colimite.fr> ;;; Copyright © 2023 Sergiu Ivanov <sivanov@colimite.fr>
;;; Copyright © 2023 David Thompson <dthompson2@worcester.edu> ;;; Copyright © 2023 David Thompson <dthompson2@worcester.edu>
;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com> ;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2023 Gabriel Wicki <gabriel@erlikon.ch>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -119,6 +120,7 @@ (define-module (gnu packages audio)
#:use-module (gnu packages qt) #:use-module (gnu packages qt)
#:use-module (gnu packages rdf) #:use-module (gnu packages rdf)
#:use-module (gnu packages readline) #:use-module (gnu packages readline)
#:use-module (gnu packages ruby)
#:use-module (gnu packages samba) #:use-module (gnu packages samba)
#:use-module (gnu packages sdl) #:use-module (gnu packages sdl)
#:use-module (gnu packages serialization) #:use-module (gnu packages serialization)
@ -3485,7 +3487,7 @@ (define-public supercollider
"-DSC_QT=ON" "-DSC_QT=ON"
"-DCMAKE_BUILD_TYPE=Release" "-DCMAKE_BUILD_TYPE=Release"
"-DFORTIFY=ON" "-DFORTIFY=ON"
;; "-DLIBSCSYNTH=ON" ; TODO: Re-enable? "-DLIBSCSYNTH=ON"
"-DSC_EL=OFF") ;scel is packaged individually as emacs-scel "-DSC_EL=OFF") ;scel is packaged individually as emacs-scel
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
@ -3506,6 +3508,12 @@ (define-public supercollider
"SC_Filesystem::instance\\(\\)\\.getDirectory" "SC_Filesystem::instance\\(\\)\\.getDirectory"
"\\(DirName::Resource\\) / CLASS_LIB_DIR_NAME")) "\\(DirName::Resource\\) / CLASS_LIB_DIR_NAME"))
(string-append "Path(\"" scclass-dir "\")")))))) (string-append "Path(\"" scclass-dir "\")"))))))
(add-after 'patch-scclass-dir 'fix-struct-SOUNDFILE-tag
(lambda* _
(display (getcwd)) (newline)
(substitute* "include/plugin_interface/SC_SndBuf.h"
(("SNDFILE_tag")
"sf_private_tag"))))
(add-before 'build 'prepare-x (add-before 'build 'prepare-x
(lambda _ (lambda _
(system "Xvfb &") (system "Xvfb &")
@ -3532,6 +3540,8 @@ (define-public supercollider
boost boost
boost-sync boost-sync
yaml-cpp yaml-cpp
python-wrapper ;there were warnings in the build process
ruby ;there were warnings in the build process
qtbase-5 qtbase-5
qtdeclarative-5 qtdeclarative-5
qtsvg-5 qtsvg-5