summary refs log tree commit diff
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2016-04-27 21:25:14 +0200
committerRicardo Wurmus <rekado@elephly.net>2016-05-02 20:02:20 +0200
commitf65d59fc8e72f13933a9a9b795ef12b0f67d1f36 (patch)
tree88fe36aced8566f240be26b060bd0684551344ca
parentaacb52fb0fe8ad48b923daa500f021dc99661fda (diff)
downloadguix-f65d59fc8e72f13933a9a9b795ef12b0f67d1f36.tar.gz
gnu: Add python-pyportmidi.
* gnu/packages/music.scm (python-pyportmidi): New variable.
-rw-r--r--gnu/packages/music.scm34
1 files changed, 34 insertions, 0 deletions
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 96495bf660..fba43368a7 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -988,6 +988,40 @@ projects.")
 using a system-independent interface.")
     (license license:expat)))
 
+(define-public python-pyportmidi
+  (package
+    (name "python-pyportmidi")
+    (version (package-version portmidi))
+    (source (package-source portmidi))
+    (build-system python-build-system)
+    (arguments
+     `(#:tests? #f ; no tests included
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'enter-dir
+           (lambda _ (chdir "pm_python") #t))
+         (add-after 'enter-dir 'fix-setup.py
+           (lambda _
+             (substitute* "setup.py"
+               ;; Use Python 3 syntax
+               (("print (\".*\")" _ text)
+                (string-append "print(" text ")\n"))
+               ;; TODO.txt and CHANGES.txt don't exist
+               (("CHANGES =.*") "CHANGES = \"\"\n")
+               (("TODO =.*") "TODO = \"\"\n"))
+             #t)))))
+    (inputs
+     `(("portmidi" ,portmidi)
+       ("alsa-lib" ,alsa-lib)
+       ("python-cython" ,python-cython)))
+    (native-inputs
+     `(("unzip" ,unzip)))
+    (home-page "http://portmedia.sourceforge.net/portmidi/")
+    (synopsis "Python bindings to PortMidi")
+    (description
+     "This package provides Python bindings to the PortMidi library.")
+    (license license:expat)))
+
 (define-public frescobaldi
   (package
     (name "frescobaldi")