python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / pkgs / development / libraries / gegl / default.nix
blobfb50c2c8fc0745ac61a5ef782611bf795d08400a
1 { lib
2 , stdenv
3 , fetchurl
4 , pkg-config
5 , vala
6 , gobject-introspection
7 , gtk-doc
8 , docbook-xsl-nons
9 , docbook_xml_dtd_43
10 , glib
11 , babl
12 , libpng
13 , cairo
14 , libjpeg
15 , librsvg
16 , lensfun
17 , libspiro
18 , maxflow
19 , netsurf
20 , pango
21 , poly2tri-c
22 , poppler
23 , bzip2
24 , json-glib
25 , gettext
26 , meson
27 , ninja
28 , libraw
29 , gexiv2
30 , libwebp
31 , luajit
32 , openexr
33 , OpenCL
34 , suitesparse
37 stdenv.mkDerivation rec {
38   pname = "gegl";
39   version = "0.4.38";
41   outputs = [ "out" "dev" "devdoc" ];
42   outputBin = "dev";
44   src = fetchurl {
45     url = "https://download.gimp.org/pub/gegl/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
46     sha256 = "sha256-5KM8hDClBC+6hDm1lTSOcYcPDZX7+IX/VT+QIMG+11A=";
47   };
49   nativeBuildInputs = [
50     pkg-config
51     gettext
52     meson
53     ninja
54     vala
55     gobject-introspection
56     gtk-doc
57     docbook-xsl-nons
58     docbook_xml_dtd_43
59   ];
61   buildInputs = [
62     libpng
63     cairo
64     libjpeg
65     librsvg
66     lensfun
67     libspiro
68     maxflow
69     netsurf.libnsgif
70     pango
71     poly2tri-c
72     poppler
73     bzip2
74     libraw
75     libwebp
76     gexiv2
77     luajit
78     openexr
79     suitesparse
80   ] ++ lib.optional stdenv.isDarwin OpenCL;
82   # for gegl-4.0.pc
83   propagatedBuildInputs = [
84     glib
85     json-glib
86     babl
87   ];
89   mesonFlags = [
90     "-Dgtk-doc=true"
91     "-Dmrg=disabled" # not sure what that is
92     "-Dsdl2=disabled"
93     "-Dpygobject=disabled"
94     "-Dlibav=disabled"
95     "-Dlibv4l=disabled"
96     "-Dlibv4l2=disabled"
97     # Disabled due to multiple vulnerabilities, see
98     # https://github.com/NixOS/nixpkgs/pull/73586
99     "-Djasper=disabled"
100   ];
102   # TODO: Fix missing math symbols in gegl seamless clone.
103   # It only appears when we use packaged poly2tri-c instead of vendored one.
104   NIX_CFLAGS_COMPILE = "-lm";
106   postPatch = ''
107     chmod +x tests/opencl/opencl_test.sh
108     patchShebangs tests/ff-load-save/tests_ff_load_save.sh tests/opencl/opencl_test.sh tools/xml_insert.sh
109   '';
111   # tests fail to connect to the com.apple.fonts daemon in sandboxed mode
112   doCheck = !stdenv.isDarwin;
114   meta = with lib; {
115     description = "Graph-based image processing framework";
116     homepage = "https://www.gegl.org";
117     license = licenses.lgpl3Plus;
118     maintainers = with maintainers; [ jtojnar ];
119     platforms = platforms.unix;
120   };