[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
247/272: gnu: ghc-haddock-library: Update to 1.5.0.1.
From: |
Ricardo Wurmus |
Subject: |
247/272: gnu: ghc-haddock-library: Update to 1.5.0.1. |
Date: |
Mon, 1 Oct 2018 06:13:55 -0400 (EDT) |
rekado pushed a commit to branch master
in repository guix.
commit 082d9383d1475b772f104f1a6b363e4c80d91cf9
Author: Timothy Sample <address@hidden>
Date: Wed Aug 29 00:06:20 2018 -0400
gnu: ghc-haddock-library: Update to 1.5.0.1.
* gnu/packages/patches/ghc-haddock-library-unbundle.patch: New file.
* gnu/packages/haskell.scm (ghc-haddock-library): Update to 1.5.0.1.
[source]: Add the patch; add a snippet to remove the bundled library.
[arguments]: Add a phase to relax test suite dependency constraints and
another to add a missing directory required for tests.
[native-inputs]: Add ghc-base-compat, ghc-optparse-applicative, and
ghc-tree-diff.
---
gnu/packages/haskell.scm | 35 +++++++--
.../patches/ghc-haddock-library-unbundle.patch | 86 ++++++++++++++++++++++
2 files changed, 115 insertions(+), 6 deletions(-)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 5f9c2a4..0e061a6 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -935,7 +935,7 @@ compute the difference between arbitrary abstract datatypes
(ADTs) using
(define-public ghc-haddock-library
(package
(name "ghc-haddock-library")
- (version "1.4.3")
+ (version "1.5.0.1")
(source
(origin
(method url-fetch)
@@ -945,14 +945,37 @@ compute the difference between arbitrary abstract
datatypes (ADTs) using
".tar.gz"))
(sha256
(base32
- "0ns4bpf6whmcfl0cm2gx2c73if416x4q3ac4l4qm8w84h0zpcr7p"))))
+ "1cmbg8l5xrwpliclwy3l057raypjqy0hsg1h1743ahaj8gq10b7z"))
+ (patches (search-patches
+ "ghc-haddock-library-unbundle.patch"))
+ (modules '((guix build utils)))
+ (snippet '(begin
+ (delete-file-recursively "vendor")
+ #t))))
(build-system haskell-build-system)
- (inputs
- `(("ghc-base-compat" ,ghc-base-compat)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'relax-test-suite-dependencies
+ (lambda _
+ (substitute* "haddock-library.cabal"
+ (("base-compat\\s*\\^>= 0\\.9\\.3") "base-compat")
+ (("hspec\\s*\\^>= 2\\.4\\.4") "hspec"))))
+ ;; The release tarball does not contain the "fixtures/examples"
+ ;; directory, which is required for testing. In the upstream
+ ;; repository, the directory exists and is populated. Here, we
+ ;; create an empty directory to placate the tests.
+ (add-before 'check 'add-examples-directory
+ (lambda _
+ (mkdir "fixtures/examples")
+ #t)))))
(native-inputs
- `(("hspec-discover" ,hspec-discover)
+ `(("ghc-base-compat" ,ghc-base-compat)
("ghc-hspec" ,ghc-hspec)
- ("ghc-quickcheck" ,ghc-quickcheck)))
+ ("ghc-optparse-applicative" ,ghc-optparse-applicative)
+ ("ghc-quickcheck" ,ghc-quickcheck)
+ ("ghc-tree-diff" ,ghc-tree-diff)
+ ("hspec-discover" ,hspec-discover)))
(home-page "https://www.haskell.org/haddock/")
(synopsis "Library exposing some functionality of Haddock")
(description
diff --git a/gnu/packages/patches/ghc-haddock-library-unbundle.patch
b/gnu/packages/patches/ghc-haddock-library-unbundle.patch
new file mode 100644
index 0000000..0e8b548
--- /dev/null
+++ b/gnu/packages/patches/ghc-haddock-library-unbundle.patch
@@ -0,0 +1,86 @@
+This patch (inspired by Debian) allows ghc-haddock-library to use our
+ghc-attoparsec package instead of using a bundled version.
+
+--- a/haddock-library.cabal 2018-09-01 01:22:18.676855884 -0400
++++ b/haddock-library.cabal 2018-09-01 01:25:10.501150260 -0400
+@@ -10,7 +10,6 @@
+ itself, see the ‘haddock’ package.
+ license: BSD3
+ license-files: LICENSE
+- vendor/attoparsec-0.13.1.0/LICENSE
+ maintainer: Alex Biehl <address@hidden>, Simon Hengel
<address@hidden>, Mateusz Kowalczyk <address@hidden>
+ homepage: http://www.haskell.org/haddock/
+ bug-reports: https://github.com/haskell/haddock/issues
+@@ -28,7 +27,6 @@
+ , containers >= 0.4.2.1 && < 0.6
+ , transformers >= 0.3.0 && < 0.6
+
+- -- internal sub-lib
+ build-depends: attoparsec
+
+ hs-source-dirs: src
+@@ -49,42 +47,6 @@
+ if impl(ghc >= 8.0)
+ ghc-options: -Wcompat -Wnoncanonical-monad-instances
-Wnoncanonical-monadfail-instances
+
+-library attoparsec
+- default-language: Haskell2010
+-
+- build-depends:
+- base >= 4.5 && < 4.12
+- , bytestring >= 0.9.2.1 && < 0.11
+- , deepseq >= 1.3 && < 1.5
+-
+- hs-source-dirs: vendor/attoparsec-0.13.1.0
+-
+- -- NB: haddock-library needs only small part of lib:attoparsec
+- -- internally, so we only bundle that subset here
+- exposed-modules:
+- Data.Attoparsec.ByteString
+- Data.Attoparsec.ByteString.Char8
+- Data.Attoparsec.Combinator
+-
+- other-modules:
+- Data.Attoparsec
+- Data.Attoparsec.ByteString.Buffer
+- Data.Attoparsec.ByteString.FastSet
+- Data.Attoparsec.ByteString.Internal
+- Data.Attoparsec.Internal
+- Data.Attoparsec.Internal.Fhthagn
+- Data.Attoparsec.Internal.Types
+- Data.Attoparsec.Number
+-
+- ghc-options: -funbox-strict-fields -Wall -fwarn-tabs -O2
+-
+- ghc-options: -Wall
+- if impl(ghc >= 8.0)
+- ghc-options: -Wcompat -Wnoncanonical-monad-instances
-Wnoncanonical-monadfail-instances
+- else
+- build-depends: semigroups ^>= 0.18.3, fail ^>= 4.9.0.0
+-
+-
+ test-suite spec
+ type: exitcode-stdio-1.0
+ default-language: Haskell2010
+@@ -115,11 +77,10 @@
+ , hspec ^>= 2.4.4
+ , QuickCheck ^>= 2.11
+
+- -- internal sub-lib
+ build-depends: attoparsec
+
+ -- Versions for the dependencies below are transitively pinned by
+- -- dependency on haddock-library:lib:attoparsec
++ -- dependency on attoparsec
+ build-depends:
+ base
+ , bytestring
+@@ -146,7 +107,7 @@
+ haddock-library
+
+ -- Versions for the dependencies below are transitively pinned by
+- -- dependency on haddock-library:lib:attoparsec
++ -- dependency on attoparsec
+ build-depends:
+ base
+
- 265/272: gnu: agda: Fix build., (continued)
- 265/272: gnu: agda: Fix build., Ricardo Wurmus, 2018/10/01
- 139/272: gnu: ghc-half: Update to 0.3., Ricardo Wurmus, 2018/10/01
- 258/272: gnu: Add ghc-weigh., Ricardo Wurmus, 2018/10/01
- 131/272: gnu: ghc-pem: Update to 0.2.4., Ricardo Wurmus, 2018/10/01
- 183/272: gnu: ghc-tasty-th: Update to 0.1.7., Ricardo Wurmus, 2018/10/01
- 207/272: gnu: ghc-adjunctions: Update to 4.4., Ricardo Wurmus, 2018/10/01
- 213/272: gnu: ghc-rebase: Update to 1.2.4., Ricardo Wurmus, 2018/10/01
- 242/272: gnu: ghc-yesod-core: Update to 1.6.6., Ricardo Wurmus, 2018/10/01
- 230/272: gnu: cabal-install: Update to 2.2.0.0., Ricardo Wurmus, 2018/10/01
- 243/272: gnu: ghc-persistent-sqlite: Update to 2.8.2., Ricardo Wurmus, 2018/10/01
- 247/272: gnu: ghc-haddock-library: Update to 1.5.0.1.,
Ricardo Wurmus <=
- 257/272: gnu: ghc-tasty-golden: Update to 2.3.2., Ricardo Wurmus, 2018/10/01
- 260/272: gnu: Add ghc-sdl2., Ricardo Wurmus, 2018/10/01
- 270/272: gnu: ghc-gnuplot: Fix build., Ricardo Wurmus, 2018/10/01
- 262/272: gnu: Add ghc-sdl2-image., Ricardo Wurmus, 2018/10/01
- 149/272: gnu: ghc-x509: Update to 1.7.3., Ricardo Wurmus, 2018/10/01
- 118/272: gnu: ghc-tasty-hunit: Update to 0.10.0.1., Ricardo Wurmus, 2018/10/01
- 145/272: gnu: Add ghc-memotrie., Ricardo Wurmus, 2018/10/01
- 164/272: gnu: ghc-haskell-src-exts: Update to 1.20.2., Ricardo Wurmus, 2018/10/01
- 169/272: gnu: ghc-socks: Update to 0.5.6., Ricardo Wurmus, 2018/10/01
- 185/272: gnu: ghc-uri-bytestring: Update to 0.3.2.0., Ricardo Wurmus, 2018/10/01