diff options
Diffstat (limited to 'pkgs/development/libraries/libxslt')
-rw-r--r-- | pkgs/development/libraries/libxslt/default.nix | 26 | ||||
-rw-r--r-- | pkgs/development/libraries/libxslt/patch-ah.patch | 69 |
2 files changed, 82 insertions, 13 deletions
diff --git a/pkgs/development/libraries/libxslt/default.nix b/pkgs/development/libraries/libxslt/default.nix index d8794142b7dc..fd84c53c88fd 100644 --- a/pkgs/development/libraries/libxslt/default.nix +++ b/pkgs/development/libraries/libxslt/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, libxml2 }: -stdenv.mkDerivation (rec { +stdenv.mkDerivation rec { name = "libxslt-1.1.28"; src = fetchurl { @@ -10,6 +10,17 @@ stdenv.mkDerivation (rec { buildInputs = [ libxml2 ]; + patches = stdenv.lib.optionals stdenv.isSunOS [ ./patch-ah.patch ]; + + configureFlags = [ + "--with-libxml-prefix=${libxml2}" + "--without-python" + "--without-crypto" + "--without-debug" + "--without-mem-debug" + "--without-debugger" + ]; + postInstall = '' mkdir -p $out/nix-support ln -s ${libxml2}/nix-support/setup-hook $out/nix-support/ @@ -22,15 +33,4 @@ stdenv.mkDerivation (rec { platforms = stdenv.lib.platforms.unix; maintainers = [ stdenv.lib.maintainers.eelco ]; }; -} // (if !stdenv.isFreeBSD then {} else { - buildInputs = []; - - configureFlags = [ - "--with-libxml-prefix=${libxml2}" - "--without-python" - "--without-crypto" - "--without-debug" - "--without-mem-debug" - "--without-debugger" - ]; -})) +} diff --git a/pkgs/development/libraries/libxslt/patch-ah.patch b/pkgs/development/libraries/libxslt/patch-ah.patch new file mode 100644 index 000000000000..ea75b01178e3 --- /dev/null +++ b/pkgs/development/libraries/libxslt/patch-ah.patch @@ -0,0 +1,69 @@ +$NetBSD: patch-ah,v 1.3 2012/11/27 12:17:51 adam Exp $ + +Fix syms file for stricter solaris ld + +--- libxslt-1.1.28/libxslt/libxslt.syms.orig 2012-11-27 12:04:43.000000000 +0000 ++++ libxslt-1.1.28/libxslt/libxslt.syms +@@ -107,7 +107,7 @@ LIBXML2_1.0.11 { + xsltFreeCompMatchList; + xsltFreeTemplateHashes; + xsltGetTemplate; +- xsltMatchPattern; ++# xsltMatchPattern; + xsltTestCompMatchList; + + # preproc +@@ -407,7 +407,7 @@ LIBXML2_1.1.18 { + global: + + # xsltInternals +- xsltConstNamespaceNameXSLT; # variable ++# xsltConstNamespaceNameXSLT; # variable + xsltExtensionInstructionResultFinalize; + xsltExtensionInstructionResultRegister; + xsltInitCtxtKey; +@@ -416,24 +416,24 @@ LIBXML2_1.1.18 { + xsltInit; + + # xsltInternals +- xsltParseAnyXSLTElem; +- xsltParseSequenceConstructor; +- xsltPointerListAddSize; +- xsltPointerListClear; +- xsltPointerListCreate; +- xsltPointerListFree; ++# xsltParseAnyXSLTElem; ++# xsltParseSequenceConstructor; ++# xsltPointerListAddSize; ++# xsltPointerListClear; ++# xsltPointerListCreate; ++# xsltPointerListFree; + xsltRegisterLocalRVT; + xsltReleaseRVT; +- xsltRestoreDocumentNamespaces; ++# xsltRestoreDocumentNamespaces; + + # extensions +- xsltStyleStylesheetLevelGetExtData; ++# xsltStyleStylesheetLevelGetExtData; + + # xsltInternals + # xsltTransStorageAdd; removed in 1.1.28 + # xsltTransStorageRemove; removed in 1.1.28 + xsltUninit; +- xsltXSLTAttrMarker; # variable ++# xsltXSLTAttrMarker; # variable + } LIBXML2_1.1.9; + + LIBXML2_1.1.20 { +@@ -476,6 +476,10 @@ LIBXML2_1.1.26 { + + # transform + xsltProcessOneNode; ++ ++# Solaris ld needs explicit auto-reduction (or, alternatively, "-B local") ++ local: ++ *; + } LIBXML2_1.1.25; + + LIBXML2_1.1.27 { |