lol
1{
2 fetchurl,
3 lib,
4 stdenv,
5 pkg-config,
6 autoreconfHook,
7 gettext,
8 glib,
9 buildPackages,
10}:
11
12stdenv.mkDerivation rec {
13 pname = "gts";
14 version = "0.7.6";
15
16 outputs = [
17 "bin"
18 "dev"
19 "out"
20 ];
21
22 src = fetchurl {
23 url = "mirror://sourceforge/gts/${pname}-${version}.tar.gz";
24 sha256 = "07mqx09jxh8cv9753y2d2jsv7wp8vjmrd7zcfpbrddz3wc9kx705";
25 };
26
27 nativeBuildInputs = [
28 pkg-config
29 autoreconfHook
30 glib # required to satisfy AM_PATH_GLIB_2_0
31 ];
32 buildInputs = [ gettext ];
33 propagatedBuildInputs = [ glib ];
34
35 doCheck = false; # fails with "permission denied"
36
37 preBuild = lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) ''
38 pushd src
39 make CC=${buildPackages.stdenv.cc}/bin/cc predicates_init
40 mv predicates_init predicates_init_build
41 make clean
42 popd
43
44 substituteInPlace src/Makefile --replace "./predicates_init" "./predicates_init_build"
45 '';
46
47 meta = {
48 homepage = "https://gts.sourceforge.net/";
49 license = lib.licenses.lgpl2Plus;
50 description = "GNU Triangulated Surface Library";
51
52 longDescription = ''
53 Library intended to provide a set of useful functions to deal with
54 3D surfaces meshed with interconnected triangles.
55 '';
56
57 maintainers = [ ];
58 platforms = lib.platforms.linux ++ lib.platforms.darwin;
59 };
60}