diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/libxslt')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/libxslt/default.nix | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/libxslt/default.nix b/nixpkgs/pkgs/development/libraries/libxslt/default.nix new file mode 100644 index 000000000000..6d12329a7f51 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libxslt/default.nix @@ -0,0 +1,57 @@ +{ stdenv, fetchurl, fetchpatch, libxml2, findXMLCatalogs, python, libgcrypt +, cryptoSupport ? false +, pythonSupport ? stdenv.buildPlatform == stdenv.hostPlatform +}: + +assert pythonSupport -> python != null; +assert pythonSupport -> libxml2.pythonSupport; + +with stdenv.lib; + +stdenv.mkDerivation rec { + pname = "libxslt"; + version = "1.1.34"; + + src = fetchurl { + url = "http://xmlsoft.org/sources/${pname}-${version}.tar.gz"; + sha256 = "0zrzz6kjdyavspzik6fbkpvfpbd25r2qg6py5nnjaabrsr3bvccq"; + }; + + outputs = [ "bin" "dev" "out" "man" "doc" ] ++ stdenv.lib.optional pythonSupport "py"; + + buildInputs = [ libxml2.dev ] + ++ stdenv.lib.optionals pythonSupport [ libxml2.py python ] + ++ stdenv.lib.optionals cryptoSupport [ libgcrypt ]; + + propagatedBuildInputs = [ findXMLCatalogs ]; + + configureFlags = [ + "--with-libxml-prefix=${libxml2.dev}" + "--without-debug" + "--without-mem-debug" + "--without-debugger" + ] ++ optional pythonSupport "--with-python=${python}" + ++ optional (!cryptoSupport) "--without-crypto"; + + postFixup = '' + moveToOutput bin/xslt-config "$dev" + moveToOutput lib/xsltConf.sh "$dev" + moveToOutput share/man/man1 "$bin" + '' + optionalString pythonSupport '' + mkdir -p $py/nix-support + echo ${libxml2.py} >> $py/nix-support/propagated-build-inputs + moveToOutput ${python.libPrefix} "$py" + ''; + + passthru = { + inherit pythonSupport; + }; + + meta = with stdenv.lib; { + homepage = http://xmlsoft.org/XSLT/; + description = "A C library and tools to do XSL transformations"; + license = licenses.mit; + platforms = platforms.all; + maintainers = [ maintainers.eelco ]; + }; +} |