vips: Add optional dependencies; update to python3

The new optional dependencies increase closure size from 388.92 MiB to
414.0 MiB, a negligible change. I didn't think there was any reason to
add `withLibjpeg ? true` flags (or `enableLibjpeg`).

The optional dependencies are sorted in the order of
https://github.com/libvips/libvips/blob/master/README.md
and I have used `nix log` on the build to check they are all picked up
in configure.

The python3 support was in for ages
(https://github.com/libvips/libvips/issues/202), the remaining python3
support in tools/vipsprofile landed in
https://github.com/libvips/libvips/pull/1262 so I upgraded it to
python3. I wasn't sure if I should use a specific version, or just leave
it as python3.

I have tested vipsprofile with
```
./vips-pycairo-bin/bin/vips gaussblur ~/2021-04-30-092143_3286x1080_scrot.png x.tif 5 --vips-profile
./vips-pycairo-bin/bin/vipsprofile
```
where ~/2021-04-30-092143_3286x1080_scrot.png is just a random image
(screenshot) I had lying around. It seems to have generated an SVG file,
I don't know how to interpret it.
This commit is contained in:
Robert Kovacsics 2021-08-22 15:38:11 +01:00
parent 556a8fd85b
commit 58cff03579

View file

@ -1,29 +1,39 @@
{ lib, stdenv
{ lib
, stdenv
, pkg-config
, glib
, libxml2
, expat
, fftw
, orc
, lcms
, imagemagick
, openexr
, libtiff
, libjpeg
, libgsf
, libexif
, libheif
, librsvg
, ApplicationServices
, Foundation
, python27
, libpng
, python3
, fetchFromGitHub
, fetchpatch
, autoreconfHook
, gtk-doc
, gobject-introspection
,
# Optional dependencies
, libjpeg
, libexif
, librsvg
, poppler
, libgsf
, libtiff
, fftw
, lcms2
, libpng
, libimagequant
, imagemagick
, pango
, orc
, matio
, cfitsio
, libwebp
, openexr
, openjpeg
, libjxl
, openslide
, libheif
}:
stdenv.mkDerivation rec {
@ -54,21 +64,30 @@ stdenv.mkDerivation rec {
buildInputs = [
glib
libxml2
fftw
orc
lcms
imagemagick
openexr
libtiff
libjpeg
libgsf
libexif
libheif
libpng
librsvg
python27
libpng
expat
(python3.withPackages (p: [ p.pycairo ]))
# Optional dependencies
libjpeg
libexif
librsvg
poppler
libgsf
libtiff
fftw
lcms2
libpng
libimagequant
imagemagick
pango
orc
matio
cfitsio
libwebp
openexr
openjpeg
libjxl
openslide
libheif
] ++ lib.optionals stdenv.isDarwin [ ApplicationServices Foundation ];
# Required by .pc file