glsurf: use current giflib

This requires bumping the version of camlimages used by glsurf to a
version that supports current giflib.  The most recent versions of
camlimages (even of 4.x) don't support ocaml 4.01 any more, so I've
upgraded to 4.1.2 here, the last version that supports ocaml 4.01 (and
which happily supports current giflib).
This commit is contained in:
Alyssa Ross 2021-02-12 22:32:08 +00:00
parent 6e3b5fd046
commit 70e33e3ae3
5 changed files with 42 additions and 48 deletions

View File

@ -10,10 +10,10 @@ stdenv.mkDerivation {
sha256 = "0w8xxfnw2snflz8wdr2ca9f5g91w5vbyp1hwlx1v7vg83d4bwqs7";
};
buildInputs = [ freeglut libGLU libGL libmysqlclient mpfr gmp
libtiff libjpeg libpng giflib ]
buildInputs = [ freeglut libGLU libGL libmysqlclient mpfr giflib gmp
libtiff libjpeg libpng ]
++ (with ocamlPackages; [
ocaml findlib ocaml_mysql lablgl camlimages_4_0 mlgmpidl
ocaml findlib ocaml_mysql lablgl camlimages_4_1_2 mlgmpidl
]);
installPhase = ''

View File

@ -1,41 +0,0 @@
{ lib, stdenv, fetchurl, omake, ocaml, libtiff, libjpeg, libpng, giflib, findlib, libXpm, freetype, graphicsmagick, ghostscript }:
let
pname = "camlimages";
version = "4.0.1";
in
stdenv.mkDerivation {
name = "${pname}-${version}";
src = fetchurl {
url = "https://bitbucket.org/camlspotter/camlimages/get/v4.0.1.tar.gz";
sha256 = "b40237c1505487049799a7af296eb3996b3fa08eab94415546f46d61355747c4";
};
buildInputs = [ ocaml omake findlib graphicsmagick ghostscript ];
propagatedBuildInputs = [libtiff libjpeg libpng giflib freetype libXpm ];
createFindlibDestdir = true;
preConfigure = ''
rm ./configure
'';
buildPhase = ''
omake
'';
installPhase = ''
omake install
'';
meta = with lib; {
branch = "4.0";
homepage = "https://bitbucket.org/camlspotter/camlimages";
description = "OCaml image processing library";
license = licenses.lgpl2;
maintainers = [ maintainers.vbgl ];
};
}

View File

@ -0,0 +1,37 @@
{ lib, stdenv, fetchFromGitLab, fetchpatch, omake, ocaml, findlib
, graphicsmagick, ghostscript
, freetype, giflib, libjpeg, libpng, libtiff, libXpm
}:
stdenv.mkDerivation rec {
pname = "camlimages";
version = "4.1.2";
src = fetchFromGitLab {
owner = "camlspotter";
repo = "camlimages";
rev = "98661d507e12ce91a51295a50f244cb8265b4439"; # no tag
sha256 = "0kpxj8wm2m17wjq217jzjpfgv1d7sp4w1yd1gi8ipn5rj4sid2j8";
};
buildInputs = [ ocaml omake findlib graphicsmagick ghostscript ];
propagatedBuildInputs = [ libtiff libjpeg libpng giflib freetype libXpm ];
createFindlibDestdir = true;
buildPhase = ''
omake
'';
installPhase = ''
omake install
'';
meta = with lib; {
branch = "4.0";
homepage = "https://bitbucket.org/camlspotter/camlimages";
description = "OCaml image processing library";
license = licenses.lgpl2;
maintainers = [ maintainers.vbgl ];
};
}

View File

@ -14518,7 +14518,6 @@ in
glsurf = callPackage ../applications/science/math/glsurf {
libpng = libpng12;
giflib = giflib_4_1;
ocamlPackages = ocaml-ng.ocamlPackages_4_01_0;
};

View File

@ -114,12 +114,11 @@ let
then callPackage ../development/ocaml-modules/camomile { }
else callPackage ../development/ocaml-modules/camomile/0.8.5.nix { };
camlimages_4_0 =
camlimages_4_1_2 =
if lib.versionOlder "4.02" ocaml.version
then null
else callPackage ../development/ocaml-modules/camlimages/4.0.nix {
else callPackage ../development/ocaml-modules/camlimages/4.1.2.nix {
libpng = pkgs.libpng12;
giflib = pkgs.giflib_4_1;
};
camlimages = callPackage ../development/ocaml-modules/camlimages { };