summary refs log tree commit diff
path: root/pkgs/development/libraries/libxml2
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2014-11-25 16:02:19 +0100
committerEelco Dolstra <eelco.dolstra@logicblox.com>2014-11-25 16:23:48 +0100
commite611215f5c1b7ca19785ec462e696dff103847b0 (patch)
tree7eabe17b47ddd6f782ef4356807870645b6c024e /pkgs/development/libraries/libxml2
parent9adc6fe2766669330c5287a276e93c4777fed902 (diff)
downloadnixlib-e611215f5c1b7ca19785ec462e696dff103847b0.tar
nixlib-e611215f5c1b7ca19785ec462e696dff103847b0.tar.gz
nixlib-e611215f5c1b7ca19785ec462e696dff103847b0.tar.bz2
nixlib-e611215f5c1b7ca19785ec462e696dff103847b0.tar.lz
nixlib-e611215f5c1b7ca19785ec462e696dff103847b0.tar.xz
nixlib-e611215f5c1b7ca19785ec462e696dff103847b0.tar.zst
nixlib-e611215f5c1b7ca19785ec462e696dff103847b0.zip
Move finding XML catalogs into a separate setup hook
This is because libxml/libxslt are not the only implementations that
respect $XML_CATALOG_FILES.

Also, look in share/xml for catalogs (in addition to the
now-deprecated xml/dtd and xml/xsl).
Diffstat (limited to 'pkgs/development/libraries/libxml2')
-rw-r--r--pkgs/development/libraries/libxml2/default.nix6
-rw-r--r--pkgs/development/libraries/libxml2/setup-hook.sh19
2 files changed, 2 insertions, 23 deletions
diff --git a/pkgs/development/libraries/libxml2/default.nix b/pkgs/development/libraries/libxml2/default.nix
index 8dfe60f9026d..434b76a09eae 100644
--- a/pkgs/development/libraries/libxml2/default.nix
+++ b/pkgs/development/libraries/libxml2/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, zlib, xz, python ? null, pythonSupport ? true }:
+{ stdenv, fetchurl, zlib, xz, python ? null, pythonSupport ? true, findXMLCatalogs }:
 
 assert pythonSupport -> python != null;
 
@@ -22,9 +22,7 @@ stdenv.mkDerivation (rec {
     # RUNPATH for that, leading to undefined references for its users.
     ++ (stdenv.lib.optional stdenv.isFreeBSD xz);
 
-  propagatedBuildInputs = [ zlib ];
-
-  setupHook = ./setup-hook.sh;
+  propagatedBuildInputs = [ zlib findXMLCatalogs ];
 
   passthru = { inherit pythonSupport version; };
 
diff --git a/pkgs/development/libraries/libxml2/setup-hook.sh b/pkgs/development/libraries/libxml2/setup-hook.sh
deleted file mode 100644
index 4acdd25a6b28..000000000000
--- a/pkgs/development/libraries/libxml2/setup-hook.sh
+++ /dev/null
@@ -1,19 +0,0 @@
-addXMLCatalogs () {
-    for kind in dtd xsl; do
-        if test -d $1/xml/$kind; then
-            for i in $(find $1/xml/$kind -name catalog.xml); do
-                export XML_CATALOG_FILES="$XML_CATALOG_FILES $i"
-            done
-        fi
-    done
-}
-
-if test -z "$libxmlHookDone"; then
-    libxmlHookDone=1
-
-    # Set up XML_CATALOG_FILES.  An empty initial value prevents
-    # xmllint and xsltproc from looking in /etc/xml/catalog.
-    export XML_CATALOG_FILES
-    if test -z "$XML_CATALOG_FILES"; then XML_CATALOG_FILES=" "; fi
-    envHooks+=(addXMLCatalogs)
-fi