WIP: bees service
[jackhill/guix/guix.git] / gnu / packages / hugs.scm
index 36be5ae..a14b8a8 100644 (file)
@@ -1,5 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
+;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -20,7 +22,8 @@
   #: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 (gnu packages gcc))
 
 (define-public hugs
   (package
     (source
      (origin
       (method url-fetch)
-      (uri (string-append "http://cvs.haskell.org/Hugs/downloads/2006-09/"
+      (uri (string-append "https://www.haskell.org/hugs/downloads/2006-09/"
                           name "98-plus-" version ".tar.gz"))
       (sha256
        (base32
         "1mdy4aq4campgmnpc2qwq7bsbfhaxfsqdghbyyz2wms4lnfcmyma"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:phases (alist-cons-before
-                 'configure 'fix-sh-n-cp
-                 (lambda _
-                   (substitute*
-                       '("configure"
-                         "libraries/configure"
-                         "packages/time/configure"
-                         "packages/base/configure"
-                         "packages/X11/configure"
-                         "packages/HGL/configure"
-                         "packages/OpenAL/configure"
-                         "packages/OpenGL/configure"
-                         "packages/network/configure"
-                         "packages/unix/configure"
-                         "packages/Cabal/tests/HSQL/configure"
-                         "packages/ALUT/configure"
-                         "packages/GLUT/configure"
-                         "packages/base/cbits/execvpe.c"
-                         "packages/base/System/Process/Internals.hs"
-                         "packages/Cabal/Distribution/attic"
-                         "packages/Cabal/Distribution/Simple/Register.hs"
-                         "packages/Cabal/Distribution/Simple/Hugs.hs"
-                         "tools/hugs-hc"
-                         "src/machdep.c"
-                         "libraries/Makefile.in")
-                     (("/bin/sh") (which "sh")))
-                   (substitute* '("demos/Makefile.in"
-                                  "libraries/Makefile.in")
-                     (("/bin/cp") (which "cp"))))
-                  %standard-phases)
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'fix-sh-n-cp
+           (lambda _
+             (substitute*
+                 '("configure"
+                   "libraries/configure"
+                   "packages/time/configure"
+                   "packages/base/configure"
+                   "packages/X11/configure"
+                   "packages/HGL/configure"
+                   "packages/OpenAL/configure"
+                   "packages/OpenGL/configure"
+                   "packages/network/configure"
+                   "packages/unix/configure"
+                   "packages/Cabal/tests/HSQL/configure"
+                   "packages/ALUT/configure"
+                   "packages/GLUT/configure"
+                   "packages/base/cbits/execvpe.c"
+                   "packages/base/System/Process/Internals.hs"
+                   "packages/Cabal/Distribution/attic"
+                   "packages/Cabal/Distribution/Simple/Register.hs"
+                   "packages/Cabal/Distribution/Simple/Hugs.hs"
+                   "tools/hugs-hc"
+                   "src/machdep.c"
+                   "libraries/Makefile.in")
+               (("/bin/sh") (which "sh")))
+             (substitute* '("demos/Makefile.in"
+                            "libraries/Makefile.in")
+               (("/bin/cp") (which "cp")))
+             #t)))
        #:tests? #f)) ; no test target
-    (home-page "http://haskell.org/hugs")
+    ;; FIXME: Fails to build with GCC 5.
+    (native-inputs `(("gcc" ,gcc-4.9)))
+    (home-page "https://www.haskell.org/hugs/")
     (synopsis "Functional programming system based on Haskell 98")
     (description
      "Hugs 98 is an interpreter and programming environment for developing