summary refs log tree commit diff
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2021-05-30 11:28:19 +0300
committerEfraim Flashner <efraim@flashner.co.il>2021-05-30 12:55:52 +0300
commit7180dcdfb1c31b9cff8932995902b17e3c62bce9 (patch)
tree158c455cfb519dd1932a0a19e3de99546c65a704
parent09b63f2cd8031f762530d8d7423440327244c595 (diff)
downloadguix-7180dcdfb1c31b9cff8932995902b17e3c62bce9.tar.gz
gnu: Add julia-xml2-jll.
* gnu/packages/julia-jll.scm (julia-xml2-jll): New variable.
-rw-r--r--gnu/packages/julia-jll.scm43
1 files changed, 42 insertions, 1 deletions
diff --git a/gnu/packages/julia-jll.scm b/gnu/packages/julia-jll.scm
index 07578820eb..96f9b1b84a 100644
--- a/gnu/packages/julia-jll.scm
+++ b/gnu/packages/julia-jll.scm
@@ -40,7 +40,8 @@
   #:use-module (gnu packages tls)
   #:use-module (gnu packages video)
   #:use-module (gnu packages web)
-  #:use-module (gnu packages xiph))
+  #:use-module (gnu packages xiph)
+  #:use-module (gnu packages xml))
 
 ;;; TODO: Remove this autogenerated source package
 ;;; and build it from realse source using <https://github.com/JuliaPackaging/Yggdrasil/>
@@ -986,6 +987,46 @@ build tree Yggdrasil.")
     (description "This package provides a wrapper for the x265 video library.")
     (license license:expat)))
 
+(define-public julia-xml2-jll
+  (package
+    (name "julia-xml2-jll")
+    (version "2.9.12+0")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/JuliaBinaryWrappers/XML2_jll.jl")
+               (commit (string-append "XML2-v" version))))
+        (file-name (git-file-name name version))
+        (sha256
+         (base32 "1g6wf5r5v2qx6cwv05kd9amcsmv65vkajk43m9r1c35jqs9m8fnm"))))
+    (build-system julia-build-system)
+    (arguments
+     '(#:tests? #f  ; no runtests
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'override-binary-path
+           (lambda* (#:key inputs #:allow-other-keys)
+             (map
+               (lambda (wrapper)
+                 (substitute* wrapper
+                   (("generate_wrapper_header.*")
+                    (string-append
+                      "generate_wrapper_header(\"XML2\", \""
+                      (assoc-ref inputs "libxml2") "\")\n"))))
+               ;; There's a Julia file for each platform, override them all
+               (find-files "src/wrappers/" "\\.jl$")))))))
+    (inputs
+     `(("libxml2" ,libxml2)))
+    (propagated-inputs
+     `(("julia-jllwrappers" ,julia-jllwrappers)
+       ("julia-libiconv-jll" ,julia-libiconv-jll)
+       ("julia-zlib-jll" ,julia-zlib-jll)))
+    (home-page "https://github.com/JuliaBinaryWrappers/XML2_jll.jl")
+    (synopsis "XML2 library wrappers")
+    (description "This package provides a wrapper for the libxml2 library.")
+    (license license:expat)))
+
 (define-public julia-zlib-jll
   (package
     (name "julia-zlib-jll")