1{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, boost, lapack
2, Accelerate, CoreGraphics, CoreVideo
3}:
4
5stdenv.mkDerivation rec {
6 version = "1.6.2";
7 pname = "vmmlib";
8
9 src = fetchFromGitHub {
10 owner = "VMML";
11 repo = "vmmlib";
12 rev = "release-${version}";
13 sha256 = "0sn6jl1r5k6ka0vkjsdnn14hb95dqq8158dapby6jk72wqj9kdml";
14 };
15
16 patches = [
17 ./disable-cpack.patch #disable the need of cpack/rpm
18 ];
19
20 nativeBuildInputs = [ pkg-config cmake ];
21 buildInputs = [ boost lapack ]
22 ++ lib.optionals stdenv.isDarwin [ Accelerate CoreGraphics CoreVideo ];
23
24 doCheck = !stdenv.isDarwin;
25
26 checkTarget = "test";
27
28 meta = with lib; {
29 broken = stdenv.isDarwin;
30 description = "A vector and matrix math library implemented using C++ templates";
31
32 longDescription = ''vmmlib is a vector and matrix math library implemented
33 using C++ templates. Its basic functionality includes a vector
34 and a matrix class, with additional functionality for the
35 often-used 3d and 4d vectors and 3x3 and 4x4 matrices.
36 More advanced functionality include solvers, frustum
37 computations and frustum culling classes, and spatial data structures'';
38
39 license = licenses.bsd2;
40 homepage = "https://github.com/VMML/vmmlib/";
41 maintainers = [ maintainers.adev ];
42 platforms = platforms.all;
43 };
44}