nixpkgs/pkgs/development/libraries/freeimage/default.nix
Las be94ded77f freeimage: 3.18.0 -> unstable-2020-07-04, unbundle dependencies, fix aarch64 support
The unreleased version of freeimage contains many important fixes,
amongst others CVEs, and is taken from the svn repository (r1859).

We also unbundle all the dependencies to make it fit into the Nixpkgs ecosystem.

All the changes needed to unbundle and make it compile with Nix is contained in unbundle.diff.

Fixes #77653
Replaces #77655
2021-01-10 20:47:29 +00:00

50 lines
1.5 KiB
Nix

{ lib, stdenv, fetchsvn, darwin, libtiff
, libpng, zlib, libwebp, libraw, openexr, openjpeg
, libjpeg, jxrlib, pkg-config }:
stdenv.mkDerivation {
pname = "freeimage";
version = "unstable-2020-07-04";
src = fetchsvn {
url = "svn://svn.code.sf.net/p/freeimage/svn/";
rev = "1859";
sha256 = "1d94935aqbkb994nqkw7m8xcynyz9rm6k7k59igrbjak8b63qpi6";
};
sourceRoot = "svn-r1859/FreeImage/trunk";
# Ensure that the bundled libraries are not used at all
prePatch = "rm -rf Source/Lib* Source/OpenEXR Source/ZLib";
patches = [ ./unbundle.diff ];
nativeBuildInputs = [ pkg-config ] ++ lib.optional stdenv.isDarwin darwin.cctools;
buildInputs = [ libtiff libtiff.dev_private libpng zlib libwebp libraw openexr openjpeg libjpeg libjpeg.dev_private jxrlib ];
postBuild = lib.optionalString (!stdenv.isDarwin) ''
make -f Makefile.fip
'';
INCDIR = "${placeholder "out"}/include";
INSTALLDIR = "${placeholder "out"}/lib";
preInstall = ''
mkdir -p $INCDIR $INSTALLDIR
'';
postInstall = lib.optionalString (!stdenv.isDarwin) ''
make -f Makefile.fip install
'' + lib.optionalString stdenv.isDarwin ''
ln -s $out/lib/libfreeimage.3.dylib $out/lib/libfreeimage.dylib
'';
enableParallelBuilding = true;
meta = {
description = "Open Source library for accessing popular graphics image file formats";
homepage = "http://freeimage.sourceforge.net/";
license = "GPL";
maintainers = with lib.maintainers; [viric l-as];
platforms = with lib.platforms; unix;
};
}