summaryrefslogtreecommitdiff
path: root/Biz/Bild/Deps/guile-opengl.nix
blob: d334430dadad2352c9ec372c1a2885a170a105a5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
{ stdenv
, fetchurl
, pkgconfig
, guile
, libGL
, libGLU
, freeglut
}:

let
  name = "guile-opengl-${version}";
  version = "0.1.0";
in stdenv.mkDerivation {
  inherit name;

  src = fetchurl {
    url = "mirror://gnu/guile-opengl/${name}.tar.gz";
    sha256 = "13qfx4xh8baryxqrv986l848ygd0piqwm6s2s90pxk9c0m9vklim";
  };

  patchPhase = ''
    substituteInPlace glx/runtime.scm \
      --replace '(dynamic-link "libGL")' '(dynamic-link "${libGL}/lib/libGL.so")'
    substituteInPlace glu/runtime.scm \
      --replace '(dynamic-link "libGLU")' '(dynamic-link "${libGLU}/lib/libGLU.so")'
    substituteInPlace glut/runtime.scm \
      --replace '(dynamic-link "libglut")' '(dynamic-link "${freeglut}/lib/libglut.so")'
  '';

  nativeBuildInputs = [ pkgconfig guile libGL libGLU freeglut ];

  meta = with stdenv.lib; {
    description = "Guile bindings for the OpenGL graphics API";
    homepage = "https://www.gnu.org/software/guile-opengl/";
    license = licenses.gpl3Plus;
    maintainers = with maintainers; [ vyp ];
    platforms = platforms.all;
  };
}