Similar to the font backends we now require one backend to be always available as safe fallback. The bblit backend is the most basic backend so make it mandatory and link it unconditionally. Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
1211 lines
35 KiB
Plaintext
1211 lines
35 KiB
Plaintext
#
|
|
# Kmscon - build configuration script
|
|
# Copyright (c) 2012 David Herrmann <dh.herrmann@googlemail.com>
|
|
#
|
|
|
|
AC_PREREQ(2.68)
|
|
|
|
AC_INIT([kmscon], [6])
|
|
AC_SUBST(PACKAGE_URL, [https://github.com/dvdhrm/kmscon])
|
|
AC_CONFIG_SRCDIR([src/kmscon_main.c])
|
|
AC_CONFIG_AUX_DIR([build-aux])
|
|
AC_CONFIG_MACRO_DIR([m4])
|
|
AC_CONFIG_HEADER(config.h)
|
|
|
|
AM_INIT_AUTOMAKE([foreign 1.11 subdir-objects dist-bzip2 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.
|
|
#
|
|
|
|
: ${CFLAGS=""}
|
|
|
|
AC_USE_SYSTEM_EXTENSIONS
|
|
AC_PROG_CC
|
|
AC_PROG_CC_C99
|
|
AM_PROG_CC_C_O
|
|
AC_PROG_SED
|
|
m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
|
|
|
|
LT_PREREQ(2.2)
|
|
LT_INIT
|
|
|
|
#
|
|
# pkg-config dependencies
|
|
# This unconditionally checks for all dependencies even if they are disabled. We
|
|
# later look whether all required depedencies are met and finish the
|
|
# configuration. We group similar packages into one logical group here to avoid
|
|
# having variables for each single library.
|
|
# This, however, makes ./configure output very unintuitive error messages if a
|
|
# package is not found so we must make sure we print more verbose messages
|
|
# ourself.
|
|
#
|
|
|
|
PKG_CHECK_MODULES([XKBCOMMON], [xkbcommon],
|
|
[have_xkbcommon=yes], [have_xkbcommon=no])
|
|
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)
|
|
AC_SUBST(SYSTEMD_LIBS)
|
|
|
|
PKG_CHECK_MODULES([UDEV], [libudev >= 172],
|
|
[have_udev=yes], [have_udev=no])
|
|
AC_SUBST(UDEV_CFLAGS)
|
|
AC_SUBST(UDEV_LIBS)
|
|
|
|
PKG_CHECK_MODULES([DBUS], [dbus-1],
|
|
[have_dbus=yes], [have_dbus=no])
|
|
AC_SUBST(DBUS_CFLAGS)
|
|
AC_SUBST(DBUS_LIBS)
|
|
|
|
PKG_CHECK_MODULES([DRM], [libdrm],
|
|
[have_drm=yes], [have_drm=no])
|
|
AC_SUBST(DRM_CFLAGS)
|
|
AC_SUBST(DRM_LIBS)
|
|
|
|
PKG_CHECK_MODULES([GBM], [gbm],
|
|
[have_gbm=yes], [have_gbm=no])
|
|
AC_SUBST(GBM_CFLAGS)
|
|
AC_SUBST(GBM_LIBS)
|
|
|
|
PKG_CHECK_MODULES([EGL], [egl],
|
|
[have_egl=yes], [have_egl=no])
|
|
AC_SUBST(EGL_CFLAGS)
|
|
AC_SUBST(EGL_LIBS)
|
|
|
|
PKG_CHECK_MODULES([GLES2], [glesv2],
|
|
[have_gles2=yes], [have_gles2=no])
|
|
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([PCIACCESS], [pciaccess],
|
|
[have_pciaccess=yes], [have_pciaccess=no])
|
|
AC_SUBST(PCIACCESS_CFLAGS)
|
|
AC_SUBST(PCIACCESS_LIBS)
|
|
|
|
#
|
|
# Parse arguments
|
|
# This parses all arguments that are given via "--enable-XY" or "--with-XY" and
|
|
# saves the results in local variables. This does not check dependencies or
|
|
# similar but does only parse the arguments.
|
|
#
|
|
|
|
# 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
|
|
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
|
|
enable_uterm="no (default)"
|
|
fi
|
|
AC_MSG_RESULT([$enable_uterm])
|
|
|
|
# kmscon
|
|
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
|
|
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="no (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
|
|
enable_debug="yes (default)"
|
|
fi
|
|
AC_MSG_RESULT([$enable_debug])
|
|
|
|
# optimizations
|
|
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
|
|
enable_optimizations="yes (default)"
|
|
fi
|
|
AC_MSG_RESULT([$enable_optimizations])
|
|
|
|
# multi-seat
|
|
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
|
|
enable_multi_seat="yes (default)"
|
|
fi
|
|
AC_MSG_RESULT([$enable_multi_seat])
|
|
|
|
# hotplug
|
|
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
|
|
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
|
|
enable_eloop_dbus="no (default)"
|
|
fi
|
|
AC_MSG_RESULT([$enable_eloop_dbus])
|
|
|
|
# video backends
|
|
AC_MSG_CHECKING([which video backends the user wants])
|
|
AC_ARG_WITH([video],
|
|
[AS_HELP_STRING([--with-video],
|
|
[specify list of optional video backends])])
|
|
enable_video_fbdev="no"
|
|
enable_video_dumb="no"
|
|
enable_video_drm="no"
|
|
if test "x$with_video" = "x" ; then
|
|
enable_video_fbdev="yes (default)"
|
|
enable_video_dumb="yes (default)"
|
|
enable_video_drm="yes (default)"
|
|
with_video="fbdev,dumb,drm (default)"
|
|
else
|
|
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"
|
|
else
|
|
IFS="$SAVEIFS"
|
|
AC_ERROR([Invalid video backend $i])
|
|
fi
|
|
done
|
|
IFS="$SAVEIFS"
|
|
fi
|
|
AC_MSG_RESULT([$with_video])
|
|
|
|
# renderers
|
|
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_bbulk="no"
|
|
enable_renderer_gltex="no"
|
|
if test "x$with_renderers" = "x" ; then
|
|
enable_renderer_bbulk="yes (default)"
|
|
enable_renderer_gltex="yes (default)"
|
|
with_renderers="bbulk,gltex (default)"
|
|
else
|
|
SAVEIFS="$IFS"
|
|
IFS=","
|
|
for i in $with_renderers ; do
|
|
if test "x$i" = "xbbulk" ; then
|
|
enable_renderer_bbulk="yes"
|
|
elif test "x$i" = "xgltex" ; then
|
|
enable_renderer_gltex="yes"
|
|
else
|
|
IFS="$SAVEIFS"
|
|
AC_ERROR([Unknown renderer $i])
|
|
fi
|
|
done
|
|
IFS="$SAVEIFS"
|
|
fi
|
|
AC_MSG_RESULT([$with_renderers])
|
|
|
|
# font backends
|
|
AC_MSG_CHECKING([which font backends the user wants])
|
|
AC_ARG_WITH([fonts],
|
|
[AS_HELP_STRING([--with-fonts],
|
|
[specify list of optional font backends])])
|
|
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="no (default)"
|
|
enable_font_pango="yes (default)"
|
|
with_fonts="freetype2,pango (default)"
|
|
else
|
|
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
|
|
IFS="$SAVEIFS"
|
|
AC_ERROR([Unknown font backend $i])
|
|
fi
|
|
done
|
|
IFS="$SAVEIFS"
|
|
fi
|
|
AC_MSG_RESULT([$with_fonts])
|
|
|
|
# kmscon sessions
|
|
AC_MSG_CHECKING([which sessions the user wants])
|
|
AC_ARG_WITH([sessions],
|
|
[AS_HELP_STRING([--with-sessions],
|
|
[specify list of optional sessions])])
|
|
enable_session_dummy="no"
|
|
enable_session_terminal="no"
|
|
enable_session_cdev="no"
|
|
if test "x$with_sessions" = "x" ; then
|
|
enable_session_dummy="yes (default)"
|
|
enable_session_terminal="yes (default)"
|
|
enable_session_cdev="yes (default)"
|
|
with_sessions="dummy,terminal,cdev (default)"
|
|
else
|
|
SAVEIFS="$IFS"
|
|
IFS=","
|
|
for i in $with_sessions ; do
|
|
if test "x$i" = "xdummy" ; then
|
|
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])
|
|
fi
|
|
done
|
|
IFS="$SAVEIFS"
|
|
fi
|
|
AC_MSG_RESULT([$with_sessions])
|
|
|
|
#
|
|
# Check what can be built
|
|
# This checks each configuration option and tests whether all dependencies are
|
|
# met. This is done from bottom up to ensure the right order.
|
|
#
|
|
|
|
# debug
|
|
debug_avail=no
|
|
debug_missing=""
|
|
if test ! "x$enable_debug" = "xno" ; then
|
|
debug_avail=yes
|
|
else
|
|
debug_missing="enable-debug"
|
|
fi
|
|
|
|
# optimizations
|
|
optimizations_avail=no
|
|
optimizations_missing=""
|
|
if test ! "x$enable_optimizations" = "xno" ; then
|
|
optimizations_avail=yes
|
|
else
|
|
optimizations_missing="enable-optimizations"
|
|
fi
|
|
|
|
# eloop-dbus
|
|
eloop_dbus_avail=no
|
|
eloop_dbus_missing=""
|
|
if test ! "x$enable_eloop_dbus" = "xno" ; then
|
|
eloop_dbus_avail=yes
|
|
if test "x$have_dbus" = "xno" ; then
|
|
eloop_dbus_avail=no
|
|
eloop_dbus_missing="libdbus"
|
|
fi
|
|
|
|
if test "x$eloop_dbus_avail" = "xno" ; then
|
|
if test "x$enable_eloop_dbus" = "xyes" ; then
|
|
AC_ERROR([missing for eloop-dbus: $eloop_dbus_missing])
|
|
fi
|
|
fi
|
|
else
|
|
eloop_dbus_missing="enable-eloop-dbus"
|
|
fi
|
|
|
|
# eloop
|
|
eloop_avail=no
|
|
eloop_missing=""
|
|
if test ! "x$enable_eloop" = "xno" ; then
|
|
eloop_avail=yes
|
|
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=""
|
|
if test ! "x$enable_video_fbdev" = "xno" ; then
|
|
# TODO: check for kernel headers
|
|
video_fbdev_avail=yes
|
|
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"
|
|
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])
|
|
fi
|
|
fi
|
|
else
|
|
video_dumb_missing="enable-video-dumb"
|
|
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"
|
|
fi
|
|
if test "x$have_gbm" = "xno" ; then
|
|
video_drm_avail=no
|
|
video_drm_missing="libgbm,$video_drm_missing"
|
|
fi
|
|
if test "x$have_egl" = "xno" ; then
|
|
video_drm_avail=no
|
|
video_drm_missing="libegl,$video_drm_missing"
|
|
fi
|
|
if test "x$have_gles2" = "xno" ; then
|
|
video_drm_avail=no
|
|
video_drm_missing="libgles2,$video_drm_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])
|
|
fi
|
|
fi
|
|
else
|
|
video_drm_missing="enable-video-drm"
|
|
fi
|
|
|
|
# uterm
|
|
uterm_avail=no
|
|
uterm_missing=""
|
|
if test ! "x$enable_uterm" = "xno" ; then
|
|
uterm_avail=yes
|
|
else
|
|
uterm_missing="enable-uterm"
|
|
fi
|
|
|
|
# multi-seat
|
|
multi_seat_avail=no
|
|
multi_seat_missing=""
|
|
if test ! "x$enable_multi_seat" = "xno" ; then
|
|
multi_seat_avail=yes
|
|
if test "x$have_systemd" = "xno" ; then
|
|
multi_seat_avail=no
|
|
multi_seat_missing="libsystemd"
|
|
fi
|
|
|
|
if test "x$multi_seat_avail" = "xno" ; then
|
|
if test "x$enable_multi_seat" = "xyes" ; then
|
|
AC_ERROR([missing for multi-seat support: $multi_seat_missing])
|
|
fi
|
|
fi
|
|
else
|
|
multi_seat_missing="enable-multi-seat"
|
|
fi
|
|
|
|
# hotplug
|
|
hotplug_avail=no
|
|
hotplug_missing=""
|
|
if test ! "x$enable_hotplug" = "xno" ; then
|
|
hotplug_avail=yes
|
|
if test "x$have_udev" = "xno" ; then
|
|
hotplug_avail=no
|
|
hotplug_missing="libudev"
|
|
fi
|
|
|
|
if test "x$hotplug_avail" = "xno" ; then
|
|
if test "x$enable_hotplug" = "xyes" ; then
|
|
AC_ERROR([missing for hotplug-support: $hotplug_missing])
|
|
fi
|
|
fi
|
|
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 bbulk
|
|
renderer_bbulk_avail=no
|
|
renderer_bbulk_missing=""
|
|
if test ! "x$enable_renderer_bbulk" = "xno" ; then
|
|
renderer_bbulk_avail=yes
|
|
else
|
|
renderer_bbulk_missing="enable-renderer-bbulk"
|
|
fi
|
|
|
|
# renderer gltex
|
|
renderer_gltex_avail=no
|
|
renderer_gltex_missing=""
|
|
if test ! "x$enable_renderer_gltex" = "xno" ; then
|
|
renderer_gltex_avail=yes
|
|
if test "x$have_gles2" = "xno" ; then
|
|
renderer_gltex_avail=no
|
|
renderer_gltex_missing="libgles2"
|
|
fi
|
|
|
|
if test "x$renderer_gltex_avail" = "xno" ; then
|
|
if test "x$enable_renderer_gltex" = "xyes" ; then
|
|
AC_ERROR([missing for renderer-gltex: $renderer_gltex_missing])
|
|
fi
|
|
fi
|
|
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
|
|
else
|
|
font_unifont_missing="enable-font-unifont"
|
|
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"
|
|
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])
|
|
fi
|
|
fi
|
|
else
|
|
font_freetype2_missing="enable-font-freetype2"
|
|
fi
|
|
|
|
# font pango
|
|
font_pango_avail=no
|
|
font_pango_missing=""
|
|
if test ! "x$enable_font_pango" = "xno" ; then
|
|
font_pango_avail=yes
|
|
if test "x$have_pango" = "xno" ; then
|
|
font_pango_avail=no
|
|
font_pango_missing="libpango"
|
|
fi
|
|
|
|
if test "x$font_pango_avail" = "xno" ; then
|
|
if test "x$enable_font_pango" = "xyes" ; then
|
|
AC_ERROR([missing for font-pango: $font_pango_missing])
|
|
fi
|
|
fi
|
|
else
|
|
font_pango_missing="enable-font-pango"
|
|
fi
|
|
|
|
# session dummy
|
|
session_dummy_avail=no
|
|
session_dummy_missing=""
|
|
if test ! "x$enable_session_dummy" = "xno" ; then
|
|
session_dummy_avail=yes
|
|
else
|
|
session_dummy_missing="enable-session-dummy"
|
|
fi
|
|
|
|
# session terminal
|
|
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
|
|
session_terminal_avail=no
|
|
session_terminal_missing="$tsm_missing"
|
|
fi
|
|
|
|
if test "x$session_terminal_avail" = "xno" ; then
|
|
if test "x$enable_session_terminal" = "xyes" ; then
|
|
AC_ERROR([missing for session-terminal: $session_terminal_missing])
|
|
fi
|
|
fi
|
|
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=""
|
|
if test ! "x$enable_kmscon" = "xno" ; then
|
|
kmscon_avail=yes
|
|
if test "x$eloop_avail" = "xno" ; then
|
|
kmscon_avail=no
|
|
kmscon_missing="$eloop_missing,$kmscon_missing"
|
|
fi
|
|
|
|
if test "x$tsm_avail" = "xno" ; then
|
|
kmscon_avail=no
|
|
kmscon_missing="$tsm_missing,$kmscon_missing"
|
|
fi
|
|
|
|
if test "x$uterm_avail" = "xno" ; then
|
|
kmscon_avail=no
|
|
kmscon_missing="$uterm_missing,$kmscon_missing"
|
|
fi
|
|
|
|
if test "x$kmscon_avail" = "xno" ; then
|
|
if test "x$enable_kmscon" = "xyes" ; then
|
|
AC_ERROR([missing for kmscon: $kmscon_missing])
|
|
fi
|
|
fi
|
|
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
|
|
# above. We now only have to disable all modules that are disabled by default
|
|
# and the user didn't force-enable them and no other module that is enabled
|
|
# 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
|
|
if test "x${enable_kmscon% *}" = "xyes" ; then
|
|
kmscon_enabled=yes
|
|
enable_eloop=yes
|
|
enable_uterm=yes
|
|
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
|
|
|
|
# session dummy
|
|
session_dummy_enabled=no
|
|
if test "x$session_dummy_avail" = "xyes" ; then
|
|
if test "x${enable_session_dummy% *}" = "xyes" ; then
|
|
session_dummy_enabled=yes
|
|
fi
|
|
fi
|
|
|
|
# font pango
|
|
font_pango_enabled=no
|
|
if test "x$font_pango_avail" = "xyes" ; then
|
|
if test "x${enable_font_pango% *}" = "xyes" ; then
|
|
font_pango_enabled=yes
|
|
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
|
|
if test "x${enable_font_unifont% *}" = "xyes" ; then
|
|
font_unifont_enabled=yes
|
|
fi
|
|
fi
|
|
|
|
# renderer gltex
|
|
renderer_gltex_enabled=no
|
|
if test "x$renderer_gltex_avail" = "xyes" ; then
|
|
if test "x${enable_renderer_gltex% *}" = "xyes" ; then
|
|
renderer_gltex_enabled=yes
|
|
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
|
|
fi
|
|
fi
|
|
|
|
# pciaccess
|
|
pciaccess_enabled=no
|
|
if test "x$pciaccess_avail" = "xyes" ; then
|
|
if test "x${enable_pciaccess% *}" = "xyes" ; then
|
|
pciaccess_enabled=yes
|
|
fi
|
|
fi
|
|
|
|
# hotplug
|
|
hotplug_enabled=no
|
|
if test "x$hotplug_avail" = "xyes" ; then
|
|
if test "x${enable_hotplug% *}" = "xyes" ; then
|
|
hotplug_enabled=yes
|
|
fi
|
|
fi
|
|
|
|
# multi-seat
|
|
multi_seat_enabled=no
|
|
if test "x$multi_seat_avail" = "xyes" ; then
|
|
if test "x${enable_multi_seat% *}" = "xyes" ; then
|
|
multi_seat_enabled=yes
|
|
fi
|
|
fi
|
|
|
|
# uterm
|
|
uterm_enabled=no
|
|
if test "x$uterm_avail" = "xyes" ; then
|
|
if test "x${enable_uterm% *}" = "xyes" ; then
|
|
uterm_enabled=yes
|
|
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
|
|
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
|
|
fi
|
|
fi
|
|
|
|
# video fbdev
|
|
video_fbdev_enabled=no
|
|
if test "x$video_fbdev_avail" = "xyes" ; then
|
|
if test "x${enable_video_fbdev% *}" = "xyes" ; then
|
|
video_fbdev_enabled=yes
|
|
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
|
|
if test "x${enable_eloop% *}" = "xyes" ; then
|
|
eloop_enabled=yes
|
|
fi
|
|
fi
|
|
|
|
# eloop-dbus
|
|
eloop_dbus_enabled=no
|
|
if test "x$eloop_dbus_avail" = "xyes" ; then
|
|
if test "x${enable_eloop_dbus% *}" = "xyes" ; then
|
|
eloop_dbus_enabled=yes
|
|
fi
|
|
fi
|
|
|
|
# optimizations
|
|
optimizations_enabled=no
|
|
if test "x$optimizations_avail" = "xyes" ; then
|
|
if test "x${enable_optimizations% *}" = "xyes" ; then
|
|
optimizations_enabled=yes
|
|
fi
|
|
fi
|
|
|
|
# debug
|
|
debug_enabled=no
|
|
if test "x$debug_avail" = "xyes" ; then
|
|
if test "x${enable_debug% *}" = "xyes" ; then
|
|
debug_enabled=yes
|
|
fi
|
|
fi
|
|
|
|
#
|
|
# Module Configuration
|
|
# We have now done all dependency checking and default-value validation and we
|
|
# now know which modules are enabled via the *_enabled variables.
|
|
# Everything below is related to the configuration of each module and setting
|
|
# the correct flags for the build process.
|
|
#
|
|
|
|
# debug
|
|
if test "x$debug_enabled" = "xyes" ; then
|
|
AC_DEFINE([BUILD_ENABLE_DEBUG], [1], [Enable debug mode])
|
|
else
|
|
AC_DEFINE([NDEBUG], [1], [No Debug])
|
|
fi
|
|
|
|
AM_CONDITIONAL([BUILD_ENABLE_DEBUG],
|
|
[test "x$debug_enabled" = "xyes"])
|
|
|
|
# optimizations
|
|
AM_CONDITIONAL([BUILD_ENABLE_OPTIMIZATIONS],
|
|
[test "x$optimizations_enabled" = "xyes"])
|
|
|
|
# eloop-dbus
|
|
AM_CONDITIONAL([BUILD_ENABLE_ELOOP_DBUS],
|
|
[test "x$eloop_dbus_enabled" = "xyes"])
|
|
|
|
# eloop
|
|
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],
|
|
[Build uterm fbdev video backend])
|
|
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])
|
|
fi
|
|
|
|
AM_CONDITIONAL([BUILD_ENABLE_VIDEO_DUMB],
|
|
[test "x$video_dumb_enabled" = "xyes"])
|
|
|
|
# video drm
|
|
if test "x$video_drm_enabled" = "xyes" ; then
|
|
AC_DEFINE([BUILD_ENABLE_VIDEO_DRM], [1],
|
|
[Build uterm drm video backend])
|
|
fi
|
|
|
|
AM_CONDITIONAL([BUILD_ENABLE_VIDEO_DRM],
|
|
[test "x$video_drm_enabled" = "xyes"])
|
|
|
|
# uterm
|
|
AM_CONDITIONAL([BUILD_ENABLE_UTERM],
|
|
[test "x$uterm_enabled" = "xyes"])
|
|
|
|
# multi-seat
|
|
if test "x$multi_seat_enabled" = "xyes" ; then
|
|
AC_DEFINE([BUILD_ENABLE_MULTI_SEAT], [1],
|
|
[Use systemd for multi-seat support])
|
|
fi
|
|
|
|
AM_CONDITIONAL([BUILD_ENABLE_MULTI_SEAT],
|
|
[test "x$multi_seat_enabled" = "xyes"])
|
|
|
|
# hotplug
|
|
if test "x$hotplug_enabled" = "xyes" ; then
|
|
AC_DEFINE([BUILD_ENABLE_HOTPLUG], [1],
|
|
[Use udev for hotplug support])
|
|
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 bbulk
|
|
if test "x$renderer_bbulk_enabled" = "xyes" ; then
|
|
AC_DEFINE([BUILD_ENABLE_RENDERER_BBULK], [1],
|
|
[Build bbulk rendering backend])
|
|
fi
|
|
|
|
AM_CONDITIONAL([BUILD_ENABLE_RENDERER_BBULK],
|
|
[test "x$renderer_bbulk_enabled" = "xyes"])
|
|
|
|
# renderer gltex
|
|
if test "x$renderer_gltex_enabled" = "xyes" ; then
|
|
AC_DEFINE([BUILD_ENABLE_RENDERER_GLTEX], [1],
|
|
[Build gltex rendering backend])
|
|
fi
|
|
|
|
AM_CONDITIONAL([BUILD_ENABLE_RENDERER_GLTEX],
|
|
[test "x$renderer_gltex_enabled" = "xyes"])
|
|
|
|
# font unifont
|
|
if test "x$font_unifont_enabled" = "xyes" ; then
|
|
AC_DEFINE([BUILD_ENABLE_FONT_UNIFONT], [1],
|
|
[Build static unifont backend])
|
|
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],
|
|
[Build pango font backend])
|
|
fi
|
|
|
|
AM_CONDITIONAL([BUILD_ENABLE_FONT_PANGO],
|
|
[test "x$font_pango_enabled" = "xyes"])
|
|
|
|
# session dummy
|
|
if test "x$session_dummy_enabled" = "xyes" ; then
|
|
AC_DEFINE([BUILD_ENABLE_SESSION_DUMMY], [1],
|
|
[Build dummy session])
|
|
fi
|
|
|
|
AM_CONDITIONAL([BUILD_ENABLE_SESSION_DUMMY],
|
|
[test "x$session_dummy_enabled" = "xyes"])
|
|
|
|
# session terminal
|
|
if test "x$session_terminal_enabled" = "xyes" ; then
|
|
AC_DEFINE([BUILD_ENABLE_SESSION_TERMINAL], [1],
|
|
[Build terminal session])
|
|
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
|
|
# module infrastructure.
|
|
#
|
|
|
|
# check for _Static_assert
|
|
AC_MSG_CHECKING([whether _Static_assert() is supported])
|
|
AC_LANG([C])
|
|
have_static_assert=yes
|
|
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[_Static_assert(1, "What?");]])],
|
|
[AC_DEFINE([BUILD_HAVE_STATIC_ASSERT],
|
|
[1],
|
|
[Define to 1 if _Static_assert() is supported])],
|
|
[have_static_assert=no])
|
|
AC_MSG_RESULT([$have_static_assert])
|
|
|
|
# check for gbm_bo_get_pitch() function, otherwise gbm_bo_get_stride() is used
|
|
if test x$have_gbm = xyes ; then
|
|
save_CFLAGS="$CFLAGS"
|
|
save_LIBS="$LIBS"
|
|
save_LDFLAGS="$LDFLAGS"
|
|
CFLAGS="$DRM_CFLAGS $GBM_CFLAGS"
|
|
LIBS="$DRM_LIBS $GBM_LIBS"
|
|
LDFLAGS=""
|
|
AC_CHECK_LIB([gbm],
|
|
[gbm_bo_get_pitch],
|
|
[AC_DEFINE([BUILD_HAVE_GBM_BO_GET_PITCH],
|
|
[1],
|
|
[Define to 1 if your libgbm provides gbm_bo_get_pitch])])
|
|
CFLAGS="$save_CFLAGS"
|
|
LIBS="$save_LIBS"
|
|
LDFLAGS="$save_LDFLAGS"
|
|
fi
|
|
|
|
# check for xsltproc
|
|
AC_PATH_PROG(XSLTPROC, xsltproc)
|
|
AM_CONDITIONAL([BUILD_HAVE_XSLTPROC], [test "x$XSLTPROC" != "x"])
|
|
|
|
# check for offline man-pages stylesheet
|
|
AC_MSG_CHECKING([for docbook manpages stylesheet])
|
|
BUILD_MANPAGES_STYLESHEET="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl"
|
|
AC_PATH_PROGS_FEATURE_CHECK([XSLTPROC_TMP], [xsltproc],
|
|
AS_IF([`"$ac_path_XSLTPROC_TMP" --nonet "$BUILD_MANPAGES_STYLESHEET" > /dev/null 2>&1`],
|
|
[BUILD_HAVE_MANPAGES_STYLESHEET=yes]))
|
|
if test "x$BUILD_HAVE_MANPAGES_STYLESHEET" = "xyes"; then
|
|
AM_CONDITIONAL([BUILD_HAVE_MANPAGES_STYLESHEET], true)
|
|
AC_SUBST(BUILD_MANPAGES_STYLESHEET)
|
|
AC_MSG_RESULT([yes])
|
|
else
|
|
AM_CONDITIONAL([BUILD_HAVE_MANPAGES_STYLESHEET], false)
|
|
AC_MSG_RESULT([no])
|
|
fi
|
|
|
|
#
|
|
# Makefile vars
|
|
# After everything is configured, we correctly substitute the values for the
|
|
# makefiles.
|
|
#
|
|
|
|
AC_CONFIG_FILES([Makefile
|
|
docs/pc/libeloop.pc
|
|
docs/pc/libtsm.pc
|
|
docs/pc/libuterm.pc])
|
|
AC_OUTPUT
|
|
|
|
#
|
|
# Configuration output
|
|
# Show configuration to the user so they can check whether everything was
|
|
# configured as expected.
|
|
#
|
|
|
|
AC_MSG_NOTICE([Build configuration:
|
|
|
|
prefix: $prefix
|
|
exec-prefix: $exec_prefix
|
|
libdir: $libdir
|
|
includedir: $includedir
|
|
|
|
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:
|
|
debug: $debug_enabled ($debug_avail: $debug_missing)
|
|
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)
|
|
|
|
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:
|
|
bbulk: $renderer_bbulk_enabled ($renderer_bbulk_avail: $renderer_bbulk_missing)
|
|
gltex: $renderer_gltex_enabled ($renderer_gltex_avail: $renderer_gltex_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])
|