summary refs log tree commit diff
path: root/pkgs/games/construo/0.2.2.nix
blob: 2b32020d8e9dcfa0d273c61944abead73a90185d (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
args : with args;
	let localDefs = builderDefs.passthru.function {
		src = /* put a fetchurl here */
		fetchurl {
			url = http://savannah.nongnu.org/download/construo/construo-0.2.2.tar.gz;
			sha256 = "0c661rjasax4ykw77dgqj39jhb4qi48m0bhhdy42vd5a4rfdrcck";
		};

		buildInputs = [libX11 zlib xproto]
		++ (if args ? mesa then [args.mesa args.freeglut] else [])
		;
		configureFlags = [""];
		preConfigure = builderDefs.stringsWithDeps.fullDepEntry (''
		  sed -e 's/math[.]h/cmath/' -i vector.cxx
		  sed -e 's/games/bin/' -i Makefile.in
		  sed -e '1i\#include <stdlib.h>' -i construo_main.cxx -i command_line.cxx -i config.hxx
		  sed -e '1i\#include <string.h>' -i command_line.cxx -i lisp_reader.cxx -i unix_system.cxx \
		      -i world.cxx construo_main.cxx
		'') ["doUnpack" "minInit"];
	};
	in with localDefs;
stdenv.mkDerivation rec {
	name = "construo-0.2.2";
	builder = writeScript (name + "-builder")
		(textClosure localDefs ["preConfigure" "doConfigure" "doMakeInstall" "doForceShare" "doPropagate"]);
	meta = {
		description = "Construo masses and springs simulation";
		inherit src;
	};
}