gnu: rtmidi: Update to 4.0.0.
* gnu/packages/audio.scm (rtmidi): Update to 4.0.0. [source]: Download tarball from upstream URL rather than the powertab github fork. [arguments]: Enable tests. Remove 'build and 'install phases and add a new 'noconfigure phase to prevent the bootstrap script from invoking configure. [home-page]: Update homepage to upstream URL. * gnu/packages/music.scm (powertabeditor)[arguments]: Add phase that substitutes the rtmidi #include directive to find the header. Signed-off-by: Mathieu Othacehe <m.othacehe@gmail.com>
This commit is contained in:
		
							parent
							
								
									ae5525c591
								
							
						
					
					
						commit
						bcdf11d6ff
					
				
					 2 changed files with 18 additions and 21 deletions
				
			
		| 
						 | 
				
			
			@ -2341,33 +2341,22 @@ tempo and pitch of an audio recording independently of one another.")
 | 
			
		|||
(define-public rtmidi
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rtmidi")
 | 
			
		||||
    (version "2.1.0")
 | 
			
		||||
    (version "4.0.0")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
              (uri (git-reference
 | 
			
		||||
                    (url "https://github.com/powertab/rtmidi.git")
 | 
			
		||||
                    (commit version)))
 | 
			
		||||
              (file-name (git-file-name name version))
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "https://www.music.mcgill.ca/~gary/rtmidi"
 | 
			
		||||
                                  "/release/rtmidi-" version ".tar.gz"))
 | 
			
		||||
              (file-name (string-append "rtmidi-" version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "106v177y3nrjv2l1yskch4phpqd8h97b67zj0jiq9pc3c69jr1ay"))))
 | 
			
		||||
                "1k962ljpnwyjw9jjiky2372khhri1wqvrj5qsalfpys31xqzw31p"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:tests? #f ;no "check" target
 | 
			
		||||
       #:phases
 | 
			
		||||
     `(#:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-before 'build 'fix-makefile
 | 
			
		||||
         (add-before 'bootstrap 'noconfigure
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (substitute* "Makefile"
 | 
			
		||||
               (("/bin/ln") "ln")
 | 
			
		||||
               (("RtMidi.h RtError.h") "RtMidi.h"))
 | 
			
		||||
             #t))
 | 
			
		||||
         (add-before 'install 'make-target-dirs
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (let ((out (assoc-ref %outputs "out")))
 | 
			
		||||
               (mkdir-p (string-append out "/bin"))
 | 
			
		||||
               (mkdir (string-append out "/lib"))
 | 
			
		||||
               (mkdir (string-append out "/include")))
 | 
			
		||||
             (setenv "NOCONFIGURE" "yes")
 | 
			
		||||
             #t)))))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("jack" ,jack-1)
 | 
			
		||||
| 
						 | 
				
			
			@ -2377,7 +2366,7 @@ tempo and pitch of an audio recording independently of one another.")
 | 
			
		|||
       ("automake" ,automake)
 | 
			
		||||
       ("libtool" ,libtool)
 | 
			
		||||
       ("pkg-config" ,pkg-config)))
 | 
			
		||||
    (home-page "https://github.com/powertab/rtmidi")
 | 
			
		||||
    (home-page "https://www.music.mcgill.ca/~gary/rtmidi")
 | 
			
		||||
    (synopsis "Cross-platform MIDI library for C++")
 | 
			
		||||
    (description
 | 
			
		||||
     "RtMidi is a set of C++ classes (RtMidiIn, RtMidiOut, and API specific
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1284,6 +1284,14 @@ add_library( rapidjson INTERFACE IMPORTED )"))
 | 
			
		|||
               (("#include <QWidget>" m)
 | 
			
		||||
                (string-append m "\n#include <QButtonGroup>\n#include <QAction>")))
 | 
			
		||||
             #t))
 | 
			
		||||
         ;; FIXME: Finding RtMidi was fixed upstream so we should be able to
 | 
			
		||||
         ;; remove this hack when a release is made.
 | 
			
		||||
         ;; See https://github.com/powertab/powertabeditor/issues/255
 | 
			
		||||
         (add-after 'unpack 'fix-rtmidi-header
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (substitute* "source/audio/midioutputdevice.cpp"
 | 
			
		||||
               (("#include <RtMidi.h>") "#include <rtmidi/RtMidi.h>"))
 | 
			
		||||
             #t))
 | 
			
		||||
         (add-before 'configure 'remove-third-party-libs
 | 
			
		||||
           (lambda* (#:key inputs #:allow-other-keys)
 | 
			
		||||
             ;; Link with required static libraries, because we're not
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Reference in a new issue