diff options
Diffstat (limited to 'gnu/packages/haskell-xyz.scm')
-rw-r--r-- | gnu/packages/haskell-xyz.scm | 344 |
1 files changed, 314 insertions, 30 deletions
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm index 54c77653cc..08d6580a32 100644 --- a/gnu/packages/haskell-xyz.scm +++ b/gnu/packages/haskell-xyz.scm @@ -47,10 +47,10 @@ #:use-module (gnu packages base) #:use-module (gnu packages compression) #:use-module (gnu packages emacs) - #:use-module (gnu packages gcc) #:use-module (gnu packages gl) #:use-module (gnu packages graphviz) #:use-module (gnu packages gtk) + #:use-module (gnu packages haskell) #:use-module (gnu packages haskell-apps) #:use-module (gnu packages haskell-check) #:use-module (gnu packages haskell-crypto) @@ -72,7 +72,8 @@ #:use-module (guix git-download) #:use-module (guix utils) #:use-module ((guix licenses) #:prefix license:) - #:use-module (guix packages)) + #:use-module (guix packages) + #:use-module (srfi srfi-1)) (define-public ghc-abstract-deque (package @@ -328,6 +329,8 @@ tool lex or flex for C/C++.") (base32 "1avh4a419h9d2zsslg6j8hm87ppgsgqafz8ll037rk2yy1g4jl7b")))) (build-system haskell-build-system) + (arguments + `(#:extra-directories ("alsa-lib"))) (inputs `(("ghc-extensible-exceptions" ,ghc-extensible-exceptions) ("alsa-lib" ,alsa-lib))) @@ -800,6 +803,7 @@ Haskell @code{ByteString}s.") (base32 "0hgvlqcr852hfp52jp99snhbj550mvxxpi8qn15d8ml9aqhyl2lr")))) (build-system haskell-build-system) + (outputs '("out" "static" "doc")) (native-inputs `(("ghc-quickcheck" ,ghc-quickcheck) ("ghc-hspec" ,ghc-hspec) @@ -857,6 +861,7 @@ than @code{base-compat}, which has no dependencies.") (base32 "0srlws74yiraqaapgcjd9p5d1fwb3zr9swcz74jpjm55fls2nn37")))) (build-system haskell-build-system) + (outputs '("out" "static" "doc")) (home-page "https://github.com/haskell-foundation/foundation") (synopsis "Basic primitives for Foundation starter pack") (description @@ -903,6 +908,7 @@ available in later versions of base to a wider (older) range of compilers.") (base32 "1zk728sd09hh2r4xwz4lazsrrgg5cshydn64932sm0vckplndk73")))) (build-system haskell-build-system) + (outputs '("out" "static" "doc")) (home-page "https://github.com/nikita-volkov/base-prelude") (synopsis "The most complete prelude formed solely from the Haskell's base package") @@ -1379,14 +1385,9 @@ streaming compression and decompression.") `(("ghc-test-framework" ,ghc-test-framework) ("ghc-test-framework-hunit" ,ghc-test-framework-hunit) ("ghc-hunit" ,ghc-hunit) - ("ghc-shelly" ,ghc-shelly) - ("gcc" ,gcc))) + ("ghc-shelly" ,ghc-shelly))) (arguments - `(;; XXX: Test failures are induced by a parse error in <bits/floatn.h> - ;; of glibc 2.28. - #:tests? #f - - #:phases + `(#:phases (modify-phases %standard-phases (add-before 'check 'set-cc ;; add a cc executable in the path, needed for some tests to pass @@ -1523,7 +1524,7 @@ call stacks with different versions of the compiler.") (package (name "ghc-case-insensitive") (version "1.2.0.11") - (outputs '("out" "doc")) + (outputs '("out" "static" "doc")) (source (origin (method url-fetch) @@ -2067,6 +2068,7 @@ of the C library.") (base32 "0cbkmgrcnwgigg6z88y3c09gm7g6dwm7gzbgr53h8k1xik29s9hf")))) (build-system haskell-build-system) + (outputs '("out" "static" "doc")) (home-page "http://community.haskell.org/~ndm/cmdargs/") (synopsis "Command line argument processing") @@ -2268,6 +2270,7 @@ concurrent threads. Can be used for progress displays etc.") (base32 "18izjgff4pmrknc8py06yvg3g6x27nx0rzmlwjxcflwm5v4szpw4")))) (build-system haskell-build-system) + (outputs '("out" "static" "doc")) (inputs `(("ghc-exceptions" ,ghc-exceptions) ("ghc-lifted-base" ,ghc-lifted-base) @@ -3240,7 +3243,7 @@ disk space usage.") (define-public ghc-distributive (package (name "ghc-distributive") - (version "0.6.1") + (version "0.6.2") (source (origin (method url-fetch) @@ -3250,7 +3253,7 @@ disk space usage.") ".tar.gz")) (sha256 (base32 - "1wnayzzb4vk8rhh9gzhdpd9f64366k4vmbhximavmqqmp3cv2jbp")))) + "1j93zkfffm6s16kgr0j0z87y5ds28rw0r2gyc5ncwcylvrqy4kl2")))) (build-system haskell-build-system) (inputs `(("ghc-tagged" ,ghc-tagged) @@ -4094,7 +4097,7 @@ consuming feeds in both RSS (Really Simple Syndication) and Atom format.") (package (name "ghc-fgl") (version "5.7.0.1") - (outputs '("out" "doc")) + (outputs '("out" "static" "doc")) (source (origin (method url-fetch) @@ -4341,6 +4344,7 @@ completely unverified though.") (base32 "19qjmzc7gaxfwgqbgy0kq4vhbxvh3qjnwsxnc7pzwws2if5bv80b")))) (build-system haskell-build-system) + (outputs '("out" "static" "doc")) (inputs `(("ghc-mwc-randam" ,ghc-mwc-random) ("ghc-primitive" ,ghc-primitive) ("ghc-vector" ,ghc-vector) @@ -4383,6 +4387,7 @@ and are often as efficient as hand-written folds.") (substitute* "tests/Test/Foundation/Number.hs" ((", testDividible proxy") "")) #t))))) + (outputs '("out" "static" "doc")) (inputs `(("ghc-basement" ,ghc-basement))) (home-page "https://github.com/haskell-foundation/foundation") (synopsis "Alternative prelude with batteries and no dependencies") @@ -4419,6 +4424,7 @@ Foundation has the following goals: (base32 "0vlf3f2ckl3cr7z2zl8c9c8qkdlfgvmh04gxkp2fg0z9dz80nlyb")))) (build-system haskell-build-system) + (outputs '("out" "static" "doc")) (inputs `(("ghc-prelude-extras" ,ghc-prelude-extras) ("ghc-profunctors" ,ghc-profunctors) @@ -4485,6 +4491,7 @@ specific Windows, Mac, and Linux file system event notification.") (base32 "0vdg9qdq35jl3m11a87wk8cq1y71qm4i1g1b2pxki0wk70yw20a4")))) (build-system haskell-build-system) + (outputs '("out" "static" "doc")) (inputs `(("ghc-th-abstraction" ,ghc-th-abstraction))) (native-inputs @@ -4564,6 +4571,7 @@ and @code{withBaseCase}) or implicitly (@code{genericArbitrary'}).") (base32 "160knr2phnzh2gldfv954lz029jzc7y8kz5xpmbf4z3vb5ngm6fw")))) (build-system haskell-build-system) + (outputs '("out" "static" "doc")) (inputs `(("ghc-sop-core" ,ghc-sop-core) ("ghc-transformers-compat" ,ghc-transformers-compat))) @@ -5210,7 +5218,7 @@ Happy works in a similar way to the yacc tool for C.") (package (name "ghc-hashable") (version "1.2.7.0") - (outputs '("out" "doc")) + (outputs '("out" "static" "doc")) (source (origin (method url-fetch) @@ -5397,6 +5405,7 @@ package are to parse or generate Haskell 98 code.") (base32 "0q1y8n3d82gid9bcx8wxsqqmj9mq11fg3gp5yzpfbw958dhi3j9f")))) (build-system haskell-build-system) + (outputs '("out" "static" "doc")) (inputs `(("cpphs" ,cpphs) ("ghc-happy" ,ghc-happy) @@ -5642,6 +5651,8 @@ accessed or modified.") (sha256 (base32 "1sqy1aci5zfagkb34mz3xdil7cl96z4b4cx28cha54vc5sx1lhpg")))) (build-system haskell-build-system) + (arguments + `(#:extra-directories ("lapack"))) (inputs `(("ghc-random" ,ghc-random) ("ghc-split" ,ghc-split) @@ -5673,6 +5684,8 @@ numerical computations based on BLAS and LAPACK.") (sha256 (base32 "0v6dla426x4ywaq59jm89ql1i42n39iw6z0j378xwb676v9kfxhm")))) (build-system haskell-build-system) + (arguments + `(#:extra-directories ("gsl"))) (inputs `(("ghc-hmatrix" ,ghc-hmatrix) ("ghc-vector" ,ghc-vector) @@ -5890,7 +5903,8 @@ handler built in.") "183bgl5jcx5y2r94lviqfw0a5w9089nxjd1z40k8vx9y2h60pm6j")))) (build-system haskell-build-system) (arguments - `(#:configure-flags '("-fsystem-lua"))) + `(#:configure-flags '("-fsystem-lua") + #:extra-directories ("lua"))) (inputs `(("lua" ,lua) ("ghc-exceptions" ,ghc-exceptions) @@ -6500,6 +6514,8 @@ instances for conversion to and from JSON .ipynb files.") (sha256 (base32 "0khmfwql4vwj55idsxmhjhrbqzfir3g9wm5lmpvnf77mm95cfpdz")))) (build-system haskell-build-system) + (arguments + `(#:extra-directories ("wireless-tools"))) (inputs `(("wireless-tools" ,wireless-tools))) (home-page "https://github.com/jaor/iwlib") @@ -6545,6 +6561,7 @@ JSON (JavaScript Object Notation) is a lightweight data-interchange format.") (base32 "0qacrnz2qcykj3f6c4k2p8qd31pa2slpv3ykfblgizrfh3401q6x")))) (build-system haskell-build-system) + (outputs '("out" "static" "doc")) (inputs `(("ghc-zlib" ,ghc-zlib) ("ghc-vector" ,ghc-vector) @@ -6678,6 +6695,7 @@ with @code{wc} (for a web service).") (base32 "1gpkc53l2cggnfrgg5k4ih82rycjbdvpj9pnbi5cq8ms0dbvs4a7")))) (build-system haskell-build-system) + (outputs '("out" "static" "doc")) (inputs `(("ghc-base-orphans" ,ghc-base-orphans) ("ghc-bifunctors" ,ghc-bifunctors) @@ -6826,6 +6844,7 @@ Music Player Daemon.") (base32 "12gsh994pr13bsybwlravmi21la66dyw74pk74yfw2pnz682wv10")))) (build-system haskell-build-system) + (outputs '("out" "static" "doc")) ; documentation is 39M (native-inputs `(("ghc-alex" ,ghc-alex) ("ghc-happy" ,ghc-happy))) @@ -6882,7 +6901,8 @@ compiler versions.") #t)))) (build-system haskell-build-system) (arguments - `(#:configure-flags `("--flags=system-libyaml"))) + `(#:configure-flags `("--flags=system-libyaml") + #:extra-directories ("libyaml"))) (inputs `(("ghc-conduit" ,ghc-conduit) ("ghc-resourcet" ,ghc-resourcet) @@ -7906,6 +7926,7 @@ the @code{mtl-tf} package.") (base32 "1bqy982lpdb83lacfy76n8kqw5bvd31avxj25kg8gkgycdh0g0ma")))) (build-system haskell-build-system) + (outputs '("out" "static" "doc")) (inputs `(("ghc-unordered-containers" ,ghc-unordered-containers) ("ghc-hashable" ,ghc-hashable) ("ghc-vector" ,ghc-vector) @@ -8096,7 +8117,8 @@ between 2 and 3 times faster than the Mersenne Twister.") "0gsyyaqyh5r9zc0rhwpj5spyd6i4w2vj61h4nihgmmh0yyqvf3z5")))) (build-system haskell-build-system) (arguments - '(#:phases + '(#:extra-directories ("ncurses") + #:phases (modify-phases %standard-phases (add-before 'build 'fix-includes (lambda _ @@ -8122,7 +8144,7 @@ ncurses.") (package (name "ghc-network") (version "2.8.0.1") - (outputs '("out" "doc")) + (outputs '("out" "static" "doc")) (source (origin (method url-fetch) @@ -8216,7 +8238,7 @@ IPv4, IPv6 and MAC addresses.") (package (name "ghc-network-uri") (version "2.6.1.0") - (outputs '("out" "doc")) + (outputs '("out" "static" "doc")) (source (origin (method url-fetch) @@ -8464,6 +8486,8 @@ version 1.3).") (base32 "0zgllb4bcash2i2cispa3j565aw3dpxs41ghmhpvyvi4a6xmyldx")))) (build-system haskell-build-system) + (arguments + `(#:extra-directories ("glu"))) (inputs `(("ghc-half" ,ghc-half) ("ghc-fixed" ,ghc-fixed) @@ -8740,6 +8764,17 @@ code. It was designed for use in @code{Pandoc}.") (base32 "0dpjrr40h54cljzhvixyym07z792a9izg6b9dmqpjlgcg4rj0xx8")))) (build-system haskell-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'find-library + (lambda _ + (substitute* "test/Tests/Command.hs" + (("= dynlibEnv") + (format #f "= [(\"LD_LIBRARY_PATH\" , \"~a/dist/build\")]" + (getcwd)))) + #t))))) + (outputs '("out" "static" "doc")) (inputs `(("ghc-aeson" ,ghc-aeson) ("ghc-aeson-pretty" ,ghc-aeson-pretty) @@ -8802,6 +8837,117 @@ definition lists, tables, and other features. A compatibility mode is provided for those who need a drop-in replacement for Markdown.pl.") (license license:gpl2+))) +(define-public pandoc + (package + (inherit ghc-pandoc) + (name "pandoc") + (arguments + `(#:configure-flags + (list "-fstatic" + ;; Do not build trypandoc; this is the default but it's better to + ;; be explicit. + "-f-trypandoc" + ;; TODO: Without these we cannot link the Haskell libraries + ;; statically. It would be nice if we could also build the + ;; shared libraries. + "--disable-shared" + "--disable-executable-dynamic" + ;; That's where we place all static libraries + "--extra-lib-dirs=static-libs/" + "--ghc-option=-static") + #:modules ((guix build haskell-build-system) + (guix build utils) + (ice-9 match) + (srfi srfi-1)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'create-simple-paths-module + (lambda* (#:key outputs #:allow-other-keys) + (call-with-output-file "Paths_pandoc.hs" + (lambda (port) + (format port "\ +{-# LANGUAGE CPP #-} +{-# LANGUAGE NoRebindableSyntax #-} +{-# OPTIONS_GHC -fno-warn-missing-import-lists #-} +module Paths_pandoc (version,getDataDir,getDataFileName) where +import Prelude +import Data.Version (Version(..)) +import System.Info +version :: Version +version = Version [~a] [] + +datadir :: FilePath +datadir = \"~a/share/\" ++ + arch ++ \"-\" ++ + os ++ \"-\" ++ + compilerName ++ \"-~a/pandoc-~a\" + +getDataDir :: IO FilePath +getDataDir = return datadir + +getDataFileName :: FilePath -> IO FilePath +getDataFileName name = do + dir <- getDataDir + return (dir ++ \"/\" ++ name) +" + (string-map (lambda (chr) (if (eq? chr #\.) #\, chr)) + ,(package-version ghc-pandoc)) + (assoc-ref outputs "out") + ,(package-version ghc) + ,(package-version ghc-pandoc)))) + #t)) + (add-after 'unpack 'prepare-static-libraries + (lambda* (#:key inputs #:allow-other-keys) + (mkdir-p (string-append (getcwd) "/static-libs")) + (for-each + (lambda (input) + (when (or (string-prefix? "static-" (car input)) + (string-prefix? "ghc" (car input))) + (match (find-files (cdr input) "\\.a$") + ((and (first . rest) libs) + (for-each (lambda (lib) + (let ((target (string-append (getcwd) "/static-libs/" + (basename lib)))) + (unless (file-exists? target) + (symlink first target)))) + libs)) + (_ #f)))) + inputs) + #t)) + (delete 'check) + (add-after 'install 'post-install-check + (assoc-ref %standard-phases 'check))))) + (outputs '("out" "lib" "static" "doc")) + (inputs + (let* ((direct-inputs (package-inputs ghc-pandoc)) + (all-static-inputs + (map (lambda (pkg) + (list (string-append "static-" (package-name pkg)) + pkg "static")) + (delete-duplicates + (append (map cadr direct-inputs) + (filter (lambda (pkg) + (string-prefix? "ghc-" (package-name pkg))) + (package-closure + (map cadr direct-inputs)))))))) + `(("zlib:static" ,zlib "static") + ,@all-static-inputs + ,@direct-inputs))) + (native-inputs + (let* ((direct-inputs (package-native-inputs ghc-pandoc)) + (all-static-inputs + (map (lambda (pkg) + (list (string-append "static-" (package-name pkg)) + pkg "static")) + (delete-duplicates + (append (map cadr direct-inputs) + (filter (lambda (pkg) + (string-prefix? "ghc-" (package-name pkg))) + (package-closure + (map cadr direct-inputs)))))))) + `(,@all-static-inputs + ,@direct-inputs))))) + (define-public ghc-pandoc-citeproc (package (name "ghc-pandoc-citeproc") @@ -8861,6 +9007,108 @@ and also has a mode for converting bibliographic databases a YAML format suitable for inclusion in pandoc YAML metadata.") (license license:bsd-3))) +(define-public pandoc-citeproc + (package (inherit ghc-pandoc-citeproc) + (name "pandoc-citeproc") + (arguments + `(#:configure-flags + (list "-fstatic" + "--disable-shared" + "--disable-executable-dynamic" + ;; That's where we place all static libraries + "--extra-lib-dirs=static-libs/" + "--ghc-option=-static") + #:modules ((guix build haskell-build-system) + (guix build utils) + (ice-9 match) + (srfi srfi-1)) + #:phases + (modify-phases %standard-phases + ;; Many YAML tests (44) are failing do to changes in ghc-yaml: + ;; <https://github.com/jgm/pandoc-citeproc/issues/342>. + (add-before 'configure 'patch-tests + (lambda _ + (substitute* "tests/test-pandoc-citeproc.hs" + (("let allTests = citeprocTests \\+\\+ biblio2yamlTests") + "let allTests = citeprocTests")))) + ;; Tests need to be run after installation. + (delete 'check) + (add-after 'install 'post-install-check + (assoc-ref %standard-phases 'check)) + (add-after 'unpack 'create-simple-paths-module + (lambda* (#:key outputs #:allow-other-keys) + (call-with-output-file "Paths_pandoc_citeproc.hs" + (lambda (port) + (format port "\ +{-# LANGUAGE CPP #-} +{-# LANGUAGE NoRebindableSyntax #-} +{-# OPTIONS_GHC -fno-warn-missing-import-lists #-} +module Paths_pandoc_citeproc (version,getDataFileName) where +import Prelude +import Data.Version (Version(..)) +import System.Info +version :: Version +version = Version [~a] [] + +datadir :: FilePath +datadir = \"~a/share/\" ++ + arch ++ \"-\" ++ + os ++ \"-\" ++ + compilerName ++ \"-~a/pandoc-citeproc-~a\" + +getDataDir :: IO FilePath +getDataDir = return datadir + +getDataFileName :: FilePath -> IO FilePath +getDataFileName name = do + dir <- getDataDir + return (dir ++ \"/\" ++ name) +" + (string-map (lambda (chr) (if (eq? chr #\.) #\, chr)) + ,(package-version ghc-pandoc-citeproc)) + (assoc-ref outputs "out") + ,(package-version ghc) + ,(package-version ghc-pandoc-citeproc)))) + #t)) + (add-after 'unpack 'prepare-static-libraries + (lambda* (#:key inputs #:allow-other-keys) + (mkdir-p (string-append (getcwd) "/static-libs")) + (for-each + (lambda (input) + (when (or (string-prefix? "static-" (car input)) + (string-prefix? "ghc" (car input))) + (match (find-files (cdr input) "\\.a$") + ((and (first . rest) libs) + (for-each (lambda (lib) + (let ((target (string-append (getcwd) "/static-libs/" + (basename lib)))) + (unless (file-exists? target) + (symlink first target)))) + libs)) + (_ #f)))) + inputs) + #t))))) + (inputs + (let* ((direct-inputs + (cons `("ghc-pandoc" ,pandoc) + (alist-delete "ghc-pandoc" + (package-inputs ghc-pandoc-citeproc)))) + (all-static-inputs + (map (lambda (pkg) + (list (string-append "static-" (package-name pkg)) + pkg "static")) + (delete-duplicates + (append (map cadr direct-inputs) + (filter (lambda (pkg) + (string-prefix? "ghc-" (package-name pkg))) + (package-closure + (map cadr direct-inputs)))))))) + `(("zlib:static" ,zlib "static") + ("pandoc" ,pandoc "lib") + ,@all-static-inputs + ,@direct-inputs))) + (synopsis "Pandoc filter for bibliographic references"))) + (define-public ghc-pandoc-types (package (name "ghc-pandoc-types") @@ -8874,6 +9122,26 @@ suitable for inclusion in pandoc YAML metadata.") (base32 "1d6ygq991ddria71l7hg9yd7lq94sjy4m71rdws1v8hq943c4d0q")))) (build-system haskell-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; None of the directory names are actually used. By generating a + ;; simpler module without references to store names we avoid + ;; introducing references in the pandoc executable. + (add-after 'unpack 'create-simple-paths-module + (lambda _ + (call-with-output-file "Paths_pandoc_types.hs" + (lambda (port) + (format port "\ +{-# LANGUAGE CPP #-} +{-# LANGUAGE NoRebindableSyntax #-} +{-# OPTIONS_GHC -fno-warn-missing-import-lists #-} +module Paths_pandoc_types (version) where +import Data.Version (Version(..)) +version :: Version +version = Version [~a] [] +" (string-map (lambda (chr) (if (eq? chr #\.) #\, chr)) ,version)))) + #t))))) (inputs `(("ghc-syb" ,ghc-syb) ("ghc-aeson" ,ghc-aeson) @@ -8896,7 +9164,7 @@ building up, manipulating and serialising @code{Pandoc} structures.") (package (name "ghc-parallel") (version "3.2.2.0") - (outputs '("out" "doc")) + (outputs '("out" "static" "doc")) (source (origin (method url-fetch) @@ -9062,7 +9330,7 @@ files/directories, and more.") (package (name "ghc-paths") (version "0.1.0.12") - (outputs '("out" "doc")) + (outputs '("out" "static" "doc")) (source (origin (method url-fetch) @@ -9143,6 +9411,8 @@ rules.") (base32 "0xcyi1fivwg7a92mch5bcqzmrfxzqj42rmb3m8kgs61x4qwpxj82")))) (build-system haskell-build-system) + (arguments + `(#:extra-directories ("pcre"))) (inputs `(("pcre" ,pcre))) (native-inputs @@ -9666,7 +9936,7 @@ Show instance.") (package (name "ghc-primitive") (version "0.6.4.0") - (outputs '("out" "doc")) + (outputs '("out" "static" "doc")) (source (origin (method url-fetch) @@ -9733,6 +10003,7 @@ API.") (base32 "1dx3nkc27yxsrbrhh3iwhq7dl1xn6bj7n62yx6nh8vmpbg62lqvl")))) (build-system haskell-build-system) + (outputs '("out" "static" "doc")) (inputs `(("ghc-base-orphans" ,ghc-base-orphans) ("ghc-bifunctors" ,ghc-bifunctors) @@ -9935,7 +10206,7 @@ usable.") (package (name "ghc-random") (version "1.1") - (outputs '("out" "doc")) + (outputs '("out" "static" "doc")) (source (origin (method url-fetch) @@ -10011,6 +10282,7 @@ includes efficient implementations for common data types.") (base32 "0q4m2fa7wkgxs0grir8rlqwibasmi3s1x7c107ynndwfm62nzv0a")))) (build-system haskell-build-system) + (outputs '("out" "static" "doc")) (inputs `(("ghc-hashable" ,ghc-hashable) ("ghc-vector" ,ghc-vector) ("ghc-unordered-containers" ,ghc-unordered-containers) @@ -10285,6 +10557,8 @@ this problem.") (base32 "1h16w994g9s62iwkdqa7bar2n9cfixmkzz2rm8svm960qr57valf")))) (build-system haskell-build-system) + (arguments + `(#:extra-directories ("pcre"))) (inputs `(("ghc-regex-base" ,ghc-regex-base) ("pcre" ,pcre))) @@ -10356,6 +10630,7 @@ Haskell library @code{regex-base}.") (base32 "03yhpqrqz977nwlnhnyz9dacnbzw8xb6j18h365rkgmbc05sb3hf")))) (build-system haskell-build-system) + (outputs '("out" "static" "doc")) (inputs `(("ghc-regex-base" ,ghc-regex-base))) (home-page "https://github.com/haskell-hvr/regex-tdfa") @@ -10444,6 +10719,7 @@ normal mtl transformers.") (base32 "1jbqif6k249rkknm2zwk8v8jil3kgi9ar53358v8l4ffx346rm82")))) (build-system haskell-build-system) + (outputs '("out" "static" "doc")) (inputs `(("ghc-rebase" ,ghc-rebase))) (home-page "https://github.com/nikita-volkov/rerebase") @@ -11114,6 +11390,7 @@ class, forming lattice-like structure.") (base32 "016hc4imr9l4szs3p7f1aahvxr5wv4clvr3qzrm3nibssg5vrs61")))) (build-system haskell-build-system) + (outputs '("out" "static" "doc")) (inputs `(("ghc-base-orphans" ,ghc-base-orphans) ("ghc-transformers-compat" ,ghc-transformers-compat) @@ -11603,7 +11880,7 @@ used for example by QuickCheck, see quickcheck-special." ) (package (name "ghc-split") (version "0.2.3.3") - (outputs '("out" "doc")) + (outputs '("out" "static" "doc")) (source (origin (method url-fetch) @@ -12138,7 +12415,7 @@ building Scalable Vector Graphics (SVG).") (package (name "ghc-syb") (version "0.7.1") - (outputs '("out" "doc")) + (outputs '("out" "static" "doc")) (source (origin (method url-fetch) @@ -12583,7 +12860,7 @@ string metrics efficiently.") (package (name "ghc-tf-random") (version "0.5") - (outputs '("out" "doc")) + (outputs '("out" "static" "doc")) (source (origin (method url-fetch) @@ -13531,6 +13808,7 @@ for Unix time in Haskell.") "02gy1zrxgzg4xmzm8lafsf1nyr3as1q20r8ld73xg3q7rkag9acg")))) (build-system haskell-build-system) (arguments `(#:tests? #f)) ; FIXME: hspec-discover not in PATH + (outputs '("out" "static" "doc")) (inputs `(("ghc-async" ,ghc-async) ("ghc-unliftio-core" ,ghc-unliftio-core))) @@ -13572,7 +13850,7 @@ functions.") (package (name "ghc-unordered-containers") (version "0.2.10.0") - (outputs '("out" "doc")) + (outputs '("out" "static" "doc")) (source (origin (method url-fetch) @@ -13927,7 +14205,7 @@ representing a store for a single element.") (package (name "ghc-vector") (version "0.12.0.3") - (outputs '("out" "doc")) + (outputs '("out" "static" "doc")) (source (origin (method url-fetch) @@ -14298,6 +14576,9 @@ modernized interface.") (sha256 (base32 "0gg6852mrlgl8zng1j84fismz7k81jr5fk92glgkscf8q6ryg0bm")))) (build-system haskell-build-system) + (arguments + `(#:extra-directories + ("libx11" "libxrandr" "libxinerama" "libxscrnsaver"))) (inputs `(("libx11" ,libx11) ("libxrandr" ,libxrandr) @@ -14322,6 +14603,8 @@ bindings are a direct translation of the C bindings.") "X11-xft-" version ".tar.gz")) (sha256 (base32 "1lgqb0s2qfwwgbvwxhjbi23rbwamzdi0l0slfr20c3jpcbp3zfjf")))) + (arguments + `(#:extra-directories ("libx11" "libxft" "xorgproto"))) (inputs `(("ghc-x11" ,ghc-x11) ("ghc-utf8-string" ,ghc-utf8-string) @@ -14509,7 +14792,7 @@ modifying, and extracting files from zip archives in Haskell.") (package (name "ghc-zlib") (version "0.6.2.1") - (outputs '("out" "doc")) + (outputs '("out" "static" "doc")) (source (origin (method url-fetch) @@ -14522,7 +14805,8 @@ modifying, and extracting files from zip archives in Haskell.") "1l11jraslcrp9d4wnhwfyhwk4fsiq1aq8i6vj81vcq1m2zzi1y7h")))) (build-system haskell-build-system) (arguments - `(#:phases + `(#:extra-directories ("zlib") + #:phases (modify-phases %standard-phases (add-before 'configure 'strip-test-framework-constraints (lambda _ |