From f825d1872628eea6f29ee7a92b8bbc339935dbcf Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Fri, 1 May 2020 00:24:52 +0200
Subject: [PATCH] gnu: supercollider: Enable SCClassLibrary library lookup.
This hardcodes the path of SCClassLibrary to fix a lookup error that was
preventing SCServer's boot.
* gnu/packages/audio.scm (supercollider): [source]: Fetch via git.
[configure-flags]: Build Release target.
[phases]: ...hardcode path using substitute* in a new phase.
---
gnu/packages/audio.scm | 28 ++++++++++++++++++++--------
1 file changed, 20 insertions(+), 8 deletions(-)
@@ -30,6 +30,7 @@
;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
+;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -2294,18 +2295,19 @@ background file post-processing.")
(name "supercollider")
(version "3.10.4")
(source (origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/supercollider/supercollider"
- "/releases/download/Version-" version
- "/SuperCollider-" version "-Source-linux.tar.bz2"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/supercollider/supercollider.git")
+ (commit (string-append "Version-" version))
+ (recursive? #t))) ;; for nova-simd, nova-tt, hidapi, TLSF, oscpack
+ (file-name (git-file-name name version))
(sha256
(base32
- "0x11g3pfw11m6v18qfpfl5w99dbmf73g4z7wvwhrj1a4qv2dn084"))))
+ "0xdg1dx0y0agircnkn4bg3jpw184xc5pn28k7rrzgjh1rdnyzz24"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags '("-DSYSTEM_BOOST=on" "-DSYSTEM_YAMLCPP=on"
- "-DSC_QT=off"
+ "-DSC_QT=off" "-DCMAKE_BUILD_TYPE=Release"
"-DSC_EL=off") ;scel is packaged individually as
;emacs-scel
#:modules ((guix build utils)
@@ -2343,7 +2345,17 @@ background file post-processing.")
(("add_subdirectory\\(sclang\\)")
""))
(delete-file "testsuite/sclang/CMakeLists.txt")
- #t)))))
+ #t))
+ (add-after 'disable-broken-tests 'patch-scclass-dir
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (scclass-dir
+ (string-append out "/share/SuperCollider/SCClassLibrary")))
+ (substitute* "lang/LangSource/SC_LanguageConfig.cpp"
+ (((string-append "SC_Filesystem::instance\\(\\)\\.getDirectory"
+ "\\(DirName::Resource\\) / CLASS_LIB_DIR_NAME"))
+ (string-append "Path(\"" scclass-dir "\")")))
+ #t))))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
--
2.26.2