gnu: Add rdmd.
* gnu/packages/ldc.scm (rdmd): New variable. Signed-off-by: Leo Famulari <leo@famulari.name>
This commit is contained in:
		
							parent
							
								
									e9f68a647d
								
							
						
					
					
						commit
						c1fc7a67e4
					
				
					 1 changed files with 44 additions and 1 deletions
				
			
		| 
						 | 
					@ -1,5 +1,5 @@
 | 
				
			||||||
;;; GNU Guix --- Functional package management for GNU
 | 
					;;; GNU Guix --- Functional package management for GNU
 | 
				
			||||||
;;; Copyright © 2015 Roel Janssen <roel@gnu.org>
 | 
					;;; Copyright © 2015, 2016 Roel Janssen <roel@gnu.org>
 | 
				
			||||||
;;; Copyright © 2015 Pjotr Prins <pjotr.guix@thebird.nl>
 | 
					;;; Copyright © 2015 Pjotr Prins <pjotr.guix@thebird.nl>
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
;;; This file is part of GNU Guix.
 | 
					;;; This file is part of GNU Guix.
 | 
				
			||||||
| 
						 | 
					@ -21,6 +21,8 @@
 | 
				
			||||||
  #:use-module ((guix licenses) #:prefix license:)
 | 
					  #:use-module ((guix licenses) #:prefix license:)
 | 
				
			||||||
  #:use-module (guix packages)
 | 
					  #:use-module (guix packages)
 | 
				
			||||||
  #:use-module (guix download)
 | 
					  #:use-module (guix download)
 | 
				
			||||||
 | 
					  #:use-module (guix git-download)
 | 
				
			||||||
 | 
					  #:use-module (guix build-system gnu)
 | 
				
			||||||
  #:use-module (guix build-system cmake)
 | 
					  #:use-module (guix build-system cmake)
 | 
				
			||||||
  #:use-module (gnu packages)
 | 
					  #:use-module (gnu packages)
 | 
				
			||||||
  #:use-module (gnu packages base)
 | 
					  #:use-module (gnu packages base)
 | 
				
			||||||
| 
						 | 
					@ -29,6 +31,47 @@
 | 
				
			||||||
  #:use-module (gnu packages textutils)
 | 
					  #:use-module (gnu packages textutils)
 | 
				
			||||||
  #:use-module (gnu packages zip))
 | 
					  #:use-module (gnu packages zip))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-public rdmd
 | 
				
			||||||
 | 
					  (let ((commit "da0a2e0a379b08294015eec9d531f1e5dd4226f0"))
 | 
				
			||||||
 | 
					    (package
 | 
				
			||||||
 | 
					      (name "rdmd")
 | 
				
			||||||
 | 
					      (version (string-append "v2.070.0-1." (string-take commit 7)))
 | 
				
			||||||
 | 
					      (source (origin
 | 
				
			||||||
 | 
					        (method git-fetch)
 | 
				
			||||||
 | 
					        (uri (git-reference
 | 
				
			||||||
 | 
					              (url "https://github.com/D-Programming-Language/tools.git")
 | 
				
			||||||
 | 
					              (commit commit)))
 | 
				
			||||||
 | 
					        (file-name (string-append name "-" version "-checkout"))
 | 
				
			||||||
 | 
					        (sha256
 | 
				
			||||||
 | 
					         (base32
 | 
				
			||||||
 | 
					          "1pcx5lyqzrip86f4vv60x292rpvnwsq2hvl1znm9x9rn68f34m45"))))
 | 
				
			||||||
 | 
					      (build-system gnu-build-system)
 | 
				
			||||||
 | 
					      (arguments
 | 
				
			||||||
 | 
					       '(#:phases
 | 
				
			||||||
 | 
					         (modify-phases %standard-phases
 | 
				
			||||||
 | 
					           (delete 'configure)
 | 
				
			||||||
 | 
					           (delete 'check) ; There is no Makefile, so there's no 'make check'.
 | 
				
			||||||
 | 
					           (replace
 | 
				
			||||||
 | 
					            'build
 | 
				
			||||||
 | 
					            (lambda _
 | 
				
			||||||
 | 
					              (zero? (system* "ldc2" "rdmd.d"))))
 | 
				
			||||||
 | 
					           (replace
 | 
				
			||||||
 | 
					            'install
 | 
				
			||||||
 | 
					            (lambda* (#:key outputs #:allow-other-keys)
 | 
				
			||||||
 | 
					              (let ((bin (string-append (assoc-ref outputs "out") "/bin")))
 | 
				
			||||||
 | 
					                (install-file "rdmd" bin)))))))
 | 
				
			||||||
 | 
					      (native-inputs
 | 
				
			||||||
 | 
					       `(("ldc" ,ldc)))
 | 
				
			||||||
 | 
					      (home-page "https://github.com/D-Programming-Language/tools/")
 | 
				
			||||||
 | 
					      (synopsis "Specialized equivalent to 'make' for the D language")
 | 
				
			||||||
 | 
					      (description
 | 
				
			||||||
 | 
					       "rdmd is a companion to the dmd compiler that simplifies the typical
 | 
				
			||||||
 | 
					edit-compile-link-run or edit-make-run cycle to a rapid edit-run cycle.  Like
 | 
				
			||||||
 | 
					make and other tools, rdmd uses the relative dates of the files involved to
 | 
				
			||||||
 | 
					minimize the amount of work necessary.  Unlike make, rdmd tracks dependencies
 | 
				
			||||||
 | 
					and freshness without requiring additional information from the user.")
 | 
				
			||||||
 | 
					      (license license:boost1.0))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public ldc
 | 
					(define-public ldc
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "ldc")
 | 
					    (name "ldc")
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Reference in a new issue