diff --git a/pkgs/development/libraries/leptonica/default.nix b/pkgs/development/libraries/leptonica/default.nix index eacab92d36b..b9b6c3c7c24 100644 --- a/pkgs/development/libraries/leptonica/default.nix +++ b/pkgs/development/libraries/leptonica/default.nix @@ -1,14 +1,38 @@ -{stdenv, fetchurl, libpng, libtiff, libjpeg, zlib}: +{ stdenv, fetchurl, fetchpatch, autoreconfHook, pkgconfig +, giflib, libjpeg, libpng, libtiff, libwebp, openjpeg, zlib +}: -stdenv.mkDerivation { - name = "leptonica-1.72"; +stdenv.mkDerivation rec { + name = "leptonica-${version}"; + version = "1.74.1"; src = fetchurl { - url = http://www.leptonica.org/source/leptonica-1.72.tar.gz; - sha256 = "0mhzvqs0im04y1cpcc1yma70hgdac1frf33h73m9z3356bfymmbr"; + url = "http://www.leptonica.org/source/${name}.tar.gz"; + sha256 = "0qpcidvv6igybrrhj0m6j47g642c8sk1qn4dpj82mgd38xx52skl"; }; - buildInputs = [ libpng libtiff libjpeg zlib ]; + patches = stdenv.lib.singleton (fetchpatch { + # configure: Support pkg-config + url = "https://github.com/DanBloomberg/leptonica/commit/" + + "4476d162cc191a0fefb2ce434153e12bbf188664.patch"; + sha256 = "1razzp2g49shfaravfqpxm3ivcd1r92lvqysll6nnf6d1wp9865s"; + }); + + postPatch = '' + # Remove the AC_SUBST() macros on *_LIBS, because the *_LIBS variables will + # be automatically set by PKG_CHECK_MODULES() since autotools 0.24 and + # using the ones that are set here in Leptonica's configure.ac do not + # include -L linker flags. + sed -i -e '/PKG_CHECK_MODULES/,/^ *\])/s/AC_SUBST([^)]*)//' configure.ac + + # The giflib package doesn't ship a pkg-config file, so we need to inject + # the linker search path. + substituteInPlace configure.ac --replace -lgif \ + ${stdenv.lib.escapeShellArg "'-L${giflib}/lib -lgif'"} + ''; + + nativeBuildInputs = [ autoreconfHook pkgconfig ]; + buildInputs = [ giflib libjpeg libpng libtiff libwebp openjpeg zlib ]; meta = { description = "Image processing and analysis library"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 38b92de3d55..7062bedd9b1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8059,9 +8059,7 @@ with pkgs; levmar = callPackage ../development/libraries/levmar { }; - leptonica = callPackage ../development/libraries/leptonica { - libpng = libpng12; - }; + leptonica = callPackage ../development/libraries/leptonica { }; lib3ds = callPackage ../development/libraries/lib3ds { };