Use pixman regions to reduce repainting
[profile/ivi/wayland.git] / configure.ac
1 AC_PREREQ([2.64])
2 AC_INIT([wayland],
3         [0.1],
4         [https://bugs.freedesktop.org/enter_bug.cgi?product=wayland],
5         [wayland],
6         [http://wayland.freedesktop.org/])
7
8 AC_CONFIG_HEADERS([config.h])
9 AC_CONFIG_MACRO_DIR([m4])
10
11 AM_INIT_AUTOMAKE([1.11 foreign dist-bzip2])
12
13 AM_SILENT_RULES([yes])
14
15 # Check for programs
16 AC_PROG_CC
17
18 # Initialize libtool
19 LT_PREREQ([2.2])
20 LT_INIT
21
22 PKG_PROG_PKG_CONFIG()
23 PKG_CHECK_MODULES(FFI, [libffi])
24
25 PKG_CHECK_MODULES(COMPOSITOR,
26                   [egl >= 7.10 glesv2 gdk-pixbuf-2.0 libudev >= 136 libdrm >= 2.4.23] pixman-1 xcb-dri2 xcb-xfixes)
27 PKG_CHECK_MODULES(GLES2, [egl >= 7.10 glesv2])
28 PKG_CHECK_MODULES(CLIENT, [egl >= 7.10 gl cairo >= 1.10.0 gdk-pixbuf-2.0 glib-2.0 gobject-2.0 xkbcommon])
29 PKG_CHECK_MODULES(POPPLER, [poppler-glib gdk-2.0 gio-2.0],
30                            [have_poppler=yes], [have_poppler=no])
31 AM_CONDITIONAL(HAVE_POPPLER, test "x$have_poppler" = "xyes")
32
33 AC_CHECK_PROG(RSVG_CONVERT, rsvg-convert, rsvg-convert)
34 AM_CONDITIONAL(HAVE_RSVG_CONVERT, test -n "$RSVG_CONVERT")
35
36 AC_ARG_ENABLE(x11-compositor, [  --enable-x11-compositor],,
37               enable_x11_compositor=yes)
38 AM_CONDITIONAL(ENABLE_X11_COMPOSITOR, test x$enable_x11_compositor == xyes)
39 if test x$enable_x11_compositor == xyes; then
40   AC_DEFINE([BUILD_X11_COMPOSITOR], [1], [Build the X11 compositor])
41 fi
42
43
44 AC_ARG_ENABLE(drm-compositor, [  --enable-drm-compositor],,
45               enable_drm_compositor=yes)
46 AM_CONDITIONAL(ENABLE_DRM_COMPOSITOR, test x$enable_drm_compositor == xyes)
47 if test x$enable_drm_compositor == xyes; then
48   AC_DEFINE([BUILD_DRM_COMPOSITOR], [1], [Build the DRM compositor])
49 fi
50
51
52 AC_ARG_ENABLE(wayland-compositor, [  --enable-wayland-compositor],,
53               enable_wayland_compositor=yes)
54 AM_CONDITIONAL(ENABLE_WAYLAND_COMPOSITOR,
55                test x$enable_wayland_compositor == xyes)
56 if test x$enable_wayland_compositor == xyes; then
57   AC_DEFINE([BUILD_WAYLAND_COMPOSITOR], [1],
58             [Build the Wayland (nested) compositor])
59 fi
60
61
62 PKG_CHECK_MODULES(CAIRO_EGL, [cairo-egl],
63                   [have_cairo_egl=yes], [have_cairo_egl=no])
64 AS_IF([test "x$have_cairo_egl" = "xyes"],
65       [AC_DEFINE([HAVE_CAIRO_EGL], [1], [Have cairo-egl])])
66
67 if test "x$GCC" = "xyes"; then
68         GCC_CFLAGS="-Wall -g -Wstrict-prototypes -Wmissing-prototypes -fvisibility=hidden"
69 fi
70 AC_SUBST(GCC_CFLAGS)
71
72 EXPAT_LIB=""
73 AC_ARG_WITH(expat, [  --with-expat=<dir>      Use expat from here],
74                    [ expat=$withval
75                      CPPFLAGS="$CPPFLAGS -I$withval/include"
76                      LDFLAGS="$LDFLAGS -L$withval/lib" ] )
77 AC_CHECK_HEADERS(expat.h, [AC_DEFINE(HAVE_EXPAT_H)], 
78                  [AC_MSG_ERROR([Can't find expat.h. Please install expat.])])
79 AC_CHECK_LIB(expat, XML_ParserCreate, [EXPAT_LIBS="-lexpat"],
80              [AC_MSG_ERROR([Can't find expat library. Please install expat.])])
81 AC_SUBST(EXPAT_LIBS)
82
83 # workaround a bug in xcb-dri2 generated by xcb-proto 1.6
84 AC_CHECK_LIB(xcb-dri2, xcb_dri2_connect_alignment_pad, [],
85              [AC_DEFINE([XCB_DRI2_CONNECT_DEVICE_NAME_BROKEN], [1],
86                         [Define to 1 if xcb_dri2_connect_device_name is broken])])
87
88 AC_CONFIG_FILES([wayland/wayland-server.pc
89                  wayland/wayland-client.pc
90                  Makefile
91                  wayland/Makefile
92                  compositor/Makefile
93                  clients/Makefile
94                  data/Makefile])
95 AC_OUTPUT