summary refs log tree commit diff
path: root/pkgs/development/libraries/chipmunk/default.nix
blob: d148c4d829a3b9c5ccf5ec3a7e5ed5ab94dbb284 (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
args :  
let 
  lib = args.lib;
  fetchurl = args.fetchurl;
  fullDepEntry = args.fullDepEntry;

  version = lib.attrByPath ["version"] "6.1.5" args;
  majorVersion = lib.attrByPath ["majorVersion"] "6" args;
  buildInputs = with args; [
    cmake freeglut mesa
    libX11 xproto inputproto libXi libXmu
  ];
in
rec {
  src = fetchurl {
    url = "http://files.slembcke.net/chipmunk/release/Chipmunk-${majorVersion}.x/Chipmunk-${version}.tgz";
    sha256 = "0rhsgl32k6bja2ipzprf7iv3lscbl8h8s9il625rp966jvq6phy7";
  };

  inherit buildInputs;
  configureFlags = [];
  
  /* doConfigure should be specified separately */
  phaseNames = ["genMakefile" "doMakeInstall" "demoInstall"];

  genMakefile = fullDepEntry ''
    cmake -D CMAKE_INSTALL_PREFIX=$out . 
  '' ["minInit" "addInputs" "doUnpack"];

  demoInstall = fullDepEntry(''
    mkdir -p $out/bin
    cp Demo/chipmunk_demos $out/bin
  '') ["doMakeInstall" "defEnsureDir"];
      
  name = "chipmunk-" + version;
  meta = {
    description = "Chipmunk 2D physics engine";
  };
}