guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] gnu: Add tclxml.


From: Jan Nieuwenhuizen
Subject: Re: [PATCH] gnu: Add tclxml.
Date: Thu, 11 Feb 2016 23:11:07 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux)

Efraim Flashner writes:

> You also have to add the patch file to gnu-system.am so it gets picked
> up.

Thanks, 

>> +   (native-search-paths
> this line should line up with the others like (native-inputs. It looks like
> it also threw off (arguments

Reindented.

>> +    (list (search-path-specification
>> +           (variable "TCLLIBPATH")
>> +       (separator " ")
>> +       (files (list (string-append "lib/Tclxml" version))))))
> I don't think this needs to be a list. Also, (variable, (separator and (file
> should line up with the "e" in (search

> the two following string-appends should line up with the above
> string-append

Somehow TABs got in, fixed.

>> +      #:phases (modify-phases %standard-phases
>> +                 (delete 'check))))
> normally we put #:tests? #f, with a reason why. Are there no tests? Do they
> fail unexpectedly?

Ah, there is a test target that passes.  Using that now.

>> +    (home-page "http://tclxml.sourceforge.net/";)
>> +    (synopsis " Tcl library for XML parsing")
>                   ^
>        extra space
>> +    (description " TclXML provides event-based parsing of XML documents.  
>> The
>                      ^
>         extra space

Reindented.

> make sure you run guix lint, there are several spaces where you use
> tabs and we only use spaces

Ah, that helps!  Find new patch attached.

Greetings, Jan

>From 217076ae54f7ee0190e834147571ef44b3426c40 Mon Sep 17 00:00:00 2001
From: Jan Nieuwenhuizen <address@hidden>
Date: Thu, 11 Feb 2016 22:56:25 +0100
Subject: [PATCH] gnu: Add tclxml.

    * gnu/packages/tcl.scm (tclxml): New variable.
    * gnu/packages/patches/tclxml-3.2-install.patch: New file.
    * gnu-system.am (dist_patch_DATA): Register it.
---
 gnu-system.am                                 |  1 +
 gnu/packages/patches/tclxml-3.2-install.patch | 23 +++++++++++++
 gnu/packages/tcl.scm                          | 47 +++++++++++++++++++++++++++
 3 files changed, 71 insertions(+)
 create mode 100644 gnu/packages/patches/tclxml-3.2-install.patch

diff --git a/gnu-system.am b/gnu-system.am
index f13ba05..3b5f241 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 0000000..63542aa
--- /dev/null
+++ b/gnu/packages/patches/tclxml-3.2-install.patch
@@ -0,0 +1,23 @@
+--- ./Makefile.in~     2016-02-06 01:29:16.595090365 +0100
++++ ./Makefile.in      2016-02-06 09:29:04.286008931 +0100
+@@ -76,7 +76,7 @@
+ 
+ srcdir                = @srcdir@
+ prefix                = @prefix@
+-exec_prefix   = @exec_prefix@
++exec_prefix   = @prefix@
+ 
+ bindir                = @bindir@
+ libdir                = @libdir@
+@@ -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     = address@hidden@ $(TCL_SRC_DIR)/library` \
+                 @address@hidden"$(EXTRA_PATH):$(@LD_LIBRARY_PATH_VAR@)" \
+                 PATH="$(EXTRA_PATH):$(PATH)" \
diff --git a/gnu/packages/tcl.scm b/gnu/packages/tcl.scm
index 361128c..7ae186b 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,49 @@ 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 tcl/tk)))
+
+(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 "--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
+      "http://sourcesdev.debian.net/copyright/license/tclxml/3.2-1/";
+      "A specific non-copyleft license."))))
-- 
2.1.4

-- 
Jan Nieuwenhuizen <address@hidden> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | AvatarĀ®  http://AvatarAcademy.nl  

reply via email to

[Prev in Thread] Current Thread [Next in Thread]