;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
+;;; Copyright © 2013 Mark H Weaver <mhw@netris.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages gprolog)
+ #:use-module (guix download)
#:use-module (guix licenses)
#:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
+ #:use-module (guix build-system gnu)
+ #:use-module (srfi srfi-1))
(define-public gprolog
(package
(name "gprolog")
- (version "1.4.2")
+ (version "1.4.5")
(source
- (origin
- (method url-fetch)
- (uri (string-append "http://www.gprolog.org/gprolog-"
- version ".tar.gz"))
- (sha256
- (base32
- "0y25c2gwz41i6g28qyfjklrmanzgk0c8cr4jn2s7s8qgd9dnm1fm"))))
+ (origin
+ (method url-fetch)
+ ;; Recent versions are not hosted on the GNU mirrors.
+ (uri (list (string-append "http://gprolog.org/gprolog-" version
+ ".tar.gz")
+ (string-append "mirror://gnu/gprolog/gprolog-" version
+ ".tar.gz")))
+ (sha256
+ (base32
+ "0z4cc42n3k6i35b8mr816iwsvrpxshw6d7dgz6s2h1hy0l7g1p5z"))))
(build-system gnu-build-system)
(arguments
- `(#:phases (alist-cons-before
- 'configure 'change-dir-n-fix-shells
- (lambda _
- (chdir "src")
- (substitute* "configure"
- (("-/bin/sh") (string-append "-" (which "sh")))
- (("= /bin/sh") (string-append "= " (which "sh")))))
- %standard-phases)))
+ `(#:configure-flags
+ (list (string-append
+ "--with-install-dir=" %output "/share/gprolog"))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'change-dir-n-fix-shells
+ (lambda _
+ (chdir "src")
+ (substitute* "configure"
+ (("-/bin/sh") (string-append "-" (which "sh")))
+ (("= /bin/sh") (string-append "= " (which "sh"))))
+ #t)))))
(home-page "https://www.gnu.org/software/gprolog/")
(synopsis "Prolog compiler")
(description
- "GNU Prolog is a free Prolog compiler with constraint solving over
-finite domains developed by Daniel Diaz.
-
-GNU Prolog accepts Prolog+constraint programs and produces native
-binaries (like gcc does from a C source). The obtained executable is
-then stand-alone. The size of this executable can be quite small since
-GNU Prolog can avoid to link the code of most unused built-in
-predicates. The performances of GNU Prolog are very
-encouraging (comparable to commercial systems).
-
-Beside the native-code compilation, GNU Prolog offers a classical
-interactive interpreter (top-level) with a debugger.
-
-The Prolog part conforms to the ISO standard for Prolog with many
-extensions very useful in practice (e.g., global variables, OS
-interface, sockets).
+ "GNU Prolog is a standards-compliant Prolog compiler with constraint
+solving over finite domains. It accepts Prolog+ constraint programs and
+produces a compiled, native binary which can function in a stand-alone
+manner. It also features an interactive interpreter.")
+ (license (list gpl2+ lgpl3+))
-GNU Prolog also includes an efficient constraint solver over finite domains.
-This opens contraint logic programming to the user combining the power of
-constraint programming to the declarativity of logic programming.")
- (license (list gpl2+ lgpl3+))))
+ ;; See 'configure' for the list of supported architectures.
+ (supported-systems (fold delete
+ %supported-systems
+ '("armhf-linux" "mips64el-linux")))))