summaryrefslogtreecommitdiff
path: root/meson.build
diff options
context:
space:
mode:
authorMaarten Lankhorst <maarten.lankhorst@linux.intel.com>2019-02-01 11:13:59 +0100
committerMaarten Lankhorst <maarten.lankhorst@linux.intel.com>2019-02-13 13:02:06 +0100
commitcb8e45a624426648ddffc675c8232eb31e58a50e (patch)
tree091016991391971a393efabdb50e0f65b13e3a9c /meson.build
parentb0033d9310c13eee8fd8268ec0ea16af91c92e6e (diff)
lib/igt_fb: Add support for P01x formats, v5.
The P01x formats are planar 16 bits per component, with the unused lower bits set to 0. This means they can all be converted the same way. Only the range is slightly different, and this is handled in the color_encoding implementation. This requires cairo 1.17.2 and pixman 0.36. This works but doesn't give extra precision. For more than 8 bits precision a few more patches are required to pixman, pending review: https://lists.freedesktop.org/archives/pixman/2019-January/004815.html https://lists.freedesktop.org/archives/pixman/2019-January/004809.html Once those are merged, we will require the next pixman release for better precision. Changes since v1: - Add fallback color definitions when compiling on cairo version < 1.17.2. - Skip when FB creation fails on HDR formats, instead of failing. Changes since v2: - Complain slightly harder when pixman/cairo are out of date. - Create a fb with alpha when converting to pixman formats with alpha. - Oops, s/pixman_format_code_t/cairo_format_t/ Changes since v3: - Rebase on top of upstream YUV changes. Changes since v4: - Rebase again. - Use drm_fourcc.h from drm-misc-next. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> #v4
Diffstat (limited to 'meson.build')
-rw-r--r--meson.build10
1 files changed, 10 insertions, 0 deletions
diff --git a/meson.build b/meson.build
index b17e67ef..356a5414 100644
--- a/meson.build
+++ b/meson.build
@@ -336,3 +336,13 @@ message('=============')
foreach str : build_info
message(str)
endforeach
+
+if cairo.version().version_compare('<1.17.2')
+ if pixman.version().version_compare('<0.36.0')
+ warning('Pixman < 0.36.0 found, cannot test HDR formats')
+ endif
+ warning('Cairo < 1.17.2 found, cannot test HDR formats')
+elif pixman.version().version_compare('<0.36.0')
+ # Cairo 1.17.2 requires 0.36.0 to compile, but somehow it went missing?
+ error('Cairo with floating point support found, but pixman version too old')
+endif