diff options
Diffstat (limited to 'gnu/packages/xml.scm')
-rw-r--r-- | gnu/packages/xml.scm | 106 |
1 files changed, 88 insertions, 18 deletions
diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 835bd42354..fd4c3fea2c 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -19,6 +19,7 @@ ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2017 Petter <petter@mykolab.ch> ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at> +;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> ;;; ;;; This file is part of GNU Guix. ;;; @@ -38,7 +39,9 @@ (define-module (gnu packages xml) #:use-module (gnu packages) #:use-module (gnu packages autotools) + #:use-module (gnu packages check) #:use-module (gnu packages compression) + #:use-module (gnu packages curl) #:use-module (gnu packages gnupg) #:use-module (gnu packages java) #:use-module (gnu packages gnuzilla) @@ -185,7 +188,8 @@ project (but it is usable outside of the Gnome platform).") (format #f "ROOT = r'~a'" libxml2)) ;; For 'iconv.h'. (("/opt/include") - (string-append glibc "/include"))))))))) + (string-append glibc "/include")))) + #t))))) (inputs `(("libxml2" ,libxml2))) (synopsis "Python bindings for the libxml2 library"))) @@ -550,7 +554,8 @@ that allow you to generate HTML from an RSS, convert between 0.9, 0.91, and (setenv "PERL5LIB" (string-append (getenv "PERL5LIB") ":" (assoc-ref outputs "out") - "/lib/perl5/site_perl"))))))) + "/lib/perl5/site_perl")) + #t))))) (home-page "https://metacpan.org/release/XML-SAX") (synopsis "Perl API for XML") (description "XML::SAX consists of several framework classes for using and @@ -825,14 +830,14 @@ RSS 0.91, RSS 1.0, RSS 2.0, Atom") (define-public perl-xml-xpath (package (name "perl-xml-xpath") - (version "1.42") + (version "1.44") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/M/MA/MANWAR/" "XML-XPath-" version ".tar.gz")) (sha256 (base32 - "04mm91kxav598ax7nlg81dhnvanwvg6bkf30l0cgkmga5iyccsly")))) + "03yxj7w5a43ibbpiqsvb3lswj2b71dydsx4rs2fw0p8n0l3i3j8w")))) (build-system perl-build-system) (native-inputs `(("perl-path-tiny" ,perl-path-tiny))) @@ -936,16 +941,16 @@ XSL-T processor. It also performs any necessary post-processing.") (define-public xmlsec (package (name "xmlsec") - (version "1.2.26") + (version "1.2.27") (source (origin - (method url-fetch) - (uri (string-append "https://www.aleksey.com/xmlsec/download/" - name "1-" version ".tar.gz")) - (sha256 - (base32 - "0l1dk344rn3j2vnj13daz72xd8j1msvzhg82n2il5ji0qz4pd0ld")))) + (method url-fetch) + (uri (string-append "https://www.aleksey.com/xmlsec/download/" + "xmlsec1-" version ".tar.gz")) + (sha256 + (base32 + "1dlf263mvxj9n4lnhhjawc2hv45agrwjf8kxk7k8h9g9v2x5dmwp")))) (build-system gnu-build-system) - (propagated-inputs ; according to xmlsec1.pc + (propagated-inputs ; according to xmlsec1.pc `(("libxml2" ,libxml2) ("libxslt" ,libxslt))) (inputs @@ -968,6 +973,10 @@ Libxml2).") (package (inherit xmlsec) (name "xmlsec-nss") + (native-inputs + ;; For tests. + `(("nss:bin" ,nss "bin") ; for certutil + ,@(package-native-inputs xmlsec))) (inputs `(("nss" ,nss) ("libltdl" ,libltdl))) @@ -976,7 +985,7 @@ Libxml2).") (define-public minixml (package (name "minixml") - (version "2.11") + (version "2.12") (source (origin (method url-fetch/tarbomb) (uri (string-append "https://github.com/michaelrsweet/mxml/" @@ -984,10 +993,13 @@ Libxml2).") "/mxml-" version ".tar.gz")) (sha256 (base32 - "13xsw8vvkxd10vca42ccdyl9rs64lcvhbfz57aknpl3xcfn8mxma")))) + "1z8nqxa4pqdic8wpixkkgg1m2pak9wjikjjxnk3j5i0d29dbgmmg")))) (build-system gnu-build-system) (arguments - `(#:phases + `(#:configure-flags + (list (string-append "LDFLAGS=-Wl,-rpath=" + (assoc-ref %outputs "out") "/lib")) + #:phases (modify-phases %standard-phases (add-after 'unpack 'fix-permissions ;; FIXME: url-fetch/tarbomb resets all permissions to 555/444. @@ -1211,7 +1223,7 @@ elements to their parents (substitute* "test/run" ;; Run tests with `python' only (("^(PYTHON_VERSIONS = ).*" all m) (string-append m "['']"))) - (zero? (system* "test/run"))))))) + (invoke "test/run")))))) (home-page "https://github.com/dilshod/xlsx2csv") (synopsis "XLSX to CSV converter") (description @@ -1260,7 +1272,7 @@ files. It is designed to be fast and to handle large input files.") ;; Bootstrapping is required in order to fix the test driver script. (replace 'bootstrap (lambda _ - (zero? (system* "bash" "bootstrap"))))))) + (invoke "bash" "bootstrap")))))) (native-inputs `(("unzip" ,unzip) ("autoconf" ,autoconf) @@ -1861,7 +1873,8 @@ low memory footprint.") (modify-phases %standard-phases (add-before 'build 'copy-resources (lambda _ - (copy-recursively "src/main/resources" "build/classes")))))) + (copy-recursively "src/main/resources" "build/classes") + #t))))) (inputs `(("java-xpp3" ,java-xpp3))) (native-inputs @@ -2104,3 +2117,60 @@ derivations of regular expressions.") "The Haskell XML Toolbox bases on the ideas of HaXml and HXML, but introduces a more general approach for processing XML with Haskell.") (license license:expat))) + +(define-public xmlrpc-c + (package + (name "xmlrpc-c") + (version "1.43.08") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/xmlrpc-c/Xmlrpc-c%20Super%20Stable/" + version "/xmlrpc-c-" version ".tgz")) + (sha256 + (base32 + "18zwbj6i2hpcn5riiyp8i6rml0sfv60dd7phw1x8g4r4lj2bbxf9")))) + (build-system gnu-build-system) + (inputs + `(("curl" ,curl))) + (native-inputs + `(;; For tools, if ever needed. + ("perl" ,perl))) + (arguments + `(#:make-flags ; Add $libdir to the RUNPATH of all the executables. + (list (string-append "LDFLAGS_PERSONAL=-Wl,-rpath=" %output "/lib")) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-/bin/sh-in-tests + (lambda _ + (substitute* "GNUmakefile" + (("#! /bin/sh") (which "sh"))) + #t))))) + (home-page "http://xmlrpc-c.sourceforge.net/") + (synopsis "Lightweight RPC library based on XML and HTTP") + (description + "XML-RPC is a quick-and-easy way to make procedure calls over the Internet. +It converts the procedure call into an XML document, sends it to a remote +server using HTTP, and gets back the response as XML. This library provides a +modular implementation of XML-RPC for C and C++.") + (license (list license:psfl license:expat)))) + +(define-public python-xmltodict + (package + (name "python-xmltodict") + (version "0.11.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "xmltodict" version)) + (sha256 + (base32 + "1pxh4yjhvmxi1h6f92skv41g4kbsws3ams57150kzn18m907v3cg")))) + (build-system python-build-system) + (native-inputs + `(("python-coverage" ,python-coverage) + ("python-nose" ,python-nose))) + (home-page "https://github.com/martinblech/xmltodict") + (synopsis "Work with XML like you are working with JSON") + (description "This package provides a Python library to convert XML to +@code{OrderedDict}.") + (license license:expat))) |