aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu-system.am1
-rw-r--r--gnu/packages/patches/tclxml-3.2-install.patch17
-rw-r--r--gnu/packages/tcl.scm46
3 files changed, 64 insertions, 0 deletions
diff --git a/gnu-system.am b/gnu-system.am
index a6582cd0c8..607614482e 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -707,6 +707,7 @@ dist_patch_DATA = \
gnu/packages/patches/tar-d_ino_in_dirent-fix.patch \
gnu/packages/patches/tar-skip-unreliable-tests.patch \
gnu/packages/patches/tcl-mkindex-deterministic.patch \
+ gnu/packages/patches/tclxml-3.2-install.patch \
gnu/packages/patches/tcsh-fix-autotest.patch \
gnu/packages/patches/texi2html-document-encoding.patch \
gnu/packages/patches/texi2html-i18n.patch \
diff --git a/gnu/packages/patches/tclxml-3.2-install.patch b/gnu/packages/patches/tclxml-3.2-install.patch
new file mode 100644
index 0000000000..09d59925bf
--- /dev/null
+++ b/gnu/packages/patches/tclxml-3.2-install.patch
@@ -0,0 +1,17 @@
+Install everything in PREFIX, set EXTRA_PATH to find it there.
+
+--- ./Makefile.in~ 2016-02-06 01:29:16.595090365 +0100
++++ ./Makefile.in 2016-02-06 09:29:04.286008931 +0100
+@@ -133,9 +133,9 @@
+ # require for testing here (like TCLX_LIBRARY).
+ #========================================================================
+
+-EXTRA_PATH = $(top_builddir):$(TCL_BIN_DIR)
++EXTRA_PATH = $(top_builddir):$(TCL_BIN_DIR):$(libdir)
+ #EXTRA_PATH = $(top_builddir):$(TCL_BIN_DIR):$(TK_BIN_DIR)
+-TCLLIBPATH = $(top_builddir)
++TCLLIBPATH = $(pkglibdir)
+ TCLSH_ENV = TCL_LIBRARY=`@CYGPATH@ $(TCL_SRC_DIR)/library` \
+ @LD_LIBRARY_PATH_VAR@="$(EXTRA_PATH):$(@LD_LIBRARY_PATH_VAR@)" \
+ PATH="$(EXTRA_PATH):$(PATH)" \
+ \ No newline at end of file
diff --git a/gnu/packages/tcl.scm b/gnu/packages/tcl.scm
index d98d2d619a..1f301458a9 100644
--- a/gnu/packages/tcl.scm
+++ b/gnu/packages/tcl.scm
@@ -30,6 +30,7 @@
#:use-module (gnu packages fontutils)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (guix licenses))
@@ -244,3 +245,48 @@ interfaces (GUIs) in the Tcl language.")
(description "Tcllib, the standard Tcl library, is a collection of common
utility functions and modules all written in high-level Tcl.")
(license (package-license tcl))))
+
+(define-public tclxml
+ (package
+ (name "tclxml")
+ (version "3.2")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/" name "/"
+ name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0ffb4aw63inig3aql33g4pk0kjk14dv238anp1scwjdjh1k6n4gl"))
+ (patches (list (search-patch "tclxml-3.2-install.patch")))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("tcl" ,tcl)
+ ("tcllib" ,tcllib)
+ ("libxml2" ,libxml2)
+ ("libxslt" ,libxslt)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "TCLLIBPATH")
+ (separator " ")
+ (files (list (string-append "lib/Tclxml" version))))))
+ (arguments
+ `(#:configure-flags
+ (list (string-append "--exec-prefix=" (assoc-ref %outputs "out"))
+ (string-append "--with-tclconfig="
+ (assoc-ref %build-inputs "tcl") "/lib")
+ (string-append "--with-xml2-config="
+ (assoc-ref %build-inputs "libxml2")
+ "/bin/xml2-config")
+ (string-append "--with-xslt-config="
+ (assoc-ref %build-inputs "libxslt")
+ "/bin/xslt-config"))
+ #:test-target "test"))
+ (home-page "http://tclxml.sourceforge.net/")
+ (synopsis "Tcl library for XML parsing")
+ (description "TclXML provides event-based parsing of XML documents. The
+application may register callback scripts for certain document features, and
+when the parser encounters those features while parsing the document the
+callback is evaluated.")
+ (license (non-copyleft
+ "file://LICENCE"
+ "See LICENCE in the distribution."))))