summary refs log tree commit diff
path: root/pkgs/development/libraries/SDL2_gfx/default.nix
blob: 23a0924ad3bfec799a1b7910dc4f221b6c5dd526 (plain) (blame)
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
{stdenv, fetchsvn, SDL2}:

let rev = 5; in
stdenv.mkDerivation rec {
  name = "SDL2_gfx-${toString rev}";

  src = fetchsvn {
    url = http://svn.code.sf.net/p/sdl2gfx/code/trunk;
    inherit rev;
    sha256 = "1hzilbn1412m2b44mygrbdfh1gvks4v5p0kmafz248jf9ifsvmzp";
  };

  buildInputs = [ SDL2 ] ;

  configureFlags = "--disable-mmx";

  postInstall = ''
    sed -i -e 's,"SDL.h",<SDL2/SDL.h>,' \
      $out/include/SDL2/*.h

    ln -s $out/include/SDL2/SDL2_framerate.h $out/include/SDL2/SDL_framerate.h;
    ln -s $out/include/SDL2/SDL2_gfxPrimitives.h $out/include/SDL2/SDL_gfxPrimitives.h;
    ln -s $out/include/SDL2/SDL2_rotozoom.h $out/include/SDL2/SDL_rotozoom.h;
    ln -s $out/include/SDL2/*.h $out/include/;
  '';

  meta = {
    description = "SDL graphics drawing primitives and support functions";

    longDescription = ''
      The SDL_gfx library evolved out of the SDL_gfxPrimitives code
      which provided basic drawing routines such as lines, circles or
      polygons and SDL_rotozoom which implemented a interpolating
      rotozoomer for SDL surfaces.

      The current components of the SDL_gfx library are:

          * Graphic Primitives (SDL_gfxPrimitves.h)
          * Rotozoomer (SDL_rotozoom.h)
          * Framerate control (SDL_framerate.h)
          * MMX image filters (SDL_imageFilter.h)
          * Custom Blit functions (SDL_gfxBlitFunc.h)

      The library is backwards compatible to the above mentioned
      code. Its is written in plain C and can be used in C++ code.
    '';

    homepage = https://sourceforge.net/projects/sdlgfx/;
    license = stdenv.lib.licenses.lgpl2Plus;

    maintainers = [ stdenv.lib.maintainers.bjg ];
    platforms = stdenv.lib.platforms.linux;
  };
}