gnu: hydrogen: Update to 0.9.6.1.

* gnu/packages/music.scm (hydrogen): Update to 0.9.6.1.
[build-system]: Switch to cmake-build-system.
[arguments]: Enable configure and tests, remove custom phases.
[native-inputs]: Remove python-2, scons. Add cppunit.
[inputs]: Add libarchive, lrdf.
This commit is contained in:
Efraim Flashner 2016-02-16 14:16:16 +02:00
parent 578b05d99e
commit b736776255
1 changed files with 17 additions and 47 deletions

View File

@ -3,6 +3,7 @@
;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org> ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
;;; Copyright © 2016 Al McElrath <hello@yrns.org> ;;; Copyright © 2016 Al McElrath <hello@yrns.org>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -33,9 +34,10 @@
#:use-module (gnu packages algebra) #:use-module (gnu packages algebra)
#:use-module (gnu packages audio) #:use-module (gnu packages audio)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages backup)
#:use-module (gnu packages base) ;libbdf #:use-module (gnu packages base) ;libbdf
#:use-module (gnu packages boost)
#:use-module (gnu packages bison) #:use-module (gnu packages bison)
#:use-module (gnu packages boost)
#:use-module (gnu packages cdrom) #:use-module (gnu packages cdrom)
#:use-module (gnu packages code) #:use-module (gnu packages code)
#:use-module (gnu packages check) #:use-module (gnu packages check)
@ -148,64 +150,32 @@ many input formats and provides a customisable Vi-style user interface.")
(define-public hydrogen (define-public hydrogen
(package (package
(name "hydrogen") (name "hydrogen")
(version "0.9.5.1") (version "0.9.6.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
"mirror://sourceforge/hydrogen/Hydrogen/" "https://github.com/hydrogen-music/hydrogen/archive/"
(version-prefix version 3) "%20Sources/" version ".tar.gz"))
"hydrogen-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1fvyp6gfzcqcc90dmaqbm11p272zczz5pfz1z4lj33nfr7z0bqgb")))) "0vxnaqfmcv7hhk0cj67imdcqngspnck7f0wfmvhfgfqa7x1xznll"))))
(build-system gnu-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:tests? #f ;no "check" target `(#:test-target "tests"))
#:phases
;; TODO: Add scons-build-system and use it here.
(modify-phases %standard-phases
(delete 'configure)
(add-after 'unpack 'scons-propagate-environment
(lambda _
;; By design, SCons does not, by default, propagate
;; environment variables to subprocesses. See:
;; <http://comments.gmane.org/gmane.linux.distributions.nixos/4969>
;; Here, we modify the Sconstruct file to arrange for
;; environment variables to be propagated.
(substitute* "Sconstruct"
(("^env = Environment\\(")
"env = Environment(ENV=os.environ, "))))
(replace 'build
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(zero? (system* "scons"
(string-append "prefix=" out)
"lrdf=0" ; cannot be found
"lash=1")))))
(add-before
'install
'fix-img-install
(lambda _
;; The whole ./data/img directory is copied to the target first.
;; Scons complains about existing files when we try to install all
;; images a second time.
(substitute* "Sconstruct"
(("os.path.walk\\(\"./data/img/\",install_images,env\\)") ""))
#t))
(replace 'install (lambda _ (zero? (system* "scons" "install")))))))
(native-inputs (native-inputs
`(("scons" ,scons) `(("cppunit" ,cppunit)
("python" ,python-2)
("pkg-config" ,pkg-config))) ("pkg-config" ,pkg-config)))
(inputs (inputs
`(("zlib" ,zlib) `(("alsa-lib" ,alsa-lib)
("libtar" ,libtar)
("alsa-lib" ,alsa-lib)
("jack" ,jack-1) ("jack" ,jack-1)
;; ("ladspa" ,ladspa) ; cannot find during configure
("lash" ,lash) ("lash" ,lash)
;;("lrdf" ,lrdf) ;FIXME: cannot be found by scons ("libarchive" ,libarchive)
("libsndfile" ,libsndfile)
("libtar" ,libtar)
("lrdf" ,lrdf)
("qt" ,qt-4) ("qt" ,qt-4)
("libsndfile" ,libsndfile))) ("zlib" ,zlib)))
(home-page "http://www.hydrogen-music.org") (home-page "http://www.hydrogen-music.org")
(synopsis "Drum machine") (synopsis "Drum machine")
(description (description