2 # Process this file with autoconf to produce a configure script.
7 [xcb@lists.freedesktop.org])
8 AC_CONFIG_SRCDIR([xcb.pc.in])
9 AM_INIT_AUTOMAKE([foreign dist-bzip2])
13 PKG_CHECK_MODULES(CHECK, [check >= 0.9.4], [HAVE_CHECK=yes], [HAVE_CHECK=no])
14 AM_CONDITIONAL(HAVE_CHECK, test x$HAVE_CHECK = xyes)
16 AC_CONFIG_HEADERS([src/config.h])
21 AC_PATH_PROG(XSLTPROC, xsltproc, no)
22 if test "$XSLTPROC" = "no"; then
23 AC_MSG_ERROR([XCB requires xsltproc.])
26 HTML_CHECK_RESULT=false
27 if test x"$HAVE_CHECK" = xyes; then
28 if test x"$XSLTPROC" != xno; then
29 HTML_CHECK_RESULT=true
32 AC_SUBST(HTML_CHECK_RESULT)
34 # Checks for pkg-config packages
35 PKG_CHECK_MODULES(XCBPROTO, xcb-proto >= 1.1)
36 NEEDED="pthread-stubs xau >= 0.99.2"
37 PKG_CHECK_MODULES(NEEDED, $NEEDED)
40 PKG_CHECK_MODULES(XDMCP, xdmcp,
41 AC_CHECK_LIB(Xdmcp, XdmcpWrap,
43 AC_DEFINE(HASXDMAUTH,1,[Has Wraphelp.c needed for XDM AUTH protocols])
44 NEEDED="$NEEDED xdmcp"
53 AC_CHECK_HEADER([execinfo.h], [AC_DEFINE(HAVE_BACKTRACE,1,[Has backtrace*() needed for retrieving stack traces])])
57 # Find the xcb-proto protocol descriptions
58 AC_MSG_CHECKING(XCBPROTO_XCBINCLUDEDIR)
59 XCBPROTO_XCBINCLUDEDIR=`$PKG_CONFIG --variable=xcbincludedir xcb-proto`
60 AC_MSG_RESULT($XCBPROTO_XCBINCLUDEDIR)
61 AC_SUBST(XCBPROTO_XCBINCLUDEDIR)
63 # Find the xcbgen Python package
64 AC_MSG_CHECKING(XCBPROTO_XCBPYTHONDIR)
65 XCBPROTO_XCBPYTHONDIR=`$PKG_CONFIG --variable=pythondir xcb-proto`
66 AC_MSG_RESULT($XCBPROTO_XCBPYTHONDIR)
67 AC_SUBST(XCBPROTO_XCBPYTHONDIR)
70 AC_SEARCH_LIBS(getaddrinfo, socket)
71 AC_SEARCH_LIBS(connect, socket)
75 AC_DEFINE([HAVE_ABSTRACT_SOCKETS], 1, [Define if your platform supports abstract sockets])
79 dnl define buffer queue size
80 AC_ARG_WITH([queue-size],
81 AC_HELP_STRING([--with-queue-size=SIZE],
82 [Set the XCB buffer queue size (default is 16384)]),
83 [xcb_queue_buffer_size="$withval"],
84 [xcb_queue_buffer_size=16384])
85 AC_DEFINE_UNQUOTED(XCB_QUEUE_BUFFER_SIZE, [$xcb_queue_buffer_size],
86 [XCB buffer queue size])
88 dnl check for the sockaddr_un.sun_len member
89 AC_CHECK_MEMBER([struct sockaddr_un.sun_len],
90 [AC_DEFINE(HAVE_SOCKADDR_SUN_LEN,1,[Have the sockaddr_un.sun_len member.])],
92 [ #include <sys/types.h>
96 xcbincludedir='${includedir}/xcb'
97 AC_SUBST(xcbincludedir)
99 if test "x$GCC" = xyes ; then
100 CWARNFLAGS="-Wall -pedantic -Wpointer-arith \
101 -Wstrict-prototypes -Wmissing-declarations -Wnested-externs"
103 AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
104 if test "x$SUNCC" = "xyes"; then
110 XCB_CHECK_VISIBILITY()
112 # htmldir is not defined prior to autoconf 2.59c, so on earlier versions
113 # set an equivalent value.
114 AC_PREREQ([2.59c], [], [AC_SUBST([htmldir], [m4_ifset([AC_PACKAGE_TARNAME],
115 ['${datadir}/doc/${PACKAGE_TARNAME}'],
116 ['${datadir}/doc/${PACKAGE}'])
121 XCB_EXTENSION(Composite, "yes")
122 XCB_EXTENSION(Damage, "yes")
123 XCB_EXTENSION(DPMS, "yes")
124 XCB_EXTENSION(GLX, "yes")
125 XCB_EXTENSION(RandR, "yes")
126 XCB_EXTENSION(Record, "yes")
127 XCB_EXTENSION(Render, "yes")
128 XCB_EXTENSION(Resource, "yes")
129 XCB_EXTENSION(Screensaver, "yes")
130 XCB_EXTENSION(Shape, "yes")
131 XCB_EXTENSION(Shm, "yes")
132 XCB_EXTENSION(Sync, "yes")
133 XCB_EXTENSION(Xevie, "yes")
134 XCB_EXTENSION(XFixes, "yes")
135 XCB_EXTENSION(XFree86-DRI, "yes")
136 XCB_EXTENSION(Xinerama, "yes")
137 XCB_EXTENSION(XInput, "no")
138 XCB_EXTENSION(Xprint, "yes")
139 XCB_EXTENSION(SELinux, "no")
140 XCB_EXTENSION(XTest, "yes")
141 XCB_EXTENSION(Xv, "yes")
142 XCB_EXTENSION(XvMC, "yes")
185 dnl Configuration output
188 echo " Package: ${PACKAGE_NAME} ${PACKAGE_VERSION}"
190 echo " Configuration"
191 echo " XDM support.........: ${have_xdmcp}"
192 echo " Build unit tests....: ${HAVE_CHECK}"
193 echo " XCB buffer size.....: ${xcb_queue_buffer_size}"
196 echo " CPPFLAGS............: ${CPPFLAGS}"
197 echo " CFLAGS..............: ${CFLAGS}"
198 echo " Warning CFLAGS......: ${CWARNFLAGS}"
200 echo " Installation:"
201 echo " Prefix..............: ${prefix}"