2009-05-22 09:55:46 -06:00
|
|
|
# -*- Autoconf -*-
|
|
|
|
# Process this file with autoconf to produce a configure script.
|
|
|
|
|
2012-11-22 13:31:32 -07:00
|
|
|
# Initialize Autoconf
|
2014-04-14 13:02:17 -06:00
|
|
|
AC_PREREQ([2.60])
|
2009-05-22 09:55:46 -06:00
|
|
|
AC_INIT([libxcb],
|
2014-04-14 13:02:17 -06:00
|
|
|
1.10,
|
2009-05-22 09:55:46 -06:00
|
|
|
[xcb@lists.freedesktop.org])
|
2014-04-14 13:02:17 -06:00
|
|
|
AC_CONFIG_AUX_DIR([build-aux])
|
|
|
|
AC_CONFIG_MACRO_DIR([m4])
|
2009-05-22 09:55:46 -06:00
|
|
|
AC_CONFIG_SRCDIR([xcb.pc.in])
|
2012-11-22 13:31:32 -07:00
|
|
|
|
|
|
|
# Initialize Automake
|
2009-05-22 09:55:46 -06:00
|
|
|
AM_INIT_AUTOMAKE([foreign dist-bzip2])
|
2012-03-27 13:14:20 -06:00
|
|
|
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
|
2009-05-22 09:55:46 -06:00
|
|
|
|
2014-04-14 13:02:17 -06:00
|
|
|
# Set common system defines for POSIX extensions, such as _GNU_SOURCE
|
|
|
|
# Must be called before any macros that run the compiler (like AC_PROG_LIBTOOL)
|
|
|
|
# to avoid autoconf errors.
|
|
|
|
AC_USE_SYSTEM_EXTENSIONS
|
|
|
|
|
2012-03-27 13:14:20 -06:00
|
|
|
AM_PATH_PYTHON([2.6])
|
2009-05-22 09:55:46 -06:00
|
|
|
|
|
|
|
PKG_CHECK_MODULES(CHECK, [check >= 0.9.4], [HAVE_CHECK=yes], [HAVE_CHECK=no])
|
|
|
|
AM_CONDITIONAL(HAVE_CHECK, test x$HAVE_CHECK = xyes)
|
|
|
|
|
|
|
|
AC_CONFIG_HEADERS([src/config.h])
|
|
|
|
|
2012-03-27 13:14:20 -06:00
|
|
|
AC_LIBTOOL_WIN32_DLL
|
2009-05-22 09:55:46 -06:00
|
|
|
AC_PROG_LIBTOOL
|
|
|
|
AC_PROG_CC
|
|
|
|
|
2014-04-14 13:02:17 -06:00
|
|
|
XSLTPROC=no
|
|
|
|
HTML_CHECK_RESULT=no
|
2009-05-22 09:55:46 -06:00
|
|
|
if test x"$HAVE_CHECK" = xyes; then
|
2014-04-14 13:02:17 -06:00
|
|
|
AC_PATH_PROG(XSLTPROC, xsltproc, no)
|
2009-05-22 09:55:46 -06:00
|
|
|
if test x"$XSLTPROC" != xno; then
|
2014-04-14 13:02:17 -06:00
|
|
|
HTML_CHECK_RESULT=yes
|
2009-05-22 09:55:46 -06:00
|
|
|
fi
|
|
|
|
fi
|
|
|
|
AC_SUBST(HTML_CHECK_RESULT)
|
|
|
|
|
|
|
|
# Checks for pkg-config packages
|
2014-04-14 13:02:17 -06:00
|
|
|
PKG_CHECK_MODULES(XCBPROTO, xcb-proto >= 1.10)
|
2009-05-22 09:55:46 -06:00
|
|
|
NEEDED="pthread-stubs xau >= 0.99.2"
|
|
|
|
PKG_CHECK_MODULES(NEEDED, $NEEDED)
|
|
|
|
|
|
|
|
have_xdmcp="no"
|
|
|
|
PKG_CHECK_MODULES(XDMCP, xdmcp,
|
|
|
|
AC_CHECK_LIB(Xdmcp, XdmcpWrap,
|
|
|
|
[
|
|
|
|
AC_DEFINE(HASXDMAUTH,1,[Has Wraphelp.c needed for XDM AUTH protocols])
|
|
|
|
NEEDED="$NEEDED xdmcp"
|
|
|
|
have_xdmcp="yes"
|
|
|
|
],
|
|
|
|
[
|
|
|
|
XDMCP_CFLAGS=
|
|
|
|
XDMCP_LIBS=
|
|
|
|
], [$XDMCP_LIBS]),
|
|
|
|
[AC_MSG_RESULT(no)])
|
|
|
|
|
|
|
|
AC_SUBST(NEEDED)
|
|
|
|
|
|
|
|
# Find the xcb-proto protocol descriptions
|
|
|
|
AC_MSG_CHECKING(XCBPROTO_XCBINCLUDEDIR)
|
|
|
|
XCBPROTO_XCBINCLUDEDIR=`$PKG_CONFIG --variable=xcbincludedir xcb-proto`
|
|
|
|
AC_MSG_RESULT($XCBPROTO_XCBINCLUDEDIR)
|
|
|
|
AC_SUBST(XCBPROTO_XCBINCLUDEDIR)
|
|
|
|
|
2009-05-31 10:44:43 -06:00
|
|
|
# Find the xcb-proto version
|
|
|
|
XCBPROTO_VERSION=`$PKG_CONFIG --modversion xcb-proto`
|
|
|
|
AC_SUBST(XCBPROTO_VERSION)
|
|
|
|
|
2009-05-22 09:55:46 -06:00
|
|
|
# Find the xcbgen Python package
|
|
|
|
AC_MSG_CHECKING(XCBPROTO_XCBPYTHONDIR)
|
|
|
|
XCBPROTO_XCBPYTHONDIR=`$PKG_CONFIG --variable=pythondir xcb-proto`
|
|
|
|
AC_MSG_RESULT($XCBPROTO_XCBPYTHONDIR)
|
|
|
|
AC_SUBST(XCBPROTO_XCBPYTHONDIR)
|
|
|
|
|
|
|
|
AC_HEADER_STDC
|
|
|
|
AC_SEARCH_LIBS(getaddrinfo, socket)
|
|
|
|
AC_SEARCH_LIBS(connect, socket)
|
|
|
|
|
2014-04-14 13:02:17 -06:00
|
|
|
AC_ARG_ENABLE(sendfds, AS_HELP_STRING([--disable-sendfds], [Support FD passing (default: auto)]),
|
|
|
|
[sendfds=$enableval], [sendfds=auto])
|
|
|
|
|
|
|
|
case x$sendfds in
|
|
|
|
xauto)
|
|
|
|
AC_SEARCH_LIBS(sendmsg, socket, [sendfds="yes"], [sendfds="no"])
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
# XPG4v2/UNIX95 added msg_control - check to see if we need to define
|
|
|
|
# _XOPEN_SOURCE to get it (such as on Solaris)
|
|
|
|
AC_CHECK_MEMBER([struct msghdr.msg_control], [], [],
|
|
|
|
[
|
|
|
|
AC_INCLUDES_DEFAULT
|
|
|
|
#include <sys/socket.h>
|
|
|
|
])
|
|
|
|
# First try for Solaris in C99 compliant mode, which requires XPG6/UNIX03
|
|
|
|
if test "x$ac_cv_member_struct_msghdr_msg_control" = xno; then
|
|
|
|
unset ac_cv_member_struct_msghdr_msg_control
|
|
|
|
AC_MSG_NOTICE([trying again with _XOPEN_SOURCE=600])
|
|
|
|
AC_CHECK_MEMBER([struct msghdr.msg_control],
|
|
|
|
[AC_DEFINE([_XOPEN_SOURCE], [600],
|
|
|
|
[Defined if needed to expose struct msghdr.msg_control])
|
|
|
|
], [], [
|
|
|
|
#define _XOPEN_SOURCE 600
|
|
|
|
AC_INCLUDES_DEFAULT
|
|
|
|
#include <sys/socket.h>
|
|
|
|
])
|
|
|
|
fi
|
|
|
|
# If that didn't work, fall back to XPG5/UNIX98 with C89
|
|
|
|
if test "x$ac_cv_member_struct_msghdr_msg_control" = xno; then
|
|
|
|
unset ac_cv_member_struct_msghdr_msg_control
|
|
|
|
AC_MSG_NOTICE([trying again with _XOPEN_SOURCE=500])
|
|
|
|
AC_CHECK_MEMBER([struct msghdr.msg_control],
|
|
|
|
[AC_DEFINE([_XOPEN_SOURCE], [500],
|
|
|
|
[Defined if needed to expose struct msghdr.msg_control])
|
|
|
|
], [sendfds="no"], [
|
|
|
|
#define _XOPEN_SOURCE 500
|
|
|
|
AC_INCLUDES_DEFAULT
|
|
|
|
#include <sys/socket.h>
|
|
|
|
])
|
|
|
|
fi
|
|
|
|
|
|
|
|
case x$sendfds in
|
|
|
|
xyes)
|
|
|
|
AC_DEFINE([HAVE_SENDMSG],1,[Define if your platform supports sendmsg])
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
|
2012-03-27 13:14:20 -06:00
|
|
|
have_win32="no"
|
|
|
|
lt_enable_auto_import=""
|
2009-05-22 09:55:46 -06:00
|
|
|
case $host_os in
|
2012-03-27 13:14:20 -06:00
|
|
|
mingw*)
|
|
|
|
have_win32="yes"
|
|
|
|
lt_enable_auto_import="-Wl,--enable-auto-import"
|
|
|
|
;;
|
2009-05-22 09:55:46 -06:00
|
|
|
linux*)
|
|
|
|
AC_DEFINE([HAVE_ABSTRACT_SOCKETS], 1, [Define if your platform supports abstract sockets])
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
|
2012-03-27 13:14:20 -06:00
|
|
|
AC_SUBST(lt_enable_auto_import)
|
|
|
|
AM_CONDITIONAL([XCB_HAVE_WIN32], [test "x${have_win32}" = "xyes"])
|
|
|
|
|
2009-05-22 09:55:46 -06:00
|
|
|
dnl define buffer queue size
|
|
|
|
AC_ARG_WITH([queue-size],
|
|
|
|
AC_HELP_STRING([--with-queue-size=SIZE],
|
|
|
|
[Set the XCB buffer queue size (default is 16384)]),
|
|
|
|
[xcb_queue_buffer_size="$withval"],
|
|
|
|
[xcb_queue_buffer_size=16384])
|
|
|
|
AC_DEFINE_UNQUOTED(XCB_QUEUE_BUFFER_SIZE, [$xcb_queue_buffer_size],
|
|
|
|
[XCB buffer queue size])
|
|
|
|
|
|
|
|
dnl check for the sockaddr_un.sun_len member
|
|
|
|
AC_CHECK_MEMBER([struct sockaddr_un.sun_len],
|
|
|
|
[AC_DEFINE(HAVE_SOCKADDR_SUN_LEN,1,[Have the sockaddr_un.sun_len member.])],
|
|
|
|
[],
|
|
|
|
[ #include <sys/types.h>
|
|
|
|
#include <sys/un.h>
|
|
|
|
])
|
|
|
|
|
2012-03-27 13:14:20 -06:00
|
|
|
dnl check for support for Solaris Trusted Extensions
|
|
|
|
AC_CHECK_HEADERS([tsol/label.h])
|
|
|
|
AC_CHECK_FUNCS([is_system_labeled])
|
|
|
|
|
2012-11-22 13:31:32 -07:00
|
|
|
dnl check for IOV_MAX, and fall back to UIO_MAXIOV on BSDish systems
|
|
|
|
AC_CHECK_DECL([IOV_MAX], [],
|
|
|
|
[AC_CHECK_DECL([UIO_MAXIOV], [AC_DEFINE([IOV_MAX], [UIO_MAXIOV])],
|
|
|
|
[AC_DEFINE([IOV_MAX], [16], [Define if not provided by <limits.h>])],
|
|
|
|
[[#include <sys/uio.h>]])],
|
|
|
|
[[#include <limits.h>]])
|
|
|
|
|
2009-05-22 09:55:46 -06:00
|
|
|
xcbincludedir='${includedir}/xcb'
|
|
|
|
AC_SUBST(xcbincludedir)
|
|
|
|
|
|
|
|
if test "x$GCC" = xyes ; then
|
2014-04-14 13:02:17 -06:00
|
|
|
CWARNFLAGS="-Wall -Wpointer-arith -Wold-style-definition \
|
2009-05-22 09:55:46 -06:00
|
|
|
-Wstrict-prototypes -Wmissing-declarations -Wnested-externs"
|
|
|
|
else
|
|
|
|
AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
|
|
|
|
if test "x$SUNCC" = "xyes"; then
|
2014-04-14 13:02:17 -06:00
|
|
|
CWARNFLAGS="-v -fd"
|
2009-05-22 09:55:46 -06:00
|
|
|
fi
|
|
|
|
fi
|
|
|
|
AC_SUBST(CWARNFLAGS)
|
|
|
|
|
|
|
|
XCB_CHECK_VISIBILITY()
|
|
|
|
|
|
|
|
XCB_CHECK_DOXYGEN()
|
|
|
|
|
2012-03-27 13:14:20 -06:00
|
|
|
AC_CHECK_FUNC(getaddrinfo, [AC_DEFINE(HAVE_GETADDRINFO, 1, [getaddrinfo() function is available])], )
|
|
|
|
|
2009-05-31 10:44:43 -06:00
|
|
|
case $host_os in
|
2012-03-27 13:14:20 -06:00
|
|
|
# darwin through Snow Leopard has poll() but can't be used to poll character devices.
|
|
|
|
darwin@<:@789@:>@*|darwin10*) ;;
|
|
|
|
darwin*)
|
|
|
|
_ac_xorg_macosx_version_min=""
|
|
|
|
if echo $CPPFLAGS $CFLAGS | grep -q mmacosx-version-min ; then
|
|
|
|
_ac_xorg_macosx_version_min=`echo $CPPFLAGS $CFLAGS | sed 's/^.*-mmacosx-version-min=\(@<:@^ @:>@*\).*$/\1/'`
|
|
|
|
else
|
|
|
|
_ac_xorg_macosx_version_min=$MACOSX_DEPLOYMENT_TARGET
|
|
|
|
fi
|
|
|
|
case $_ac_xorg_macosx_version_min in
|
|
|
|
10.@<:@0123456@:>@|10.@<:@0123456@:>@.*) ;;
|
|
|
|
*)
|
|
|
|
AC_CHECK_FUNC(poll, [AC_DEFINE(USE_POLL, 1, [poll() function is available])], )
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
unset _ac_xorg_macosx_version_min
|
|
|
|
;;
|
2009-05-31 10:44:43 -06:00
|
|
|
*)
|
|
|
|
AC_CHECK_FUNC(poll, [AC_DEFINE(USE_POLL, 1, [poll() function is available])], )
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
|
2009-05-22 09:55:46 -06:00
|
|
|
XCB_EXTENSION(Composite, "yes")
|
|
|
|
XCB_EXTENSION(Damage, "yes")
|
|
|
|
XCB_EXTENSION(DPMS, "yes")
|
2010-04-18 14:06:18 -06:00
|
|
|
XCB_EXTENSION(DRI2, "yes")
|
2014-04-14 13:02:17 -06:00
|
|
|
XCB_EXTENSION(DRI3, "$sendfds")
|
2009-05-22 09:55:46 -06:00
|
|
|
XCB_EXTENSION(GLX, "yes")
|
2014-04-14 13:02:17 -06:00
|
|
|
XCB_EXTENSION(Present, "yes")
|
2009-05-22 09:55:46 -06:00
|
|
|
XCB_EXTENSION(RandR, "yes")
|
|
|
|
XCB_EXTENSION(Record, "yes")
|
|
|
|
XCB_EXTENSION(Render, "yes")
|
|
|
|
XCB_EXTENSION(Resource, "yes")
|
|
|
|
XCB_EXTENSION(Screensaver, "yes")
|
|
|
|
XCB_EXTENSION(Shape, "yes")
|
|
|
|
XCB_EXTENSION(Shm, "yes")
|
|
|
|
XCB_EXTENSION(Sync, "yes")
|
|
|
|
XCB_EXTENSION(Xevie, "yes")
|
|
|
|
XCB_EXTENSION(XFixes, "yes")
|
|
|
|
XCB_EXTENSION(XFree86-DRI, "yes")
|
|
|
|
XCB_EXTENSION(Xinerama, "yes")
|
|
|
|
XCB_EXTENSION(XInput, "no")
|
2014-04-14 13:02:17 -06:00
|
|
|
XCB_EXTENSION(XKB, "yes")
|
2009-05-22 09:55:46 -06:00
|
|
|
XCB_EXTENSION(Xprint, "yes")
|
|
|
|
XCB_EXTENSION(SELinux, "no")
|
|
|
|
XCB_EXTENSION(XTest, "yes")
|
|
|
|
XCB_EXTENSION(Xv, "yes")
|
|
|
|
XCB_EXTENSION(XvMC, "yes")
|
|
|
|
|
|
|
|
AC_ARG_WITH(launchd, AS_HELP_STRING([--with-launchd], [Build with support for Apple's launchd (default: auto)]), [LAUNCHD=$withval], [LAUNCHD=auto])
|
|
|
|
if test "x$LAUNCHD" = xauto; then
|
|
|
|
unset LAUNCHD
|
2010-09-04 04:00:58 -06:00
|
|
|
AC_CHECK_PROG(LAUNCHD, [launchd], [yes], [no], [$PATH$PATH_SEPARATOR/sbin])
|
2009-05-22 09:55:46 -06:00
|
|
|
fi
|
|
|
|
|
|
|
|
if test "x$LAUNCHD" = xyes ; then
|
|
|
|
AC_DEFINE(HAVE_LAUNCHD, 1, [launchd support available])
|
|
|
|
fi
|
|
|
|
|
|
|
|
AC_CONFIG_FILES([
|
|
|
|
Makefile
|
|
|
|
doc/Makefile
|
|
|
|
src/Makefile
|
|
|
|
tests/Makefile
|
|
|
|
])
|
|
|
|
|
|
|
|
AC_CONFIG_FILES([
|
|
|
|
xcb.pc
|
|
|
|
xcb-composite.pc
|
|
|
|
xcb-damage.pc
|
|
|
|
xcb-dpms.pc
|
2010-04-18 14:06:18 -06:00
|
|
|
xcb-dri2.pc
|
2014-04-14 13:02:17 -06:00
|
|
|
xcb-dri3.pc
|
2009-05-22 09:55:46 -06:00
|
|
|
xcb-glx.pc
|
2014-04-14 13:02:17 -06:00
|
|
|
xcb-present.pc
|
2009-05-22 09:55:46 -06:00
|
|
|
xcb-randr.pc
|
|
|
|
xcb-record.pc
|
|
|
|
xcb-render.pc
|
|
|
|
xcb-res.pc
|
|
|
|
xcb-screensaver.pc
|
|
|
|
xcb-shape.pc
|
|
|
|
xcb-shm.pc
|
|
|
|
xcb-sync.pc
|
|
|
|
xcb-xevie.pc
|
|
|
|
xcb-xf86dri.pc
|
|
|
|
xcb-xfixes.pc
|
|
|
|
xcb-xinerama.pc
|
|
|
|
xcb-xinput.pc
|
2012-03-27 13:14:20 -06:00
|
|
|
xcb-xkb.pc
|
2009-05-22 09:55:46 -06:00
|
|
|
xcb-xprint.pc
|
|
|
|
xcb-xselinux.pc
|
|
|
|
xcb-xtest.pc
|
|
|
|
xcb-xv.pc
|
|
|
|
xcb-xvmc.pc
|
|
|
|
])
|
|
|
|
|
|
|
|
AC_CONFIG_FILES([
|
|
|
|
doc/xcb.doxygen
|
|
|
|
])
|
|
|
|
|
|
|
|
AC_OUTPUT
|
|
|
|
|
|
|
|
dnl Configuration output
|
|
|
|
|
|
|
|
echo ""
|
|
|
|
echo " Package: ${PACKAGE_NAME} ${PACKAGE_VERSION}"
|
|
|
|
echo ""
|
|
|
|
echo " Configuration"
|
|
|
|
echo " XDM support.........: ${have_xdmcp}"
|
2014-04-14 13:02:17 -06:00
|
|
|
echo " sendmsg fd passing..: ${sendfds}"
|
2009-05-22 09:55:46 -06:00
|
|
|
echo " Build unit tests....: ${HAVE_CHECK}"
|
2014-04-14 13:02:17 -06:00
|
|
|
echo " with html results.: ${HTML_CHECK_RESULT}"
|
2009-05-22 09:55:46 -06:00
|
|
|
echo " XCB buffer size.....: ${xcb_queue_buffer_size}"
|
|
|
|
echo ""
|
2010-09-04 04:00:58 -06:00
|
|
|
echo " X11 extensions"
|
|
|
|
echo " Composite...........: ${BUILD_COMPOSITE}"
|
|
|
|
echo " Damage..............: ${BUILD_DAMAGE}"
|
|
|
|
echo " Dpms................: ${BUILD_DPMS}"
|
|
|
|
echo " Dri2................: ${BUILD_DRI2}"
|
2014-04-14 13:02:17 -06:00
|
|
|
echo " Dri3................: ${BUILD_DRI3}"
|
2010-09-04 04:00:58 -06:00
|
|
|
echo " Glx.................: ${BUILD_GLX}"
|
|
|
|
echo " Randr...............: ${BUILD_RANDR}"
|
|
|
|
echo " Record..............: ${BUILD_RECORD}"
|
|
|
|
echo " Render..............: ${BUILD_RENDER}"
|
|
|
|
echo " Resource............: ${BUILD_RESOURCE}"
|
|
|
|
echo " Screensaver.........: ${BUILD_SCREENSAVER}"
|
|
|
|
echo " selinux.............: ${BUILD_SELINUX}"
|
|
|
|
echo " Shape...............: ${BUILD_SHAPE}"
|
|
|
|
echo " Shm.................: ${BUILD_SHM}"
|
|
|
|
echo " Sync................: ${BUILD_SYNC}"
|
|
|
|
echo " Xevie...............: ${BUILD_XEVIE}"
|
|
|
|
echo " Xfixes..............: ${BUILD_XFIXES}"
|
|
|
|
echo " Xfree86-dri.........: ${BUILD_XFREE86_DRI}"
|
|
|
|
echo " xinerama............: ${BUILD_XINERAMA}"
|
|
|
|
echo " xinput..............: ${BUILD_XINPUT}"
|
2012-03-27 13:14:20 -06:00
|
|
|
echo " xkb.................: ${BUILD_XKB}"
|
2010-09-04 04:00:58 -06:00
|
|
|
echo " xprint..............: ${BUILD_XPRINT}"
|
|
|
|
echo " xtest...............: ${BUILD_XTEST}"
|
|
|
|
echo " xv..................: ${BUILD_XV}"
|
|
|
|
echo " xvmc................: ${BUILD_XVMC}"
|
|
|
|
echo ""
|
2009-05-22 09:55:46 -06:00
|
|
|
echo " Used CFLAGS:"
|
|
|
|
echo " CPPFLAGS............: ${CPPFLAGS}"
|
|
|
|
echo " CFLAGS..............: ${CFLAGS}"
|
|
|
|
echo " Warning CFLAGS......: ${CWARNFLAGS}"
|
|
|
|
echo ""
|
|
|
|
echo " Installation:"
|
|
|
|
echo " Prefix..............: ${prefix}"
|
|
|
|
echo ""
|