X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=configure.ac;h=01ae4fc87fd941a2081d8679fbeb505f81982667;hb=9f2f11d2a53a0ca91b763d04ca7003d35f83cbf3;hp=b7abdbfb2d87c2f8a5c8548effa0f2750d348df5;hpb=22e73357ff5dacb6ec594b95ffe2c426df74a6e8;p=platform%2Fupstream%2Fkmscon.git diff --git a/configure.ac b/configure.ac index b7abdbf..01ae4fc 100644 --- a/configure.ac +++ b/configure.ac @@ -5,29 +5,41 @@ AC_PREREQ(2.68) -AC_INIT([kmscon], [5]) -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]) +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 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 @@ -48,17 +60,12 @@ 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) AC_SUBST(SYSTEMD_LIBS) -PKG_CHECK_MODULES([UDEV], [libudev], +PKG_CHECK_MODULES([UDEV], [libudev >= 172], [have_udev=yes], [have_udev=no]) AC_SUBST(UDEV_CFLAGS) AC_SUBST(UDEV_LIBS) @@ -88,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([PIXMAN], [pixman-1], + [have_pixman=yes], [have_pixman=no]) +AC_SUBST(PIXMAN_CFLAGS) +AC_SUBST(PIXMAN_LIBS) -PKG_CHECK_MODULES([PCIACCESS], [pciaccess], - [have_pciaccess=yes], [have_pciaccess=no]) -AC_SUBST(PCIACCESS_CFLAGS) -AC_SUBST(PCIACCESS_LIBS) +PKG_CHECK_MODULES([TSM], [libtsm], + [have_tsm=yes], [have_tsm=no]) +AC_SUBST(TSM_CFLAGS) +AC_SUBST(TSM_LIBS) # # Parse arguments @@ -115,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]) @@ -150,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]) @@ -180,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]) @@ -190,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]) @@ -200,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]) @@ -229,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]) @@ -261,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]) @@ -293,27 +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])]) -enable_font_8x16="no" + [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_8x16="yes (default)" - 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="8x16,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" = "x8x16" ; then - enable_font_8x16="yes" - elif test "x$i" = "xunifont" ; then + 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 @@ -329,18 +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" -enable_session_compositor="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)" - enable_session_compositor="no (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 @@ -348,10 +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" - elif test "x$i" = "xcompositor" ; then - enable_session_compositor="yes" else IFS="$SAVEIFS" AC_ERROR([Unknown session type $i]) @@ -369,257 +387,306 @@ AC_MSG_RESULT([$with_sessions]) # 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 - if test "x$have_dbus" = "xyes" ; then - eloop_dbus_avail=yes - elif test "x$enable_eloop_dbus" = "xyes" ; then - AC_ERROR([DBus libraries not found for eloop-dbus]) + 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 -fi - -# TSM -tsm_avail=no -if test ! "x$enable_tsm" = "xno" ; then - if test "x$have_xkbcommon" = "xyes" ; then - tsm_avail=yes - elif test "x$enable_tsm" = "xyes" ; then - AC_ERROR([xkbcommon libraries not found for TSM]) - fi +else + eloop_missing="enable-eloop" 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 -if test ! "x$enable_video_dumb" = "xno" ; then - if test "x$have_drm" = "xyes" ; then - video_dumb_avail=yes - elif test "x$enable_video_dumb" = "xyes" ; then - AC_ERROR([DRM libraries not found for dumb video backend]) +# 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_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_drm2d_missing="enable-video-drm2d" fi -# video drm -video_drm_avail=no -if test ! "x$enable_video_drm" = "xno" ; then - if test "x$have_drm" = "xno" ; then - video_drm_avail=no - elif test "x$have_gbm" = "xno" ; then - video_drm_avail=no - elif test "x$have_egl" = "xno" ; then - video_drm_avail=no - elif test "x$have_gles2" = "xno" ; then - video_drm_avail=no - else - video_drm_avail=yes +# 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_drm3d_avail=no + video_drm3d_missing="libgbm,$video_drm3d_missing" + fi + if test "x$have_egl" = "xno" ; then + video_drm3d_avail=no + video_drm3d_missing="libegl,$video_drm3d_missing" + fi + if test "x$have_gles2" = "xno" ; then + 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([DRM, gbm or EGL libraries not found for DRM video backend]) + 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_drm3d_missing="enable-video-drm3d" 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 - if test "x$have_systemd" = "xyes" ; then - multi_seat_avail=yes - elif test "x$enable_multi_seat" = "xyes" ; then - AC_ERROR([systemd libraries not found for multi-seat support]) + 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 - if test "x$have_udev" = "xyes" ; then - hotplug_avail=yes - elif test "x$enable_hotplug" = "xyes" ; then - AC_ERROR([udev libraries not found for hotplug support]) + hotplug_avail=yes + if test "x$have_udev" = "xno" ; then + hotplug_avail=no + hotplug_missing="libudev" fi -fi -# pciaccess -pciaccess_avail=no -if test ! "x$enable_pciaccess" = "xno" ; then - if test "x$have_pciaccess" = "xyes" ; then - pciaccess_avail=yes - elif test "x$enable_pciaccess" = "xyes" ; then - AC_ERROR([pciaccess libraries not found for pciaccess device detection]) + if test "x$hotplug_avail" = "xno" ; then + if test "x$enable_hotplug" = "xyes" ; then + AC_ERROR([missing for hotplug-support: $hotplug_missing]) + fi fi -fi - -# renderer bblit -renderer_bblit_avail=no -if test ! "x$enable_renderer_bblit" = "xno" ; then - renderer_bblit_avail=yes +else + hotplug_missing="enable-hotplug" 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 - if test "x$have_gles2" = "xyes" ; then - renderer_gltex_avail=yes - elif test "x$enable_renderer_gltex" = "xyes" ; then - AC_ERROR([OpenGLESv2 libraries not found for gltex renderer]) + 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 8x16 -font_8x16_avail=no -if test ! "x$enable_font_8x16" = "xno" ; then - font_8x16_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 + renderer_cairo_missing="enable-renderer-cairo" +fi + +# 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$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 + 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 -fi - -# font freetype2 -font_freetype2_avail=no -if test ! "x$enable_font_freetype2" = "xno" ; then - if test "x$have_freetype2" ; then - font_freetype2_avail=yes - elif test "x$enable_font_freetype2" = "xyes" ; then - AC_ERROR([freetype2 or fontconfig libs not found for freetype2 font backend]) - fi +else + font_unifont_missing="enable-font-unifont" fi # font pango font_pango_avail=no +font_pango_missing="" if test ! "x$enable_font_pango" = "xno" ; then - if test "x$have_pango" ; then - font_pango_avail=yes - elif test "x$enable_font_pango" = "xyes" ; then - AC_ERROR([pango libraries not found for pango font backend]) + 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 - if test "x$tsm_avail" = "xyes" ; then - session_terminal_avail=yes - elif test "x$enable_session_terminal" = "xyes" ; then - AC_ERROR([TSM cannot be built for kmscon terminal session]) + session_terminal_avail=yes + if test "x$have_tsm" = "xno" ; then + session_terminal_avail=no + session_terminal_missing="libtsm" fi -fi -# session cdev -session_cdev_avail=no -if test ! "x$enable_session_cdev" = "xno" ; then - if test "x$have_fuse" = "xno" ; then - session_cdev_avail=no - elif test "x$tsm_avail" = "xno" ; then - session_cdev_avail=no - else - session_cdev_avail=yes - fi - - if "x$session_cdev_avail" = "xno" ; then - if test "x$enable_session_cdev" = "xyes" ; then - AC_ERROR([TSM or FUSE libraries not built/found for kmscon cdev session]) + 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 -fi - -# session compositor -session_compositor_avail=no -if test ! "x$enable_session_compositor" = "xno" ; then - if test "x$have_wayland" = "xyes" ; then - session_compositor_avail=yes - elif test "x$enable_session_compositor" = "xyes" ; then - AC_ERROR([wayland libraries not found for kmscon compositor session]) - fi +else + session_terminal_missing="enable-session-terminal" 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 - elif test "x$tsm_avail" = "xno" ; then - kmscon_avail=no - elif test "x$uterm_avail" = "xno" ; then - kmscon_avail=no - else - kmscon_avail=yes + kmscon_missing="$eloop_missing,$kmscon_missing" fi - if test "x$enable_kmscon" = "xyes" ; then - if test "x$kmscon_avail" = "xno" ; then - AC_ERROR([eloop, TSM or uterm cannot be built for kmscon]) - fi + if test "x$have_tsm" = "xno" ; then + kmscon_avail=no + kmscon_missing="libtsm,$kmscon_missing" fi -fi -# wlterm -wlterm_avail=no -if test ! "x$enable_wlterm" = "xno" ; then - if test "x$tsm_avail" = "xno" ; then - wlterm_avail=no - elif test "x$eloop_avail" = "xno" ; then - wlterm_avail=no - else - wlterm_avail=yes + if test "x$uterm_avail" = "xno" ; then + kmscon_avail=no + kmscon_missing="$uterm_missing,$kmscon_missing" fi - if test "x$enable_wlterm" = "xyes" ; then - if test "x$wlterm_avail" = "xno" ; then - AC_ERROR([eloop or TSM cannot be built for wlterm]) + if test "x$kmscon_avail" = "xno" ; then + if test "x$enable_kmscon" = "xyes" ; then + AC_ERROR([missing for kmscon: $kmscon_missing]) fi fi - - if test "x$have_wayland" = "xyes" ; then - wlterm_avail=yes - elif test "x$enable_wlterm" = "xyes" ; then - AC_ERROR([wayland libraries not found for wlterm]) - fi +else + kmscon_missing="enable-kmscon" fi # @@ -630,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 @@ -650,28 +707,11 @@ if test "x$kmscon_avail" = "xyes" ; then fi fi -# session compositor -session_compositor_enabled=no -if test "x$session_compositor_avail" = "xyes" ; then - if test "x${enable_session_compositor% *}" = "xyes" ; then - session_compositor_enabled=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 @@ -691,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 @@ -707,14 +739,6 @@ if test "x$font_unifont_avail" = "xyes" ; then fi fi -# font 8x16 -font_8x16_enabled=no -if test "x$font_8x16_avail" = "xyes" ; then - if test "x${enable_font_8x16% *}" = "xyes" ; then - font_8x16_enabled=yes - fi -fi - # renderer gltex renderer_gltex_enabled=no if test "x$renderer_gltex_avail" = "xyes" ; then @@ -723,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 @@ -771,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 @@ -795,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 @@ -865,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], @@ -878,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], @@ -918,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], @@ -954,14 +948,23 @@ fi AM_CONDITIONAL([BUILD_ENABLE_RENDERER_GLTEX], [test "x$renderer_gltex_enabled" = "xyes"]) -# font 8x16 -if test "x$font_8x16_enabled" = "xyes" ; then - AC_DEFINE([BUILD_ENABLE_FONT_8X16], [1], - [Build static 8x16 font backend]) +# 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_FONT_8X16], - [test "x$font_8x16_enabled" = "xyes"]) +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 @@ -972,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], @@ -1008,36 +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"]) - -# session compositor -if test "x$session_compositor_enabled" = "xyes" ; then - AC_DEFINE([BUILD_ENABLE_SESSION_COMPOSITOR], [1], - [Build compositor session]) -fi - -AM_CONDITIONAL([BUILD_ENABLE_SESSION_COMPOSITOR], - [test "x$session_compositor_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. # @@ -1070,6 +1042,25 @@ if test x$have_gbm = xyes ; then 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 @@ -1077,9 +1068,8 @@ fi # AC_CONFIG_FILES([Makefile - src/libeloop.pc - src/libtsm.pc - src/libuterm.pc]) + docs/pc/libeloop.pc + docs/pc/libuterm.pc]) AC_OUTPUT # @@ -1090,41 +1080,40 @@ AC_OUTPUT AC_MSG_NOTICE([Build configuration: + prefix: $prefix + exec-prefix: $exec_prefix + libdir: $libdir + includedir: $includedir + Applications and Libraries: - kmscon: $kmscon_enabled ($kmscon_avail) - wlterm: $wlterm_enabled ($wlterm_avail) - uterm: $uterm_enabled ($uterm_avail) - tsm: $tsm_enabled ($tsm_avail) - eloop: $eloop_enabled ($eloop_avail) + kmscon: $kmscon_enabled ($kmscon_avail: $kmscon_missing) + uterm: $uterm_enabled ($uterm_avail: $uterm_missing) + eloop: $eloop_enabled ($eloop_avail: $eloop_missing) Miscellaneous Options: - debug: $debug_enabled ($debug_avail) - optimizations: $optimizations_enabled ($optimizations_avail) - multi-seat: $multi_seat_enabled ($multi_seat_avail) - hotplug: $hotplug_enabled ($hotplug_avail) - pciaccess: $pciaccess_enabled ($pciaccess_avail) - eloop-dbus: $eloop_dbus_enabled ($eloop_dbus_avail) + 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) + eloop-dbus: $eloop_dbus_enabled ($eloop_dbus_avail: $eloop_dbus_missing) Video Backends: - fbdev: $video_fbdev_enabled ($video_fbdev_avail) - dumb drm: $video_dumb_enabled ($video_dumb_avail) - drm: $video_drm_enabled ($video_drm_avail) + fbdev: $video_fbdev_enabled ($video_fbdev_avail: $video_fbdev_missing) + drm2d: $video_drm2d_enabled ($video_drm2d_avail: $video_drm2d_missing) + drm3d: $video_drm3d_enabled ($video_drm3d_avail: $video_drm3d_missing) Font Backends: - 8x16: $font_8x16_enabled ($font_8x16_avail) - unifont: $font_unifont_enabled ($font_unifont_avail) - freetype2: $font_freetype2_enabled ($font_freetype2_avail) - pango: $font_pango_enabled ($font_pango_avail) + unifont: $font_unifont_enabled ($font_unifont_avail: $font_unifont_missing) + pango: $font_pango_enabled ($font_pango_avail: $font_pango_missing) Renderers: - bblit: $renderer_bblit_enabled ($renderer_bblit_avail) - bbulk: $renderer_bbulk_enabled ($renderer_bbulk_avail) - gltex: $renderer_gltex_enabled ($renderer_gltex_avail) + 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) - terminal: $session_terminal_enabled ($session_terminal_avail) - cdev: $session_cdev_enabled ($session_cdev_avail) - compositor: $session_compositor_enabled ($session_compositor_avail) + dummy: $session_dummy_enabled ($session_dummy_avail: $session_dummy_missing) + terminal: $session_terminal_enabled ($session_terminal_avail: $session_terminal_missing) - Run "make" to start compilation process]) + Run "${MAKE-make}" to start compilation process])