diff options
author | Philip Withnall <philip@tecnocode.co.uk> | 2013-02-02 12:02:32 +0000 |
---|---|---|
committer | Kristian Høgsberg <krh@bitplanet.net> | 2013-02-07 20:49:22 -0500 |
commit | 4f49917ec5a3e212d85b15c96a580116c3ef5a15 (patch) | |
tree | d0170fae3c19b026d913efee0b8b3b19498e4b1a /configure.ac | |
parent | 4174791d9eceab6d7db29abaecc59f3716b55a11 (diff) |
fbdev: Add an fbdev compositor backend using pixman and evdev
Add a frame buffer backend using pixman to render to fbdev.
This has been tested against nouveaufb but nothing else. Much of the code
came straight from the rpi backend (and copyright has been attributed
accordingly).
The behaviour of this backend on less modern frame buffers has yet to be
tested.
The refresh rate is calculated from the frame buffer's metadata. Every frame
is finished in synchrony with the refresh rate.
Frame buffer devices are currently specified on the command line (or using
the default of /dev/fb0); udev could be used in future to enumerate them.
pixman is used for compositing, and a suitable pixman format is built from
the frame buffer's metadata. This doesn't support the full range of
frame buffer formats, but does support varying BPPs of RGBA and ARGB. That
should be enough for now.
The following are not currently supported:
• FOURCC
• Non-packed formats (interleaved, planes, etc.)
• Non-true-colour formats (monochrome, greyscale, etc.)
• Big-endian formats (with component MSBs on the right)
• Non-RGBA and non-ARGB formats
Signed-off-by: Philip Withnall <philip@tecnocode.co.uk>
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index 1ba467bf..f3ad9dcc 100644 --- a/configure.ac +++ b/configure.ac @@ -142,6 +142,16 @@ fi AM_CONDITIONAL(INSTALL_RPI_COMPOSITOR, test "x$have_bcm_host" = "xyes") +AC_ARG_ENABLE([fbdev-compositor], [ --enable-fbdev-compositor],, + enable_fbdev_compositor=yes) +AM_CONDITIONAL([ENABLE_FBDEV_COMPOSITOR], + [test x$enable_fbdev_compositor = xyes]) +AS_IF([test x$enable_fbdev_compositor = xyes], [ + AC_DEFINE([BUILD_FBDEV_COMPOSITOR], [1], [Build the fbdev compositor]) + PKG_CHECK_MODULES([FBDEV_COMPOSITOR], [libudev >= 136 mtdev >= 1.1.0]) +]) + + AC_ARG_WITH(cairo-glesv2, AS_HELP_STRING([--with-cairo-glesv2], [Use GLESv2 cairo instead of full GL])) |