{ builtins , lib , stdenv , fetchurl , lsb-release , fftw , fftwFloat , libpng , lua , zlib }: let makePc = import ./make-pc.nix { inherit lib builtins; }; in stdenv.mkDerivation rec { pname = "im"; version = "3.15"; src = fetchurl { url = "mirror://sourceforge/imtoolkit/${version}/Docs%20and%20Sources/${pname}-${version}_Sources.tar.gz"; sha256 = "sha256-NsxCV/j1+BEouFS7O+KcXL3QkUdlKPMVr2ZtCTC5tX4="; }; nativeBuildInputs = [ lsb-release ]; buildInputs = [ fftw fftwFloat libpng lua zlib ]; postPatch = '' sed -i '1i#include ' src/libjasper2/base/jas_stream.c ''; makeFlags = [ "NO_DEPEND=Yes" "USE_LUA_VERSION=52" ]; imPc = builtins.toFile "im.pc" (makePc "im" "A toolkit for image representation, storage, capture and processing" version "libpng zlib" ); imJp2Pc = builtins.toFile "im_jp2.pc" (makePc "im_jp2" "A toolkit for image representation, storage, capture and processing (JP2 support)" version "im" ); imProcessPc = builtins.toFile "im_process.pc" (makePc "im_process" "A toolkit for image representation, storage, capture and processing (processing library)" version "im" ); imProcessOmpPc = builtins.toFile "im_process_omp.pc" (makePc "im_process_omp" "A toolkit for image representation, storage, capture and processing (processing library)" version "im" ); imFftw3Pc = builtins.toFile "im_fftw3.pc" (makePc "im_fftw3" "A toolkit for image representation, storage, capture and processing (Fourier transform operations)" version "im_process fftw3" ); installPhase = '' runHook preInstall mkdir -p $out/{include,lib/pkgconfig,share/lua/5.2} cp -v lib/Linux*/*.so $out/lib/ cp -v lib/Linux*/*.a $out/lib/ || true cp -vr include/*.h $out/include/ cp -v lib/Linux*/Lua*/*.so $out/lib/ cp -v lib/Linux*/Lua*/*.a $out/lib/ || true ln -fs $out/lib/libimlua52.so $out/share/lua/5.2/imlua.so ln -fs $out/lib/libimlua_jp252.so $out/share/lua/5.2/imlua_jp2.so ln -fs $out/lib/libimlua_process52.so $out/share/lua/5.2/imlua_process.so ln -fs $out/lib/libimlua_process_omp52.so $out/share/lua/5.2/imlua_process_omp.so ln -fs $out/lib/libimlua_fftw352.so $out/share/lua/5.2/imlua_fftw3.so cp ${imPc} $out/lib/pkgconfig/im.pc cp ${imJp2Pc} $out/lib/pkgconfig/im_jp2.pc cp ${imProcessPc} $out/lib/pkgconfig/im_process.pc cp ${imProcessOmpPc} $out/lib/pkgconfig/im_process_omp.pc cp ${imFftw3Pc} $out/lib/pkgconfig/im_fftw3.pc runHook postInstall ''; meta = with lib; { description = "A toolkit for image representation, storage, capture and processing"; license = licenses.mit; maintainers = [ eko5z ]; platforms = with platforms; gnu ++ linux ++ darwin; }; }