Merge pull request #32368 from rvl/saxons

New versions of Saxon XSLT Processor
This commit is contained in:
Joachim F 2017-12-11 23:24:47 +00:00 committed by GitHub
commit e5d35342b8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 82 additions and 49 deletions

View File

@ -1,22 +1,83 @@
{ stdenv, fetchurl, unzip }:
{ stdenv, fetchurl, unzip, jre }:
stdenv.mkDerivation {
name = "saxon-6.5.3";
builder = ./unzip-builder.sh;
src = fetchurl {
url = mirror://sourceforge/saxon/saxon6_5_3.zip;
sha256 = "0l5y3y2z4wqgh80f26dwwxwncs8v3nkz3nidv14z024lmk730vs3";
let
common = { pname, version, src, description
, prog ? null, jar ? null, license ? stdenv.lib.licenses.mpl20 }:
stdenv.mkDerivation {
name = "${pname}-${version}";
inherit pname version src;
nativeBuildInputs = [ unzip ];
buildCommand = let
prog' = if prog == null then pname else prog;
jar' = if jar == null then pname else jar;
in ''
unzip $src -d $out
mkdir -p $out/bin $out/share $out/share/java
cp -s "$out"/*.jar "$out/share/java/" # */
rm -rf $out/notices
mv $out/doc $out/share
cat > $out/bin/${prog'} <<EOF
#! $shell
export JAVA_HOME=${jre}
exec ${jre}/bin/java -jar $out/${jar'}.jar "\$@"
EOF
chmod a+x $out/bin/${prog'}
'';
meta = with stdenv.lib; {
inherit description license;
homepage = http://saxon.sourceforge.net/;
maintainers = with maintainers; [ rvl ];
platforms = platforms.all;
};
};
in {
saxon = common {
pname = "saxon";
version = "6.5.3";
src = fetchurl {
url = mirror://sourceforge/saxon/saxon6_5_3.zip;
sha256 = "0l5y3y2z4wqgh80f26dwwxwncs8v3nkz3nidv14z024lmk730vs3";
};
description = "XSLT 1.0 processor";
# http://saxon.sourceforge.net/saxon6.5.3/conditions.html
license = stdenv.lib.licenses.mpl10;
};
nativeBuildInputs = [ unzip ];
saxonb_8_8 = common {
pname = "saxonb";
version = "8.8";
jar = "saxon8";
src = fetchurl {
url = mirror://sourceforge/saxon/saxonb8-8j.zip;
sha256 = "15bzrfyd2f1045rsp9dp4znyhmizh1pm97q8ji2bc0b43q23xsb8";
};
description = "Complete and conformant processor of XSLT 2.0, XQuery 1.0, and XPath 2.0";
};
# still leaving in root as well, in case someone is relying on that
preFixup = ''
mkdir -p "$out/share/java"
cp -s "$out"/*.jar "$out/share/java/"
'';
saxonb_9_1 = common {
pname = "saxonb";
version = "9.1.0.8";
jar = "saxon9";
src = fetchurl {
url = mirror://sourceforge/saxon/Saxon-B/9.1.0.8/saxonb9-1-0-8j.zip;
sha256 = "1d39jdnwr3v3pzswm81zry6yikqlqy9dp2l2wmpqdiw00r5drg4j";
};
description = "Complete and conformant processor of XSLT 2.0, XQuery 1.0, and XPath 2.0";
};
meta = {
platforms = stdenv.lib.platforms.unix;
saxon-he = common {
pname = "saxon-he";
version = "9.8.0.6";
prog = "saxon-he";
jar = "saxon9he";
src = fetchurl {
url = mirror://sourceforge/saxon/Saxon-HE/9.8/SaxonHE9-8-0-6J.zip;
sha256 = "03r4djm298rxz8q7jph63h9niglrl3rifxskq1b3bclx5rgxi2lk";
};
description = "Processor for XSLT 3.0, XPath 2.0 and 3.1, and XQuery 3.1";
};
}

View File

@ -1,26 +0,0 @@
{stdenv, fetchurl, unzip, jre}:
stdenv.mkDerivation {
name = "saxonb-8.8";
src = fetchurl {
url = mirror://sourceforge/saxon/saxonb8-8j.zip;
sha256 = "15bzrfyd2f1045rsp9dp4znyhmizh1pm97q8ji2bc0b43q23xsb8";
};
buildInputs = [unzip];
buildCommand = "
unzip $src -d $out
mkdir -p $out/bin
cat > $out/bin/saxon8 <<EOF
#! $shell
export JAVA_HOME=${jre}
exec ${jre}/bin/java -jar $out/saxon8.jar \"\\$@\"
EOF
chmod a+x $out/bin/saxon8
";
meta = {
platforms = stdenv.lib.platforms.unix;
};
}

View File

@ -1,6 +0,0 @@
source $stdenv/setup
unzip $src -d $out
fixupPhase

View File

@ -11337,9 +11337,13 @@ with pkgs;
mockobjects = callPackage ../development/libraries/java/mockobjects { };
saxon = callPackage ../development/libraries/java/saxon { };
saxonb = saxonb_8_8;
saxonb = callPackage ../development/libraries/java/saxon/default8.nix { };
inherit (callPackages ../development/libraries/java/saxon { })
saxon
saxonb_8_8
saxonb_9_1
saxon-he;
smack = callPackage ../development/libraries/java/smack { };