1 dnl Copyright © 2003-2007 Keith Packard, Daniel Stone
3 dnl Permission is hereby granted, free of charge, to any person obtaining a
4 dnl copy of this software and associated documentation files (the "Software"),
5 dnl to deal in the Software without restriction, including without limitation
6 dnl the rights to use, copy, modify, merge, publish, distribute, sublicense,
7 dnl and/or sell copies of the Software, and to permit persons to whom the
8 dnl Software is furnished to do so, subject to the following conditions:
10 dnl The above copyright notice and this permission notice (including the next
11 dnl paragraph) shall be included in all copies or substantial portions of the
14 dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 dnl IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 dnl FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
17 dnl THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 dnl LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
19 dnl FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
20 dnl DEALINGS IN THE SOFTWARE.
22 dnl Authors: Keith Packard <keithp@keithp.com>
23 dnl Daniel Stone <daniel@fooishbar.org>
24 dnl an unwitting cast of miscellaneous others
26 dnl Process this file with autoconf to create configure.
29 AC_INIT([xorg-server], 1.15.1, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
30 RELEASE_DATE="2014-04-13"
31 RELEASE_NAME="Heart Candy"
32 AC_CONFIG_SRCDIR([Makefile.am])
33 AM_INIT_AUTOMAKE([foreign dist-bzip2])
34 AC_USE_SYSTEM_EXTENSIONS
36 # Require xorg-macros minimum of 1.14 for XORG_COMPILER_BRAND in XORG_DEFAULT_OPTIONS
37 m4_ifndef([XORG_MACROS_VERSION],
38 [m4_fatal([must install xorg-macros 1.14 or later before running autoconf/autogen])])
39 XORG_MACROS_VERSION(1.14)
41 XORG_WITH_DOXYGEN(1.6.1)
42 XORG_CHECK_SGML_DOCTOOLS(1.8)
44 XORG_ENABLE_DEVEL_DOCS
45 XORG_WITH_XMLTO(0.0.20)
48 XORG_ENABLE_UNIT_TESTS
49 XORG_LD_WRAP([optional])
51 m4_ifndef([XORG_FONT_MACROS_VERSION], [m4_fatal([must install font-util 1.1 or later before running autoconf/autogen])])
52 XORG_FONT_MACROS_VERSION(1.1)
54 dnl this gets generated by autoheader, and thus contains all the defines. we
55 dnl don't ever actually use it, internally.
56 AC_CONFIG_HEADERS(include/do-not-use-config.h)
57 dnl xorg-server.h is an external header, designed to be included by loadable
59 AC_CONFIG_HEADERS(include/xorg-server.h)
60 dnl dix-config.h covers most of the DIX (i.e. everything but the DDX, not just
62 AC_CONFIG_HEADERS(include/dix-config.h)
63 dnl xorg-config.h covers the Xorg DDX.
64 AC_CONFIG_HEADERS(include/xorg-config.h)
65 dnl xkb-config.h covers XKB for the Xorg and Xnest DDXs.
66 AC_CONFIG_HEADERS(include/xkb-config.h)
67 dnl xwin-config.h covers the XWin DDX.
68 AC_CONFIG_HEADERS(include/xwin-config.h)
69 dnl kdrive-config.h covers the kdrive DDX
70 AC_CONFIG_HEADERS(include/kdrive-config.h)
71 dnl version-config.h covers the version numbers so they can be bumped without
72 dnl forcing an entire recompile.x
73 AC_CONFIG_HEADERS(include/version-config.h)
86 # Quoted so that make will expand $(CWARNFLAGS) in makefiles to allow
87 # easier overrides at build time.
88 XSERVER_CFLAGS='$(CWARNFLAGS)'
90 dnl Explicitly add -fno-strict-aliasing since this option should disappear
91 dnl from util-macros CWARNFLAGS
92 if test "x$GCC" = xyes ; then
93 XSERVER_CFLAGS="$XSERVER_CFLAGS -fno-strict-aliasing"
96 dnl Check for dtrace program (needed to build Xserver dtrace probes)
97 dnl Also checks for <sys/sdt.h>, since some Linux distros have an
98 dnl ISDN trace program named dtrace
99 AC_ARG_WITH(dtrace, AS_HELP_STRING([--with-dtrace=PATH],
100 [Enable dtrace probes (default: enabled if dtrace found)]),
101 [WDTRACE=$withval], [WDTRACE=auto])
102 if test "x$WDTRACE" = "xyes" -o "x$WDTRACE" = "xauto" ; then
103 AC_PATH_PROG(DTRACE, [dtrace], [not_found], [$PATH:/usr/sbin])
104 if test "x$DTRACE" = "xnot_found" ; then
105 if test "x$WDTRACE" = "xyes" ; then
106 AC_MSG_FAILURE([dtrace requested but not found])
110 AC_CHECK_HEADER(sys/sdt.h, [HAS_SDT_H="yes"], [HAS_SDT_H="no"])
111 if test "x$WDTRACE" = "xauto" -a "x$HAS_SDT_H" = "xno" ; then
116 if test "x$WDTRACE" != "xno" ; then
117 AC_DEFINE(XSERVER_DTRACE, 1,
118 [Define to 1 if the DTrace Xserver provider probes should be built in.])
120 # Solaris/OpenSolaris require dtrace -G to build dtrace probe information into
121 # object files, and require linking with those as relocatable objects, not .a
122 # archives. MacOS X handles all this in the normal compiler toolchain, and on
123 # some releases (like Tiger), will error out on dtrace -G. For now, other
124 # platforms with Dtrace ports are assumed to support -G (the FreeBSD and Linux
125 # ports appear to, based on my web searches, but have not yet been tested).
127 darwin*) SPECIAL_DTRACE_OBJECTS=no ;;
128 *) SPECIAL_DTRACE_OBJECTS=yes ;;
131 AM_CONDITIONAL(XSERVER_DTRACE, [test "x$WDTRACE" != "xno"])
132 AM_CONDITIONAL(SPECIAL_DTRACE_OBJECTS, [test "x$SPECIAL_DTRACE_OBJECTS" = "xyes"])
136 AC_CHECK_HEADERS([fcntl.h stdlib.h string.h unistd.h dlfcn.h stropts.h fnmatch.h sys/utsname.h])
138 dnl Checks for typedefs, structures, and compiler characteristics.
141 AC_C_BIGENDIAN([ENDIAN="X_BIG_ENDIAN"], [ENDIAN="X_LITTLE_ENDIAN"])
143 AC_CHECK_SIZEOF([unsigned long])
144 if test "$ac_cv_sizeof_unsigned_long" = 8; then
145 AC_DEFINE(_XSERVER64, 1, [Define to 1 if unsigned long is 64 bits.])
150 # Checks for headers/macros for byte swapping
152 # <byteswap.h> bswap_16, bswap_32, bswap_64 (glibc)
153 # <sys/endian.h> __swap16, __swap32, __swap64 (OpenBSD)
154 # <sys/endian.h> bswap16, bswap32, bswap64 (other BSD's)
155 # and a fallback to local macros if none of the above are found
157 # if <byteswap.h> is found, assume it's the correct version
158 AC_CHECK_HEADERS([byteswap.h])
160 # if <sys/endian.h> is found, have to check which version
161 AC_CHECK_HEADER([sys/endian.h], [HAVE_SYS_ENDIAN_H="yes"], [HAVE_SYS_ENDIAN_H="no"])
163 if test "x$HAVE_SYS_ENDIAN_H" = "xyes" ; then
164 AC_MSG_CHECKING([for __swap16 variant of <sys/endian.h> byteswapping macros])
165 AC_LINK_IFELSE([AC_LANG_PROGRAM([
166 #include <sys/types.h>
167 #include <sys/endian.h>
172 ], [SYS_ENDIAN__SWAP='yes'], [SYS_ENDIAN__SWAP='no'])
173 AC_MSG_RESULT([$SYS_ENDIAN__SWAP])
175 AC_MSG_CHECKING([for bswap16 variant of <sys/endian.h> byteswapping macros])
176 AC_LINK_IFELSE([AC_LANG_PROGRAM([
177 #include <sys/types.h>
178 #include <sys/endian.h>
183 ], [SYS_ENDIAN_BSWAP='yes'], [SYS_ENDIAN_BSWAP='no'])
184 AC_MSG_RESULT([$SYS_ENDIAN_BSWAP])
186 if test "$SYS_ENDIAN_BSWAP" = "yes" ; then
190 if test "$SYS_ENDIAN__SWAP" = "yes" ; then
198 if test "$USE_SYS_ENDIAN_H" = "yes" ; then
199 AC_DEFINE([USE_SYS_ENDIAN_H], 1,
200 [Define to use byteswap macros from <sys/endian.h>])
201 AC_DEFINE_UNQUOTED([bswap_16], ${BSWAP}16,
202 [Define to 16-bit byteswap macro])
203 AC_DEFINE_UNQUOTED([bswap_32], ${BSWAP}32,
204 [Define to 32-bit byteswap macro])
205 AC_DEFINE_UNQUOTED([bswap_64], ${BSWAP}64,
206 [Define to 64-bit byteswap macro])
210 dnl Check to see if dlopen is in default libraries (like Solaris, which
211 dnl has it in libc), or if libdl is needed to get it.
212 AC_CHECK_FUNC([dlopen], [],
213 AC_CHECK_LIB([dl], [dlopen], DLOPEN_LIBS="-ldl"))
214 AC_SUBST(DLOPEN_LIBS)
216 dnl Checks for library functions.
217 AC_CHECK_FUNCS([backtrace ffs geteuid getuid issetugid getresuid \
218 getdtablesize getifaddrs getpeereid getpeerucred getzoneid \
219 mmap seteuid shmctl64 strncasecmp vasprintf vsnprintf walkcontext])
220 AC_REPLACE_FUNCS([strcasecmp strcasestr strlcat strlcpy strndup])
222 dnl Find the math libary, then check for cbrt function in it.
223 AC_CHECK_LIB(m, sqrt)
224 AC_CHECK_FUNCS([cbrt])
226 AC_CHECK_HEADERS([ndbm.h dbm.h rpcsvc/dbm.h])
229 AC_CHECK_HEADERS([linux/agpgart.h sys/agpio.h sys/agpgart.h], AGP=yes)
230 AM_CONDITIONAL(AGP, [test "x$AGP" = xyes])
233 AC_CHECK_HEADERS([linux/fb.h], FBDEV=yes)
234 AM_CONDITIONAL(FBDEVHW, [test "x$FBDEV" = xyes])
237 AC_CHECK_HEADERS([asm/mtrr.h], ac_cv_asm_mtrr_h=yes)
238 if test "x$ac_cv_asm_mtrr_h" = xyes; then
243 AC_CHECK_HEADERS([sys/memrange.h], ac_cv_memrange_h=yes)
244 if test "x$ac_cv_memrange_h" = xyes; then
248 if test "x$HAVE_MTRR" = xyes; then
249 AC_DEFINE(HAS_MTRR_SUPPORT, 1, [MTRR support available])
252 dnl A NetBSD MTRR header
253 AC_CHECK_HEADERS([machine/mtrr.h], ac_cv_machine_mtrr_h=yes)
254 if test "x$ac_cv_machine_mtrr_h" = xyes; then
255 AC_DEFINE(HAS_MTRR_BUILTIN, 1, [Define to 1 if NetBSD built-in MTRR
256 support is available])
259 dnl FreeBSD kldload support (sys/linker.h)
260 AC_CHECK_HEADERS([sys/linker.h],
261 [ac_cv_sys_linker_h=yes],
262 [ac_cv_sys_linker_h=no],
263 [#include <sys/param.h>])
264 AM_CONDITIONAL(FREEBSD_KLDLOAD, [test "x$ac_cv_sys_linker_h" = xyes])
266 AC_CACHE_CHECK([for SYSV IPC],
269 #include <sys/types.h>
272 #include <sys/stat.h>
276 id = shmget(IPC_PRIVATE, 512, S_IRUSR | S_IWUSR);
277 if (id < 0) return -1;
278 return shmctl(id, IPC_RMID, 0);
280 [ac_cv_sysv_ipc=yes],
281 [ac_cv_sysv_ipc=no])])
282 if test "x$ac_cv_sysv_ipc" = xyes; then
283 AC_DEFINE(HAVE_SYSV_IPC, 1, [Define to 1 if SYSV IPC is available])
286 dnl OpenBSD /dev/xf86 aperture driver
287 if test -c /dev/xf86 ; then
288 AC_DEFINE(HAS_APERTURE_DRV, 1, [System has /dev/xf86 aperture driver])
292 AC_CHECK_HEADER([machine/apmvar.h],[
293 AC_CHECK_HEADER([sys/event.h],
294 ac_cv_BSD_KQUEUE_APM=yes,
297 AM_CONDITIONAL(BSD_APM, [test "x$ac_cv_BSD_APM" = xyes])
298 AM_CONDITIONAL(BSD_KQUEUE_APM, [test "x$ac_cv_BSD_KQUEUE_APM" = xyes])
300 dnl glibc backtrace support check
301 AC_CHECK_HEADER([execinfo.h],[
302 AC_CHECK_LIB(c, backtrace, [
303 AC_DEFINE(HAVE_BACKTRACE, 1, [Has backtrace support])
304 AC_DEFINE(HAVE_EXECINFO_H, 1, [Have execinfo.h])
308 dnl ---------------------------------------------------------------------------
309 dnl Bus options and CPU capabilities. Replaces logic in
310 dnl hw/xfree86/os-support/bus/Makefile.am, among others.
311 dnl ---------------------------------------------------------------------------
312 DEFAULT_INT10="x86emu"
314 dnl Override defaults as needed for specific platforms:
320 *freebsd*) SYS_LIBS=-lio ;;
321 *netbsd*) AC_DEFINE(USE_ALPHA_PIO, 1, [NetBSD PIO alpha IO]) ;;
323 GLX_ARCH_DEFINES="-D__GLX_ALIGN64 -mieee"
331 *freebsd*) AC_DEFINE(USE_DEV_IO) ;;
332 *dragonfly*) AC_DEFINE(USE_DEV_IO) ;;
333 *netbsd*) AC_DEFINE(USE_I386_IOPL)
336 *openbsd*) AC_DEFINE(USE_I386_IOPL)
344 *freebsd*) DEFAULT_INT10=stub ;;
349 BSD_ARCH_SOURCES="sparc64_video.c ioperm_noop.c"
350 GLX_ARCH_DEFINES="-D__GLX_ALIGN64"
355 *freebsd*) AC_DEFINE(USE_DEV_IO, 1, [BSD /dev/io]) ;;
356 *dragonfly*) AC_DEFINE(USE_DEV_IO, 1, [BSD /dev/io]) ;;
357 *netbsd*) AC_DEFINE(USE_I386_IOPL, 1, [BSD i386 iopl])
360 *openbsd*) AC_DEFINE(USE_AMD64_IOPL, 1, [BSD AMD64 iopl])
364 GLX_ARCH_DEFINES="-D__GLX_ALIGN64"
367 GLX_ARCH_DEFINES="-D__GLX_ALIGN64"
370 GLX_ARCH_DEFINES="-D__GLX_ALIGN64"
373 AC_SUBST(GLX_ARCH_DEFINES)
375 dnl BSD *_video.c selection
376 AM_CONDITIONAL(ALPHA_VIDEO, [test "x$ALPHA_VIDEO" = xyes])
377 AM_CONDITIONAL(ARM_VIDEO, [test "x$ARM_VIDEO" = xyes])
378 AM_CONDITIONAL(I386_VIDEO, [test "x$I386_VIDEO" = xyes])
379 AM_CONDITIONAL(PPC_VIDEO, [test "x$PPC_VIDEO" = xyes])
380 AM_CONDITIONAL(SPARC64_VIDEO, [test "x$SPARC64_VIDEO" = xyes])
383 USE_SIGIO_BY_DEFAULT="yes"
384 dnl it would be nice to autodetect these *CONS_SUPPORTs
386 *freebsd* | *dragonfly*)
389 *) AC_DEFINE(CSRG_BASED, 1, [System is BSD-like]) ;;
391 AC_DEFINE(PCCONS_SUPPORT, 1, [System has PC console])
392 AC_DEFINE(PCVT_SUPPORT, 1, [System has PCVT console])
393 AC_DEFINE(SYSCONS_SUPPORT, 1, [System has syscons console])
397 AC_DEFINE(CSRG_BASED, 1, [System is BSD-like])
398 AC_DEFINE(PCCONS_SUPPORT, 1, [System has PC console])
399 AC_DEFINE(PCVT_SUPPORT, 1, [System has PCVT console])
400 AC_DEFINE(WSCONS_SUPPORT, 1, [System has wscons console])
404 AC_DEFINE(CSRG_BASED, 1, [System is BSD-like])
405 AC_DEFINE(PCVT_SUPPORT, 1, [System has PC console])
406 AC_DEFINE(WSCONS_SUPPORT, 1, [System has wscons console])
412 PKG_CHECK_EXISTS(libdrm, DRI=yes, DRI=no)
413 # Disable use of SIGIO by default until some system bugs are
414 # fixed - see Sun/OpenSolaris bug id 6879897
415 USE_SIGIO_BY_DEFAULT="no"
418 AC_DEFINE(CSRG_BASED, 1, [System is BSD-like])
421 CFLAGS="$CFLAGS -DFD_SETSIZE=256"
425 dnl augment XORG_RELEASE_VERSION for our snapshot number and to expose the
427 PVMAJOR=`echo $PACKAGE_VERSION | cut -d . -f 1`
428 PVS=`echo $PACKAGE_VERSION | cut -d . -f 4 | cut -d - -f 1`
429 if test "x$PVS" = "x"; then
433 VENDOR_RELEASE="((($PVMAJOR) * 10000000) + (($PVM) * 100000) + (($PVP) * 1000) + $PVS)"
434 VENDOR_MAN_VERSION="Version ${PACKAGE_VERSION}"
436 VENDOR_NAME="The X.Org Foundation"
437 VENDOR_NAME_SHORT="X.Org"
438 VENDOR_WEB="http://wiki.x.org"
440 m4_ifdef([AS_HELP_STRING], , [m4_define([AS_HELP_STRING], m4_defn([AC_HELP_STRING]))])
443 AC_ARG_ENABLE(werror, AS_HELP_STRING([--enable-werror],
444 [Obsolete - use --enable-strict-compilation instead]),
445 AC_MSG_ERROR([--enable-werror has been replaced by --enable-strict-compilation]))
447 AC_ARG_ENABLE(debug, AS_HELP_STRING([--enable-debug],
448 [Enable debugging (default: disabled)]),
449 [DEBUGGING=$enableval], [DEBUGGING=no])
450 AC_ARG_ENABLE(use-sigio-by-default, AS_HELP_STRING([--enable-use-sigio-by-default]
451 [Enable SIGIO input handlers by default (default: $USE_SIGIO_BY_DEFAULT)]),
452 [USE_SIGIO_BY_DEFAULT=$enableval], [])
453 AC_ARG_WITH(int10, AS_HELP_STRING([--with-int10=BACKEND], [int10 backend: vm86, x86emu or stub]),
455 [INT10="$DEFAULT_INT10"])
456 AC_ARG_WITH(vendor-name, AS_HELP_STRING([--with-vendor-name=VENDOR],
457 [Vendor string reported by the server]),
458 [ VENDOR_NAME="$withval" ], [])
459 AC_ARG_WITH(vendor-name-short, AS_HELP_STRING([--with-vendor-name-short=VENDOR],
460 [Short version of vendor string reported by the server]),
461 [ VENDOR_NAME_SHORT="$withval" ], [])
462 AC_ARG_WITH(vendor-web, AS_HELP_STRING([--with-vendor-web=URL],
463 [Vendor web address reported by the server]),
464 [ VENDOR_WEB="$withval" ], [])
465 AC_ARG_WITH(module-dir, AS_HELP_STRING([--with-module-dir=DIR],
466 [Directory where modules are installed (default: $libdir/xorg/modules)]),
467 [ moduledir="$withval" ],
468 [ moduledir="${libdir}/xorg/modules" ])
469 AC_ARG_WITH(log-dir, AS_HELP_STRING([--with-log-dir=DIR],
470 [Directory where log files are kept (default: $localstatedir/log)]),
471 [ logdir="$withval" ],
472 [ logdir="$localstatedir/log" ])
473 AC_ARG_WITH(builder-addr, AS_HELP_STRING([--with-builder-addr=ADDRESS],
474 [Builder address (default: xorg@lists.freedesktop.org)]),
475 [ BUILDERADDR="$withval" ],
476 [ BUILDERADDR="xorg@lists.freedesktop.org" ])
477 AC_ARG_WITH(os-name, AS_HELP_STRING([--with-os-name=OSNAME], [Name of OS (default: output of "uname -srm")]),
478 [ OSNAME="$withval" ],
479 [ OSNAME=`uname -srm` ])
480 AC_ARG_WITH(os-vendor, AS_HELP_STRING([--with-os-vendor=OSVENDOR], [Name of OS vendor]),
481 [ OSVENDOR="$withval" ],
483 AC_ARG_WITH(builderstring, AS_HELP_STRING([--with-builderstring=BUILDERSTRING], [Additional builder string]),
484 [ BUILDERSTRING="$withval" ]
487 dnl Determine font path
489 XORG_FONTSUBDIR(FONTMISCDIR, fontmiscdir, misc)
490 XORG_FONTSUBDIR(FONTOTFDIR, fontotfdir, OTF)
491 XORG_FONTSUBDIR(FONTTTFDIR, fontttfdir, TTF)
492 XORG_FONTSUBDIR(FONTTYPE1DIR, fonttype1dir, Type1)
493 XORG_FONTSUBDIR(FONT75DPIDIR, font75dpidir, 75dpi)
494 XORG_FONTSUBDIR(FONT100DPIDIR, font100dpidir, 100dpi)
496 dnl Uses --default-font-path if set, otherwise checks for /etc/X11/fontpath.d,
497 dnl otherwise uses standard subdirectories of FONTROOTDIR. When cross
498 dnl compiling, assume default font path uses standard FONTROOTDIR directories.
499 DEFAULT_FONT_PATH="${FONTMISCDIR}/,${FONTTTFDIR}/,${FONTOTFDIR}/,${FONTTYPE1DIR}/,${FONT100DPIDIR}/,${FONT75DPIDIR}/"
500 if test "$cross_compiling" != yes; then
501 AC_CHECK_FILE([${sysconfdir}/X11/fontpath.d],
502 [DEFAULT_FONT_PATH='catalogue:${sysconfdir}/X11/fontpath.d'],
504 darwin*) DEFAULT_FONT_PATH="${DEFAULT_FONT_PATH},/Library/Fonts,/System/Library/Fonts" ;;
507 AC_ARG_WITH(default-font-path, AS_HELP_STRING([--with-default-font-path=PATH], [Comma separated list of font dirs]),
508 [ FONTPATH="$withval" ],
509 [ FONTPATH="${DEFAULT_FONT_PATH}" ])
511 AC_MSG_CHECKING([for default font path])
512 AC_MSG_RESULT([$FONTPATH])
514 AC_ARG_WITH(xkb-path, AS_HELP_STRING([--with-xkb-path=PATH], [Path to XKB base dir (default: ${datadir}/X11/xkb)]),
515 [ XKBPATH="$withval" ],
516 [ XKBPATH="${datadir}/X11/xkb" ])
517 AC_ARG_WITH(xkb-output, AS_HELP_STRING([--with-xkb-output=PATH], [Path to XKB output dir (default: ${datadir}/X11/xkb/compiled)]),
518 [ XKBOUTPUT="$withval" ],
519 [ XKBOUTPUT="compiled" ])
520 AC_ARG_WITH(default-xkb-rules, AS_HELP_STRING([--with-default-xkb-rules=RULES],
521 [Keyboard ruleset (default: base/evdev)]),
522 [ XKB_DFLT_RULES="$withval" ],
523 [ XKB_DFLT_RULES="" ])
524 AC_ARG_WITH(default-xkb-model, AS_HELP_STRING([--with-default-xkb-model=MODEL],
525 [Keyboard model (default: pc105)]),
526 [ XKB_DFLT_MODEL="$withval" ],
527 [ XKB_DFLT_MODEL="pc105" ])
528 AC_ARG_WITH(default-xkb-layout, AS_HELP_STRING([--with-default-xkb-layout=LAYOUT],
529 [Keyboard layout (default: us)]),
530 [ XKB_DFLT_LAYOUT="$withval" ],
531 [ XKB_DFLT_LAYOUT="us" ])
532 AC_ARG_WITH(default-xkb-variant, AS_HELP_STRING([--with-default-xkb-variant=VARIANT],
533 [Keyboard variant (default: (none))]),
534 [ XKB_DFLT_VARIANT="$withval" ],
535 [ XKB_DFLT_VARIANT="" ])
536 AC_ARG_WITH(default-xkb-options, AS_HELP_STRING([--with-default-xkb-options=OPTIONS],
537 [Keyboard layout options (default: (none))]),
538 [ XKB_DFLT_OPTIONS="$withval" ],
539 [ XKB_DFLT_OPTIONS="" ])
540 AC_ARG_WITH(serverconfig-path, AS_HELP_STRING([--with-serverconfig-path=PATH],
541 [Directory where ancillary server config files are installed (default: ${libdir}/xorg)]),
542 [ SERVERCONFIG="$withval" ],
543 [ SERVERCONFIG="${libdir}/xorg" ])
544 AC_ARG_WITH(apple-applications-dir,AS_HELP_STRING([--with-apple-applications-dir=PATH], [Path to the Applications directory (default: /Applications/Utilities)]),
545 [ APPLE_APPLICATIONS_DIR="${withval}" ],
546 [ APPLE_APPLICATIONS_DIR="/Applications/Utilities" ])
547 AC_SUBST([APPLE_APPLICATIONS_DIR])
548 AC_ARG_WITH(apple-application-name,AS_HELP_STRING([--with-apple-application-name=NAME], [Name for the .app (default: X11)]),
549 [ APPLE_APPLICATION_NAME="${withval}" ],
550 [ APPLE_APPLICATION_NAME="X11" ])
551 AC_SUBST([APPLE_APPLICATION_NAME])
552 AC_ARG_WITH(launchd-id-prefix, AS_HELP_STRING([--with-launchd-id-prefix=PATH], [Deprecated: Use --with-bundle-id-prefix.]),
553 [ BUNDLE_ID_PREFIX="${withval}" ],
554 [ BUNDLE_ID_PREFIX="org.x" ])
555 AC_ARG_WITH(bundle-id-prefix, AS_HELP_STRING([--with-bundle-id-prefix=PATH], [Prefix to use for bundle identifiers (default: org.x)]),
556 [ BUNDLE_ID_PREFIX="${withval}" ])
557 AC_SUBST([BUNDLE_ID_PREFIX])
558 AC_DEFINE_UNQUOTED(BUNDLE_ID_PREFIX, "$BUNDLE_ID_PREFIX", [Prefix to use for bundle identifiers])
559 AC_ARG_ENABLE(sparkle,AS_HELP_STRING([--enable-sparkle], [Enable updating of X11.app using the Sparkle Framework (default: disabled)]),
560 [ XQUARTZ_SPARKLE="${enableval}" ],
561 [ XQUARTZ_SPARKLE="no" ])
562 AC_SUBST([XQUARTZ_SPARKLE])
563 AC_ARG_ENABLE(install-libxf86config,
564 AS_HELP_STRING([--enable-install-libxf86config],
565 [Install libxf86config (default: disabled)]),
566 [INSTALL_LIBXF86CONFIG=$enableval],
567 [INSTALL_LIBXF86CONFIG=no])
568 AC_ARG_ENABLE(visibility, AC_HELP_STRING([--enable-visibility], [Enable symbol visibility (default: auto)]),
569 [SYMBOL_VISIBILITY=$enableval],
570 [SYMBOL_VISIBILITY=auto])
572 dnl GLX build options
573 AC_ARG_ENABLE(aiglx, AS_HELP_STRING([--enable-aiglx], [Build accelerated indirect GLX (default: enabled)]),
577 AC_ARG_ENABLE(glx-tls, AS_HELP_STRING([--enable-glx-tls], [Build GLX with TLS support (default: auto)]),
578 [GLX_USE_TLS=$enableval
579 if test "x$GLX_USE_TLS" = "xyes" && test "${ac_cv_tls}" = "none" ; then
580 AC_MSG_ERROR([GLX with TLS support requested, but the compiler does not support it.])
583 if test "${ac_cv_tls}" != "none" ; then
586 AC_SUBST(GLX_TLS, ${GLX_USE_TLS})
587 AC_ARG_WITH(khronos-spec-dir, AS_HELP_STRING([--with-khronos-spec-dir=PATH], [Path to Khronos OpenGL registry database files (default: auto)]),
588 [KHRONOS_SPEC_DIR="${withval}"],
589 [KHRONOS_SPEC_DIR=auto])
592 AC_ARG_ENABLE(registry, AS_HELP_STRING([--disable-registry], [Build string registry module (default: enabled)]), [XREGISTRY=$enableval], [XREGISTRY=yes])
593 AC_ARG_ENABLE(composite, AS_HELP_STRING([--disable-composite], [Build Composite extension (default: enabled)]), [COMPOSITE=$enableval], [COMPOSITE=yes])
594 AC_ARG_ENABLE(mitshm, AS_HELP_STRING([--disable-mitshm], [Build SHM extension (default: auto)]), [MITSHM=$enableval], [MITSHM=auto])
595 AC_ARG_ENABLE(xres, AS_HELP_STRING([--disable-xres], [Build XRes extension (default: enabled)]), [RES=$enableval], [RES=yes])
596 AC_ARG_ENABLE(record, AS_HELP_STRING([--disable-record], [Build Record extension (default: enabled)]), [RECORD=$enableval], [RECORD=yes])
597 AC_ARG_ENABLE(xv, AS_HELP_STRING([--disable-xv], [Build Xv extension (default: enabled)]), [XV=$enableval], [XV=yes])
598 AC_ARG_ENABLE(xvmc, AS_HELP_STRING([--disable-xvmc], [Build XvMC extension (default: enabled)]), [XVMC=$enableval], [XVMC=yes])
599 AC_ARG_ENABLE(dga, AS_HELP_STRING([--disable-dga], [Build DGA extension (default: auto)]), [DGA=$enableval], [DGA=auto])
600 AC_ARG_ENABLE(screensaver, AS_HELP_STRING([--disable-screensaver], [Build ScreenSaver extension (default: enabled)]), [SCREENSAVER=$enableval], [SCREENSAVER=yes])
601 AC_ARG_ENABLE(xdmcp, AS_HELP_STRING([--disable-xdmcp], [Build XDMCP extension (default: auto)]), [XDMCP=$enableval], [XDMCP=auto])
602 AC_ARG_ENABLE(xdm-auth-1, AS_HELP_STRING([--disable-xdm-auth-1], [Build XDM-Auth-1 extension (default: auto)]), [XDMAUTH=$enableval], [XDMAUTH=auto])
603 AC_ARG_ENABLE(glx, AS_HELP_STRING([--disable-glx], [Build GLX extension (default: enabled)]), [GLX=$enableval], [GLX=yes])
604 AC_ARG_ENABLE(dri, AS_HELP_STRING([--enable-dri], [Build DRI extension (default: auto)]), [DRI=$enableval])
605 AC_ARG_ENABLE(dri2, AS_HELP_STRING([--enable-dri2], [Build DRI2 extension (default: auto)]), [DRI2=$enableval], [DRI2=auto])
606 AC_ARG_ENABLE(dri3, AS_HELP_STRING([--enable-dri3], [Build DRI3 extension (default: auto)]), [DRI3=$enableval], [DRI3=auto])
607 AC_ARG_ENABLE(present, AS_HELP_STRING([--disable-present], [Build Present extension (default: enabled)]), [PRESENT=$enableval], [PRESENT=yes])
608 AC_ARG_ENABLE(xinerama, AS_HELP_STRING([--disable-xinerama], [Build Xinerama extension (default: enabled)]), [XINERAMA=$enableval], [XINERAMA=yes])
609 AC_ARG_ENABLE(xf86vidmode, AS_HELP_STRING([--disable-xf86vidmode], [Build XF86VidMode extension (default: auto)]), [XF86VIDMODE=$enableval], [XF86VIDMODE=auto])
610 AC_ARG_ENABLE(xace, AS_HELP_STRING([--disable-xace], [Build X-ACE extension (default: enabled)]), [XACE=$enableval], [XACE=yes])
611 AC_ARG_ENABLE(xselinux, AS_HELP_STRING([--enable-xselinux], [Build SELinux extension (default: disabled)]), [XSELINUX=$enableval], [XSELINUX=no])
612 AC_ARG_ENABLE(xcsecurity, AS_HELP_STRING([--enable-xcsecurity], [Build Security extension (default: disabled)]), [XCSECURITY=$enableval], [XCSECURITY=no])
613 AC_ARG_ENABLE(tslib, AS_HELP_STRING([--enable-tslib], [Build kdrive tslib touchscreen support (default: disabled)]), [TSLIB=$enableval], [TSLIB=no])
614 AC_ARG_ENABLE(dbe, AS_HELP_STRING([--disable-dbe], [Build DBE extension (default: enabled)]), [DBE=$enableval], [DBE=yes])
615 AC_ARG_ENABLE(xf86bigfont, AS_HELP_STRING([--enable-xf86bigfont], [Build XF86 Big Font extension (default: disabled)]), [XF86BIGFONT=$enableval], [XF86BIGFONT=no])
616 AC_ARG_ENABLE(dpms, AS_HELP_STRING([--disable-dpms], [Build DPMS extension (default: enabled)]), [DPMSExtension=$enableval], [DPMSExtension=yes])
617 AC_ARG_ENABLE(config-udev, AS_HELP_STRING([--enable-config-udev], [Build udev support (default: auto)]), [CONFIG_UDEV=$enableval], [CONFIG_UDEV=auto])
618 AC_ARG_ENABLE(config-udev-kms, AS_HELP_STRING([--enable-config-udev-kms], [Build udev kms support (default: auto)]), [CONFIG_UDEV_KMS=$enableval], [CONFIG_UDEV_KMS=auto])
619 AC_ARG_ENABLE(config-dbus, AS_HELP_STRING([--enable-config-dbus], [Build D-BUS API support (default: no)]), [CONFIG_DBUS_API=$enableval], [CONFIG_DBUS_API=no])
620 AC_ARG_ENABLE(config-hal, AS_HELP_STRING([--disable-config-hal], [Build HAL support (default: auto)]), [CONFIG_HAL=$enableval], [CONFIG_HAL=auto])
621 AC_ARG_ENABLE(config-wscons, AS_HELP_STRING([--enable-config-wscons], [Build wscons config support (default: auto)]), [CONFIG_WSCONS=$enableval], [CONFIG_WSCONS=auto])
622 AC_ARG_ENABLE(xfree86-utils, AS_HELP_STRING([--enable-xfree86-utils], [Build xfree86 DDX utilities (default: enabled)]), [XF86UTILS=$enableval], [XF86UTILS=yes])
623 AC_ARG_ENABLE(vgahw, AS_HELP_STRING([--enable-vgahw], [Build Xorg with vga access (default: enabled)]), [VGAHW=$enableval], [VGAHW=yes])
624 AC_ARG_ENABLE(vbe, AS_HELP_STRING([--enable-vbe], [Build Xorg with VBE module (default: enabled)]), [VBE=$enableval], [VBE=yes])
625 AC_ARG_ENABLE(int10-module, AS_HELP_STRING([--enable-int10-module], [Build Xorg with int10 module (default: enabled)]), [INT10MODULE=$enableval], [INT10MODULE=yes])
626 AC_ARG_ENABLE(windowswm, AS_HELP_STRING([--enable-windowswm], [Build XWin with WindowsWM extension (default: no)]), [WINDOWSWM=$enableval], [WINDOWSWM=no])
627 AC_ARG_ENABLE(libdrm, AS_HELP_STRING([--enable-libdrm], [Build Xorg with libdrm support (default: enabled)]), [DRM=$enableval],[DRM=yes])
628 AC_ARG_ENABLE(clientids, AS_HELP_STRING([--disable-clientids], [Build Xorg with client ID tracking (default: enabled)]), [CLIENTIDS=$enableval], [CLIENTIDS=yes])
629 AC_ARG_ENABLE(pciaccess, AS_HELP_STRING([--enable-pciaccess], [Build Xorg with pciaccess library (default: enabled)]), [PCI=$enableval], [PCI=yes])
630 AC_ARG_ENABLE(linux_acpi, AC_HELP_STRING([--disable-linux-acpi], [Disable building ACPI support on Linux (if available).]), [enable_linux_acpi=$enableval], [enable_linux_acpi=yes])
631 AC_ARG_ENABLE(linux_apm, AC_HELP_STRING([--disable-linux-apm], [Disable building APM support on Linux (if available).]), [enable_linux_apm=$enableval], [enable_linux_apm=yes])
634 AC_ARG_ENABLE(xorg, AS_HELP_STRING([--enable-xorg], [Build Xorg server (default: auto)]), [XORG=$enableval], [XORG=auto])
635 AC_ARG_ENABLE(dmx, AS_HELP_STRING([--enable-dmx], [Build DMX server (default: auto)]), [DMX=$enableval], [DMX=auto])
636 AC_ARG_ENABLE(xvfb, AS_HELP_STRING([--enable-xvfb], [Build Xvfb server (default: yes)]), [XVFB=$enableval], [XVFB=yes])
637 AC_ARG_ENABLE(xnest, AS_HELP_STRING([--enable-xnest], [Build Xnest server (default: auto)]), [XNEST=$enableval], [XNEST=auto])
638 AC_ARG_ENABLE(xquartz, AS_HELP_STRING([--enable-xquartz], [Build Xquartz server for OS-X (default: auto)]), [XQUARTZ=$enableval], [XQUARTZ=auto])
639 AC_ARG_ENABLE(standalone-xpbproxy, AS_HELP_STRING([--enable-standalone-xpbproxy], [Build a standalone xpbproxy (in addition to the one integrated into Xquartz as a separate thread) (default: no)]), [STANDALONE_XPBPROXY=$enableval], [STANDALONE_XPBPROXY=no])
640 AC_ARG_ENABLE(xwin, AS_HELP_STRING([--enable-xwin], [Build XWin server (default: auto)]), [XWIN=$enableval], [XWIN=auto])
641 dnl kdrive and its subsystems
642 AC_ARG_ENABLE(kdrive, AS_HELP_STRING([--enable-kdrive], [Build kdrive servers (default: no)]), [KDRIVE=$enableval], [KDRIVE=no])
643 AC_ARG_ENABLE(xephyr, AS_HELP_STRING([--enable-xephyr], [Build the kdrive Xephyr server (default: auto)]), [XEPHYR=$enableval], [XEPHYR=auto])
644 AC_ARG_ENABLE(xfake, AS_HELP_STRING([--enable-xfake], [Build the kdrive 'fake' server (default: auto)]), [XFAKE=$enableval], [XFAKE=auto])
645 AC_ARG_ENABLE(xfbdev, AS_HELP_STRING([--enable-xfbdev], [Build the kdrive framebuffer device server (default: auto)]), [XFBDEV=$enableval], [XFBDEV=auto])
647 AC_ARG_ENABLE(kdrive-kbd, AS_HELP_STRING([--enable-kdrive-kbd], [Build kbd driver for kdrive (default: auto)]), [KDRIVE_KBD=$enableval], [KDRIVE_KBD=auto])
648 AC_ARG_ENABLE(kdrive-mouse, AC_HELP_STRING([--enable-kdrive-mouse], [Build mouse driver for kdrive (default: auto)]), [KDRIVE_MOUSE=$enableval], [KDRIVE_MOUSE=auto])
649 AC_ARG_ENABLE(kdrive-evdev, AC_HELP_STRING([--enable-kdrive-evdev], [Build evdev driver for kdrive (default: auto)]), [KDRIVE_EVDEV=$enableval], [KDRIVE_EVDEV=auto])
650 AC_ARG_ENABLE(libunwind, AS_HELP_STRING([--enable-libunwind], [Use libunwind for backtracing (default: auto)]), [LIBUNWIND="$enableval"], [LIBUNWIND="auto"])
653 dnl chown/chmod to be setuid root as part of build
654 dnl Replaces InstallXserverSetUID in imake
655 AC_ARG_ENABLE(install-setuid,
656 AS_HELP_STRING([--enable-install-setuid],
657 [Install Xorg server as owned by root with setuid bit (default: auto)]),
658 [SETUID=$enableval], [SETUID=auto])
659 AC_MSG_CHECKING([to see if we can install the Xorg server as root])
660 if test "x$SETUID" = "xauto" ; then
662 cygwin*) SETUID="no" ;;
663 mingw*) SETUID="no" ;;
664 darwin*) SETUID="no" ;;
667 sparc) SETUID="no" ;;
671 if test "x$SETUID" = xyes; then
673 chown root testfile > /dev/null 2>&1 || SETUID="no"
677 AC_MSG_RESULT([$SETUID])
678 AM_CONDITIONAL(INSTALL_SETUID, [test "x$SETUID" = "xyes"])
680 dnl Issue an error if xtrans.m4 was not found and XTRANS_CONNECTION_FLAGS macro
681 dnl was not expanded, since xorg-server with no transport types is rather useless.
683 dnl If you're seeing an error here, be sure you installed the lib/xtrans module
684 dnl first and if it's not in the default location, that you set the ACLOCAL
685 dnl environment variable to find it, such as:
686 dnl ACLOCAL="aclocal -I ${PREFIX}/share/aclocal"
687 m4_pattern_forbid([^XTRANS_CONNECTION_FLAGS$])
689 # Transport selection macro from xtrans.m4
690 XTRANS_CONNECTION_FLAGS
692 # Secure RPC detection macro from xtrans.m4
693 XTRANS_SECURE_RPC_FLAGS
694 AM_CONDITIONAL(SECURE_RPC, [test "x$SECURE_RPC" = xyes])
696 AM_CONDITIONAL(INT10_VM86, [test "x$INT10" = xvm86])
697 AM_CONDITIONAL(INT10_X86EMU, [test "x$INT10" = xx86emu])
698 AM_CONDITIONAL(INT10_STUB, [test "x$INT10" = xstub])
700 dnl Handle installing libxf86config
701 AM_CONDITIONAL(INSTALL_LIBXF86CONFIG, [test "x$INSTALL_LIBXF86CONFIG" = xyes])
703 dnl DDX Detection... Yes, it's ugly to have it here... but we need to
704 dnl handle this early on so that we don't require unsupported extensions
733 if test x$XQUARTZ = xauto; then
734 AC_CACHE_CHECK([whether to build Xquartz],xorg_cv_Carbon_framework,[
735 save_LDFLAGS=$LDFLAGS
736 LDFLAGS="$LDFLAGS -framework Carbon"
737 AC_LINK_IFELSE([AC_LANG_SOURCE([char FSFindFolder(); int main() { FSFindFolder(); return 0;}])],
738 [xorg_cv_Carbon_framework=yes],
739 [xorg_cv_Carbon_framework=no])
740 LDFLAGS=$save_LDFLAGS])
742 if test "X$xorg_cv_Carbon_framework" = Xyes; then
749 AC_CHECK_FUNC(dispatch_async,
750 AC_DEFINE([HAVE_LIBDISPATCH], 1, [Define to 1 if you have the libdispatch (GCD) available]),
753 if test "x$XQUARTZ" = xyes ; then
767 dnl ---------------------------------------------------------------------------
768 dnl Extension section
769 dnl ---------------------------------------------------------------------------
770 XEXT_INC='-I$(top_srcdir)/Xext'
771 XEXT_LIB='$(top_builddir)/Xext/libXext.la'
774 VIDEOPROTO="videoproto"
775 COMPOSITEPROTO="compositeproto >= 0.4"
776 RECORDPROTO="recordproto >= 1.13.99.1"
777 SCRNSAVERPROTO="scrnsaverproto >= 1.1"
778 RESOURCEPROTO="resourceproto >= 1.2.0"
779 DRIPROTO="xf86driproto >= 2.1.0"
780 DRI2PROTO="dri2proto >= 2.8"
781 DRI3PROTO="dri3proto >= 1.0"
782 XINERAMAPROTO="xineramaproto"
783 BIGFONTPROTO="xf86bigfontproto >= 1.2.0"
784 DGAPROTO="xf86dgaproto >= 2.0.99.1"
785 GLPROTO="glproto >= 1.4.17"
786 DMXPROTO="dmxproto >= 2.2.99.1"
787 VIDMODEPROTO="xf86vidmodeproto >= 2.2.99.1"
788 WINDOWSWMPROTO="windowswmproto"
789 APPLEWMPROTO="applewmproto >= 1.4"
790 XSHMFENCE="xshmfence >= 1.1"
793 XPROTO="xproto >= 7.0.22"
794 RANDRPROTO="randrproto >= 1.4.0"
795 RENDERPROTO="renderproto >= 0.11"
796 XEXTPROTO="xextproto >= 7.2.99.901"
797 INPUTPROTO="inputproto >= 2.3"
798 KBPROTO="kbproto >= 1.0.3"
799 FONTSPROTO="fontsproto"
800 FIXESPROTO="fixesproto >= 5.0"
801 DAMAGEPROTO="damageproto >= 1.1"
802 XCMISCPROTO="xcmiscproto >= 1.2.0"
803 BIGREQSPROTO="bigreqsproto >= 1.1.0"
804 XTRANS="xtrans >= 1.3.2"
805 PRESENTPROTO="presentproto >= 1.0"
807 dnl List of libraries that require a specific version
808 LIBAPPLEWM="applewm >= 1.4"
809 LIBDMX="dmx >= 1.0.99.1"
810 LIBDRI="dri >= 7.8.0"
811 LIBDRM="libdrm >= 2.3.0"
813 LIBXEXT="xext >= 1.0.99.4"
814 LIBXFONT="xfont >= 1.4.2"
815 LIBXI="xi >= 1.2.99.1"
816 LIBXTST="xtst >= 1.0.99.2"
817 LIBPCIACCESS="pciaccess >= 0.12.901"
818 LIBUDEV="libudev >= 143"
819 LIBSELINUX="libselinux >= 2.0.86"
820 LIBDBUS="dbus-1 >= 1.0"
821 LIBPIXMAN="pixman-1 >= 0.27.2"
823 dnl Pixman is always required, but we separate it out so we can link
824 dnl specific modules against it
825 PKG_CHECK_MODULES(PIXMAN, $LIBPIXMAN)
826 REQUIRED_LIBS="$REQUIRED_LIBS $LIBPIXMAN $LIBXFONT xau"
828 dnl Core modules for most extensions, et al.
829 SDK_REQUIRED_MODULES="$XPROTO $RANDRPROTO $RENDERPROTO $XEXTPROTO $INPUTPROTO $KBPROTO $FONTSPROTO $LIBPIXMAN"
830 # Make SDK_REQUIRED_MODULES available for inclusion in xorg-server.pc
831 AC_SUBST(SDK_REQUIRED_MODULES)
833 REQUIRED_MODULES="$FIXESPROTO $DAMAGEPROTO $XCMISCPROTO $XTRANS $BIGREQSPROTO $SDK_REQUIRED_MODULES"
835 if test "x$CONFIG_UDEV" = xyes &&
836 { test "x$CONFIG_DBUS_API" = xyes || test "x$CONFIG_HAL" = xyes; }; then
837 AC_MSG_ERROR([Hotplugging through both libudev and dbus/hal not allowed])
840 PKG_CHECK_MODULES(UDEV, $LIBUDEV, [HAVE_LIBUDEV=yes], [HAVE_LIBUDEV=no])
841 if test "x$CONFIG_UDEV" = xauto; then
842 CONFIG_UDEV="$HAVE_LIBUDEV"
844 AM_CONDITIONAL(CONFIG_UDEV, [test "x$CONFIG_UDEV" = xyes])
845 if test "x$CONFIG_UDEV" = xyes; then
848 if test "x$CONFIG_UDEV_KMS" = xauto; then
849 CONFIG_UDEV_KMS="$HAVE_LIBUDEV"
851 if ! test "x$HAVE_LIBUDEV" = xyes; then
852 AC_MSG_ERROR([udev configuration API requested, but libudev is not installed])
854 AC_DEFINE(CONFIG_UDEV, 1, [Use libudev for input hotplug])
855 if test "x$CONFIG_UDEV_KMS" = xyes; then
856 AC_DEFINE(CONFIG_UDEV_KMS, 1, [Use libudev for kms enumeration])
862 AC_CHECK_FUNCS([udev_monitor_filter_add_match_tag])
863 AC_CHECK_FUNCS([udev_enumerate_add_match_tag])
867 AM_CONDITIONAL(CONFIG_UDEV_KMS, [test "x$CONFIG_UDEV_KMS" = xyes])
869 dnl HAVE_DBUS is true if we actually have the D-Bus library, whereas
870 dnl CONFIG_DBUS_API is true if we want to enable the D-Bus config
872 PKG_CHECK_MODULES(DBUS, $LIBDBUS, [HAVE_DBUS=yes], [HAVE_DBUS=no])
873 if test "x$HAVE_DBUS" = xyes; then
874 AC_DEFINE(HAVE_DBUS, 1, [Have D-Bus support])
876 AM_CONDITIONAL(HAVE_DBUS, [test "x$HAVE_DBUS" = xyes])
878 if test "x$CONFIG_DBUS_API" = xauto; then
879 CONFIG_DBUS_API="$HAVE_DBUS"
881 if test "x$CONFIG_DBUS_API" = xyes; then
882 if ! test "x$HAVE_DBUS" = xyes; then
883 AC_MSG_ERROR([D-Bus configuration API requested, but D-Bus is not installed.])
886 AC_DEFINE(CONFIG_DBUS_API, 1, [Use the D-Bus input configuration API])
887 CONFIG_NEED_DBUS="yes"
889 AM_CONDITIONAL(CONFIG_DBUS_API, [test "x$CONFIG_DBUS_API" = xyes])
891 PKG_CHECK_MODULES(HAL, hal, [HAVE_HAL=yes], [HAVE_HAL=no])
892 if test "x$CONFIG_HAL" = xauto; then
893 CONFIG_HAL="$HAVE_HAL"
895 if test "x$CONFIG_HAL" = xyes; then
896 if ! test "x$HAVE_HAL" = xyes; then
897 AC_MSG_ERROR([HAL hotplug API requested, but HAL is not installed.])
900 AC_DEFINE(CONFIG_HAL, 1, [Use the HAL hotplug API])
901 CONFIG_NEED_DBUS="yes"
903 AM_CONDITIONAL(CONFIG_HAL, [test "x$CONFIG_HAL" = xyes])
905 if test "x$CONFIG_NEED_DBUS" = xyes; then
906 AC_DEFINE(CONFIG_NEED_DBUS, 1, [Use D-Bus for input hotplug])
908 AM_CONDITIONAL(CONFIG_NEED_DBUS, [test "x$CONFIG_NEED_DBUS" = xyes])
910 if test "x$CONFIG_WSCONS" = xauto; then
920 AM_CONDITIONAL(CONFIG_WSCONS, [test "x$CONFIG_WSCONS" = xyes])
921 if test "x$CONFIG_WSCONS" = xyes; then
922 AC_DEFINE(CONFIG_WSCONS, 1, [Use wscons for input auto configuration])
925 if test "x$USE_SIGIO_BY_DEFAULT" = xyes; then
926 USE_SIGIO_BY_DEFAULT_VALUE=TRUE
928 USE_SIGIO_BY_DEFAULT_VALUE=FALSE
930 AC_DEFINE_UNQUOTED([USE_SIGIO_BY_DEFAULT], [$USE_SIGIO_BY_DEFAULT_VALUE],
931 [Use SIGIO handlers for input device events by default])
933 AC_MSG_CHECKING([for glibc...])
934 AC_PREPROC_IFELSE([AC_LANG_SOURCE([
935 #include <features.h>
939 ])], glibc=yes, glibc=no)
940 AC_MSG_RESULT([$glibc])
942 AC_CHECK_FUNCS([clock_gettime], [have_clock_gettime=yes],
943 [AC_CHECK_LIB([rt], [clock_gettime], [have_clock_gettime=-lrt],
944 [have_clock_gettime=no])])
946 AC_MSG_CHECKING([for a useful monotonic clock ...])
948 if ! test "x$have_clock_gettime" = xno; then
949 if ! test "x$have_clock_gettime" = xyes; then
950 CLOCK_LIBS="$have_clock_gettime"
957 CPPFLAGS_SAVE="$CPPFLAGS"
959 if test x"$glibc" = xyes; then
960 CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE=200112L"
963 AC_RUN_IFELSE([AC_LANG_SOURCE([
966 int main(int argc, char *argv[[]]) {
969 if (clock_gettime(CLOCK_MONOTONIC, &tp) == 0)
974 ])], [MONOTONIC_CLOCK=yes], [MONOTONIC_CLOCK=no],
975 [MONOTONIC_CLOCK="cross compiling"])
978 CPPFLAGS="$CPPFLAGS_SAVE"
983 AC_MSG_RESULT([$MONOTONIC_CLOCK])
985 if test "x$MONOTONIC_CLOCK" = xyes; then
986 AC_DEFINE(MONOTONIC_CLOCK, 1, [Have monotonic clock from clock_gettime()])
987 LIBS="$LIBS $CLOCK_LIBS"
990 AM_CONDITIONAL(XV, [test "x$XV" = xyes])
991 if test "x$XV" = xyes; then
992 AC_DEFINE(XV, 1, [Support Xv extension])
993 AC_DEFINE(XvExtension, 1, [Build Xv extension])
994 REQUIRED_MODULES="$REQUIRED_MODULES $VIDEOPROTO"
995 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $VIDEOPROTO"
1000 AM_CONDITIONAL(XVMC, [test "x$XVMC" = xyes])
1001 if test "x$XVMC" = xyes; then
1002 AC_DEFINE(XvMCExtension, 1, [Build XvMC extension])
1005 AM_CONDITIONAL(XREGISTRY, [test "x$XREGISTRY" = xyes])
1006 if test "x$XREGISTRY" = xyes; then
1007 AC_DEFINE(XREGISTRY, 1, [Build registry module])
1010 AM_CONDITIONAL(COMPOSITE, [test "x$COMPOSITE" = xyes])
1011 if test "x$COMPOSITE" = xyes; then
1012 AC_DEFINE(COMPOSITE, 1, [Support Composite Extension])
1013 REQUIRED_MODULES="$REQUIRED_MODULES $COMPOSITEPROTO"
1014 COMPOSITE_LIB='$(top_builddir)/composite/libcomposite.la'
1015 COMPOSITE_INC='-I$(top_srcdir)/composite'
1018 if test "x$MITSHM" = xauto; then
1019 MITSHM="$ac_cv_sysv_ipc"
1021 AM_CONDITIONAL(MITSHM, [test "x$MITSHM" = xyes])
1022 if test "x$MITSHM" = xyes; then
1023 AC_DEFINE(MITSHM, 1, [Support MIT-SHM extension])
1024 AC_DEFINE(HAS_SHM, 1, [Support SHM])
1027 AM_CONDITIONAL(RECORD, [test "x$RECORD" = xyes])
1028 if test "x$RECORD" = xyes; then
1029 AC_DEFINE(XRECORD, 1, [Support Record extension])
1030 REQUIRED_MODULES="$REQUIRED_MODULES $RECORDPROTO"
1031 RECORD_LIB='$(top_builddir)/record/librecord.la'
1034 AM_CONDITIONAL(SCREENSAVER, [test "x$SCREENSAVER" = xyes])
1035 if test "x$SCREENSAVER" = xyes; then
1036 AC_DEFINE(SCREENSAVER, 1, [Support MIT-SCREEN-SAVER extension])
1037 REQUIRED_MODULES="$REQUIRED_MODULES $SCRNSAVERPROTO"
1038 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $SCRNSAVERPROTO"
1041 AM_CONDITIONAL(RES, [test "x$RES" = xyes])
1042 if test "x$RES" = xyes; then
1043 AC_DEFINE(RES, 1, [Support X resource extension])
1044 REQUIRED_MODULES="$REQUIRED_MODULES $RESOURCEPROTO"
1045 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $RESOURCEPROTO"
1048 # The XRes extension may support client ID tracking only if it has
1049 # been specifically enabled. Client ID tracking is implicitly not
1050 # supported if XRes extension is disabled.
1051 AC_MSG_CHECKING([whether to track client ids])
1052 if test "x$RES" = xyes && test "x$CLIENTIDS" = xyes; then
1053 AC_DEFINE(CLIENTIDS, 1, [Support client ID tracking])
1057 if test "x$CLIENTIDS" = xyes; then
1060 SYS_LIBS="$SYS_LIBS -lkvm"
1064 AC_MSG_RESULT([$CLIENTIDS])
1065 AM_CONDITIONAL(CLIENTIDS, [test "x$CLIENTIDS" = xyes])
1067 AM_CONDITIONAL(DRI, test "x$DRI" = xyes)
1068 if test "x$DRI" = xyes; then
1069 AC_DEFINE(XF86DRI, 1, [Build DRI extension])
1070 REQUIRED_MODULES="$REQUIRED_MODULES $DRIPROTO $GLPROTO $LIBDRI"
1071 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $DRIPROTO $GLPROTO $LIBDRI"
1074 PKG_CHECK_MODULES([DRI2PROTO], $DRI2PROTO,
1075 [HAVE_DRI2PROTO=yes], [HAVE_DRI2PROTO=no])
1076 case "$DRI2,$HAVE_DRI2PROTO" in
1078 AC_MSG_ERROR([DRI2 requested, but dri2proto not found.])
1081 AC_DEFINE(DRI2, 1, [Build DRI2 extension])
1084 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $DRI2PROTO"
1087 AM_CONDITIONAL(DRI2, test "x$DRI2" = xyes)
1090 dnl Locate a suitable tmp file system for creating shared memeory files
1093 AC_ARG_WITH(shared-memory-dir, AS_HELP_STRING([--with-shared-memory-dir=PATH], [Path to directory in a world-writable temporary directory for anonymous shared memory (default: auto)]),
1095 [with_shared_memory_dir=yes])
1097 shmdirs="/run/shm /var/tmp /tmp"
1099 case x"$with_shared_memory_dir" in
1101 for dir in $shmdirs; do
1102 case x"$with_shared_memory_dir" in
1104 echo Checking temp dir "$dir"
1105 if test -d "$dir"; then
1106 with_shared_memory_dir="$dir"
1117 AC_MSG_ERROR([Invalid directory specified for --with-shared-memory-dir: $with_shared_memory_dir])
1121 case x"$with_shared_memory_dir" in
1123 AC_MSG_ERROR([No directory found for shared memory temp files.])
1128 AC_DEFINE_UNQUOTED(SHMDIR, ["$with_shared_memory_dir"], [Directory for shared memory temp files])
1132 AC_ARG_ENABLE(xtrans-send-fds, AS_HELP_STRING([--disable-xtrans-send-fds], [Use Xtrans support for fd passing (default: auto)]), [XTRANS_SEND_FDS=$enableval], [XTRANS_SEND_FDS=auto])
1134 case "x$XTRANS_SEND_FDS" in
1146 case "x$XTRANS_SEND_FDS" in
1148 AC_DEFINE(XTRANS_SEND_FDS, 1, [Enable xtrans fd passing support])
1152 case "$DRI3,$XTRANS_SEND_FDS" in
1156 AC_MSG_ERROR([DRI3 requested, but xtrans fd passing support not found.])
1162 AC_MSG_NOTICE([DRI3 disabled because xtrans fd passing support not found.])
1167 PKG_CHECK_MODULES([DRI3PROTO], $DRI3PROTO,
1168 [HAVE_DRI3PROTO=yes], [HAVE_DRI3PROTO=no])
1170 case "$DRI3,$HAVE_DRI3PROTO" in
1174 AC_MSG_ERROR([DRI3 requested, but dri3proto not found.])
1180 AC_MSG_NOTICE([DRI3 disabled because dri3proto not found.])
1185 AC_CHECK_FUNCS([sigaction])
1189 case x"$ac_cv_func_sigaction" in
1191 AC_DEFINE(HAVE_SIGACTION, 1, [Have sigaction function])
1196 case x"$BUSFAULT" in
1198 AC_DEFINE(BUSFAULT, 1, [Include busfault OS API])
1202 AM_CONDITIONAL(BUSFAULT, test x"$BUSFAULT" = xyes)
1204 PKG_CHECK_MODULES([XSHMFENCE], $XSHMFENCE,
1205 [HAVE_XSHMFENCE=yes], [HAVE_XSHMFENCE=no])
1207 AM_CONDITIONAL(XSHMFENCE, test "x$HAVE_XSHMFENCE" = xyes)
1209 case x"$HAVE_XSHMFENCE" in
1211 AC_DEFINE(HAVE_XSHMFENCE, 1, [Have X Shared Memory Fence library])
1212 REQUIRED_LIBS="$REQUIRED_LIBS xshmfence"
1217 case "$DRI3,$HAVE_XSHMFENCE" in
1221 AC_MSG_ERROR([DRI3 requested, but xshmfence not found.])
1227 AC_MSG_NOTICE([DRI3 disabled because xshmfence not found.])
1235 AC_DEFINE(DRI3, 1, [Build DRI3 extension])
1236 DRI3_LIB='$(top_builddir)/dri3/libdri3.la'
1237 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $DRI3PROTO"
1238 AC_MSG_NOTICE([DRI3 enabled]);
1242 AM_CONDITIONAL(DRI3, test "x$DRI3" = xyes)
1244 if test "x$DRI" = xyes || test "x$DRI2" = xyes || test "x$DRI3" = xyes || test "x$CONFIG_UDEV_KMS" = xyes; then
1245 if test "x$DRM" = xyes; then
1246 AC_DEFINE(WITH_LIBDRM, 1, [Building with libdrm support])
1247 PKG_CHECK_MODULES([LIBDRM], $LIBDRM)
1251 if test "x$DRI2" = xyes; then
1253 CFLAGS="$GL_CFLAGS $LIBDRM_CFLAGS"
1254 AC_COMPILE_IFELSE([AC_LANG_SOURCE([[#include <GL/gl.h>
1255 #include <GL/internal/dri_interface.h>
1257 #error DRI2 extension not available.
1259 [HAVE_DRI2EXTENSION=yes],
1260 [HAVE_DRI2EXTENSION=no])
1262 if test "x$HAVE_DRI2EXTENSION" = xyes; then
1263 AC_DEFINE(DRI2_AIGLX, 1, [Build DRI2 AIGLX loader])
1266 AC_MSG_NOTICE([DRI2 AIGLX disabled, __DRI_DRI2 not defined in dri_interface.h.])
1270 AM_CONDITIONAL(DRI2_AIGLX, test "x$DRI2_AIGLX" = xyes)
1272 if test "x$GLX" = xyes; then
1273 PKG_CHECK_MODULES([XLIB], [x11])
1274 PKG_CHECK_MODULES([GL], $GLPROTO $LIBGL)
1275 AC_SUBST(XLIB_CFLAGS)
1276 AC_DEFINE(GLXEXT, 1, [Build GLX extension])
1277 GLX_LIBS='$(top_builddir)/glx/libglx.la'
1278 GLX_SYS_LIBS="$GLX_SYS_LIBS $GL_LIBS"
1282 AM_CONDITIONAL(GLX, test "x$GLX" = xyes)
1284 if test "x$GLX" = xno; then
1288 if test "x$AIGLX" = xyes -a \( "x$DRI2" = xyes \); then
1289 AC_DEFINE(AIGLX, 1, [Build AIGLX loader])
1291 AM_CONDITIONAL(AIGLX_DRI_LOADER, { test "x$DRI2" = xyes; } && test "x$AIGLX" = xyes)
1293 if test "x$GLX_USE_TLS" = xyes ; then
1294 GLX_DEFINES="-DGLX_USE_TLS -DPTHREADS"
1295 GLX_SYS_LIBS="$GLX_SYS_LIBS -lpthread"
1297 AC_SUBST([GLX_DEFINES])
1298 AC_SUBST([GLX_SYS_LIBS])
1300 AM_CONDITIONAL(PRESENT, [test "x$PRESENT" = xyes])
1301 if test "x$PRESENT" = xyes; then
1302 AC_DEFINE(PRESENT, 1, [Support Present extension])
1303 REQUIRED_MODULES="$REQUIRED_MODULES $PRESENTPROTO"
1304 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $PRESENTPROTO"
1305 PRESENT_INC='-I$(top_srcdir)/present'
1306 PRESENT_LIB='$(top_builddir)/present/libpresent.la'
1309 AM_CONDITIONAL(XINERAMA, [test "x$XINERAMA" = xyes])
1310 if test "x$XINERAMA" = xyes; then
1311 AC_DEFINE(XINERAMA, 1, [Support Xinerama extension])
1312 AC_DEFINE(PANORAMIX, 1, [Internal define for Xinerama])
1313 REQUIRED_MODULES="$REQUIRED_MODULES $XINERAMAPROTO"
1314 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $XINERAMAPROTO"
1317 AM_CONDITIONAL(XACE, [test "x$XACE" = xyes])
1318 if test "x$XACE" = xyes; then
1319 AC_DEFINE(XACE, 1, [Build X-ACE extension])
1322 AM_CONDITIONAL(XSELINUX, [test "x$XSELINUX" = xyes])
1323 if test "x$XSELINUX" = xyes; then
1324 if test "x$XACE" != xyes; then
1325 AC_MSG_ERROR([cannot build SELinux extension without X-ACE])
1327 AC_CHECK_HEADERS([libaudit.h], [], AC_MSG_ERROR([SELinux extension requires audit system headers]))
1328 AC_CHECK_LIB(audit, audit_open, [], AC_MSG_ERROR([SELinux extension requires audit system library]))
1329 PKG_CHECK_MODULES([SELINUX], $LIBSELINUX)
1330 SELINUX_LIBS="$SELINUX_LIBS -laudit"
1331 AC_DEFINE(XSELINUX, 1, [Build SELinux extension])
1334 AM_CONDITIONAL(XCSECURITY, [test "x$XCSECURITY" = xyes])
1335 if test "x$XCSECURITY" = xyes; then
1336 if test "x$XACE" != xyes; then
1337 AC_MSG_ERROR([cannot build Security extension without X-ACE])
1339 AC_DEFINE(XCSECURITY, 1, [Build Security extension])
1342 AM_CONDITIONAL(DBE, [test "x$DBE" = xyes])
1343 if test "x$DBE" = xyes; then
1344 AC_DEFINE(DBE, 1, [Support DBE extension])
1345 DBE_LIB='$(top_builddir)/dbe/libdbe.la'
1346 DBE_INC='-I$(top_srcdir)/dbe'
1349 AM_CONDITIONAL(XF86BIGFONT, [test "x$XF86BIGFONT" = xyes])
1350 if test "x$XF86BIGFONT" = xyes; then
1351 AC_DEFINE(XF86BIGFONT, 1, [Support XF86 Big font extension])
1352 REQUIRED_MODULES="$REQUIRED_MODULES $BIGFONTPROTO"
1353 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $BIGFONTPROTO"
1356 AM_CONDITIONAL(DPMSExtension, [test "x$DPMSExtension" = xyes])
1357 if test "x$DPMSExtension" = xyes; then
1358 AC_DEFINE(DPMSExtension, 1, [Support DPMS extension])
1361 AC_DEFINE(RENDER, 1, [Support RENDER extension])
1362 RENDER_LIB='$(top_builddir)/render/librender.la'
1363 RENDER_INC='-I$(top_srcdir)/render'
1365 AC_DEFINE(RANDR, 1, [Support RANDR extension])
1366 RANDR_LIB='$(top_builddir)/randr/librandr.la'
1367 RANDR_INC='-I$(top_srcdir)/randr'
1369 AC_DEFINE(XFIXES,1,[Support XFixes extension])
1370 FIXES_LIB='$(top_builddir)/xfixes/libxfixes.la'
1371 FIXES_INC='-I$(top_srcdir)/xfixes'
1373 AC_DEFINE(DAMAGE,1,[Support Damage extension])
1374 DAMAGE_LIB='$(top_builddir)/damageext/libdamageext.la'
1375 DAMAGE_INC='-I$(top_srcdir)/damageext'
1376 MIEXT_DAMAGE_LIB='$(top_builddir)/miext/damage/libdamage.la'
1377 MIEXT_DAMAGE_INC='-I$(top_srcdir)/miext/damage'
1379 # XINPUT extension is integral part of the server
1380 AC_DEFINE(XINPUT, 1, [Support X Input extension])
1381 XI_LIB='$(top_builddir)/Xi/libXi.la'
1382 XI_INC='-I$(top_srcdir)/Xi'
1384 AM_CONDITIONAL(XF86UTILS, test "x$XF86UTILS" = xyes)
1385 AM_CONDITIONAL(VGAHW, test "x$VGAHW" = xyes)
1386 AM_CONDITIONAL(VBE, test "x$VBE" = xyes)
1387 AM_CONDITIONAL(INT10MODULE, test "x$INT10MODULE" = xyes)
1389 AC_DEFINE(SHAPE, 1, [Support SHAPE extension])
1391 AC_DEFINE_DIR(XKB_BASE_DIRECTORY, XKBPATH, [Path to XKB data])
1392 AC_ARG_WITH(xkb-bin-directory,
1393 AS_HELP_STRING([--with-xkb-bin-directory=DIR], [Directory containing xkbcomp program]),
1394 [XKB_BIN_DIRECTORY="$withval"],
1395 [XKB_BIN_DIRECTORY="$bindir"])
1397 AC_DEFINE_DIR(XKB_BIN_DIRECTORY, XKB_BIN_DIRECTORY, [Path to XKB bin dir])
1399 dnl Make sure XKM_OUTPUT_DIR is an absolute path
1400 XKBOUTPUT_FIRSTCHAR=`echo $XKBOUTPUT | cut -b 1`
1401 if [[ x$XKBOUTPUT_FIRSTCHAR != x/ -a x$XKBOUTPUT_FIRSTCHAR != 'x$' ]] ; then
1402 XKBOUTPUT="$XKB_BASE_DIRECTORY/$XKBOUTPUT"
1405 dnl XKM_OUTPUT_DIR (used in code) must end in / or file names get hosed
1406 dnl XKB_COMPILED_DIR (used in Makefiles) must not or install-sh gets confused
1408 XKBOUTPUT=`echo $XKBOUTPUT/ | $SED 's|/*$|/|'`
1409 XKB_COMPILED_DIR=`echo $XKBOUTPUT | $SED 's|/*$||'`
1410 AC_DEFINE_DIR(XKM_OUTPUT_DIR, XKBOUTPUT, [Path to XKB output dir])
1411 AC_SUBST(XKB_COMPILED_DIR)
1413 if test "x$XKB_DFLT_RULES" = x; then
1416 dnl doesn't take AutoAddDevices into account, but whatever.
1417 XKB_DFLT_RULES="evdev"
1420 XKB_DFLT_RULES="base"
1424 AC_DEFINE_UNQUOTED(XKB_DFLT_RULES, ["$XKB_DFLT_RULES"], [Default XKB ruleset])
1425 AC_DEFINE_UNQUOTED(XKB_DFLT_MODEL, ["$XKB_DFLT_MODEL"], [Default XKB model])
1426 AC_DEFINE_UNQUOTED(XKB_DFLT_LAYOUT, ["$XKB_DFLT_LAYOUT"], [Default XKB layout])
1427 AC_DEFINE_UNQUOTED(XKB_DFLT_VARIANT, ["$XKB_DFLT_VARIANT"], [Default XKB variant])
1428 AC_DEFINE_UNQUOTED(XKB_DFLT_OPTIONS, ["$XKB_DFLT_OPTIONS"], [Default XKB options])
1429 AC_SUBST([XKB_DFLT_RULES])
1430 AC_SUBST([XKB_DFLT_MODEL])
1431 AC_SUBST([XKB_DFLT_LAYOUT])
1432 AC_SUBST([XKB_DFLT_VARIANT])
1433 AC_SUBST([XKB_DFLT_OPTIONS])
1435 XKB_LIB='$(top_builddir)/xkb/libxkb.la'
1436 XKB_STUB_LIB='$(top_builddir)/xkb/libxkbstubs.la'
1437 REQUIRED_MODULES="$REQUIRED_MODULES xkbfile"
1439 PKG_CHECK_MODULES([XDMCP], [xdmcp], [have_libxdmcp="yes"], [have_libxdmcp="no"])
1440 if test "x$have_libxdmcp" = xyes; then
1441 AC_CHECK_LIB(Xdmcp, XdmcpWrap, [have_xdmcpwrap="yes"], [have_xdmcpwrap="no"], [$XDMCP_LIBS])
1443 if test "x$XDMCP" = xauto; then
1444 if test "x$have_libxdmcp" = xyes; then
1450 if test "x$XDMAUTH" = xauto; then
1451 if test "x$have_libxdmcp" = xyes && test "x$have_xdmcpwrap" = xyes; then
1458 AM_CONDITIONAL(XDMCP, [test "x$XDMCP" = xyes])
1459 if test "x$XDMCP" = xyes; then
1460 AC_DEFINE(XDMCP, 1, [Support XDM Control Protocol])
1461 REQUIRED_LIBS="$REQUIRED_LIBS xdmcp"
1462 XDMCP_MODULES="xdmcp"
1465 AM_CONDITIONAL(XDMAUTH, [test "x$XDMAUTH" = xyes])
1466 if test "x$XDMAUTH" = xyes; then
1467 AC_DEFINE(HASXDMAUTH,1,[Support XDM-AUTH*-1])
1468 if ! test "x$XDMCP" = xyes; then
1469 REQUIRED_LIBS="$REQUIRED_LIBS xdmcp"
1470 XDMCP_MODULES="xdmcp"
1474 AC_DEFINE_DIR(COMPILEDDEFAULTFONTPATH, FONTPATH, [Default font path])
1475 AC_DEFINE_DIR(SERVER_MISC_CONFIG_PATH, SERVERCONFIG, [Server miscellaneous config path])
1476 AC_DEFINE_DIR(BASE_FONT_PATH, FONTROOTDIR, [Default base font path])
1477 dridriverdir=`$PKG_CONFIG --variable=dridriverdir dri`
1478 AC_DEFINE_DIR(DRI_DRIVER_PATH, dridriverdir, [Default DRI driver path])
1479 AC_DEFINE_UNQUOTED(XVENDORNAME, ["$VENDOR_NAME"], [Vendor name])
1480 AC_DEFINE_UNQUOTED(XVENDORNAMESHORT, ["$VENDOR_NAME_SHORT"], [Short vendor name])
1481 AC_DEFINE_UNQUOTED(XORG_DATE, ["$RELEASE_DATE"], [Vendor release])
1482 AC_DEFINE_UNQUOTED(XORG_MAN_VERSION, ["$VENDOR_MAN_VERSION"], [Vendor man version])
1483 AC_DEFINE_UNQUOTED(BUILDERADDR, ["$BUILDERADDR"], [Builder address])
1485 if test -z "$OSNAME"; then
1489 AC_DEFINE_UNQUOTED(OSNAME, ["$OSNAME"], [Operating System Name])
1490 AC_DEFINE_UNQUOTED(OSVENDOR, ["$OSVENDOR"], [Operating System Vendor])
1491 AC_DEFINE_UNQUOTED(BUILDERSTRING, ["$BUILDERSTRING"], [Builder string])
1493 AC_SUBST([VENDOR_NAME_SHORT])
1494 AC_DEFINE_UNQUOTED(VENDOR_NAME, ["$VENDOR_NAME"], [Vendor name])
1495 AC_DEFINE_UNQUOTED(VENDOR_NAME_SHORT, ["$VENDOR_NAME_SHORT"], [Vendor name])
1496 AC_DEFINE_UNQUOTED(VENDOR_RELEASE, [$VENDOR_RELEASE], [Vendor release])
1497 AC_DEFINE_UNQUOTED(VENDOR_MAN_VERSION, ["$VENDOR_MAN_VERSION"], [Vendor man version])
1499 AC_DEFINE(NO_LIBCWRAPPER, 1, [Define to 1 if modules should avoid the libcwrapper])
1501 if test "x$DEBUGGING" = xyes; then
1502 AC_DEFINE(DEBUG, 1, [Enable debugging code])
1504 AM_CONDITIONAL(DEBUG, [test "x$DEBUGGING" = xyes])
1506 AC_DEFINE(XTEST, 1, [Support XTest extension])
1507 AC_DEFINE(XSYNC, 1, [Support XSync extension])
1508 AC_DEFINE(XCMISC, 1, [Support XCMisc extension])
1509 AC_DEFINE(BIGREQS, 1, [Support BigRequests extension])
1511 if test "x$SPECIAL_DTRACE_OBJECTS" = "xyes" ; then
1512 DIX_LIB='$(top_builddir)/dix/dix.O'
1513 OS_LIB='$(top_builddir)/os/os.O $(SHA1_LIBS) $(DLOPEN_LIBS) $(LIBUNWIND_LIBS)'
1515 DIX_LIB='$(top_builddir)/dix/libdix.la'
1516 OS_LIB='$(top_builddir)/os/libos.la'
1521 MAIN_LIB='$(top_builddir)/dix/libmain.la'
1522 AC_SUBST([MAIN_LIB])
1524 MI_LIB='$(top_builddir)/mi/libmi.la'
1525 MI_EXT_LIB='$(top_builddir)/mi/libmiext.la'
1526 MI_INC='-I$(top_srcdir)/mi'
1527 FB_LIB='$(top_builddir)/fb/libfb.la'
1528 FB_INC='-I$(top_srcdir)/fb'
1529 MIEXT_SHADOW_INC='-I$(top_srcdir)/miext/shadow'
1530 MIEXT_SHADOW_LIB='$(top_builddir)/miext/shadow/libshadow.la'
1531 MIEXT_SYNC_INC='-I$(top_srcdir)/miext/sync'
1532 MIEXT_SYNC_LIB='$(top_builddir)/miext/sync/libsync.la'
1533 CORE_INCS='-I$(top_srcdir)/include -I$(top_builddir)/include'
1537 [AS_HELP_STRING([--with-sha1=libc|libmd|libnettle|libgcrypt|libcrypto|libsha1|CommonCrypto|CryptoAPI],
1538 [choose SHA1 implementation])])
1539 AC_CHECK_FUNC([SHA1Init], [HAVE_SHA1_IN_LIBC=yes])
1540 if test "x$with_sha1" = x && test "x$HAVE_SHA1_IN_LIBC" = xyes; then
1543 if test "x$with_sha1" = xlibc && test "x$HAVE_SHA1_IN_LIBC" != xyes; then
1544 AC_MSG_ERROR([libc requested but not found])
1546 if test "x$with_sha1" = xlibc; then
1547 AC_DEFINE([HAVE_SHA1_IN_LIBC], [1],
1548 [Use libc SHA1 functions])
1551 AC_CHECK_FUNC([CC_SHA1_Init], [HAVE_SHA1_IN_COMMONCRYPTO=yes])
1552 if test "x$with_sha1" = x && test "x$HAVE_SHA1_IN_COMMONCRYPTO" = xyes; then
1553 with_sha1=CommonCrypto
1555 if test "x$with_sha1" = xCommonCrypto && test "x$HAVE_SHA1_IN_COMMONCRYPTO" != xyes; then
1556 AC_MSG_ERROR([CommonCrypto requested but not found])
1558 if test "x$with_sha1" = xCommonCrypto; then
1559 AC_DEFINE([HAVE_SHA1_IN_COMMONCRYPTO], [1],
1560 [Use CommonCrypto SHA1 functions])
1563 dnl stdcall functions cannot be tested with AC_CHECK_LIB
1564 AC_CHECK_HEADER([wincrypt.h], [HAVE_SHA1_IN_CRYPTOAPI=yes], [], [#include <windows.h>])
1565 if test "x$with_sha1" = x && test "x$HAVE_SHA1_IN_CRYPTOAPI" = xyes; then
1568 if test "x$with_sha1" = xCryptoAPI && test "x$HAVE_SHA1_IN_CRYPTOAPI" != xyes; then
1569 AC_MSG_ERROR([CryptoAPI requested but not found])
1571 if test "x$with_sha1" = xCryptoAPI; then
1572 AC_DEFINE([HAVE_SHA1_IN_CRYPTOAPI], [1],
1573 [Use CryptoAPI SHA1 functions])
1576 AC_CHECK_LIB([md], [SHA1Init], [HAVE_LIBMD=yes])
1577 if test "x$with_sha1" = x && test "x$HAVE_LIBMD" = xyes; then
1580 if test "x$with_sha1" = xlibmd && test "x$HAVE_LIBMD" != xyes; then
1581 AC_MSG_ERROR([libmd requested but not found])
1583 if test "x$with_sha1" = xlibmd; then
1584 AC_DEFINE([HAVE_SHA1_IN_LIBMD], [1],
1585 [Use libmd SHA1 functions])
1588 PKG_CHECK_MODULES([LIBSHA1], [libsha1], [HAVE_LIBSHA1=yes], [HAVE_LIBSHA1=no])
1589 if test "x$with_sha1" = x && test "x$HAVE_LIBSHA1" = xyes; then
1592 if test "x$with_sha1" = xlibsha1 && test "x$HAVE_LIBSHA1" != xyes; then
1593 AC_MSG_ERROR([libsha1 requested but not found])
1595 if test "x$with_sha1" = xlibsha1; then
1596 AC_DEFINE([HAVE_SHA1_IN_LIBSHA1], [1],
1597 [Use libsha1 for SHA1])
1600 AC_CHECK_LIB([nettle], [nettle_sha1_init], [HAVE_LIBNETTLE=yes])
1601 if test "x$with_sha1" = x && test "x$HAVE_LIBNETTLE" = xyes; then
1604 if test "x$with_sha1" = xlibnettle && test "x$HAVE_LIBNETTLE" != xyes; then
1605 AC_MSG_ERROR([libnettle requested but not found])
1607 if test "x$with_sha1" = xlibnettle; then
1608 AC_DEFINE([HAVE_SHA1_IN_LIBNETTLE], [1],
1609 [Use libnettle SHA1 functions])
1612 AC_CHECK_LIB([gcrypt], [gcry_md_open], [HAVE_LIBGCRYPT=yes])
1613 if test "x$with_sha1" = x && test "x$HAVE_LIBGCRYPT" = xyes; then
1616 if test "x$with_sha1" = xlibgcrypt && test "x$HAVE_LIBGCRYPT" != xyes; then
1617 AC_MSG_ERROR([libgcrypt requested but not found])
1619 if test "x$with_sha1" = xlibgcrypt; then
1620 AC_DEFINE([HAVE_SHA1_IN_LIBGCRYPT], [1],
1621 [Use libgcrypt SHA1 functions])
1624 # We don't need all of the OpenSSL libraries, just libcrypto
1625 AC_CHECK_LIB([crypto], [SHA1_Init], [HAVE_LIBCRYPTO=yes])
1626 PKG_CHECK_MODULES([OPENSSL], [openssl], [HAVE_OPENSSL_PKC=yes],
1627 [HAVE_OPENSSL_PKC=no])
1628 if test "x$HAVE_LIBCRYPTO" = xyes || test "x$HAVE_OPENSSL_PKC" = xyes; then
1629 if test "x$with_sha1" = x; then
1633 if test "x$with_sha1" = xlibcrypto; then
1634 AC_MSG_ERROR([OpenSSL libcrypto requested but not found])
1637 if test "x$with_sha1" = xlibcrypto; then
1638 if test "x$HAVE_LIBCRYPTO" = xyes; then
1641 SHA1_LIBS="$OPENSSL_LIBS"
1642 SHA1_CFLAGS="$OPENSSL_CFLAGS"
1645 AC_MSG_CHECKING([for SHA1 implementation])
1646 if test "x$with_sha1" = x; then
1647 AC_MSG_ERROR([No suitable SHA1 implementation found])
1649 AC_MSG_RESULT([$with_sha1])
1651 AC_SUBST(SHA1_CFLAGS)
1653 PKG_CHECK_MODULES([XSERVERCFLAGS], [$REQUIRED_MODULES $REQUIRED_LIBS])
1654 PKG_CHECK_MODULES([XSERVERLIBS], [$REQUIRED_LIBS])
1656 PKG_CHECK_MODULES(LIBUNWIND, libunwind, [HAVE_LIBUNWIND=yes], [HAVE_LIBUNWIND=no])
1657 if test "x$LIBUNWIND" = "xauto"; then
1658 LIBUNWIND="$HAVE_LIBUNWIND"
1661 if test "x$LIBUNWIND" = "xyes"; then
1662 if test "x$HAVE_LIBUNWIND" != "xyes"; then
1663 AC_MSG_ERROR([libunwind requested but not installed.])
1665 AC_DEFINE(HAVE_LIBUNWIND, 1, [Have libunwind support])
1668 AM_CONDITIONAL(HAVE_LIBUNWIND, [test "x$LIBUNWIND" = xyes])
1670 # Autotools has some unfortunate issues with library handling. In order to
1671 # get a server to rebuild when a dependency in the tree is changed, it must
1672 # be listed in SERVERNAME_DEPENDENCIES. However, no system libraries may be
1673 # listed there, or some versions of autotools will break (especially if a -L
1674 # is required to find the library). So, we keep two sets of libraries
1675 # detected: NAMESPACE_LIBS for in-tree libraries to be linked against, which
1676 # will go into the _DEPENDENCIES and _LDADD of the server, and
1677 # NAMESPACE_SYS_LIBS which will go into only the _LDADD. The
1678 # NAMESPACEMODULES_LIBS detected from pkgconfig should always go in
1679 # NAMESPACE_SYS_LIBS.
1681 # XSERVER_LIBS is the set of in-tree libraries which all servers require.
1682 # XSERVER_SYS_LIBS is the set of out-of-tree libraries which all servers
1685 XSERVER_CFLAGS="${XSERVER_CFLAGS} ${XSERVERCFLAGS_CFLAGS}"
1686 XSERVER_LIBS="$DIX_LIB $MI_LIB $OS_LIB"
1687 XSERVER_SYS_LIBS="${XSERVERLIBS_LIBS} ${SYS_LIBS} ${LIBS}"
1688 AC_SUBST([XSERVER_LIBS])
1689 AC_SUBST([XSERVER_SYS_LIBS])
1691 UTILS_SYS_LIBS="${SYS_LIBS}"
1692 AC_SUBST([UTILS_SYS_LIBS])
1694 # The Xorg binary needs to export symbols so that they can be used from modules
1695 # Some platforms require extra flags to do this. libtool should set the
1696 # necessary flags for each platform when -export-dynamic is passed to it.
1697 LD_EXPORT_SYMBOLS_FLAG="-export-dynamic"
1698 LD_NO_UNDEFINED_FLAG=
1702 LD_EXPORT_SYMBOLS_FLAG="-Wl,--export-all,--out-implib,lib\$@.a"
1703 LD_NO_UNDEFINED_FLAG="-no-undefined -Wl,\$(top_builddir)/hw/xfree86/libXorg.exe.a"
1704 XORG_DRIVER_LIBS="-lXorg.exe -L\${moduledir} -lshadow -lfb -no-undefined"
1708 # We use AC_LINK_IFELSE to generate a temporary program conftest$EXEEXT
1709 # that we can link against for testing if the system linker is new
1710 # enough to support -z parent=<program> for verifying loadable modules
1711 # are only calling functions defined in either the loading program or
1712 # the libraries they're linked with.
1714 [AC_LANG_SOURCE([int main(int argc, char **argv) { return 0; }])],
1715 [mv conftest$EXEEXT conftest.parent
1716 XORG_CHECK_LINKER_FLAGS([-Wl,-z,parent=conftest.parent -G],
1717 [LD_NO_UNDEFINED_FLAG="-Wl,-z,defs -Wl,-z,parent=\$(top_builddir)/hw/xfree86/Xorg"
1718 # Not set yet, since this gets exported in xorg-server.pc to all the drivers,
1719 # and they're not all fixed to build correctly with it yet.
1720 # XORG_DRIVER_LIBS="-Wl,-z,defs -Wl,-z,parent=${bindir}/Xorg"
1722 [AC_LANG_SOURCE([extern int main(int argc, char **argv);
1723 int call_main(void) { return main(0, NULL); }])])
1724 rm -f conftest.parent
1728 AC_SUBST([LD_EXPORT_SYMBOLS_FLAG])
1729 AC_SUBST([LD_NO_UNDEFINED_FLAG])
1730 AC_SUBST([XORG_DRIVER_LIBS])
1731 AM_CONDITIONAL([CYGWIN], [test x"$CYGWIN" = xyes])
1732 AM_CONDITIONAL([NO_UNDEFINED], [test x"$LD_NO_UNDEFINED_FLAG" != x])
1734 dnl Imake defines SVR4 on SVR4 systems, and many files check for it, so
1735 dnl we need to replicate that here until those can all be fixed
1736 AC_MSG_CHECKING([if SVR4 needs to be defined])
1737 AC_EGREP_CPP([I_AM_SVR4],[
1738 #if defined(SVR4) || defined(__svr4__) || defined(__SVR4)
1742 AC_DEFINE([SVR4],1,[Define to 1 on systems derived from System V Release 4])
1743 AC_MSG_RESULT([yes])], AC_MSG_RESULT([no]))
1745 XSERVER_CFLAGS="$XSERVER_CFLAGS $CORE_INCS $XEXT_INC $COMPOSITE_INC $DAMAGE_INC $FIXES_INC $XI_INC $MI_INC $MIEXT_SYNC_INC $MIEXT_SHADOW_INC $MIEXT_LAYER_INC $MIEXT_DAMAGE_INC $RENDER_INC $RANDR_INC $FB_INC $DBE_INC $PRESENT_INC"
1747 dnl ---------------------------------------------------------------------------
1749 dnl ---------------------------------------------------------------------------
1753 AC_MSG_CHECKING([whether to build Xvfb DDX])
1754 AC_MSG_RESULT([$XVFB])
1755 AM_CONDITIONAL(XVFB, [test "x$XVFB" = xyes])
1757 if test "x$XVFB" = xyes; then
1758 XVFB_LIBS="$FB_LIB $FIXES_LIB $XEXT_LIB $DBE_LIB $RECORD_LIB $GLX_LIBS $RANDR_LIB $RENDER_LIB $DAMAGE_LIB $DRI3_LIB $PRESENT_LIB $MIEXT_SYNC_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB"
1759 XVFB_SYS_LIBS="$XVFBMODULES_LIBS $GLX_SYS_LIBS"
1760 AC_SUBST([XVFB_LIBS])
1761 AC_SUBST([XVFB_SYS_LIBS])
1767 PKG_CHECK_MODULES(XNESTMODULES, [$LIBXEXT x11 xau $XDMCP_MODULES], [have_xnest=yes], [have_xnest=no])
1768 AC_MSG_CHECKING([whether to build Xnest DDX])
1769 if test "x$XNEST" = xauto; then
1772 AC_MSG_RESULT([$XNEST])
1773 AM_CONDITIONAL(XNEST, [test "x$XNEST" = xyes])
1775 if test "x$XNEST" = xyes; then
1776 if test "x$have_xnest" = xno; then
1777 AC_MSG_ERROR([Xnest build explicitly requested, but required modules not found.])
1779 XNEST_LIBS="$FB_LIB $FIXES_LIB $MI_LIB $XEXT_LIB $DBE_LIB $RECORD_LIB $GLX_LIBS $RANDR_LIB $RENDER_LIB $DAMAGE_LIB $DRI3_LIB $PRESENT_LIB $MIEXT_SYNC_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB $MAIN_LIB $DIX_LIB $OS_LIB"
1780 XNEST_SYS_LIBS="$XNESTMODULES_LIBS $GLX_SYS_LIBS"
1781 AC_SUBST([XNEST_LIBS])
1782 AC_SUBST([XNEST_SYS_LIBS])
1788 AC_MSG_CHECKING([whether to build Xorg DDX])
1789 if test "x$XORG" = xauto; then
1792 cygwin*) XORG="no" ;;
1793 mingw*) XORG="no" ;;
1794 darwin*) XORG="no" ;;
1797 AC_MSG_RESULT([$XORG])
1799 if test "x$XORG" = xyes; then
1800 XORG_DDXINCS='-I$(top_srcdir)/hw/xfree86 -I$(top_srcdir)/hw/xfree86/include -I$(top_srcdir)/hw/xfree86/common'
1801 XORG_OSINCS='-I$(top_srcdir)/hw/xfree86/os-support -I$(top_srcdir)/hw/xfree86/os-support/bus -I$(top_srcdir)/os'
1802 XORG_INCS="$XORG_DDXINCS $XORG_OSINCS"
1803 XORG_CFLAGS="$XORGSERVER_CFLAGS -DHAVE_XORG_CONFIG_H"
1804 XORG_LIBS="$COMPOSITE_LIB $FIXES_LIB $XEXT_LIB $DBE_LIB $RECORD_LIB $RANDR_LIB $RENDER_LIB $DAMAGE_LIB $DRI3_LIB $PRESENT_LIB $MIEXT_SYNC_LIB $MIEXT_DAMAGE_LIB $XI_LIB $XKB_LIB"
1806 dnl ==================================================================
1807 dnl symbol visibility
1809 have_visibility=disabled
1810 if test x$SYMBOL_VISIBILITY != xno; then
1811 AC_MSG_CHECKING(for symbol visibility support)
1812 if test x$GCC = xyes; then
1813 VISIBILITY_CFLAGS="-fvisibility=hidden"
1815 if test x$SUNCC = xyes; then
1816 VISIBILITY_CFLAGS="-xldscope=hidden"
1821 if test x$have_visibility != xno; then
1822 save_CFLAGS="$CFLAGS"
1823 proto_inc=`$PKG_CONFIG --cflags xproto`
1824 CFLAGS="$CFLAGS $VISIBILITY_CFLAGS $proto_inc"
1826 [#include <X11/Xfuncproto.h>
1827 extern _X_HIDDEN int hidden_int;
1828 extern _X_EXPORT int public_int;
1829 extern _X_HIDDEN int hidden_int_func(void);
1830 extern _X_EXPORT int public_int_func(void);],
1832 have_visibility=yes,
1836 AC_MSG_RESULT([$have_visibility])
1837 if test x$have_visibility != xno; then
1838 symbol_visibility=$VISIBILITY_CFLAGS
1839 XORG_CFLAGS="$XORG_CFLAGS $VISIBILITY_CFLAGS"
1840 XSERVER_CFLAGS="$XSERVER_CFLAGS $VISIBILITY_CFLAGS"
1843 dnl added to xorg-server.pc
1844 AC_SUBST([symbol_visibility])
1845 dnl ===================================================================
1847 dnl ===================================================================
1848 dnl ================= beginning of PCI configuration ==================
1849 dnl ===================================================================
1853 AC_MSG_CHECKING([whether to build Xorg PCI functions])
1854 if test "x$PCI" = xyes; then
1855 PKG_CHECK_MODULES([PCIACCESS], $LIBPCIACCESS)
1856 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $LIBPCIACCESS"
1857 XORG_SYS_LIBS="$XORG_SYS_LIBS $PCIACCESS_LIBS $GLX_SYS_LIBS $LIBDRM_LIBS"
1858 XORG_CFLAGS="$XORG_CFLAGS $PCIACCESS_CFLAGS $LIBDRM_CFLAGS"
1860 AC_DEFINE(XSERVER_LIBPCIACCESS, 1, [Use libpciaccess for all pci manipulation])
1861 AC_DEFINE_DIR(PCI_TXT_IDS_PATH, PCI_TXT_IDS_DIR, [Default PCI text file ID path])
1863 gnu* | freebsd* | kfreebsd*-gnu | netbsd* | openbsd* | solaris* | dragonfly*)
1864 xorg_bus_bsdpci="yes"
1869 xorg_bus_sparc="yes"
1873 if test "x$CONFIG_UDEV_KMS" = xyes; then
1874 AC_MSG_ERROR([Platform device enumeration requires libpciaccess])
1876 if test "x$INT10MODULE" = xyes && test "x$INT10" != xstub; then
1877 AC_MSG_ERROR([Cannot build int10 without libpciaccess])
1880 AC_MSG_RESULT([$PCI])
1882 if test "x$CONFIG_UDEV_KMS" = xyes; then
1883 AC_DEFINE(XSERVER_PLATFORM_BUS, 1, [X server supports platform device enumeration])
1885 AC_MSG_RESULT([$XSERVER_PLATFORM_BUS])
1886 dnl ===================================================================
1887 dnl ==================== end of PCI configuration =====================
1888 dnl ===================================================================
1892 XORG_OS_SUBDIR="linux"
1898 i*86|amd64*|x86_64*|ia64*)
1899 linux_acpi=$enable_linux_acpi
1905 AC_CHECK_HEADERS([linux/apm_bios.h], [linux_apm=$enable_linux_apm])
1906 if test "x$linux_apm" = xyes -o "x$linux_acpi" = xyes; then
1907 AC_DEFINE(XF86PM, 1, [Support APM/ACPI power management in the server])
1910 freebsd* | kfreebsd*-gnu | dragonfly*)
1911 XORG_OS_SUBDIR="bsd"
1914 XORG_OS_SUBDIR="bsd"
1917 if test "x$ac_cv_BSD_APM" = xyes \
1918 -o "x$ac_cv_BSD_KQUEUE_APM" = xyes; then
1919 XORG_CFLAGS="$XORG_CFLAGS -DXF86PM"
1921 XORG_OS_SUBDIR="bsd"
1924 XORG_OS_SUBDIR="solaris"
1925 XORG_CFLAGS="$XORG_CFLAGS -DXF86PM"
1926 AC_CHECK_HEADERS([sys/kd.h])
1927 AC_CHECK_HEADERS([sys/vt.h], [solaris_vt=yes], [solaris_vt=no])
1928 # Check for minimum supported release
1929 AC_MSG_CHECKING([Solaris version])
1930 OS_MINOR=`echo ${host_os}|$SED -e 's/^.*solaris2\.//' -e s'/\..*$//'`
1931 if test "${OS_MINOR}" -ge 7 ; then
1932 AC_MSG_RESULT(Solaris ${OS_MINOR})
1934 AC_MSG_RESULT(Solaris `echo ${host_os}|$SED -e 's/^.*solaris//`)
1936 if test "${OS_MINOR}" -lt 8 ; then
1937 AC_MSG_ERROR([This release no longer supports Solaris versions older than Solaris 8.])
1939 AC_CHECK_DECL([_LP64], [SOLARIS_64="yes"], [SOLARIS_64="no"])
1943 SOLARIS_INOUT_ARCH="sparcv8plus"
1946 if test x$SOLARIS_64 = xyes ; then
1947 SOLARIS_INOUT_ARCH="amd64"
1949 SOLARIS_INOUT_ARCH="ia32"
1953 AC_MSG_ERROR([Unsupported Solaris platform. Only SPARC & x86 \
1954 are supported on Solaris in this release. If you are \
1955 interested in porting Xorg to your platform, please email \
1956 xorg@lists.freedesktop.org.]) ;;
1958 AC_SUBST([SOLARIS_INOUT_ARCH])
1961 XORG_OS_SUBDIR="hurd"
1964 XORG_OS_SUBDIR="stub"
1965 AC_MSG_NOTICE([m4_text_wrap(m4_join([ ],
1966 [Your OS is unknown. Xorg currently only supports Linux,],
1967 [Free/Open/Net/DragonFlyBSD, Solaris/OpenSolaris, & GNU Hurd.],
1968 [If you are interested in porting Xorg to your platform,],
1969 [please email xorg@lists.freedesktop.org.]))])
1978 if test "x$DGA" = xauto; then
1979 PKG_CHECK_MODULES(DGA, $DGAPROTO, [DGA=yes], [DGA=no])
1981 if test "x$DGA" = xyes; then
1982 XORG_MODULES="$XORG_MODULES $DGAPROTO"
1983 PKG_CHECK_MODULES(DGA, $DGAPROTO)
1984 AC_DEFINE(DGA, 1, [Support DGA extension])
1985 AC_DEFINE(XFreeXDGA, 1, [Build XDGA support])
1988 if test "x$XF86VIDMODE" = xauto; then
1989 PKG_CHECK_MODULES(XF86VIDMODE, $VIDMODEPROTO, [XF86VIDMODE=yes], [XF86VIDMODE=no])
1991 if test "x$XF86VIDMODE" = xyes; then
1992 XORG_MODULES="$XORG_MODULES $VIDMODEPROTO"
1993 PKG_CHECK_MODULES(XF86VIDMODE, $VIDMODEPROTO)
1994 AC_DEFINE(XF86VIDMODE, 1, [Support XFree86 Video Mode extension])
1997 if test -n "$XORG_MODULES"; then
1998 PKG_CHECK_MODULES(XORG_MODULES, [$XORG_MODULES])
1999 XORG_CFLAGS="$XORG_CFLAGS $XORG_MODULES_CFLAGS"
2000 XORG_SYS_LIBS="$XORG_SYS_LIBS $XORG_MODULES_LIBS"
2003 AC_SUBST([XORG_LIBS])
2004 AC_SUBST([XORG_SYS_LIBS])
2005 AC_SUBST([XORG_INCS])
2006 AC_SUBST([XORG_OS_SUBDIR])
2007 AC_SUBST([XORG_CFLAGS])
2009 dnl these only go in xorg-config.h
2010 XF86CONFIGFILE="xorg.conf"
2011 XF86CONFIGDIR="xorg.conf.d"
2012 AC_SUBST(XF86CONFIGDIR)
2013 CONFIGFILE="$sysconfdir/$XF86CONFIGFILE"
2014 LOGPREFIX="$logdir/Xorg."
2015 AC_DEFINE(XORG_SERVER, 1, [Building Xorg server])
2016 AC_DEFINE(XORGSERVER, 1, [Building Xorg server])
2017 AC_DEFINE(XFree86Server, 1, [Building XFree86 server])
2018 AC_DEFINE_UNQUOTED(XORG_VERSION_CURRENT, [$VENDOR_RELEASE], [Current Xorg version])
2019 AC_DEFINE(NEED_XF86_TYPES, 1, [Need XFree86 typedefs])
2020 AC_DEFINE(NEED_XF86_PROTOTYPES, 1, [Need XFree86 helper functions])
2021 AC_DEFINE(__XSERVERNAME__, "Xorg", [Name of X server])
2022 AC_DEFINE_DIR(__XCONFIGFILE__, XF86CONFIGFILE, [Name of configuration file])
2023 AC_DEFINE_DIR(XF86CONFIGFILE, XF86CONFIGFILE, [Name of configuration file])
2024 AC_DEFINE_DIR(__XCONFIGDIR__, XF86CONFIGDIR, [Name of configuration directory])
2025 AC_DEFINE_DIR(DEFAULT_MODULE_PATH, moduledir, [Default module search path])
2026 AC_DEFINE_DIR(DEFAULT_LIBRARY_PATH, libdir, [Default library install path])
2027 AC_DEFINE_DIR(DEFAULT_LOGPREFIX, LOGPREFIX, [Default log location])
2028 AC_DEFINE_UNQUOTED(__VENDORDWEBSUPPORT__, ["$VENDOR_WEB"], [Vendor web address for support])
2029 if test "x$VGAHW" = xyes; then
2030 AC_DEFINE(WITH_VGAHW, 1, [Building vgahw module])
2033 driverdir="$moduledir/drivers"
2034 AC_SUBST([moduledir])
2035 AC_SUBST([driverdir])
2036 sdkdir="$includedir/xorg"
2037 extdir="$includedir/X11/extensions"
2038 sysconfigdir="$datadir/X11/$XF86CONFIGDIR"
2041 AC_SUBST([sysconfigdir])
2044 # stuff the ABI versions into the pc file too
2046 grep ^.define.*${1}_VERSION ${srcdir}/hw/xfree86/common/xf86Module.h | tr '(),' ' .' | awk '{ print $4$5 }'
2048 abi_ansic=`extract_abi ANSIC`
2049 abi_videodrv=`extract_abi VIDEODRV`
2050 abi_xinput=`extract_abi XINPUT`
2051 abi_extension=`extract_abi EXTENSION`
2052 AC_SUBST([abi_ansic])
2053 AC_SUBST([abi_videodrv])
2054 AC_SUBST([abi_xinput])
2055 AC_SUBST([abi_extension])
2057 AM_CONDITIONAL([XORG], [test "x$XORG" = xyes])
2058 AM_CONDITIONAL([XORG_BUS_PCI], [test "x$PCI" = xyes])
2059 AM_CONDITIONAL([XORG_BUS_BSDPCI], [test "x$xorg_bus_bsdpci" = xyes])
2060 AM_CONDITIONAL([XORG_BUS_SPARC], [test "x$xorg_bus_sparc" = xyes])
2061 AM_CONDITIONAL([LINUX_ALPHA], [test "x$linux_alpha" = xyes])
2062 AM_CONDITIONAL([LNXACPI], [test "x$linux_acpi" = xyes])
2063 AM_CONDITIONAL([LNXAPM], [test "x$linux_apm" = xyes])
2064 AM_CONDITIONAL([SOLARIS_VT], [test "x$solaris_vt" = xyes])
2065 AM_CONDITIONAL([DGA], [test "x$DGA" = xyes])
2066 AM_CONDITIONAL([XF86VIDMODE], [test "x$XF86VIDMODE" = xyes])
2067 AM_CONDITIONAL([XORG_BUS_PLATFORM], [test "x$CONFIG_UDEV_KMS" = xyes])
2070 AC_MSG_CHECKING([whether to build XWin DDX])
2071 if test "x$XWIN" = xauto; then
2073 cygwin*) XWIN="yes" ;;
2074 mingw*) XWIN="yes" ;;
2078 AC_MSG_RESULT([$XWIN])
2080 if test "x$XWIN" = xyes; then
2081 AC_DEFINE_DIR(SYSCONFDIR, sysconfdir, [Location of system.XWinrc])
2082 AC_DEFINE_DIR(DEFAULT_LOGDIR, logdir, [Default log location])
2083 AC_DEFINE_UNQUOTED(XORG_VERSION_CURRENT, [$VENDOR_RELEASE], [Current Xorg version])
2084 AC_DEFINE_UNQUOTED(__VENDORDWEBSUPPORT__, ["$VENDOR_WEB"], [Vendor web address for support])
2085 AC_CHECK_TOOL(WINDRES, windres)
2087 PKG_CHECK_MODULES([XWINMODULES],[x11 xdmcp xau])
2089 if test "x$WINDOWSWM" = xauto; then
2090 PKG_CHECK_EXISTS($WINDOWSWMPROTO, [WINDOWSWM=yes], [WINDOWSWM=no])
2092 if test "x$WINDOWSWM" = xyes ; then
2093 PKG_CHECK_MODULES(WINDOWSWM, $WINDOWSWMPROTO)
2094 XWINMODULES_CFLAGS="$XWINMODULES_CFLAGS $WINDOWSWM_CFLAGS"
2095 AC_DEFINE(ROOTLESS,1,[Build Rootless code])
2100 XWIN_SERVER_NAME=XWin
2101 AC_DEFINE(HAS_DEVWINDOWS,1,[Cygwin has /dev/windows for signaling new win32 messages])
2104 XWIN_SERVER_NAME=Xming
2105 AC_DEFINE(RELOCATE_PROJECTROOT,1,[Make PROJECT_ROOT relative to the xserver location])
2106 AC_DEFINE(HAS_WINSOCK,1,[Use Windows sockets])
2107 XWIN_SYS_LIBS="-lpthread -lws2_32"
2111 XWIN_LIBS="$FB_LIB $MI_LIB $FIXES_LIB $XEXT_LIB $RANDR_LIB $RENDER_LIB $DBE_LIB $RECORD_LIB $GLX_LIBS $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB $DAMAGE_LIB $PRESENT_LIB $MIEXT_SYNC_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $OS_LIB"
2112 XWIN_SYS_LIBS="$XWIN_SYS_LIBS $XWINMODULES_LIBS"
2114 AC_SUBST(XWIN_SERVER_NAME)
2115 AC_SUBST(XWIN_SYS_LIBS)
2117 if test "x$DEBUGGING" = xyes; then
2118 AC_DEFINE(CYGDEBUG, 1, [Simple debug messages])
2119 AC_DEFINE(CYGWINDOWING_DEBUG, 1, [Debug messages for window handling])
2120 AC_DEFINE(CYGMULTIWINDOW_DEBUG, 1, [Debug window manager])
2123 AC_DEFINE(DDXOSVERRORF, 1, [Use OsVendorVErrorF])
2124 AC_DEFINE(DDXBEFORERESET, 1, [Use ddxBeforeReset ])
2126 dnl XWin with AIGLX requires OpenGL spec files in order to generate wrapper code for native GL functions
2127 if [test "x$XWIN" = xyes && test "x$AIGLX" = xyes] ; then
2128 AC_CHECK_PROG(PYTHON3, python3, python3)
2129 if test -z "$PYTHON3"; then
2130 AC_MSG_ERROR([python3 not found])
2132 AC_MSG_CHECKING(for python module lxml)
2133 $PYTHON3 -c "import lxml;"
2134 if test $? -ne 0 ; then
2135 AC_MSG_ERROR([not found])
2138 if test "x$KHRONOS_SPEC_DIR" = "xauto" ; then
2139 PKG_CHECK_MODULES([KHRONOS_OPENGL_REGISTRY], [khronos-opengl-registry])
2140 KHRONOS_SPEC_DIR=`pkg-config khronos-opengl-registry --variable=specdir`
2142 AC_SUBST(KHRONOS_SPEC_DIR)
2146 AM_CONDITIONAL(XWIN, [test "x$XWIN" = xyes])
2147 AM_CONDITIONAL(XWIN_MULTIWINDOW, [test "x$XWIN" = xyes])
2148 AM_CONDITIONAL(XWIN_MULTIWINDOWEXTWM, [test "x$XWIN" = xyes && test "x$WINDOWSWM" = xyes])
2149 AM_CONDITIONAL(XWIN_CLIPBOARD, [test "x$XWIN" = xyes])
2150 AM_CONDITIONAL(XWIN_GLX_WINDOWS, [test "x$XWIN" = xyes && test "x$AIGLX" = xyes])
2151 AM_CONDITIONAL(XWIN_NATIVEGDI, [test "x$XWIN" = xyes])
2152 AM_CONDITIONAL(XWIN_PRIMARYFB, [test "x$XWIN" = xyes])
2153 AM_CONDITIONAL(XWIN_RANDR, [test "x$XWIN" = xyes])
2154 AM_CONDITIONAL(XWIN_XV, [test "x$XWIN" = xyes && test "x$XV" = xyes])
2156 dnl Darwin / OS X DDX
2157 if test "x$XQUARTZ" = xyes; then
2158 AC_DEFINE(XQUARTZ,1,[Have Quartz])
2159 AC_DEFINE(ROOTLESS,1,[Build Rootless code])
2161 XQUARTZ_LIBS="$FB_LIB $FIXES_LIB $XEXT_LIB $DBE_LIB $RECORD_LIB $RANDR_LIB $RENDER_LIB $DAMAGE_LIB $MIEXT_SYNC_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $XPSTUBS_LIB $PRESENT_LIB"
2162 AC_SUBST([XQUARTZ_LIBS])
2164 AC_CHECK_LIB([Xplugin],[xp_init],[:])
2166 CFLAGS="${CFLAGS} -DROOTLESS_WORKAROUND -DROOTLESS_SAFEALPHA -DNO_ALLOCA"
2168 PKG_CHECK_MODULES(XPBPROXY, $APPLEWMPROTO $LIBAPPLEWM xfixes x11)
2170 if test "x$XQUARTZ_SPARKLE" = xyes ; then
2171 AC_DEFINE(XQUARTZ_SPARKLE,1,[Support application updating through sparkle.])
2174 if test "x$STANDALONE_XPBPROXY" = xyes ; then
2175 AC_DEFINE(STANDALONE_XPBPROXY,1,[Build a standalone xpbproxy])
2179 # Support for objc in autotools is minimal and not documented.
2183 OBJCFLAGS='$(CFLAGS)'
2186 AC_SUBST([OBJCLINK])
2187 AC_SUBST([OBJCFLAGS])
2188 # internal, undocumented automake func follows :(
2189 _AM_DEPENDENCIES([OBJC])
2190 AM_CONDITIONAL(XQUARTZ, [test "x$XQUARTZ" = xyes])
2191 AM_CONDITIONAL(XQUARTZ_SPARKLE, [test "x$XQUARTZ_SPARKLE" != "xno"])
2192 AM_CONDITIONAL(STANDALONE_XPBPROXY, [test "x$STANDALONE_XPBPROXY" = xyes])
2197 [xmuu $LIBXEXT x11 >= 1.6 xrender xfixes $LIBXI $DMXPROTO xau $XDMCP_MODULES],
2200 [xaw7 xmu xt xpm x11],
2204 AC_MSG_CHECKING([whether to build Xdmx DDX])
2205 if test "x$DMX" = xauto; then
2208 cygwin*) DMX="no" ;;
2210 darwin*) DMX="no" ;;
2213 AC_MSG_RESULT([$DMX])
2214 AM_CONDITIONAL(DMX, [test "x$DMX" = xyes])
2216 if test "x$DMX" = xyes; then
2217 if test "x$have_dmx" = xno; then
2218 AC_MSG_ERROR([Xdmx build explicitly requested, but required
2219 modules not found.])
2221 DMX_INCLUDES="$XEXT_INC $RENDER_INC $RECORD_INC"
2222 XDMX_CFLAGS="$DMXMODULES_CFLAGS"
2223 XDMX_LIBS="$FB_LIB $MI_LIB $XEXT_LIB $RENDER_LIB $RECORD_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $DRI3_LIB $PRESENT_LIB $MIEXT_SYNC_LIB $MIEXT_SHADOW_LIB $MIEXT_DAMAGE_LIB $COMPOSITE_LIB $DAMAGE_LIB $MAIN_LIB $DIX_LIB $CONFIG_LIB $OS_LIB $FIXES_LIB"
2224 XDMX_SYS_LIBS="$DMXMODULES_LIBS"
2225 AC_SUBST([XDMX_CFLAGS])
2226 AC_SUBST([XDMX_LIBS])
2227 AC_SUBST([XDMX_SYS_LIBS])
2229 dnl USB sources in DMX require <linux/input.h>
2230 AC_CHECK_HEADER([linux/input.h], DMX_BUILD_USB="yes",
2232 dnl Linux sources in DMX require <linux/keyboard.h>
2233 AC_CHECK_HEADER([linux/keyboard.h], DMX_BUILD_LNX="yes",
2235 AC_SUBST(XDMXCONFIG_DEP_CFLAGS)
2236 AC_SUBST(XDMXCONFIG_DEP_LIBS)
2237 PKG_CHECK_MODULES([DMXEXAMPLES_DEP], [$LIBDMX $LIBXEXT x11])
2238 AC_SUBST(DMXEXAMPLES_DEP_LIBS)
2239 PKG_CHECK_MODULES([DMXXMUEXAMPLES_DEP], [$LIBDMX xmu $LIBXEXT x11])
2240 AC_SUBST(DMXXMUEXAMPLES_DEP_LIBS)
2241 PKG_CHECK_MODULES([DMXXIEXAMPLES_DEP], [$LIBDMX $LIBXI $LIBXEXT x11])
2242 AC_SUBST(DMXXIEXAMPLES_DEP_LIBS)
2243 PKG_CHECK_MODULES([XTSTEXAMPLES_DEP], [$LIBXTST $LIBXEXT x11])
2244 AC_SUBST(XTSTEXAMPLES_DEP_LIBS)
2245 PKG_CHECK_MODULES([XRESEXAMPLES_DEP], [xres $LIBXEXT x11])
2246 AC_SUBST(XRESEXAMPLES_DEP_LIBS)
2247 PKG_CHECK_MODULES([X11EXAMPLES_DEP], [$LIBXEXT x11])
2248 AC_SUBST(X11EXAMPLES_DEP_LIBS)
2251 AM_CONDITIONAL([DMX_BUILD_LNX], [test "x$DMX_BUILD_LNX" = xyes])
2252 AM_CONDITIONAL([DMX_BUILD_USB], [test "x$DMX_BUILD_USB" = xyes])
2259 AM_CONDITIONAL(KDRIVE, [test x$KDRIVE = xyes])
2261 if test "$KDRIVE" = yes; then
2262 AC_DEFINE(KDRIVESERVER,1,[Build Kdrive X server])
2263 AC_DEFINE(KDRIVEDDXACTIONS,,[Build kdrive ddx])
2265 AC_CHECK_HEADERS([linux/fb.h])
2266 if test "$ac_cv_header_linux_fb_h" = yes && test "x$XFBDEV" = xauto; then
2270 if test "x$XFBDEV" = xyes; then
2272 AC_DEFINE(KDRIVEFBDEV, 1, [Build fbdev-based kdrive server])
2276 PKG_CHECK_MODULES([TSLIB], [tslib-0.0], [HAVE_TSLIB="yes"], [HAVE_TSLIB="no"])
2277 if test "x$HAVE_TSLIB" = xno; then
2278 AC_CHECK_LIB(ts, ts_open, [
2284 if test "xTSLIB" = xauto; then
2288 if test "x$TSLIB" = xyes; then
2289 if ! test "x$HAVE_TSLIB" = xyes; then
2290 AC_MSG_ERROR([tslib must be installed to build the tslib driver. See http://tslib.berlios.de/])
2292 AC_DEFINE(TSLIB, 1, [Have tslib support])
2296 if test "x$KDRIVE_KBD" = xyes; then
2297 AC_DEFINE(KDRIVE_KBD, 1, [Enable KDrive kbd driver])
2299 if test "x$KDRIVE_EVDEV" = xyes; then
2300 AC_DEFINE(KDRIVE_EVDEV, 1, [Enable KDrive evdev driver])
2302 if test "x$KDRIVE_MOUSE" = xyes; then
2303 AC_DEFINE(KDRIVE_MOUSE, 1, [Enable KDrive mouse driver])
2306 XEPHYR_REQUIRED_LIBS="xau xdmcp xcb xcb-shape xcb-aux xcb-image xcb-icccm xcb-shm xcb-keysyms"
2307 if test "x$XV" = xyes; then
2308 XEPHYR_REQUIRED_LIBS="$XEPHYR_REQUIRED_LIBS xcb-xv"
2310 if test "x$DRI" = xyes && test "x$GLX" = xyes; then
2311 XEPHYR_REQUIRED_LIBS="$XEPHYR_REQUIRED_LIBS libdrm xcb-glx xcb-xf86dri > 1.6"
2314 if test "x$XEPHYR" = xauto; then
2315 PKG_CHECK_MODULES(XEPHYR, $XEPHYR_REQUIRED_LIBS, [XEPHYR="yes"], [XEPHYR="no"])
2316 elif test "x$XEPHYR" = xyes ; then
2317 PKG_CHECK_MODULES(XEPHYR, $XEPHYR_REQUIRED_LIBS)
2320 # Xephyr needs nanosleep() which is in librt on Solaris
2321 AC_CHECK_FUNC([nanosleep], [],
2322 AC_CHECK_LIB([rt], [nanosleep], XEPHYR_LIBS="$XEPHYR_LIBS -lrt"))
2324 # damage shadow extension glx (NOTYET) fb mi
2325 KDRIVE_INC='-I$(top_srcdir)/hw/kdrive/src'
2326 KDRIVE_PURE_INCS="$KDRIVE_INC $MIEXT_SYNC_INC $MIEXT_DAMAGE_INC $MIEXT_SHADOW_INC $XEXT_INC $FB_INC $MI_INC"
2327 KDRIVE_OS_INC='-I$(top_srcdir)/hw/kdrive/linux'
2328 KDRIVE_INCS="$KDRIVE_PURE_INCS $KDRIVE_OS_INC"
2330 KDRIVE_CFLAGS="$XSERVER_CFLAGS -DHAVE_KDRIVE_CONFIG_H $TSLIB_CFLAGS"
2332 KDRIVE_PURE_LIBS="$FB_LIB $MI_LIB $FIXES_LIB $XEXT_LIB $DBE_LIB $RECORD_LIB $GLX_LIBS $RANDR_LIB $RENDER_LIB $DAMAGE_LIB $DRI3_LIB $PRESENT_LIB $MIEXT_SYNC_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB $OS_LIB"
2333 KDRIVE_LIB='$(top_builddir)/hw/kdrive/src/libkdrive.la'
2336 KDRIVE_OS_LIB='$(top_builddir)/hw/kdrive/linux/liblinux.la'
2338 if test "x$KDRIVE_EVDEV" = xauto; then
2341 if test "x$KDRIVE_KBD" = xauto; then
2344 if test "x$KDRIVE_MOUSE" = xauto; then
2349 if test "x$KDRIVE_EVDEV" = xauto; then
2352 if test "x$KDRIVE_KBD" = xauto; then
2355 if test "x$KDRIVE_MOUSE" = xauto; then
2360 KDRIVE_STUB_LIB='$(top_builddir)/hw/kdrive/src/libkdrivestubs.la'
2361 KDRIVE_LOCAL_LIBS="$MAIN_LIB $DIX_LIB $KDRIVE_LIB $KDRIVE_STUB_LIB"
2362 KDRIVE_LOCAL_LIBS="$KDRIVE_LOCAL_LIBS $FB_LIB $MI_LIB $KDRIVE_PURE_LIBS"
2363 KDRIVE_LOCAL_LIBS="$KDRIVE_LOCAL_LIBS $KDRIVE_OS_LIB"
2364 KDRIVE_LIBS="$KDRIVE_LOCAL_LIBS $XSERVER_SYS_LIBS $GLX_SYS_LIBS $DLOPEN_LIBS $TSLIB_LIBS"
2366 AC_SUBST([XEPHYR_LIBS])
2367 AC_SUBST([XEPHYR_INCS])
2369 AC_SUBST([KDRIVE_INCS])
2370 AC_SUBST([KDRIVE_PURE_INCS])
2371 AC_SUBST([KDRIVE_CFLAGS])
2372 AC_SUBST([KDRIVE_PURE_LIBS])
2373 AC_SUBST([KDRIVE_LOCAL_LIBS])
2374 AC_SUBST([KDRIVE_LIBS])
2375 AM_CONDITIONAL(KDRIVELINUX, [test "x$KDRIVELINUX" = xyes])
2376 AM_CONDITIONAL(KDRIVE_EVDEV, [test "x$KDRIVE_EVDEV" = xyes])
2377 AM_CONDITIONAL(KDRIVE_KBD, [test "x$KDRIVE_KBD" = xyes])
2378 AM_CONDITIONAL(KDRIVE_MOUSE, [test "x$KDRIVE_MOUSE" = xyes])
2379 AM_CONDITIONAL(TSLIB, [test "x$HAVE_TSLIB" = xyes])
2380 AM_CONDITIONAL(KDRIVEFBDEV, [test "x$XFBDEV" = xyes])
2381 AM_CONDITIONAL(XEPHYR, [test "x$KDRIVE" = xyes && test "x$XEPHYR" = xyes])
2382 AM_CONDITIONAL(BUILD_KDRIVEFBDEVLIB, [test "x$KDRIVE" = xyes && test "x$KDRIVEFBDEVLIB" = xyes])
2383 AM_CONDITIONAL(XFAKESERVER, [test "x$KDRIVE" = xyes && test "x$XFAKE" = xyes])
2385 dnl and the rest of these are generic, so they're in config.h
2387 dnl though, thanks to the passing of some significant amount of time, the
2388 dnl above is probably a complete fallacy, and you should not rely on it.
2389 dnl but this is still actually better than imake, honest. -daniels
2392 #include <features.h>
2396 ], [], [AC_DEFINE(_GNU_SOURCE, 1,
2397 [ Enable GNU and other extensions to the C environment for glibc])])
2399 AC_DEFINE_DIR(PROJECTROOT, prefix, [Overall prefix])
2401 AC_SUBST([RELEASE_DATE])
2402 BUILD_DATE="`date +'%Y%m%d'`"
2403 AC_SUBST([BUILD_DATE])
2404 BUILD_TIME="`date +'1%H%M%S'`"
2405 AC_SUBST([BUILD_TIME])
2407 DIX_CFLAGS="-DHAVE_DIX_CONFIG_H $XSERVER_CFLAGS"
2409 AC_SUBST([DIX_CFLAGS])
2412 AC_SUBST([exec_prefix])
2415 AC_CONFIG_COMMANDS([sdksyms], [touch hw/xfree86/sdksyms.dep])
2417 if test "x$CONFIG_HAL" = xno && test "x$CONFIG_UDEV" = xno; then
2419 ***********************************************
2420 Neither HAL nor udev backend will be enabled.
2421 Input device hotplugging will not be available!
2422 ***********************************************])
2442 miext/damage/Makefile
2443 miext/shadow/Makefile
2444 miext/rootless/Makefile
2446 pseudoramiX/Makefile
2458 hw/xfree86/common/Makefile
2459 hw/xfree86/common/xf86Build.h
2460 hw/xfree86/ddc/Makefile
2461 hw/xfree86/dixmods/Makefile
2462 hw/xfree86/doc/Makefile
2463 hw/xfree86/dri/Makefile
2464 hw/xfree86/dri2/Makefile
2465 hw/xfree86/exa/Makefile
2466 hw/xfree86/exa/man/Makefile
2467 hw/xfree86/fbdevhw/Makefile
2468 hw/xfree86/fbdevhw/man/Makefile
2469 hw/xfree86/i2c/Makefile
2470 hw/xfree86/int10/Makefile
2471 hw/xfree86/loader/Makefile
2472 hw/xfree86/man/Makefile
2473 hw/xfree86/modes/Makefile
2474 hw/xfree86/os-support/Makefile
2475 hw/xfree86/os-support/bsd/Makefile
2476 hw/xfree86/os-support/bus/Makefile
2477 hw/xfree86/os-support/hurd/Makefile
2478 hw/xfree86/os-support/misc/Makefile
2479 hw/xfree86/os-support/linux/Makefile
2480 hw/xfree86/os-support/solaris/Makefile
2481 hw/xfree86/os-support/stub/Makefile
2482 hw/xfree86/parser/Makefile
2483 hw/xfree86/ramdac/Makefile
2484 hw/xfree86/shadowfb/Makefile
2485 hw/xfree86/vbe/Makefile
2486 hw/xfree86/vgahw/Makefile
2487 hw/xfree86/x86emu/Makefile
2488 hw/xfree86/utils/Makefile
2489 hw/xfree86/utils/man/Makefile
2490 hw/xfree86/utils/cvt/Makefile
2491 hw/xfree86/utils/gtf/Makefile
2492 hw/dmx/config/Makefile
2493 hw/dmx/config/man/Makefile
2495 hw/dmx/doxygen/doxygen.conf
2496 hw/dmx/doxygen/Makefile
2497 hw/dmx/examples/Makefile
2498 hw/dmx/input/Makefile
2499 hw/dmx/glxProxy/Makefile
2505 hw/xnest/man/Makefile
2507 hw/xwin/glx/Makefile
2508 hw/xwin/man/Makefile
2510 hw/xquartz/GL/Makefile
2511 hw/xquartz/bundle/Makefile
2512 hw/xquartz/man/Makefile
2513 hw/xquartz/mach-startup/Makefile
2514 hw/xquartz/pbproxy/Makefile
2515 hw/xquartz/xpr/Makefile
2517 hw/kdrive/ephyr/Makefile
2518 hw/kdrive/ephyr/man/Makefile
2519 hw/kdrive/fake/Makefile
2520 hw/kdrive/fbdev/Makefile
2521 hw/kdrive/linux/Makefile
2522 hw/kdrive/src/Makefile