1{ lib
2, stdenv
3, fetchurl
4, pkg-config
5, validatePkgConfig
6, cairo
7, curl
8, fontconfig
9, freetype
10, freexl
11, geos
12, giflib
13, libgeotiff
14, libjpeg
15, libpng
16, librttopo
17, libspatialite
18, libtiff
19, libwebp
20, libxml2
21, lz4
22, minizip
23, openjpeg
24, pixman
25, proj
26, sqlite
27, zstd
28, ApplicationServices
29}:
30
31stdenv.mkDerivation rec {
32 pname = "librasterlite2";
33 version = "1.1.0-beta1";
34
35 src = fetchurl {
36 url = "https://www.gaia-gis.it/gaia-sins/librasterlite2-sources/librasterlite2-${version}.tar.gz";
37 hash = "sha256-9yhM38B600OjFOSHjfAwCHSwFF2dMxsGOwlrSC5+RPQ=";
38 };
39
40 # Fix error: unknown type name 'time_t'
41 postPatch = ''
42 sed -i '49i #include <time.h>' headers/rasterlite2_private.h
43 '';
44
45 nativeBuildInputs = [
46 pkg-config
47 validatePkgConfig
48 geos # for geos-config
49 ];
50
51 buildInputs = [
52 cairo
53 curl
54 fontconfig
55 freetype
56 freexl
57 giflib
58 geos
59 libgeotiff
60 libjpeg
61 libpng
62 librttopo
63 libspatialite
64 libtiff
65 libwebp
66 libxml2
67 lz4
68 minizip
69 openjpeg
70 pixman
71 proj
72 sqlite
73 zstd
74 ] ++ lib.optional stdenv.isDarwin ApplicationServices;
75
76 enableParallelBuilding = true;
77
78 # Failed tests:
79 # - check_sql_stmt
80 doCheck = false;
81
82 meta = with lib; {
83 description = "Advanced library supporting raster handling methods";
84 homepage = "https://www.gaia-gis.it/fossil/librasterlite2";
85 # They allow any of these
86 license = with licenses; [ gpl2Plus lgpl21Plus mpl11 ];
87 platforms = platforms.unix;
88 maintainers = with maintainers; [ sikmir ];
89 };
90}