Remove libuvt
[platform/upstream/kmscon.git] / configure.ac
index 3eb0803..01ae4fc 100644 (file)
@@ -5,30 +5,41 @@
 
 AC_PREREQ(2.68)
 
-AC_INIT([kmscon], [6])
-AC_SUBST(PACKAGE_URL, [https://github.com/dvdhrm/kmscon])
+AC_INIT([kmscon],
+        [7],
+        [http://bugs.freedesktop.org/enter_bug.cgi?product=kmscon],
+        [kmscon],
+        [http://www.freedesktop.org/wiki/Software/kmscon])
 AC_CONFIG_SRCDIR([src/kmscon_main.c])
 AC_CONFIG_AUX_DIR([build-aux])
 AC_CONFIG_MACRO_DIR([m4])
 AC_CONFIG_HEADER(config.h)
+AC_USE_SYSTEM_EXTENSIONS
+AC_SYS_LARGEFILE
+AC_PREFIX_DEFAULT([/usr])
+AC_CANONICAL_SYSTEM
 
-AM_INIT_AUTOMAKE([foreign 1.11 subdir-objects dist-bzip2 no-dist-gzip tar-pax -Wall -Werror -Wno-portability])
+AM_INIT_AUTOMAKE([foreign 1.11 subdir-objects dist-xz no-dist-gzip tar-pax -Wall -Werror -Wno-portability])
 AM_SILENT_RULES([yes])
 
 #
 # Don't add a default "-g -O2" if CFLAGS wasn't specified. For debugging it is
 # often more convenient to have "-g -O0". You can still override it by
-# explicitely setting it on the command line.
+# explicitly setting it on the command line.
 #
 
 : ${CFLAGS=""}
 
-AC_USE_SYSTEM_EXTENSIONS
 AC_PROG_CC
+AX_PROG_CC_FOR_BUILD
 AC_PROG_CC_C99
 AM_PROG_CC_C_O
-AC_PROG_SED
 m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
+AC_PROG_SED
+AC_PROG_MKDIR_P
+AC_PROG_LN_S
+AC_PROG_GREP
+AC_PROG_AWK
 
 LT_PREREQ(2.2)
 LT_INIT
@@ -49,11 +60,6 @@ PKG_CHECK_MODULES([XKBCOMMON], [xkbcommon],
 AC_SUBST(XKBCOMMON_CFLAGS)
 AC_SUBST(XKBCOMMON_LIBS)
 
-PKG_CHECK_MODULES([WAYLAND], [wayland-client wayland-server wayland-cursor],
-                  [have_wayland=yes], [have_wayland=no])
-AC_SUBST(WAYLAND_CFLAGS)
-AC_SUBST(WAYLAND_LIBS)
-
 PKG_CHECK_MODULES([SYSTEMD], [libsystemd-daemon libsystemd-login],
                   [have_systemd=yes], [have_systemd=no])
 AC_SUBST(SYSTEMD_CFLAGS)
@@ -89,25 +95,25 @@ PKG_CHECK_MODULES([GLES2], [glesv2],
 AC_SUBST(GLES2_CFLAGS)
 AC_SUBST(GLES2_LIBS)
 
-PKG_CHECK_MODULES([FREETYPE2], [freetype2 fontconfig],
-                  [have_freetype2=yes], [have_freetype2=no])
-AC_SUBST(FREETYPE2_CFLAGS)
-AC_SUBST(FREETYPE2_LIBS)
-
 PKG_CHECK_MODULES([PANGO], [pango pangoft2],
                   [have_pango=yes], [have_pango=no])
 AC_SUBST(PANGO_CFLAGS)
 AC_SUBST(PANGO_LIBS)
 
-PKG_CHECK_MODULES([FUSE], [fuse],
-                  [have_fuse=yes], [have_fuse=no])
-AC_SUBST(FUSE_CFLAGS)
-AC_SUBST(FUSE_LIBS)
+PKG_CHECK_MODULES([CAIRO], [cairo],
+                  [have_cairo=yes], [have_cairo=no])
+AC_SUBST(CAIRO_CFLAGS)
+AC_SUBST(CAIRO_LIBS)
 
-PKG_CHECK_MODULES([PCIACCESS], [pciaccess],
-                  [have_pciaccess=yes], [have_pciaccess=no])
-AC_SUBST(PCIACCESS_CFLAGS)
-AC_SUBST(PCIACCESS_LIBS)
+PKG_CHECK_MODULES([PIXMAN], [pixman-1],
+                  [have_pixman=yes], [have_pixman=no])
+AC_SUBST(PIXMAN_CFLAGS)
+AC_SUBST(PIXMAN_LIBS)
+
+PKG_CHECK_MODULES([TSM], [libtsm],
+                  [have_tsm=yes], [have_tsm=no])
+AC_SUBST(TSM_CFLAGS)
+AC_SUBST(TSM_LIBS)
 
 #
 # Parse arguments
@@ -116,32 +122,36 @@ AC_SUBST(PCIACCESS_LIBS)
 # similar but does only parse the arguments.
 #
 
+# all
+AC_MSG_CHECKING([whether user wants all])
+AC_ARG_ENABLE([all],
+              [AS_HELP_STRING([--enable-all],
+                              [enable all options (used for debugging)])])
+if test "x$enable_all" = "x" ; then
+        enable_all="no"
+fi
+AC_MSG_RESULT([$enable_all])
+
 # eloop
 AC_MSG_CHECKING([whether user wants eloop])
 AC_ARG_ENABLE([eloop],
               [AS_HELP_STRING([--enable-eloop],
                               [build eloop library])])
-if test "x$enable_eloop" = "x" ; then
+if test "x$enable_all" = "xyes" ; then
+        enable_eloop="yes"
+elif test "x$enable_eloop" = "x" ; then
         enable_eloop="no (default)"
 fi
 AC_MSG_RESULT([$enable_eloop])
 
-# TSM
-AC_MSG_CHECKING([whether user wants TSM])
-AC_ARG_ENABLE([tsm],
-              [AS_HELP_STRING([--enable-tsm],
-                              [build tsm library])])
-if test "x$enable_tsm" = "x" ; then
-        enable_tsm="no (default)"
-fi
-AC_MSG_RESULT([$enable_tsm])
-
 # uterm
 AC_MSG_CHECKING([whether user wants uterm])
 AC_ARG_ENABLE([uterm],
               [AS_HELP_STRING([--enable-uterm],
                               [build uterm library])])
-if test "x$enable_uterm" = "x" ; then
+if test "x$enable_all" = "xyes" ; then
+        enable_uterm="yes"
+elif test "x$enable_uterm" = "x" ; then
         enable_uterm="no (default)"
 fi
 AC_MSG_RESULT([$enable_uterm])
@@ -151,27 +161,21 @@ AC_MSG_CHECKING([whether user wants kmscon])
 AC_ARG_ENABLE([kmscon],
               [AS_HELP_STRING([--disable-kmscon],
                               [do not build kmscon])])
-if test "x$enable_kmscon" = "x" ; then
+if test "x$enable_all" = "xyes" ; then
+        enable_kmscon="yes"
+elif test "x$enable_kmscon" = "x" ; then
         enable_kmscon="yes (default)"
 fi
 AC_MSG_RESULT([$enable_kmscon])
 
-# wlterm
-AC_MSG_CHECKING([whether user wants wlterm])
-AC_ARG_ENABLE([wlterm],
-              [AS_HELP_STRING([--enable-wlterm],
-                              [build wlterm])])
-if test "x$enable_wlterm" = "x" ; then
-        enable_wlterm="yes (default)"
-fi
-AC_MSG_RESULT([$enable_wlterm])
-
 # debug
 AC_MSG_CHECKING([whether to build with debugging on])
 AC_ARG_ENABLE([debug],
               [AS_HELP_STRING([--enable-debug],
                               [whether to build with debugging on])])
-if test "x$enable_debug" = "x" ; then
+if test "x$enable_all" = "xyes" ; then
+        enable_debug="yes"
+elif test "x$enable_debug" = "x" ; then
         enable_debug="yes (default)"
 fi
 AC_MSG_RESULT([$enable_debug])
@@ -181,7 +185,9 @@ AC_MSG_CHECKING([whether to disable code optimizations])
 AC_ARG_ENABLE([optimizations],
               [AS_HELP_STRING([--disable-optimizations],
                               [whether to disable code optimizations])])
-if test "x$enable_optimizations" = "x" ; then
+if test "x$enable_all" = "xyes" ; then
+        enable_optimizations="yes"
+elif test "x$enable_optimizations" = "x" ; then
         enable_optimizations="yes (default)"
 fi
 AC_MSG_RESULT([$enable_optimizations])
@@ -191,7 +197,9 @@ AC_MSG_CHECKING([whether user wants systemd for multi-seat support])
 AC_ARG_ENABLE([multi-seat],
               [AS_HELP_STRING([--enable-multi-seat],
                               [enable multi-seat support with systemd])])
-if test "x$enable_multi_seat" = "x" ; then
+if test "x$enable_all" = "xyes" ; then
+        enable_multi_seat="yes"
+elif test "x$enable_multi_seat" = "x" ; then
         enable_multi_seat="yes (default)"
 fi
 AC_MSG_RESULT([$enable_multi_seat])
@@ -201,27 +209,21 @@ AC_MSG_CHECKING([whether user wants udev for device hotplug support])
 AC_ARG_ENABLE([hotplug],
               [AS_HELP_STRING([--enable-hotplug],
                               [enable device hotplug support with udev])])
-if test "x$enable_hotplug" = "x" ; then
+if test "x$enable_all" = "xyes" ; then
+        enable_hotplug="yes"
+elif test "x$enable_hotplug" = "x" ; then
         enable_hotplug="yes (default)"
 fi
 AC_MSG_RESULT([$enable_hotplug])
 
-# pciaccess
-AC_MSG_CHECKING([whether user wants pciaccess device detection])
-AC_ARG_ENABLE([pciaccess],
-              [AS_HELP_STRING([--enable-pciaccess],
-                              [enable device detection via pciaccess])])
-if test "x$enable_pciaccess" = "x" ; then
-        enable_pciaccess="yes (default)"
-fi
-AC_MSG_RESULT([$enable_pciaccess])
-
 # eloop-dbus
 AC_MSG_CHECKING([whether user wants eloop dbus support])
 AC_ARG_ENABLE([eloop-dbus],
               [AS_HELP_STRING([--enable-eloop-dbus],
                               [enable eloop dbus support])])
-if test "x$enable_eloop_dbus" = "x" ; then
+if test "x$enable_all" = "xyes" ; then
+        enable_eloop_dbus="yes"
+elif test "x$enable_eloop_dbus" = "x" ; then
         enable_eloop_dbus="no (default)"
 fi
 AC_MSG_RESULT([$enable_eloop_dbus])
@@ -230,25 +232,32 @@ AC_MSG_RESULT([$enable_eloop_dbus])
 AC_MSG_CHECKING([which video backends the user wants])
 AC_ARG_WITH([video],
             [AS_HELP_STRING([--with-video],
-              [specify list of optional video backends])])
+              [specify list of optional video backends])],
+            [],
+            [with_video="default"])
 enable_video_fbdev="no"
-enable_video_dumb="no"
-enable_video_drm="no"
-if test "x$with_video" = "x" ; then
+enable_video_drm2d="no"
+enable_video_drm3d="no"
+if test "x$enable_all" = "xyes" ; then
+        enable_video_fbdev="yes"
+        enable_video_drm2d="yes"
+        enable_video_drm3d="yes"
+        with_video="fbdev,drm2d,drm3d (all)"
+elif test "x$with_video" = "xdefault" ; then
         enable_video_fbdev="yes (default)"
-        enable_video_dumb="yes (default)"
-        enable_video_drm="yes (default)"
-        with_video="fbdev,dumb,drm (default)"
-else
+        enable_video_drm2d="yes (default)"
+        enable_video_drm3d="yes (default)"
+        with_video="fbdev,drm2d,drm3d (default)"
+elif test ! "x$with_video" = "x" ; then
         SAVEIFS="$IFS"
         IFS=","
         for i in $with_video ; do
                 if test "x$i" = "xfbdev" ; then
                         enable_video_fbdev="yes"
-                elif test "x$i" = "xdumb" ; then
-                        enable_video_dumb="yes"
-                elif test "x$i" = "xdrm" ; then
-                        enable_video_drm="yes"
+                elif test "x$i" = "xdrm2d" ; then
+                        enable_video_drm2d="yes"
+                elif test "x$i" = "xdrm3d" ; then
+                        enable_video_drm3d="yes"
                 else
                         IFS="$SAVEIFS"
                         AC_ERROR([Invalid video backend $i])
@@ -262,25 +271,37 @@ AC_MSG_RESULT([$with_video])
 AC_MSG_CHECKING([which render backends the user wants])
 AC_ARG_WITH([renderers],
             [AS_HELP_STRING([--with-renderers],
-              [specify list of optional render backends])])
-enable_renderer_bblit="no"
+              [specify list of optional render backends])],
+            [],
+            [with_renderers="default"])
 enable_renderer_bbulk="no"
 enable_renderer_gltex="no"
-if test "x$with_renderers" = "x" ; then
-        enable_renderer_bblit="yes (default)"
+enable_renderer_cairo="no"
+enable_renderer_pixman="no"
+if test "x$enable_all" = "xyes" ; then
+        enable_renderer_bbulk="yes"
+        enable_renderer_gltex="yes"
+        enable_renderer_cairo="yes"
+        enable_renderer_pixman="yes"
+        with_renderers="bbulk,gltex,cairo,pixman (all)"
+elif test "x$with_renderers" = "xdefault" ; then
         enable_renderer_bbulk="yes (default)"
         enable_renderer_gltex="yes (default)"
-        with_renderers="bblit,bbulk,gltex (default)"
-else
+        enable_renderer_cairo="no (default)"
+        enable_renderer_pixman="no (default)"
+        with_renderers="bbulk,gltex (default)"
+elif test ! "x$with_renderers" = "x" ; then
         SAVEIFS="$IFS"
         IFS=","
         for i in $with_renderers ; do
-                if test "x$i" = "xbblit" ; then
-                        enable_renderer_bblit="yes"
-                elif test "x$i" = "xbbulk" ; then
+                if test "x$i" = "xbbulk" ; then
                         enable_renderer_bbulk="yes"
                 elif test "x$i" = "xgltex" ; then
                         enable_renderer_gltex="yes"
+                elif test "x$i" = "xcairo" ; then
+                        enable_renderer_cairo="yes"
+                elif test "x$i" = "xpixman" ; then
+                        enable_renderer_pixman="yes"
                 else
                         IFS="$SAVEIFS"
                         AC_ERROR([Unknown renderer $i])
@@ -294,23 +315,25 @@ AC_MSG_RESULT([$with_renderers])
 AC_MSG_CHECKING([which font backends the user wants])
 AC_ARG_WITH([fonts],
             [AS_HELP_STRING([--with-fonts],
-              [specify list of optional font backends])])
+              [specify list of optional font backends])],
+            [],
+            [with_fonts="default"])
 enable_font_unifont="no"
-enable_font_freetype2="no"
 enable_font_pango="no"
-if test "x$with_fonts" = "x" ; then
-        enable_font_unifont="no (default)"
-        enable_font_freetype2="yes (default)"
+if test "x$enable_all" = "xyes" ; then
+        enable_font_unifont="yes"
+        enable_font_pango="yes"
+        with_fonts="unifont,pango (all)"
+elif test "x$with_fonts" = "xdefault" ; then
+        enable_font_unifont="yes (default)"
         enable_font_pango="yes (default)"
-        with_fonts="freetype2,pango (default)"
-else
+        with_fonts="unifont,pango (default)"
+elif test ! "x$with_fonts" = "x" ; then
         SAVEIFS="$IFS"
         IFS=","
         for i in $with_fonts ; do
                 if test "x$i" = "xunifont" ; then
                         enable_font_unifont="yes"
-                elif test "x$i" = "xfreetype2" ; then
-                        enable_font_freetype2="yes"
                 elif test "x$i" = "xpango" ; then
                         enable_font_pango="yes"
                 else
@@ -326,16 +349,20 @@ AC_MSG_RESULT([$with_fonts])
 AC_MSG_CHECKING([which sessions the user wants])
 AC_ARG_WITH([sessions],
             [AS_HELP_STRING([--with-sessions],
-              [specify list of optional sessions])])
+              [specify list of optional sessions])],
+            [],
+            [with_sessions="default"])
 enable_session_dummy="no"
 enable_session_terminal="no"
-enable_session_cdev="no"
-if test "x$with_sessions" = "x" ; then
+if test "x$enable_all" = "xyes" ; then
+        enable_session_dummy="yes"
+        enable_session_terminal="yes"
+        with_sessions="dummy,terminal (all)"
+elif test "x$with_sessions" = "xdefault" ; then
         enable_session_dummy="yes (default)"
         enable_session_terminal="yes (default)"
-        enable_session_cdev="yes (default)"
-        with_sessions="dummy,terminal,cdev (default)"
-else
+        with_sessions="dummy,terminal (default)"
+elif test ! "x$with_sessions" = "x" ; then
         SAVEIFS="$IFS"
         IFS=","
         for i in $with_sessions ; do
@@ -343,8 +370,6 @@ else
                         enable_session_dummy="yes"
                 elif test "x$i" = "xterminal" ; then
                         enable_session_terminal="yes"
-                elif test "x$i" = "xcdev" ; then
-                        enable_session_cdev="yes"
                 else
                         IFS="$SAVEIFS"
                         AC_ERROR([Unknown session type $i])
@@ -406,25 +431,6 @@ else
         eloop_missing="enable-eloop"
 fi
 
-# TSM
-tsm_avail=no
-tsm_missing=""
-if test ! "x$enable_tsm" = "xno" ; then
-        tsm_avail=yes
-        if test "x$have_xkbcommon" = "xno" ; then
-                tsm_avail=no
-                tsm_missing="libxkbcommon"
-        fi
-
-        if test "x$tsm_avail" = "xno" ; then
-                if test "x$enable_tsm" = "xyes" ; then
-                        AC_ERROR([missing for TSM: $tsm_missing])
-                fi
-        fi
-else
-        tsm_missing="enable-tsm"
-fi
-
 # video fbdev
 video_fbdev_avail=no
 video_fbdev_missing=""
@@ -435,54 +441,54 @@ else
         video_fbdev_missing="enable-video-fbdev"
 fi
 
-# video dumb
-video_dumb_avail=no
-video_dumb_missing=""
-if test ! "x$enable_video_dumb" = "xno" ; then
-        video_dumb_avail=yes
-        if test "x$have_drm" = "xno" ; then
-                video_dumb_avail=no
-                video_dumb_missing="libdrm"
+# video drm2d
+video_drm2d_avail=no
+video_drm2d_missing=""
+if test ! "x$enable_video_drm2d" = "xno" ; then
+        video_drm2d_avail=yes
+        if test "x$have_drm3d" = "xno" ; then
+                video_drm2d_avail=no
+                video_drm2d_missing="libdrm3d"
         fi
 
-        if test "x$video_dumb_avail" = "xno" ; then
-                if test "x$enable_video_dumb" = "xyes" ; then
-                        AC_ERROR([missing for dumb video backend: $video_dumb_missing])
+        if test "x$video_drm2d_avail" = "xno" ; then
+                if test "x$enable_video_drm2d" = "xyes" ; then
+                        AC_ERROR([missing for drm2d video backend: $video_drm2d_missing])
                 fi
         fi
 else
-        video_dumb_missing="enable-video-dumb"
+        video_drm2d_missing="enable-video-drm2d"
 fi
 
-# video drm
-video_drm_avail=no
-video_drm_missing=""
-if test ! "x$enable_video_drm" = "xno" ; then
-        video_drm_avail=yes
-        if test "x$have_drm" = "xno" ; then
-                video_drm_avail=no
-                video_drm_missing="libdrm,$video_drm_missing"
+# video drm3d
+video_drm3d_avail=no
+video_drm3d_missing=""
+if test ! "x$enable_video_drm3d" = "xno" ; then
+        video_drm3d_avail=yes
+        if test "x$have_drm3d" = "xno" ; then
+                video_drm3d_avail=no
+                video_drm3d_missing="libdrm3d,$video_drm3d_missing"
         fi
         if test "x$have_gbm" = "xno" ; then
-                video_drm_avail=no
-                video_drm_missing="libgbm,$video_drm_missing"
+                video_drm3d_avail=no
+                video_drm3d_missing="libgbm,$video_drm3d_missing"
         fi
         if test "x$have_egl" = "xno" ; then
-                video_drm_avail=no
-                video_drm_missing="libegl,$video_drm_missing"
+                video_drm3d_avail=no
+                video_drm3d_missing="libegl,$video_drm3d_missing"
         fi
         if test "x$have_gles2" = "xno" ; then
-                video_drm_avail=no
-                video_drm_missing="libgles2,$video_drm_missing"
+                video_drm3d_avail=no
+                video_drm3d_missing="libgles2,$video_drm3d_missing"
         fi
 
-        if test "x$video_drm_avail" = "xno" ; then
-                if test "x$enable_video_drm" = "xyes" ; then
-                        AC_ERROR([missing for drm video backend: $video_drm_missing])
+        if test "x$video_drm3d_avail" = "xno" ; then
+                if test "x$enable_video_drm3d" = "xyes" ; then
+                        AC_ERROR([missing for drm3d video backend: $video_drm3d_missing])
                 fi
         fi
 else
-        video_drm_missing="enable-video-drm"
+        video_drm3d_missing="enable-video-drm3d"
 fi
 
 # uterm
@@ -532,34 +538,6 @@ else
         hotplug_missing="enable-hotplug"
 fi
 
-# pciaccess
-pciaccess_avail=no
-pciaccess_missing=""
-if test ! "x$enable_pciaccess" = "xno" ; then
-        pciaccess_avail=yes
-        if test "x$have_pciaccess" = "xno" ; then
-                pciaccess_avail=no
-                pciaccess_missing="libpciaccess"
-        fi
-
-        if test "x$pciaccess_avail" = "xno" ; then
-                if test "x$enable_pciaccess" = "xyes" ; then
-                        AC_ERROR([missing for pciaccess: $pciaccess_missing])
-                fi
-        fi
-else
-        pciaccess_missing="enable-pciaccess"
-fi
-
-# renderer bblit
-renderer_bblit_avail=no
-renderer_bblit_missing=""
-if test ! "x$enable_renderer_bblit" = "xno" ; then
-        renderer_bblit_avail=yes
-else
-        renderer_bblit_missing="enable-renderer-bblit"
-fi
-
 # renderer bbulk
 renderer_bbulk_avail=no
 renderer_bbulk_missing=""
@@ -588,32 +566,51 @@ else
         renderer_gltex_missing="enable-renderer-gltex"
 fi
 
-# font unifont
-font_unifont_avail=no
-font_unifont_missing=""
-if test ! "x$enable_font_unifont" = "xno" ; then
-        font_unifont_avail=yes
+# renderer cairo
+renderer_cairo_avail=no
+renderer_cairo_missing=""
+if test ! "x$enable_renderer_cairo" = "xno" ; then
+        renderer_cairo_avail=yes
+        if test "x$have_cairo" = "xno" ; then
+                renderer_cairo_avail=no
+                renderer_cairo_missing="cairo"
+        fi
+
+        if test "x$renderer_cairo_avail" = "xno" ; then
+                if test "x$enable_renderer_cairo" = "xyes" ; then
+                        AC_ERROR([missing for renderer-cairo: $renderer_cairo_missing])
+                fi
+        fi
 else
-        font_unifont_missing="enable-font-unifont"
+        renderer_cairo_missing="enable-renderer-cairo"
 fi
 
-# font freetype2
-font_freetype2_avail=no
-font_freetype2_missing=""
-if test ! "x$enable_font_freetype2" = "xno" ; then
-        font_freetype2_avail=yes
-        if test "x$have_freetype2" = "xno" ; then
-                font_freetype2_avail=no
-                font_freetype2_missing="libfontconfig,libfreetype2"
+# renderer pixman
+renderer_pixman_avail=no
+renderer_pixman_missing=""
+if test ! "x$enable_renderer_pixman" = "xno" ; then
+        renderer_pixman_avail=yes
+        if test "x$have_pixman" = "xno" ; then
+                renderer_pixman_avail=no
+                renderer_pixman_missing="pixman"
         fi
 
-        if test "x$font_freetype2_avail" = "xno" ; then
-                if test "x$enable_font_freetype2" = "xyes" ; then
-                        AC_ERROR([missing for font-freetype2: $font_freetype2_missing])
+        if test "x$renderer_pixman_avail" = "xno" ; then
+                if test "x$enable_renderer_pixman" = "xyes" ; then
+                        AC_ERROR([missing for renderer-pixman: $renderer_pixman_missing])
                 fi
         fi
 else
-        font_freetype2_missing="enable-font-freetype2"
+        renderer_pixman_missing="enable-renderer-pixman"
+fi
+
+# font unifont
+font_unifont_avail=no
+font_unifont_missing=""
+if test ! "x$enable_font_unifont" = "xno" ; then
+        font_unifont_avail=yes
+else
+        font_unifont_missing="enable-font-unifont"
 fi
 
 # font pango
@@ -649,9 +646,9 @@ session_terminal_avail=no
 session_terminal_missing=""
 if test ! "x$enable_session_terminal" = "xno" ; then
         session_terminal_avail=yes
-        if test "x$tsm_avail" = "xno" ; then
+        if test "x$have_tsm" = "xno" ; then
                 session_terminal_avail=no
-                session_terminal_missing="$tsm_missing"
+                session_terminal_missing="libtsm"
         fi
 
         if test "x$session_terminal_avail" = "xno" ; then
@@ -663,30 +660,6 @@ else
         session_terminal_missing="enable-session-terminal"
 fi
 
-# session cdev
-session_cdev_avail=no
-session_cdev_missing=""
-if test ! "x$enable_session_cdev" = "xno" ; then
-        session_cdev_avail=yes
-        if test "x$have_fuse" = "xno" ; then
-                session_cdev_avail=no
-                session_cdev_missing="libfuse,$session_cdev_missing"
-        fi
-
-        if test "x$tsm_avail" = "xno" ; then
-                session_cdev_avail=no
-                session_cdev_missing="$tsm_missing,$session_cdev_missing"
-        fi
-
-        if test "x$session_cdev_avail" = "xno" ; then
-                if test "x$enable_session_cdev" = "xyes" ; then
-                        AC_ERROR([missing for session-cdev: $session_cdev_missing])
-                fi
-        fi
-else
-        session_cdev_missing="enable-session-cdev"
-fi
-
 # kmscon
 kmscon_avail=no
 kmscon_missing=""
@@ -697,9 +670,9 @@ if test ! "x$enable_kmscon" = "xno" ; then
                 kmscon_missing="$eloop_missing,$kmscon_missing"
         fi
 
-        if test "x$tsm_avail" = "xno" ; then
+        if test "x$have_tsm" = "xno" ; then
                 kmscon_avail=no
-                kmscon_missing="$tsm_missing,$kmscon_missing"
+                kmscon_missing="libtsm,$kmscon_missing"
         fi
 
         if test "x$uterm_avail" = "xno" ; then
@@ -716,35 +689,6 @@ else
         kmscon_missing="enable-kmscon"
 fi
 
-# wlterm
-wlterm_avail=no
-wlterm_missing=""
-if test ! "x$enable_wlterm" = "xno" ; then
-        wlterm_avail=yes
-        if test "x$tsm_avail" = "xno" ; then
-                wlterm_avail=no
-                wlterm_missing="$tsm_missing,$wlterm_missing"
-        fi
-
-        if test "x$eloop_avail" = "xno" ; then
-                wlterm_avail=no
-                wlterm_missing="$eloop_missing,$wlterm_missing"
-        fi
-
-        if test "x$have_wayland" = "xno" ; then
-                wlterm_avail=no
-                wlterm_missing="libwayland,$wlterm_missing"
-        fi
-
-        if test "x$wlterm_avail" = "xno" ; then
-                if test "x$enable_wlterm" = "xyes" ; then
-                        AC_ERROR([missing for wlterm: $wlterm_missing])
-                fi
-        fi
-else
-        wlterm_missing="enable-wlterm"
-fi
-
 #
 # Enable all required modules
 # We now know which modules can be built by checking the *_avail variables set
@@ -753,16 +697,6 @@ fi
 # needs them. This is done top-down of course.
 #
 
-# wlterm
-wlterm_enabled=no
-if test "x$wlterm_avail" = "xyes" ; then
-        if test "x${enable_wlterm% *}" = "xyes" ; then
-                wlterm_enabled=yes
-                enable_eloop=yes
-                enable_tsm=yes
-        fi
-fi
-
 # kmscon
 kmscon_enabled=no
 if test "x$kmscon_avail" = "xyes" ; then
@@ -773,20 +707,11 @@ if test "x$kmscon_avail" = "xyes" ; then
         fi
 fi
 
-# session cdev
-session_cdev_enabled=no
-if test "x$session_cdev_avail" = "xyes" ; then
-        if test "x${enable_session_cdev% *}" = "xyes" ; then
-                session_cdev_enabled=yes
-        fi
-fi
-
 # session terminal
 session_terminal_enabled=no
 if test "x$session_terminal_avail" = "xyes" ; then
         if test "x${enable_session_terminal% *}" = "xyes" ; then
                 session_terminal_enabled=yes
-                enable_tsm=yes
         fi
 fi
 
@@ -806,14 +731,6 @@ if test "x$font_pango_avail" = "xyes" ; then
         fi
 fi
 
-# font freetype2
-font_freetype2_enabled=no
-if test "x$font_freetype2_avail" = "xyes" ; then
-        if test "x${enable_font_freetype2% *}" = "xyes" ; then
-                font_freetype2_enabled=yes
-        fi
-fi
-
 # font unifont
 font_unifont_enabled=no
 if test "x$font_unifont_avail" = "xyes" ; then
@@ -830,27 +747,27 @@ if test "x$renderer_gltex_avail" = "xyes" ; then
         fi
 fi
 
-# renderer bbulk
-renderer_bbulk_enabled=no
-if test "x$renderer_bbulk_avail" = "xyes" ; then
-        if test "x${enable_renderer_bbulk% *}" = "xyes" ; then
-                renderer_bbulk_enabled=yes
+# renderer cairo
+renderer_cairo_enabled=no
+if test "x$renderer_cairo_avail" = "xyes" ; then
+        if test "x${enable_renderer_cairo% *}" = "xyes" ; then
+                renderer_cairo_enabled=yes
         fi
 fi
 
-# renderer bblit
-renderer_bblit_enabled=no
-if test "x$renderer_bblit_avail" = "xyes" ; then
-        if test "x${enable_renderer_bblit% *}" = "xyes" ; then
-                renderer_bblit_enabled=yes
+# renderer pixman
+renderer_pixman_enabled=no
+if test "x$renderer_pixman_avail" = "xyes" ; then
+        if test "x${enable_renderer_pixman% *}" = "xyes" ; then
+                renderer_pixman_enabled=yes
         fi
 fi
 
-# pciaccess
-pciaccess_enabled=no
-if test "x$pciaccess_avail" = "xyes" ; then
-        if test "x${enable_pciaccess% *}" = "xyes" ; then
-                pciaccess_enabled=yes
+# renderer bbulk
+renderer_bbulk_enabled=no
+if test "x$renderer_bbulk_avail" = "xyes" ; then
+        if test "x${enable_renderer_bbulk% *}" = "xyes" ; then
+                renderer_bbulk_enabled=yes
         fi
 fi
 
@@ -878,19 +795,19 @@ if test "x$uterm_avail" = "xyes" ; then
         fi
 fi
 
-# video drm
-video_drm_enabled=no
-if test "x$video_drm_avail" = "xyes" ; then
-        if test "x${enable_video_drm% *}" = "xyes" ; then
-                video_drm_enabled=yes
+# video drm3d
+video_drm3d_enabled=no
+if test "x$video_drm3d_avail" = "xyes" ; then
+        if test "x${enable_video_drm3d% *}" = "xyes" ; then
+                video_drm3d_enabled=yes
         fi
 fi
 
-# video dumb
-video_dumb_enabled=no
-if test "x$video_dumb_avail" = "xyes" ; then
-        if test "x${enable_video_dumb% *}" = "xyes" ; then
-                video_dumb_enabled=yes
+# video drm2d
+video_drm2d_enabled=no
+if test "x$video_drm2d_avail" = "xyes" ; then
+        if test "x${enable_video_drm2d% *}" = "xyes" ; then
+                video_drm2d_enabled=yes
         fi
 fi
 
@@ -902,14 +819,6 @@ if test "x$video_fbdev_avail" = "xyes" ; then
         fi
 fi
 
-# tsm
-tsm_enabled=no
-if test "x$tsm_avail" = "xyes" ; then
-        if test "x${enable_tsm% *}" = "xyes" ; then
-                tsm_enabled=yes
-        fi
-fi
-
 # eloop
 eloop_enabled=no
 if test "x$eloop_avail" = "xyes" ; then
@@ -972,10 +881,6 @@ AM_CONDITIONAL([BUILD_ENABLE_ELOOP_DBUS],
 AM_CONDITIONAL([BUILD_ENABLE_ELOOP],
                [test "x$eloop_enabled" = "xyes"])
 
-# TSM
-AM_CONDITIONAL([BUILD_ENABLE_TSM],
-               [test "x$tsm_enabled" = "xyes"])
-
 # video fbdev
 if test "x$video_fbdev_enabled" = "xyes" ; then
         AC_DEFINE([BUILD_ENABLE_VIDEO_FBDEV], [1],
@@ -985,23 +890,23 @@ fi
 AM_CONDITIONAL([BUILD_ENABLE_VIDEO_FBDEV],
                [test "x$video_fbdev_enabled" = "xyes"])
 
-# video dumb
-if test "x$video_dumb_enabled" = "xyes" ; then
-        AC_DEFINE([BUILD_ENABLE_VIDEO_DUMB], [1],
-                  [Build uterm dumb drm video backend])
+# video drm2d
+if test "x$video_drm2d_enabled" = "xyes" ; then
+        AC_DEFINE([BUILD_ENABLE_VIDEO_DRM2D], [1],
+                  [Build uterm drm2d drm3d video backend])
 fi
 
-AM_CONDITIONAL([BUILD_ENABLE_VIDEO_DUMB],
-               [test "x$video_dumb_enabled" = "xyes"])
+AM_CONDITIONAL([BUILD_ENABLE_VIDEO_DRM2D],
+               [test "x$video_drm2d_enabled" = "xyes"])
 
-# video drm
-if test "x$video_drm_enabled" = "xyes" ; then
-        AC_DEFINE([BUILD_ENABLE_VIDEO_DRM], [1],
-                  [Build uterm drm video backend])
+# video drm3d
+if test "x$video_drm3d_enabled" = "xyes" ; then
+        AC_DEFINE([BUILD_ENABLE_VIDEO_DRM3D], [1],
+                  [Build uterm drm3d video backend])
 fi
 
-AM_CONDITIONAL([BUILD_ENABLE_VIDEO_DRM],
-               [test "x$video_drm_enabled" = "xyes"])
+AM_CONDITIONAL([BUILD_ENABLE_VIDEO_DRM3D],
+               [test "x$video_drm3d_enabled" = "xyes"])
 
 # uterm
 AM_CONDITIONAL([BUILD_ENABLE_UTERM],
@@ -1025,24 +930,6 @@ fi
 AM_CONDITIONAL([BUILD_ENABLE_HOTPLUG],
                [test "x$hotplug_enabled" = "xyes"])
 
-# pciaccess
-if test "x$pciaccess_enabled" = "xyes" ; then
-        AC_DEFINE([BUILD_ENABLE_PCIACCESS], [1],
-                  [Use pciaccess for device detection])
-fi
-
-AM_CONDITIONAL([BUILD_ENABLE_PCIACCESS],
-               [test "x$pciaccess_enabled" = "xyes"])
-
-# renderer bblit
-if test "x$renderer_bblit_enabled" = "xyes" ; then
-        AC_DEFINE([BUILD_ENABLE_RENDERER_BBLIT], [1],
-                  [Build bblit rendering backend])
-fi
-
-AM_CONDITIONAL([BUILD_ENABLE_RENDERER_BBLIT],
-               [test "x$renderer_bblit_enabled" = "xyes"])
-
 # renderer bbulk
 if test "x$renderer_bbulk_enabled" = "xyes" ; then
         AC_DEFINE([BUILD_ENABLE_RENDERER_BBULK], [1],
@@ -1061,6 +948,24 @@ fi
 AM_CONDITIONAL([BUILD_ENABLE_RENDERER_GLTEX],
                [test "x$renderer_gltex_enabled" = "xyes"])
 
+# renderer cairo
+if test "x$renderer_cairo_enabled" = "xyes" ; then
+        AC_DEFINE([BUILD_ENABLE_RENDERER_CAIRO], [1],
+                  [Build cairo rendering backend])
+fi
+
+AM_CONDITIONAL([BUILD_ENABLE_RENDERER_CAIRO],
+               [test "x$renderer_cairo_enabled" = "xyes"])
+
+# renderer pixman
+if test "x$renderer_pixman_enabled" = "xyes" ; then
+        AC_DEFINE([BUILD_ENABLE_RENDERER_PIXMAN], [1],
+                  [Build pixman rendering backend])
+fi
+
+AM_CONDITIONAL([BUILD_ENABLE_RENDERER_PIXMAN],
+               [test "x$renderer_pixman_enabled" = "xyes"])
+
 # font unifont
 if test "x$font_unifont_enabled" = "xyes" ; then
         AC_DEFINE([BUILD_ENABLE_FONT_UNIFONT], [1],
@@ -1070,15 +975,6 @@ fi
 AM_CONDITIONAL([BUILD_ENABLE_FONT_UNIFONT],
                [test "x$font_unifont_enabled" = "xyes"])
 
-# font freetype2
-if test "x$font_freetype2_enabled" = "xyes" ; then
-        AC_DEFINE([BUILD_ENABLE_FONT_FREETYPE2], [1],
-                  [Build freetype2 font backend])
-fi
-
-AM_CONDITIONAL([BUILD_ENABLE_FONT_FREETYPE2],
-               [test "x$font_freetype2_enabled" = "xyes"])
-
 # font pango
 if test "x$font_pango_enabled" = "xyes" ; then
         AC_DEFINE([BUILD_ENABLE_FONT_PANGO], [1],
@@ -1106,27 +1002,14 @@ fi
 AM_CONDITIONAL([BUILD_ENABLE_SESSION_TERMINAL],
                [test "x$session_terminal_enabled" = "xyes"])
 
-# session cdev
-if test "x$session_cdev_enabled" = "xyes" ; then
-        AC_DEFINE([BUILD_ENABLE_SESSION_CDEV], [1],
-                  [Build cdev session])
-fi
-
-AM_CONDITIONAL([BUILD_ENABLE_SESSION_CDEV],
-               [test "x$session_cdev_enabled" = "xyes"])
-
 # kmscon
 AM_CONDITIONAL([BUILD_ENABLE_KMSCON],
                [test "x$kmscon_enabled" = "xyes"])
 
-# wlterm
-AM_CONDITIONAL([BUILD_ENABLE_WLTERM],
-               [test "x$wlterm_enabled" = "xyes"])
-
 #
 # Miscellaneous Checks
 # All checks below are independent of module checking or depend on the results
-# of it. They do not have any dependencies themself so they are not part of the
+# of it. They do not have any dependencies themselves so they are not part of the
 # module infrastructure.
 #
 
@@ -1186,7 +1069,6 @@ fi
 
 AC_CONFIG_FILES([Makefile
                  docs/pc/libeloop.pc
-                 docs/pc/libtsm.pc
                  docs/pc/libuterm.pc])
 AC_OUTPUT
 
@@ -1205,9 +1087,7 @@ AC_MSG_NOTICE([Build configuration:
 
   Applications and Libraries:
                kmscon: $kmscon_enabled ($kmscon_avail: $kmscon_missing)
-               wlterm: $wlterm_enabled ($wlterm_avail: $wlterm_missing)
                 uterm: $uterm_enabled ($uterm_avail: $uterm_missing)
-                  tsm: $tsm_enabled ($tsm_avail: $tsm_missing)
                 eloop: $eloop_enabled ($eloop_avail: $eloop_missing)
 
   Miscellaneous Options:
@@ -1215,27 +1095,25 @@ AC_MSG_NOTICE([Build configuration:
         optimizations: $optimizations_enabled ($optimizations_avail: $optimizations_missing)
            multi-seat: $multi_seat_enabled ($multi_seat_avail: $multi_seat_missing)
               hotplug: $hotplug_enabled ($hotplug_avail: $hotplug_missing)
-            pciaccess: $pciaccess_enabled ($pciaccess_avail: $pciaccess_missing)
            eloop-dbus: $eloop_dbus_enabled ($eloop_dbus_avail: $eloop_dbus_missing)
 
   Video Backends:
                 fbdev: $video_fbdev_enabled ($video_fbdev_avail: $video_fbdev_missing)
-             dumb drm: $video_dumb_enabled ($video_dumb_avail: $video_dumb_missing)
-                  drm: $video_drm_enabled ($video_drm_avail: $video_drm_missing)
+                drm2d: $video_drm2d_enabled ($video_drm2d_avail: $video_drm2d_missing)
+                drm3d: $video_drm3d_enabled ($video_drm3d_avail: $video_drm3d_missing)
 
   Font Backends:
               unifont: $font_unifont_enabled ($font_unifont_avail: $font_unifont_missing)
-            freetype2: $font_freetype2_enabled ($font_freetype2_avail: $font_freetype2_missing)
                 pango: $font_pango_enabled ($font_pango_avail: $font_pango_missing)
 
   Renderers:
-                bblit: $renderer_bblit_enabled ($renderer_bblit_avail: $renderer_bblit_missing)
                 bbulk: $renderer_bbulk_enabled ($renderer_bbulk_avail: $renderer_bbulk_missing)
                 gltex: $renderer_gltex_enabled ($renderer_gltex_avail: $renderer_gltex_missing)
+                cairo: $renderer_cairo_enabled ($renderer_cairo_avail: $renderer_cairo_missing)
+               pixman: $renderer_pixman_enabled ($renderer_pixman_avail: $renderer_pixman_missing)
 
   Session Types:
                 dummy: $session_dummy_enabled ($session_dummy_avail: $session_dummy_missing)
              terminal: $session_terminal_enabled ($session_terminal_avail: $session_terminal_missing)
-                 cdev: $session_cdev_enabled ($session_cdev_avail: $session_cdev_missing)
 
         Run "${MAKE-make}" to start compilation process])