diff options
author | Jan Tojnar <jtojnar@gmail.com> | 2021-05-11 09:39:06 +0200 |
---|---|---|
committer | Jan Tojnar <jtojnar@gmail.com> | 2021-05-11 09:44:22 +0200 |
commit | 07bb110090b2d156cba730be5d5a69c4dd7b595c (patch) | |
tree | 8be6542be2e29fc0d2ea5e9975d49e536784ccd9 /pkgs/development/libraries/poppler | |
parent | ae1c8ede09b53007ba9b3c32f926c9c03547ae8b (diff) | |
download | nixpkgs-07bb110090b2d156cba730be5d5a69c4dd7b595c.tar nixpkgs-07bb110090b2d156cba730be5d5a69c4dd7b595c.tar.gz nixpkgs-07bb110090b2d156cba730be5d5a69c4dd7b595c.tar.bz2 nixpkgs-07bb110090b2d156cba730be5d5a69c4dd7b595c.tar.lz nixpkgs-07bb110090b2d156cba730be5d5a69c4dd7b595c.tar.xz nixpkgs-07bb110090b2d156cba730be5d5a69c4dd7b595c.tar.zst nixpkgs-07bb110090b2d156cba730be5d5a69c4dd7b595c.zip |
poppler: clean up
- reorder expression to more traditional order - make inputs one per line - correct license - add passthru.tests
Diffstat (limited to 'pkgs/development/libraries/poppler')
-rw-r--r-- | pkgs/development/libraries/poppler/default.nix | 89 |
1 files changed, 68 insertions, 21 deletions
diff --git a/pkgs/development/libraries/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix index 5a41fb0c341..fb828234946 100644 --- a/pkgs/development/libraries/poppler/default.nix +++ b/pkgs/development/libraries/poppler/default.nix @@ -1,10 +1,30 @@ -{ stdenv, lib, fetchurl, fetchpatch, cmake, ninja, pkg-config, libiconv, libintl -, zlib, curl, cairo, freetype, fontconfig, lcms, libjpeg, openjpeg +{ stdenv +, lib +, fetchurl +, fetchpatch +, cmake +, ninja +, pkg-config +, libiconv +, libintl +, zlib +, curl +, cairo +, freetype +, fontconfig +, lcms +, libjpeg +, openjpeg , withData ? true, poppler_data , qt5Support ? false, qtbase ? null , introspectionSupport ? false, gobject-introspection ? null , utils ? false, nss ? null -, minimal ? false, suffix ? "glib" +, minimal ? false +, suffix ? "glib" +, inkscape +, cups-filters +, texlive +, scribusUnstable }: let @@ -14,31 +34,44 @@ stdenv.mkDerivation (rec { name = "poppler-${suffix}-${version}"; version = "21.02.0"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too! + outputs = [ "out" "dev" ]; + src = fetchurl { url = "${meta.homepage}/poppler-${version}.tar.xz"; sha256 = "sha256-XBR1nJmJHm5HKs7W1fD/Haz4XYDNkCbTZcVcZT7feSw="; }; - outputs = [ "out" "dev" ]; + nativeBuildInputs = [ + cmake + ninja + pkg-config + ]; - buildInputs = [ libiconv libintl ] ++ lib.optional withData poppler_data; + buildInputs = [ + libiconv + libintl + ] ++ lib.optional withData [ + poppler_data + ]; # TODO: reduce propagation to necessary libs - propagatedBuildInputs = with lib; - [ zlib freetype fontconfig libjpeg openjpeg ] - ++ optionals (!minimal) [ cairo lcms curl ] - ++ optional qt5Support qtbase - ++ optional utils nss - ++ optional introspectionSupport gobject-introspection; - - nativeBuildInputs = [ cmake ninja pkg-config ]; - - # Workaround #54606 - preConfigure = lib.optionalString stdenv.isDarwin '' - sed -i -e '1i cmake_policy(SET CMP0025 NEW)' CMakeLists.txt - ''; - - dontWrapQtApps = true; + propagatedBuildInputs = [ + zlib + freetype + fontconfig + libjpeg + openjpeg + ] ++ lib.optionals (!minimal) [ + cairo + lcms + curl + ] ++ lib.optionals qt5Support [ + qtbase + ] ++ lib.optionals utils [ + nss + ] ++ lib.optionals introspectionSupport [ + gobject-introspection + ]; cmakeFlags = [ (mkFlag true "UNSTABLE_API_ABI_HEADERS") # previously "XPDF_HEADERS" @@ -49,6 +82,20 @@ stdenv.mkDerivation (rec { (mkFlag qt5Support "QT5") ]; + dontWrapQtApps = true; + + # Workaround #54606 + preConfigure = lib.optionalString stdenv.isDarwin '' + sed -i -e '1i cmake_policy(SET CMP0025 NEW)' CMakeLists.txt + ''; + + passthru = { + tests = { + # These depend on internal poppler code that frequently changes. + inherit inkscape cups-filters texlive scribusUnstable; + }; + }; + meta = with lib; { homepage = "https://poppler.freedesktop.org/"; description = "A PDF rendering library"; @@ -59,7 +106,7 @@ stdenv.mkDerivation (rec { installed separately. ''; - license = licenses.gpl2; + license = licenses.gpl2Plus; platforms = platforms.all; maintainers = with maintainers; [ ttuegel ] ++ teams.freedesktop.members; }; |