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.
master
Timothy Sample 2018-08-29 00:06:20 -04:00 committed by Ricardo Wurmus
parent 3b72e7e2d4
commit 082d9383d1
No known key found for this signature in database
GPG Key ID: 197A5888235FACAC
2 changed files with 115 additions and 6 deletions

View File

@ -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

View File

@ -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 <alexbiehl@gmail.com>, Simon Hengel <sol@typeful.net>, Mateusz Kowalczyk <fuuzetsu@fuuzetsu.co.uk>
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