configure.ac revision 7e31ba66
1dnl Copyright © 2003-2007 Keith Packard, Daniel Stone 2dnl 3dnl Permission is hereby granted, free of charge, to any person obtaining a 4dnl copy of this software and associated documentation files (the "Software"), 5dnl to deal in the Software without restriction, including without limitation 6dnl the rights to use, copy, modify, merge, publish, distribute, sublicense, 7dnl and/or sell copies of the Software, and to permit persons to whom the 8dnl Software is furnished to do so, subject to the following conditions: 9dnl 10dnl The above copyright notice and this permission notice (including the next 11dnl paragraph) shall be included in all copies or substantial portions of the 12dnl Software. 13dnl 14dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15dnl IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16dnl FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 17dnl THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18dnl LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 19dnl FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 20dnl DEALINGS IN THE SOFTWARE. 21dnl 22dnl Authors: Keith Packard <keithp@keithp.com> 23dnl Daniel Stone <daniel@fooishbar.org> 24dnl an unwitting cast of miscellaneous others 25dnl 26dnl Process this file with autoconf to create configure. 27 28AC_PREREQ(2.60) 29AC_INIT([xorg-server], 1.20.3, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server) 30RELEASE_DATE="2018-10-25" 31RELEASE_NAME="Harissa Roasted Carrots" 32AC_CONFIG_SRCDIR([Makefile.am]) 33AC_CONFIG_MACRO_DIR([m4]) 34AM_INIT_AUTOMAKE([foreign dist-bzip2]) 35AC_USE_SYSTEM_EXTENSIONS 36 37# Require xorg-macros minimum of 1.14 for XORG_COMPILER_BRAND in XORG_DEFAULT_OPTIONS 38m4_ifndef([XORG_MACROS_VERSION], 39 [m4_fatal([must install xorg-macros 1.14 or later before running autoconf/autogen])]) 40XORG_MACROS_VERSION(1.14) 41XORG_DEFAULT_OPTIONS 42XORG_WITH_DOXYGEN(1.6.1) 43XORG_CHECK_SGML_DOCTOOLS(1.8) 44XORG_ENABLE_DOCS 45XORG_ENABLE_DEVEL_DOCS 46XORG_WITH_XMLTO(0.0.20) 47XORG_WITH_FOP 48XORG_WITH_XSLTPROC 49XORG_ENABLE_UNIT_TESTS 50XORG_LD_WRAP([optional]) 51 52m4_ifndef([XORG_FONT_MACROS_VERSION], [m4_fatal([must install font-util 1.1 or later before running autoconf/autogen])]) 53XORG_FONT_MACROS_VERSION(1.1) 54 55dnl this gets generated by autoheader, and thus contains all the defines. we 56dnl don't ever actually use it, internally. 57AC_CONFIG_HEADERS(include/do-not-use-config.h) 58dnl xorg-server.h is an external header, designed to be included by loadable 59dnl drivers. 60AC_CONFIG_HEADERS(include/xorg-server.h) 61dnl dix-config.h covers most of the DIX (i.e. everything but the DDX, not just 62dnl dix/). 63AC_CONFIG_HEADERS(include/dix-config.h) 64dnl xorg-config.h covers the Xorg DDX. 65AC_CONFIG_HEADERS(include/xorg-config.h) 66dnl xkb-config.h covers XKB for the Xorg and Xnest DDXs. 67AC_CONFIG_HEADERS(include/xkb-config.h) 68dnl xwin-config.h covers the XWin DDX. 69AC_CONFIG_HEADERS(include/xwin-config.h) 70dnl xwayland-config.h covers Xwayland. 71AC_CONFIG_HEADERS(include/xwayland-config.h) 72dnl version-config.h covers the version numbers so they can be bumped without 73dnl forcing an entire recompile.x 74AC_CONFIG_HEADERS(include/version-config.h) 75 76AM_PROG_AS 77AC_PROG_LN_S 78LT_PREREQ([2.2]) 79LT_INIT([disable-static win32-dll]) 80PKG_PROG_PKG_CONFIG 81AC_PROG_LEX 82AC_PROG_YACC 83AC_SYS_LARGEFILE 84XORG_PROG_RAWCPP 85 86# Quoted so that make will expand $(CWARNFLAGS) in makefiles to allow 87# easier overrides at build time. 88XSERVER_CFLAGS='$(CWARNFLAGS)' 89 90dnl Explicitly add -fno-strict-aliasing since this option should disappear 91dnl from util-macros CWARNFLAGS 92if test "x$GCC" = xyes ; then 93 XSERVER_CFLAGS="$XSERVER_CFLAGS -fno-strict-aliasing" 94fi 95 96dnl Check for dtrace program (needed to build Xserver dtrace probes) 97dnl Also checks for <sys/sdt.h>, since some Linux distros have an 98dnl ISDN trace program named dtrace 99AC_ARG_WITH(dtrace, AS_HELP_STRING([--with-dtrace=PATH], 100 [Enable dtrace probes (default: enabled if dtrace found)]), 101 [WDTRACE=$withval], [WDTRACE=auto]) 102if 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]) 107 fi 108 WDTRACE="no" 109 else 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 112 WDTRACE="no" 113 fi 114 fi 115fi 116if 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.]) 119 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). 126 case $host_os in 127 darwin*) SPECIAL_DTRACE_OBJECTS=no ;; 128 *) SPECIAL_DTRACE_OBJECTS=yes ;; 129 esac 130fi 131AM_CONDITIONAL(XSERVER_DTRACE, [test "x$WDTRACE" != "xno"]) 132AM_CONDITIONAL(SPECIAL_DTRACE_OBJECTS, [test "x$SPECIAL_DTRACE_OBJECTS" = "xyes"]) 133 134AC_HEADER_DIRENT 135AC_HEADER_STDC 136AC_CHECK_HEADERS([fcntl.h stdlib.h string.h unistd.h dlfcn.h stropts.h \ 137 fnmatch.h sys/mkdev.h sys/sysmacros.h sys/utsname.h]) 138 139dnl Checks for typedefs, structures, and compiler characteristics. 140AC_C_CONST 141AC_C_TYPEOF 142AC_C_BIGENDIAN(AC_DEFINE(X_BYTE_ORDER, X_BIG_ENDIAN, [byte order]), 143 AC_DEFINE(X_BYTE_ORDER, X_LITTLE_ENDIAN, [byte order])) 144 145AC_CHECK_SIZEOF([unsigned long]) 146if test "$ac_cv_sizeof_unsigned_long" = 8; then 147 AC_DEFINE(_XSERVER64, 1, [Define to 1 if unsigned long is 64 bits.]) 148fi 149 150AC_TYPE_PID_T 151 152dnl Check to see if dlopen is in default libraries (like Solaris, which 153dnl has it in libc), or if libdl is needed to get it. 154AC_CHECK_FUNC([dlopen], [], 155 AC_CHECK_LIB([dl], [dlopen], DLOPEN_LIBS="-ldl")) 156AC_SUBST(DLOPEN_LIBS) 157 158dnl Checks for library functions. 159AC_CHECK_FUNCS([backtrace geteuid getuid issetugid getresuid \ 160 getdtablesize getifaddrs getpeereid getpeerucred getprogname getzoneid \ 161 mmap posix_fallocate seteuid shmctl64 strncasecmp vasprintf vsnprintf \ 162 walkcontext setitimer poll epoll_create1 mkostemp]) 163AC_CONFIG_LIBOBJ_DIR([os]) 164AC_REPLACE_FUNCS([reallocarray strcasecmp strcasestr strlcat strlcpy strndup\ 165 timingsafe_memcmp]) 166AM_CONDITIONAL(POLL, [test "x$ac_cv_func_poll" = "xyes"]) 167 168AC_CHECK_LIB([bsd], [arc4random_buf]) 169AC_CHECK_FUNCS([arc4random_buf]) 170 171AC_CHECK_DECLS([program_invocation_short_name], [], [], [[#include <errno.h>]]) 172 173dnl Check for SO_PEERCRED #define 174AC_CACHE_CHECK([for SO_PEERCRED in sys/socket.h], 175 [xorg_cv_sys_have_so_peercred], 176 [AC_EGREP_CPP(yes_have_so_peercred,[ 177#include <sys/types.h> 178#include <sys/socket.h> 179#ifdef SO_PEERCRED 180yes_have_so_peercred 181#endif 182], 183 [xorg_cv_sys_have_so_peercred=yes], 184 [xorg_cv_sys_have_so_peercred=no])]) 185 186dnl define NO_LOCAL_CLIENT_CRED if no getpeereid, getpeerucred or SO_PEERCRED 187if test "x$ac_cv_func_getpeereid" = xno && test "x$ac_cv_func_getpeerucred" = xno && test "x$xorg_cv_sys_have_so_peercred" = xno ; then 188 AC_DEFINE([NO_LOCAL_CLIENT_CRED], 1, [Define to 1 if no local socket credentials interface exists]) 189fi 190 191dnl Find the math libary, then check for cbrt function in it. 192AC_CHECK_LIB(m, sqrt) 193AC_CHECK_FUNCS([cbrt]) 194 195dnl AGPGART headers 196AC_CHECK_HEADERS([linux/agpgart.h sys/agpio.h sys/agpgart.h], AGP=yes) 197AM_CONDITIONAL(AGP, [test "x$AGP" = xyes]) 198 199dnl fbdev header 200AC_CHECK_HEADERS([linux/fb.h], FBDEV=yes) 201AM_CONDITIONAL(FBDEVHW, [test "x$FBDEV" = xyes]) 202 203dnl FreeBSD kldload support (sys/linker.h) 204AC_CHECK_HEADERS([sys/linker.h], 205 [ac_cv_sys_linker_h=yes], 206 [ac_cv_sys_linker_h=no], 207 [#include <sys/param.h>]) 208AM_CONDITIONAL(FREEBSD_KLDLOAD, [test "x$ac_cv_sys_linker_h" = xyes]) 209 210AC_CACHE_CHECK([for SYSV IPC], 211 ac_cv_sysv_ipc, 212 [AC_LINK_IFELSE([AC_LANG_PROGRAM([[ 213#include <sys/types.h> 214#include <sys/ipc.h> 215#include <sys/shm.h> 216#include <sys/stat.h> 217]],[[ 218{ 219 int id; 220 id = shmget(IPC_PRIVATE, 512, S_IRUSR | S_IWUSR); 221 if (id < 0) return -1; 222 return shmctl(id, IPC_RMID, 0); 223}]])], 224 [ac_cv_sysv_ipc=yes], 225 [ac_cv_sysv_ipc=no])]) 226if test "x$ac_cv_sysv_ipc" = xyes; then 227 AC_DEFINE(HAVE_SYSV_IPC, 1, [Define to 1 if SYSV IPC is available]) 228fi 229 230dnl OpenBSD /dev/xf86 aperture driver 231if test -c /dev/xf86 ; then 232 AC_DEFINE(HAS_APERTURE_DRV, 1, [System has /dev/xf86 aperture driver]) 233fi 234 235dnl BSD APM support 236AC_CHECK_HEADER([machine/apmvar.h],[ 237 AC_CHECK_HEADER([sys/event.h], 238 ac_cv_BSD_KQUEUE_APM=yes, 239 ac_cv_BSD_APM=yes)]) 240 241AM_CONDITIONAL(BSD_APM, [test "x$ac_cv_BSD_APM" = xyes]) 242AM_CONDITIONAL(BSD_KQUEUE_APM, [test "x$ac_cv_BSD_KQUEUE_APM" = xyes]) 243 244dnl glibc backtrace support check 245AC_CHECK_HEADER([execinfo.h],[ 246 AC_CHECK_LIB(c, backtrace, [ 247 AC_DEFINE(HAVE_BACKTRACE, 1, [Has backtrace support]) 248 AC_DEFINE(HAVE_EXECINFO_H, 1, [Have execinfo.h]) 249 ])] 250) 251 252dnl --------------------------------------------------------------------------- 253dnl Bus options and CPU capabilities. Replaces logic in 254dnl hw/xfree86/os-support/bus/Makefile.am, among others. 255dnl --------------------------------------------------------------------------- 256DEFAULT_INT10="x86emu" 257 258dnl Override defaults as needed for specific platforms: 259 260case $host_cpu in 261 alpha*) 262 ALPHA_VIDEO=yes 263 case $host_os in 264 *freebsd*) SYS_LIBS=-lio ;; 265 *netbsd*) AC_DEFINE(USE_ALPHA_PIO, 1, [NetBSD PIO alpha IO]) ;; 266 esac 267 GLX_ARCH_DEFINES="-D__GLX_ALIGN64 -mieee" 268 ;; 269 arm*) 270 ARM_VIDEO=yes 271 DEFAULT_INT10="stub" 272 ;; 273 i*86) 274 I386_VIDEO=yes 275 case $host_os in 276 *freebsd*) AC_DEFINE(USE_DEV_IO) ;; 277 *dragonfly*) AC_DEFINE(USE_DEV_IO) ;; 278 *netbsd*) AC_DEFINE(USE_I386_IOPL) 279 SYS_LIBS=-li386 280 ;; 281 *openbsd*) AC_DEFINE(USE_I386_IOPL) 282 SYS_LIBS=-li386 283 ;; 284 esac 285 ;; 286 powerpc*) 287 PPC_VIDEO=yes 288 case $host_os in 289 *freebsd*) DEFAULT_INT10=stub ;; 290 esac 291 ;; 292 sparc*) 293 SPARC64_VIDEO=yes 294 BSD_ARCH_SOURCES="sparc64_video.c ioperm_noop.c" 295 GLX_ARCH_DEFINES="-D__GLX_ALIGN64" 296 ;; 297 x86_64*|amd64*) 298 I386_VIDEO=yes 299 case $host_os in 300 *freebsd*) AC_DEFINE(USE_DEV_IO, 1, [BSD /dev/io]) ;; 301 *dragonfly*) AC_DEFINE(USE_DEV_IO, 1, [BSD /dev/io]) ;; 302 *netbsd*) AC_DEFINE(USE_I386_IOPL, 1, [BSD i386 iopl]) 303 SYS_LIBS=-lx86_64 304 ;; 305 *openbsd*) AC_DEFINE(USE_AMD64_IOPL, 1, [BSD AMD64 iopl]) 306 SYS_LIBS=-lamd64 307 ;; 308 esac 309 GLX_ARCH_DEFINES="-D__GLX_ALIGN64" 310 ;; 311 ia64*) 312 GLX_ARCH_DEFINES="-D__GLX_ALIGN64" 313 ;; 314 s390*) 315 GLX_ARCH_DEFINES="-D__GLX_ALIGN64" 316 ;; 317esac 318AC_SUBST(GLX_ARCH_DEFINES) 319 320dnl BSD *_video.c selection 321AM_CONDITIONAL(ALPHA_VIDEO, [test "x$ALPHA_VIDEO" = xyes]) 322AM_CONDITIONAL(ARM_VIDEO, [test "x$ARM_VIDEO" = xyes]) 323AM_CONDITIONAL(I386_VIDEO, [test "x$I386_VIDEO" = xyes]) 324AM_CONDITIONAL(PPC_VIDEO, [test "x$PPC_VIDEO" = xyes]) 325AM_CONDITIONAL(SPARC64_VIDEO, [test "x$SPARC64_VIDEO" = xyes]) 326 327DRI=no 328dnl it would be nice to autodetect these *CONS_SUPPORTs 329case $host_os in 330 *freebsd* | *dragonfly*) 331 case $host_os in 332 kfreebsd*-gnu) ;; 333 *) AC_DEFINE(CSRG_BASED, 1, [System is BSD-like]) ;; 334 esac 335 AC_DEFINE(PCCONS_SUPPORT, 1, [System has PC console]) 336 AC_DEFINE(PCVT_SUPPORT, 1, [System has PCVT console]) 337 AC_DEFINE(SYSCONS_SUPPORT, 1, [System has syscons console]) 338 DRI=yes 339 ;; 340 *netbsd*) 341 AC_DEFINE(CSRG_BASED, 1, [System is BSD-like]) 342 AC_DEFINE(PCCONS_SUPPORT, 1, [System has PC console]) 343 AC_DEFINE(PCVT_SUPPORT, 1, [System has PCVT console]) 344 AC_DEFINE(WSCONS_SUPPORT, 1, [System has wscons console]) 345 DRI=yes 346 ;; 347 *openbsd*) 348 AC_DEFINE(CSRG_BASED, 1, [System is BSD-like]) 349 AC_DEFINE(PCVT_SUPPORT, 1, [System has PC console]) 350 AC_DEFINE(WSCONS_SUPPORT, 1, [System has wscons console]) 351 ;; 352 *linux*) 353 DRI=yes 354 ;; 355 *solaris*) 356 DRI=yes 357 ;; 358 darwin*) 359 AC_DEFINE(CSRG_BASED, 1, [System is BSD-like]) 360 ;; 361 cygwin*|mingw*) 362 CFLAGS="$CFLAGS -DFD_SETSIZE=512" 363 ;; 364esac 365 366dnl augment XORG_RELEASE_VERSION for our snapshot number and to expose the 367dnl major number 368PVMAJOR=`echo $PACKAGE_VERSION | cut -d . -f 1` 369PVS=`echo $PACKAGE_VERSION | cut -d . -f 4 | cut -d - -f 1` 370if test "x$PVS" = "x"; then 371 PVS="0" 372fi 373 374VENDOR_RELEASE="((($PVMAJOR) * 10000000) + (($PVM) * 100000) + (($PVP) * 1000) + $PVS)" 375VENDOR_MAN_VERSION="Version ${PACKAGE_VERSION}" 376 377VENDOR_NAME="The X.Org Foundation" 378VENDOR_NAME_SHORT="X.Org" 379VENDOR_WEB="http://wiki.x.org" 380 381dnl Build options. 382AC_ARG_ENABLE(werror, AS_HELP_STRING([--enable-werror], 383 [Obsolete - use --enable-strict-compilation instead]), 384 AC_MSG_ERROR([--enable-werror has been replaced by --enable-strict-compilation])) 385 386AC_ARG_ENABLE(debug, AS_HELP_STRING([--enable-debug], 387 [Enable debugging (default: disabled)]), 388 [DEBUGGING=$enableval], [DEBUGGING=no]) 389AC_ARG_WITH(int10, AS_HELP_STRING([--with-int10=BACKEND], [int10 backend: vm86, x86emu or stub]), 390 [INT10="$withval"], 391 [INT10="$DEFAULT_INT10"]) 392AC_ARG_WITH(vendor-name, AS_HELP_STRING([--with-vendor-name=VENDOR], 393 [Vendor string reported by the server]), 394 [ VENDOR_NAME="$withval" ], []) 395AC_ARG_WITH(vendor-name-short, AS_HELP_STRING([--with-vendor-name-short=VENDOR], 396 [Short version of vendor string reported by the server]), 397 [ VENDOR_NAME_SHORT="$withval" ], []) 398AC_ARG_WITH(vendor-web, AS_HELP_STRING([--with-vendor-web=URL], 399 [Vendor web address reported by the server]), 400 [ VENDOR_WEB="$withval" ], []) 401AC_ARG_WITH(module-dir, AS_HELP_STRING([--with-module-dir=DIR], 402 [Directory where modules are installed (default: $libdir/xorg/modules)]), 403 [ moduledir="$withval" ], 404 [ moduledir="${libdir}/xorg/modules" ]) 405AC_ARG_WITH(log-dir, AS_HELP_STRING([--with-log-dir=DIR], 406 [Directory where log files are kept (default: $localstatedir/log)]), 407 [ logdir="$withval" ], 408 [ logdir="$localstatedir/log" ]) 409AC_ARG_WITH(builder-addr, AS_HELP_STRING([--with-builder-addr=ADDRESS], 410 [Builder address (default: xorg@lists.freedesktop.org)]), 411 [ BUILDERADDR="$withval" ], 412 [ BUILDERADDR="xorg@lists.freedesktop.org" ]) 413AC_ARG_WITH(os-name, AS_HELP_STRING([--with-os-name=OSNAME], [Name of OS (default: output of "uname -srm")]), 414 [ OSNAME="$withval" ], 415 [ OSNAME=`uname -srm` ]) 416AC_ARG_WITH(os-vendor, AS_HELP_STRING([--with-os-vendor=OSVENDOR], [Name of OS vendor]), 417 [ OSVENDOR="$withval" ], 418 [ OSVENDOR="" ]) 419AC_ARG_WITH(builderstring, AS_HELP_STRING([--with-builderstring=BUILDERSTRING], [Additional builder string]), 420 [ BUILDERSTRING="$withval" ] 421 [ ]) 422AC_ARG_ENABLE(listen-tcp, AS_HELP_STRING([--enable-listen-tcp], 423 [Listen on TCP by default (default:disabled)]), 424 [LISTEN_TCP=$enableval], [LISTEN_TCP=no]) 425AC_ARG_ENABLE(listen-unix, AS_HELP_STRING([--disable-listen-unix], 426 [Listen on Unix by default (default:enabled)]), 427 [LISTEN_UNIX=$enableval], [LISTEN_UNIX=yes]) 428 429AC_ARG_ENABLE(listen-local, AS_HELP_STRING([--disable-listen-local], 430 [Listen on local by default (default:enabled)]), 431 [LISTEN_LOCAL=$enableval], [LISTEN_LOCAL=yes]) 432 433case $host_os in 434 linux*) 435 FALLBACK_INPUT_DRIVER="libinput" 436 ;; 437 *) 438 FALLBACK_INPUT_DRIVER="" 439 ;; 440esac 441AC_ARG_WITH(fallback-input-driver, 442 AC_HELP_STRING([--with-fallback-input-driver=$FALLBACK_INPUT_DRIVER], 443 [Input driver fallback if the requested driver for a device is unavailable]), 444 [ FALLBACK_INPUT_DRIVER=$withval ], []) 445if test "x$FALLBACK_INPUT_DRIVER" = "xno"; then 446 FALLBACK_INPUT_DRIVER="" 447fi 448AC_MSG_CHECKING([for fallback input driver]) 449AC_MSG_RESULT([$FALLBACK_INPUT_DRIVER]) 450AC_DEFINE_UNQUOTED(FALLBACK_INPUT_DRIVER, ["$FALLBACK_INPUT_DRIVER"], [ Fallback input driver ]) 451 452dnl Determine font path 453XORG_FONTROOTDIR 454XORG_FONTSUBDIR(FONTMISCDIR, fontmiscdir, misc) 455XORG_FONTSUBDIR(FONTOTFDIR, fontotfdir, OTF) 456XORG_FONTSUBDIR(FONTTTFDIR, fontttfdir, TTF) 457XORG_FONTSUBDIR(FONTTYPE1DIR, fonttype1dir, Type1) 458XORG_FONTSUBDIR(FONT75DPIDIR, font75dpidir, 75dpi) 459XORG_FONTSUBDIR(FONT100DPIDIR, font100dpidir, 100dpi) 460 461dnl Uses --with-default-font-path if set, otherwise uses standard 462dnl subdirectories of FONTROOTDIR. Some distros set the default font path to 463dnl "catalogue:/etc/X11/fontpath.d,built-ins" 464DEFAULT_FONT_PATH="${FONTMISCDIR}/,${FONTTTFDIR}/,${FONTOTFDIR}/,${FONTTYPE1DIR}/,${FONT100DPIDIR}/,${FONT75DPIDIR}/" 465case $host_os in 466 darwin*) DEFAULT_FONT_PATH="${DEFAULT_FONT_PATH},/Library/Fonts,/System/Library/Fonts" ;; 467esac 468 469AC_ARG_WITH(default-font-path, AS_HELP_STRING([--with-default-font-path=PATH], [Comma separated list of font dirs]), 470 [ FONTPATH="$withval" ], 471 [ FONTPATH="${DEFAULT_FONT_PATH}" ]) 472 473AC_MSG_CHECKING([for default font path]) 474AC_MSG_RESULT([$FONTPATH]) 475 476AC_ARG_WITH(xkb-path, AS_HELP_STRING([--with-xkb-path=PATH], [Path to XKB base dir (default: auto)]), 477 [ XKBPATH="$withval" ], 478 [ XKBPATH="auto" ]) 479AC_ARG_WITH(xkb-output, AS_HELP_STRING([--with-xkb-output=PATH], [Path to XKB output dir (default: ${datadir}/X11/xkb/compiled)]), 480 [ XKBOUTPUT="$withval" ], 481 [ XKBOUTPUT="compiled" ]) 482AC_ARG_WITH(default-xkb-rules, AS_HELP_STRING([--with-default-xkb-rules=RULES], 483 [Keyboard ruleset (default: base/evdev)]), 484 [ XKB_DFLT_RULES="$withval" ], 485 [ XKB_DFLT_RULES="" ]) 486AC_ARG_WITH(default-xkb-model, AS_HELP_STRING([--with-default-xkb-model=MODEL], 487 [Keyboard model (default: pc105)]), 488 [ XKB_DFLT_MODEL="$withval" ], 489 [ XKB_DFLT_MODEL="pc105" ]) 490AC_ARG_WITH(default-xkb-layout, AS_HELP_STRING([--with-default-xkb-layout=LAYOUT], 491 [Keyboard layout (default: us)]), 492 [ XKB_DFLT_LAYOUT="$withval" ], 493 [ XKB_DFLT_LAYOUT="us" ]) 494AC_ARG_WITH(default-xkb-variant, AS_HELP_STRING([--with-default-xkb-variant=VARIANT], 495 [Keyboard variant (default: (none))]), 496 [ XKB_DFLT_VARIANT="$withval" ], 497 [ XKB_DFLT_VARIANT="" ]) 498AC_ARG_WITH(default-xkb-options, AS_HELP_STRING([--with-default-xkb-options=OPTIONS], 499 [Keyboard layout options (default: (none))]), 500 [ XKB_DFLT_OPTIONS="$withval" ], 501 [ XKB_DFLT_OPTIONS="" ]) 502AC_ARG_WITH(serverconfig-path, AS_HELP_STRING([--with-serverconfig-path=PATH], 503 [Directory where ancillary server config files are installed (default: ${libdir}/xorg)]), 504 [ SERVERCONFIG="$withval" ], 505 [ SERVERCONFIG="${libdir}/xorg" ]) 506AC_ARG_WITH(apple-applications-dir,AS_HELP_STRING([--with-apple-applications-dir=PATH], [Path to the Applications directory (default: /Applications/Utilities)]), 507 [ APPLE_APPLICATIONS_DIR="${withval}" ], 508 [ APPLE_APPLICATIONS_DIR="/Applications/Utilities" ]) 509AC_SUBST([APPLE_APPLICATIONS_DIR]) 510AC_ARG_WITH(apple-application-name,AS_HELP_STRING([--with-apple-application-name=NAME], [Name for the .app (default: X11)]), 511 [ APPLE_APPLICATION_NAME="${withval}" ], 512 [ APPLE_APPLICATION_NAME="X11" ]) 513AC_SUBST([APPLE_APPLICATION_NAME]) 514AC_ARG_WITH(bundle-id-prefix, AS_HELP_STRING([--with-bundle-id-prefix=RDNS_PREFIX], [Prefix to use for bundle identifiers (default: org.x)]), 515 [ BUNDLE_ID_PREFIX="${withval}" ]) 516AC_SUBST([BUNDLE_ID_PREFIX]) 517AC_DEFINE_UNQUOTED(BUNDLE_ID_PREFIX, "$BUNDLE_ID_PREFIX", [Prefix to use for bundle identifiers]) 518m4_define(DEFAULT_BUNDLE_VERSION, m4_esyscmd([echo ]AC_PACKAGE_VERSION[ | cut -f1-3 -d. | tr -d '\n'])) 519AC_ARG_WITH(bundle-version, AS_HELP_STRING([--with-bundle-version=VERSION], [Version to use for X11.app's CFBundleVersion (default: ]DEFAULT_BUNDLE_VERSION[)]), 520 [ BUNDLE_VERSION="${withval}" ], 521 [ BUNDLE_VERSION="DEFAULT_BUNDLE_VERSION" ]) 522AC_SUBST([BUNDLE_VERSION]) 523AC_ARG_WITH(bundle-version-string, AS_HELP_STRING([--with-bundle-version-string=VERSION], [Version to use for X11.app's CFBundleShortVersionString (default: ]AC_PACKAGE_VERSION[)]), 524 [ BUNDLE_VERSION_STRING="${withval}" ], 525 [ BUNDLE_VERSION_STRING="${PACKAGE_VERSION}" ]) 526AC_SUBST([BUNDLE_VERSION_STRING]) 527AC_ARG_ENABLE(sparkle,AS_HELP_STRING([--enable-sparkle], [Enable updating of X11.app using the Sparkle Framework (default: disabled)]), 528 [ XQUARTZ_SPARKLE="${enableval}" ], 529 [ XQUARTZ_SPARKLE="no" ]) 530AC_SUBST([XQUARTZ_SPARKLE]) 531AC_ARG_WITH(sparkle-feed-url, AS_HELP_STRING([--with-sparkle-feed-url=URL], [URL for the Sparkle feed (default: https://www.xquartz.org/releases/sparkle/release.xml)]), 532 [ XQUARTZ_SPARKLE_FEED_URL="${withval}" ], 533 [ XQUARTZ_SPARKLE_FEED_URL="https://www.xquartz.org/releases/sparkle/release.xml" ]) 534AC_SUBST([XQUARTZ_SPARKLE_FEED_URL]) 535AC_ARG_ENABLE(visibility, AS_HELP_STRING([--enable-visibility], [Enable symbol visibility (default: auto)]), 536 [SYMBOL_VISIBILITY=$enableval], 537 [SYMBOL_VISIBILITY=auto]) 538 539dnl GLX build options 540AC_ARG_WITH(khronos-spec-dir, AS_HELP_STRING([--with-khronos-spec-dir=PATH], [Path to Khronos OpenGL registry database files (default: auto)]), 541 [KHRONOS_SPEC_DIR="${withval}"], 542 [KHRONOS_SPEC_DIR=auto]) 543 544dnl Extensions. 545AC_ARG_ENABLE(composite, AS_HELP_STRING([--disable-composite], [Build Composite extension (default: enabled)]), [COMPOSITE=$enableval], [COMPOSITE=yes]) 546AC_ARG_ENABLE(mitshm, AS_HELP_STRING([--disable-mitshm], [Build SHM extension (default: auto)]), [MITSHM=$enableval], [MITSHM=auto]) 547AC_ARG_ENABLE(xres, AS_HELP_STRING([--disable-xres], [Build XRes extension (default: enabled)]), [RES=$enableval], [RES=yes]) 548AC_ARG_ENABLE(record, AS_HELP_STRING([--disable-record], [Build Record extension (default: enabled)]), [RECORD=$enableval], [RECORD=yes]) 549AC_ARG_ENABLE(xv, AS_HELP_STRING([--disable-xv], [Build Xv extension (default: enabled)]), [XV=$enableval], [XV=yes]) 550AC_ARG_ENABLE(xvmc, AS_HELP_STRING([--disable-xvmc], [Build XvMC extension (default: enabled)]), [XVMC=$enableval], [XVMC=yes]) 551AC_ARG_ENABLE(dga, AS_HELP_STRING([--disable-dga], [Build DGA extension (default: auto)]), [DGA=$enableval], [DGA=auto]) 552AC_ARG_ENABLE(screensaver, AS_HELP_STRING([--disable-screensaver], [Build ScreenSaver extension (default: enabled)]), [SCREENSAVER=$enableval], [SCREENSAVER=yes]) 553AC_ARG_ENABLE(xdmcp, AS_HELP_STRING([--disable-xdmcp], [Build XDMCP extension (default: auto)]), [XDMCP=$enableval], [XDMCP=auto]) 554AC_ARG_ENABLE(xdm-auth-1, AS_HELP_STRING([--disable-xdm-auth-1], [Build XDM-Auth-1 extension (default: auto)]), [XDMAUTH=$enableval], [XDMAUTH=auto]) 555AC_ARG_ENABLE(glx, AS_HELP_STRING([--disable-glx], [Build GLX extension (default: enabled)]), [GLX=$enableval], [GLX=yes]) 556AC_ARG_ENABLE(dri, AS_HELP_STRING([--enable-dri], [Build DRI extension (default: auto)]), [DRI=$enableval]) 557AC_ARG_ENABLE(dri2, AS_HELP_STRING([--enable-dri2], [Build DRI2 extension (default: auto)]), [DRI2=$enableval], [DRI2=auto]) 558AC_ARG_ENABLE(dri3, AS_HELP_STRING([--enable-dri3], [Build DRI3 extension (default: auto)]), [DRI3=$enableval], [DRI3=auto]) 559AC_ARG_ENABLE(present, AS_HELP_STRING([--disable-present], [Build Present extension (default: enabled)]), [PRESENT=$enableval], [PRESENT=yes]) 560AC_ARG_ENABLE(xinerama, AS_HELP_STRING([--disable-xinerama], [Build Xinerama extension (default: enabled)]), [XINERAMA=$enableval], [XINERAMA=yes]) 561AC_ARG_ENABLE(xf86vidmode, AS_HELP_STRING([--disable-xf86vidmode], [Build XF86VidMode extension (default: auto)]), [XF86VIDMODE=$enableval], [XF86VIDMODE=auto]) 562AC_ARG_ENABLE(xace, AS_HELP_STRING([--disable-xace], [Build X-ACE extension (default: enabled)]), [XACE=$enableval], [XACE=yes]) 563AC_ARG_ENABLE(xselinux, AS_HELP_STRING([--enable-xselinux], [Build SELinux extension (default: disabled)]), [XSELINUX=$enableval], [XSELINUX=no]) 564AC_ARG_ENABLE(xcsecurity, AS_HELP_STRING([--enable-xcsecurity], [Build Security extension (default: disabled)]), [XCSECURITY=$enableval], [XCSECURITY=no]) 565AC_ARG_ENABLE(dbe, AS_HELP_STRING([--disable-dbe], [Build DBE extension (default: enabled)]), [DBE=$enableval], [DBE=yes]) 566AC_ARG_ENABLE(xf86bigfont, AS_HELP_STRING([--enable-xf86bigfont], [Build XF86 Big Font extension (default: disabled)]), [XF86BIGFONT=$enableval], [XF86BIGFONT=no]) 567AC_ARG_ENABLE(dpms, AS_HELP_STRING([--disable-dpms], [Build DPMS extension (default: enabled)]), [DPMSExtension=$enableval], [DPMSExtension=yes]) 568AC_ARG_ENABLE(config-udev, AS_HELP_STRING([--enable-config-udev], [Build udev support (default: auto)]), [CONFIG_UDEV=$enableval], [CONFIG_UDEV=auto]) 569AC_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]) 570AC_ARG_ENABLE(config-hal, AS_HELP_STRING([--disable-config-hal], [Build HAL support (default: auto)]), [CONFIG_HAL=$enableval], [CONFIG_HAL=auto]) 571AC_ARG_ENABLE(config-wscons, AS_HELP_STRING([--enable-config-wscons], [Build wscons config support (default: auto)]), [CONFIG_WSCONS=$enableval], [CONFIG_WSCONS=auto]) 572AC_ARG_ENABLE(xfree86-utils, AS_HELP_STRING([--enable-xfree86-utils], [Build xfree86 DDX utilities (default: enabled)]), [XF86UTILS=$enableval], [XF86UTILS=yes]) 573AC_ARG_ENABLE(vgahw, AS_HELP_STRING([--enable-vgahw], [Build Xorg with vga access (default: enabled)]), [VGAHW=$enableval], [VGAHW=yes]) 574AC_ARG_ENABLE(vbe, AS_HELP_STRING([--enable-vbe], [Build Xorg with VBE module (default: enabled)]), [VBE=$enableval], [VBE=yes]) 575AC_ARG_ENABLE(int10-module, AS_HELP_STRING([--enable-int10-module], [Build Xorg with int10 module (default: enabled)]), [INT10MODULE=$enableval], [INT10MODULE=yes]) 576AC_ARG_ENABLE(windowswm, AS_HELP_STRING([--enable-windowswm], [Build XWin with WindowsWM extension (default: no)]), [WINDOWSWM=$enableval], [WINDOWSWM=no]) 577AC_ARG_ENABLE(windowsdri, AS_HELP_STRING([--enable-windowsdri], [Build XWin with WindowsDRI extension (default: auto)]), [WINDOWSDRI=$enableval], [WINDOWSDRI=auto]) 578AC_ARG_ENABLE(libdrm, AS_HELP_STRING([--enable-libdrm], [Build Xorg with libdrm support (default: enabled)]), [DRM=$enableval],[DRM=yes]) 579AC_ARG_ENABLE(clientids, AS_HELP_STRING([--disable-clientids], [Build Xorg with client ID tracking (default: enabled)]), [CLIENTIDS=$enableval], [CLIENTIDS=yes]) 580AC_ARG_ENABLE(pciaccess, AS_HELP_STRING([--enable-pciaccess], [Build Xorg with pciaccess library (default: enabled)]), [PCI=$enableval], [PCI=yes]) 581AC_ARG_ENABLE(linux_acpi, AS_HELP_STRING([--disable-linux-acpi], [Disable building ACPI support on Linux (if available).]), [enable_linux_acpi=$enableval], [enable_linux_acpi=yes]) 582AC_ARG_ENABLE(linux_apm, AS_HELP_STRING([--disable-linux-apm], [Disable building APM support on Linux (if available).]), [enable_linux_apm=$enableval], [enable_linux_apm=yes]) 583AC_ARG_ENABLE(systemd-logind, AS_HELP_STRING([--enable-systemd-logind], [Build systemd-logind support (default: auto)]), [SYSTEMD_LOGIND=$enableval], [SYSTEMD_LOGIND=auto]) 584AC_ARG_ENABLE(suid-wrapper, AS_HELP_STRING([--enable-suid-wrapper], [Build suid-root wrapper for legacy driver support on rootless xserver systems (default: no)]), [SUID_WRAPPER=$enableval], [SUID_WRAPPER=no]) 585 586dnl DDXes. 587AC_ARG_ENABLE(xorg, AS_HELP_STRING([--enable-xorg], [Build Xorg server (default: auto)]), [XORG=$enableval], [XORG=auto]) 588AC_ARG_ENABLE(dmx, AS_HELP_STRING([--enable-dmx], [Build DMX server (default: no)]), [DMX=$enableval], [DMX=no]) 589AC_ARG_ENABLE(xvfb, AS_HELP_STRING([--enable-xvfb], [Build Xvfb server (default: yes)]), [XVFB=$enableval], [XVFB=yes]) 590AC_ARG_ENABLE(xnest, AS_HELP_STRING([--enable-xnest], [Build Xnest server (default: auto)]), [XNEST=$enableval], [XNEST=auto]) 591AC_ARG_ENABLE(xquartz, AS_HELP_STRING([--enable-xquartz], [Build Xquartz server for OS-X (default: auto)]), [XQUARTZ=$enableval], [XQUARTZ=auto]) 592AC_ARG_ENABLE(xwayland, AS_HELP_STRING([--enable-xwayland], [Build Xwayland server (default: auto)]), [XWAYLAND=$enableval], [XWAYLAND=auto]) 593AC_ARG_ENABLE(xwayland-eglstream, AS_HELP_STRING([--enable-xwayland-eglstream], [Build Xwayland eglstream support (default: no)]), [XWAYLAND_EGLSTREAM=$enableval], [XWAYLAND_EGLSTREAM=no]) 594AC_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]) 595AC_ARG_ENABLE(xwin, AS_HELP_STRING([--enable-xwin], [Build XWin server (default: auto)]), [XWIN=$enableval], [XWIN=auto]) 596AC_ARG_ENABLE(glamor, AS_HELP_STRING([--enable-glamor], [Build glamor dix module (default: auto)]), [GLAMOR=$enableval], [GLAMOR=auto]) 597dnl kdrive and its subsystems 598AC_ARG_ENABLE(kdrive, AS_HELP_STRING([--enable-kdrive], [Build kdrive servers (default: no)]), [KDRIVE=$enableval], [KDRIVE=no]) 599AC_ARG_ENABLE(xephyr, AS_HELP_STRING([--enable-xephyr], [Build the kdrive Xephyr server (default: auto)]), [XEPHYR=$enableval], [XEPHYR=auto]) 600dnl kdrive options 601AC_ARG_ENABLE(libunwind, AS_HELP_STRING([--enable-libunwind], [Use libunwind for backtracing (default: auto)]), [LIBUNWIND="$enableval"], [LIBUNWIND="auto"]) 602AC_ARG_ENABLE(xshmfence, AS_HELP_STRING([--disable-xshmfence], [Disable xshmfence (default: auto)]), [XSHMFENCE="$enableval"], [XSHMFENCE="auto"]) 603 604 605dnl chown/chmod to be setuid root as part of build 606dnl Replaces InstallXserverSetUID in imake 607AC_ARG_ENABLE(install-setuid, 608 AS_HELP_STRING([--enable-install-setuid], 609 [Install Xorg server as owned by root with setuid bit (default: auto)]), 610 [SETUID=$enableval], [SETUID=auto]) 611AC_MSG_CHECKING([to see if we can install the Xorg server as root]) 612if test "x$SETUID" = "xauto" ; then 613 case $host_os in 614 cygwin*) SETUID="no" ;; 615 mingw*) SETUID="no" ;; 616 darwin*) SETUID="no" ;; 617 *) 618 case $host_cpu in 619 sparc) SETUID="no" ;; 620 *) SETUID="yes" ;; 621 esac 622 esac 623 if test "x$SETUID" = xyes; then 624 touch testfile 625 chown root testfile > /dev/null 2>&1 || SETUID="no" 626 rm -f testfile 627 fi 628fi 629AC_MSG_RESULT([$SETUID]) 630AM_CONDITIONAL(INSTALL_SETUID, [test "x$SETUID" = "xyes"]) 631 632dnl Issue an error if xtrans.m4 was not found and XTRANS_CONNECTION_FLAGS macro 633dnl was not expanded, since xorg-server with no transport types is rather useless. 634dnl 635dnl If you're seeing an error here, be sure you installed the lib/xtrans module 636dnl first and if it's not in the default location, that you set the ACLOCAL 637dnl environment variable to find it, such as: 638dnl ACLOCAL="aclocal -I ${PREFIX}/share/aclocal" 639m4_pattern_forbid([^XTRANS_CONNECTION_FLAGS$]) 640 641# Transport selection macro from xtrans.m4 642XTRANS_CONNECTION_FLAGS 643 644# Secure RPC detection macro from xtrans.m4 645XTRANS_SECURE_RPC_FLAGS 646AM_CONDITIONAL(SECURE_RPC, [test "x$SECURE_RPC" = xyes]) 647 648AM_CONDITIONAL(INT10_VM86, [test "x$INT10" = xvm86]) 649AM_CONDITIONAL(INT10_X86EMU, [test "x$INT10" = xx86emu]) 650AM_CONDITIONAL(INT10_STUB, [test "x$INT10" = xstub]) 651 652dnl DDX Detection... Yes, it's ugly to have it here... but we need to 653dnl handle this early on so that we don't require unsupported extensions 654case $host_os in 655 cygwin* | mingw*) 656 CONFIG_HAL=no 657 CONFIG_UDEV=no 658 CONFIG_UDEV_KMS=no 659 DGA=no 660 DRM=no 661 DRI2=no 662 DRI3=no 663 INT10MODULE=no 664 PCI=no 665 VGAHW=no 666 VBE=no 667 XF86UTILS=no 668 XF86VIDMODE=no 669 XSELINUX=no 670 SYMBOL_VISIBILITY=no 671 ;; 672 darwin*) 673 PCI=no 674 INT10MODULE=no 675 VGAHW=no 676 VBE=no 677 DRM=no 678 DRI2=no 679 DRI3=no 680 681 if test x$XQUARTZ = xauto; then 682 AC_CACHE_CHECK([whether to build Xquartz],xorg_cv_Carbon_framework,[ 683 save_LDFLAGS=$LDFLAGS 684 LDFLAGS="$LDFLAGS -framework Carbon" 685 AC_LINK_IFELSE([AC_LANG_SOURCE([char FSFindFolder(); int main() { FSFindFolder(); return 0;}])], 686 [xorg_cv_Carbon_framework=yes], 687 [xorg_cv_Carbon_framework=no]) 688 LDFLAGS=$save_LDFLAGS]) 689 690 if test "X$xorg_cv_Carbon_framework" = Xyes; then 691 XQUARTZ=yes 692 else 693 XQUARTZ=no 694 fi 695 fi 696 697 AC_CHECK_FUNC(dispatch_async, 698 AC_DEFINE([HAVE_LIBDISPATCH], 1, [Define to 1 if you have the libdispatch (GCD) available]), 699 []) 700 701 if test "x$XQUARTZ" = xyes ; then 702 XQUARTZ=yes 703 XVFB=no 704 XNEST=no 705 XWAYLAND=no 706 707 COMPOSITE=no 708 DGA=no 709 DPMSExtension=no 710 XF86VIDMODE=no 711 fi 712 ;; 713 gnu*) 714 DRM=no 715 DRI2=no 716 DRI3=no 717 ;; 718 *) XQUARTZ=no ;; 719esac 720 721dnl --------------------------------------------------------------------------- 722dnl Extension section 723dnl --------------------------------------------------------------------------- 724XEXT_INC='-I$(top_srcdir)/Xext' 725XEXT_LIB='$(top_builddir)/Xext/libXext.la' 726 727dnl Optional modules 728VIDEOPROTO="videoproto" 729COMPOSITEPROTO="compositeproto >= 0.4" 730RECORDPROTO="recordproto >= 1.13.99.1" 731SCRNSAVERPROTO="scrnsaverproto >= 1.1" 732RESOURCEPROTO="resourceproto >= 1.2.0" 733DRIPROTO="xf86driproto >= 2.1.0" 734DRI2PROTO="dri2proto >= 2.8" 735DRI3PROTO="dri3proto >= 1.2" 736XINERAMAPROTO="xineramaproto" 737BIGFONTPROTO="xf86bigfontproto >= 1.2.0" 738DGAPROTO="xf86dgaproto >= 2.0.99.1" 739GLPROTO="glproto >= 1.4.17" 740DMXPROTO="dmxproto >= 2.2.99.1" 741VIDMODEPROTO="xf86vidmodeproto >= 2.2.99.1" 742WINDOWSWMPROTO="windowswmproto" 743APPLEWMPROTO="applewmproto >= 1.4" 744LIBXSHMFENCE="xshmfence >= 1.1" 745 746dnl Required modules 747XPROTO="xproto >= 7.0.31" 748RANDRPROTO="randrproto >= 1.6.0" 749RENDERPROTO="renderproto >= 0.11" 750XEXTPROTO="xextproto >= 7.2.99.901" 751INPUTPROTO="inputproto >= 2.3" 752KBPROTO="kbproto >= 1.0.3" 753FONTSPROTO="fontsproto >= 2.1.3" 754FIXESPROTO="fixesproto >= 5.0" 755DAMAGEPROTO="damageproto >= 1.1" 756XCMISCPROTO="xcmiscproto >= 1.2.0" 757BIGREQSPROTO="bigreqsproto >= 1.1.0" 758XTRANS="xtrans >= 1.3.5" 759PRESENTPROTO="presentproto >= 1.1" 760 761dnl List of libraries that require a specific version 762LIBAPPLEWM="applewm >= 1.4" 763LIBDMX="dmx >= 1.0.99.1" 764LIBDRI="dri >= 7.8.0" 765LIBDRM="libdrm >= 2.4.89" 766LIBEGL="egl" 767LIBGBM="gbm >= 10.2.0" 768LIBGL="gl >= 7.1.0" 769LIBXEXT="xext >= 1.0.99.4" 770LIBXFONT="xfont2 >= 2.0.0" 771LIBXI="xi >= 1.2.99.1" 772LIBXTST="xtst >= 1.0.99.2" 773LIBPCIACCESS="pciaccess >= 0.12.901" 774LIBUDEV="libudev >= 143" 775LIBSELINUX="libselinux >= 2.0.86" 776LIBDBUS="dbus-1 >= 1.0" 777LIBPIXMAN="pixman-1 >= 0.27.2" 778 779dnl Pixman is always required, but we separate it out so we can link 780dnl specific modules against it 781PKG_CHECK_MODULES(PIXMAN, $LIBPIXMAN) 782REQUIRED_LIBS="$REQUIRED_LIBS $LIBPIXMAN $LIBXFONT xau" 783 784dnl Core modules for most extensions, et al. 785SDK_REQUIRED_MODULES="$XPROTO $RANDRPROTO $RENDERPROTO $XEXTPROTO $INPUTPROTO $KBPROTO $FONTSPROTO $LIBPIXMAN" 786# Make SDK_REQUIRED_MODULES available for inclusion in xorg-server.pc 787AC_SUBST(SDK_REQUIRED_MODULES) 788 789AC_CHECK_DECL([PTHREAD_MUTEX_RECURSIVE], [HAVE_RECURSIVE_MUTEX=yes], [HAVE_RECURSIVE_MUTEX=no], [[#include <pthread.h>]]) 790 791THREAD_DEFAULT=no 792 793if test "x$HAVE_RECURSIVE_MUTEX" = "xyes" ; then 794 THREAD_DEFAULT=yes 795fi 796 797AC_ARG_ENABLE(input-thread, AS_HELP_STRING([--enable-input-thread], 798 [Enable input threads]), 799 [INPUTTHREAD=$enableval], [INPUTTHREAD=$THREAD_DEFAULT]) 800 801if test "x$INPUTTHREAD" = "xyes" ; then 802 AX_PTHREAD(,AC_MSG_ERROR([threaded input requested but no pthread support has been found])) 803 SYS_LIBS="$SYS_LIBS $PTHREAD_LIBS" 804 CFLAGS="$CFLAGS $PTHREAD_CFLAGS" 805 AC_DEFINE(INPUTTHREAD, 1, [Use a separate input thread]) 806 807 save_LIBS="$LIBS" 808 LIBS="$LIBS $SYS_LIBS" 809 dnl MacOS X 10.6 & higher 810 AC_MSG_CHECKING(for pthread_setname_np(const char*)) 811 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <pthread.h>], 812 [pthread_setname_np("example")])], 813 [AC_MSG_RESULT(yes) 814 AC_DEFINE(HAVE_PTHREAD_SETNAME_NP_WITHOUT_TID,1, 815 [Have function pthread_setname_np(const char*)])], 816 [AC_MSG_RESULT(no)]) 817 dnl GNU libc 2.12 & higher, Solaris 11.3 & higher 818 AC_MSG_CHECKING(for pthread_setname_np(pthread_t, const char*)) 819 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <pthread.h>], 820 [pthread_setname_np(pthread_self(), "example")])], 821 [AC_MSG_RESULT(yes) 822 AC_DEFINE(HAVE_PTHREAD_SETNAME_NP_WITH_TID,1, 823 [Have function pthread_setname_np(pthread_t, const char*)])], 824 [AC_MSG_RESULT(no)]) 825 LIBS="$save_LIBS" 826fi 827 828REQUIRED_MODULES="$FIXESPROTO $DAMAGEPROTO $XCMISCPROTO $XTRANS $BIGREQSPROTO $SDK_REQUIRED_MODULES" 829 830dnl systemd socket activation 831dnl activate the code in libxtrans that grabs systemd's socket fds 832dnl libsystemd-daemon was moved into libsystemd in version 209 833LIBSYSTEMD="libsystemd >= 209" 834AC_ARG_WITH([systemd-daemon], 835 AS_HELP_STRING([--with-systemd-daemon], 836 [support systemd socket activation (default: auto)]), 837 [WITH_SYSTEMD_DAEMON=$withval], [WITH_SYSTEMD_DAEMON=auto]) 838if test "x$WITH_SYSTEMD_DAEMON" = "xyes" -o "x$WITH_SYSTEMD_DAEMON" = "xauto" ; then 839 PKG_CHECK_MODULES([SYSTEMD_DAEMON], [$LIBSYSTEMD], 840 [HAVE_SYSTEMD_DAEMON=yes; 841 LIBSYSTEMD_DAEMON="$LIBSYSTEMD"], 842 [PKG_CHECK_MODULES([SYSTEMD_DAEMON], [libsystemd-daemon], 843 [HAVE_SYSTEMD_DAEMON=yes; 844 LIBSYSTEMD_DAEMON=libsystemd-daemon], 845 [HAVE_SYSTEMD_DAEMON=no])]) 846 if test "x$HAVE_SYSTEMD_DAEMON" = xyes; then 847 AC_DEFINE(HAVE_SYSTEMD_DAEMON, 1, [Define to 1 if libsystemd-daemon is available]) 848 REQUIRED_LIBS="$REQUIRED_LIBS $LIBSYSTEMD_DAEMON" 849 elif test "x$WITH_SYSTEMD_DAEMON" = xyes; then 850 AC_MSG_ERROR([systemd support requested but no library has been found]) 851 fi 852fi 853AM_CONDITIONAL([HAVE_SYSTEMD_DAEMON], [test "x$HAVE_SYSTEMD_DAEMON" = "xyes"]) 854 855if test "x$CONFIG_UDEV" = xyes && test "x$CONFIG_HAL" = xyes; then 856 AC_MSG_ERROR([Hotplugging through both libudev and hal not allowed]) 857fi 858 859PKG_CHECK_MODULES(UDEV, $LIBUDEV, [HAVE_LIBUDEV=yes], [HAVE_LIBUDEV=no]) 860if test "x$CONFIG_UDEV" = xauto; then 861 CONFIG_UDEV="$HAVE_LIBUDEV" 862 AC_DEFINE(HAVE_LIBUDEV, 1, [Define to 1 if libudev is available.]) 863fi 864AM_CONDITIONAL(CONFIG_UDEV, [test "x$CONFIG_UDEV" = xyes]) 865if test "x$CONFIG_UDEV" = xyes; then 866 CONFIG_HAL=no 867 if test "x$CONFIG_UDEV_KMS" = xauto; then 868 CONFIG_UDEV_KMS="$HAVE_LIBUDEV" 869 fi 870 if ! test "x$HAVE_LIBUDEV" = xyes; then 871 AC_MSG_ERROR([udev configuration API requested, but libudev is not installed]) 872 fi 873 AC_DEFINE(CONFIG_UDEV, 1, [Use libudev for input hotplug]) 874 if test "x$CONFIG_UDEV_KMS" = xyes; then 875 AC_DEFINE(CONFIG_UDEV_KMS, 1, [Use libudev for kms enumeration]) 876 fi 877 SAVE_LIBS=$LIBS 878 SAVE_CFLAGS=$CFLAGS 879 CFLAGS="$CFLAGS $UDEV_CFLAGS" 880 LIBS=$UDEV_LIBS 881 AC_CHECK_FUNCS([udev_monitor_filter_add_match_tag]) 882 AC_CHECK_FUNCS([udev_enumerate_add_match_tag]) 883 LIBS=$SAVE_LIBS 884 CFLAGS=$SAVE_CFLAGS 885fi 886AM_CONDITIONAL(CONFIG_UDEV_KMS, [test "x$CONFIG_UDEV_KMS" = xyes]) 887 888PKG_CHECK_MODULES(DBUS, $LIBDBUS, [HAVE_DBUS=yes], [HAVE_DBUS=no]) 889if test "x$HAVE_DBUS" = xyes; then 890 AC_DEFINE(HAVE_DBUS, 1, [Have D-Bus support]) 891fi 892AM_CONDITIONAL(HAVE_DBUS, [test "x$HAVE_DBUS" = xyes]) 893 894PKG_CHECK_MODULES(HAL, hal, [HAVE_HAL=yes], [HAVE_HAL=no]) 895if test "x$CONFIG_HAL" = xauto; then 896 CONFIG_HAL="$HAVE_HAL" 897fi 898if test "x$CONFIG_HAL" = xyes; then 899 if ! test "x$HAVE_HAL" = xyes; then 900 AC_MSG_ERROR([HAL hotplug API requested, but HAL is not installed.]) 901 fi 902 903 AC_DEFINE(CONFIG_HAL, 1, [Use the HAL hotplug API]) 904 NEED_DBUS="yes" 905fi 906AM_CONDITIONAL(CONFIG_HAL, [test "x$CONFIG_HAL" = xyes]) 907 908if test "x$SYSTEMD_LOGIND" = xauto; then 909 if test "x$HAVE_DBUS" = xyes -a "x$CONFIG_UDEV" = xyes ; then 910 SYSTEMD_LOGIND=yes 911 else 912 SYSTEMD_LOGIND=no 913 fi 914fi 915if test "x$SYSTEMD_LOGIND" = xyes; then 916 if ! test "x$HAVE_DBUS" = xyes; then 917 AC_MSG_ERROR([systemd-logind requested, but D-Bus is not installed.]) 918 fi 919 if ! test "x$CONFIG_UDEV" = xyes ; then 920 AC_MSG_ERROR([systemd-logind is only supported in combination with udev configuration.]) 921 fi 922 923 AC_DEFINE(SYSTEMD_LOGIND, 1, [Enable systemd-logind integration]) 924 NEED_DBUS="yes" 925fi 926AM_CONDITIONAL(SYSTEMD_LOGIND, [test "x$SYSTEMD_LOGIND" = xyes]) 927 928if test "x$SUID_WRAPPER" = xyes; then 929 dnl This is a define so that if some platforms want to put the wrapper 930 dnl somewhere else this can be easily changed 931 AC_DEFINE_DIR(SUID_WRAPPER_DIR, libexecdir, [Where to install the Xorg binary and Xorg.wrap]) 932 SETUID="no" 933fi 934AM_CONDITIONAL(SUID_WRAPPER, [test "x$SUID_WRAPPER" = xyes]) 935 936if test "x$NEED_DBUS" = xyes; then 937 AC_DEFINE(NEED_DBUS, 1, [Enable D-Bus core]) 938fi 939AM_CONDITIONAL(NEED_DBUS, [test "x$NEED_DBUS" = xyes]) 940 941if test "x$CONFIG_WSCONS" = xauto; then 942 case $host_os in 943 *openbsd*) 944 CONFIG_WSCONS=yes; 945 ;; 946 *) 947 CONFIG_WSCONS=no; 948 ;; 949 esac 950fi 951AM_CONDITIONAL(CONFIG_WSCONS, [test "x$CONFIG_WSCONS" = xyes]) 952if test "x$CONFIG_WSCONS" = xyes; then 953 AC_DEFINE(CONFIG_WSCONS, 1, [Use wscons for input auto configuration]) 954fi 955 956 957AC_MSG_CHECKING([for glibc...]) 958AC_PREPROC_IFELSE([AC_LANG_SOURCE([ 959#include <features.h> 960#ifndef __GLIBC__ 961#error 962#endif 963])], glibc=yes, glibc=no) 964AC_MSG_RESULT([$glibc]) 965 966AC_CHECK_FUNCS([clock_gettime], [have_clock_gettime=yes], 967 [AC_CHECK_LIB([rt], [clock_gettime], [have_clock_gettime=-lrt], 968 [have_clock_gettime=no])]) 969 970AC_MSG_CHECKING([for a useful monotonic clock ...]) 971 972if ! test "x$have_clock_gettime" = xno; then 973 if ! test "x$have_clock_gettime" = xyes; then 974 CLOCK_LIBS="$have_clock_gettime" 975 else 976 CLOCK_LIBS="" 977 fi 978 979 LIBS_SAVE="$LIBS" 980 LIBS="$CLOCK_LIBS" 981 CPPFLAGS_SAVE="$CPPFLAGS" 982 983 if test x"$glibc" = xyes; then 984 CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE=200112L" 985 fi 986 987 AC_RUN_IFELSE([AC_LANG_SOURCE([ 988#include <time.h> 989 990int main(int argc, char *argv[[]]) { 991 struct timespec tp; 992 993 if (clock_gettime(CLOCK_MONOTONIC, &tp) == 0) 994 return 0; 995 else 996 return 1; 997} 998 ])], [MONOTONIC_CLOCK=yes], [MONOTONIC_CLOCK=no], 999 [MONOTONIC_CLOCK="cross compiling"]) 1000 1001 if test "$MONOTONIC_CLOCK" = "cross compiling"; then 1002 AC_CHECK_DECL([CLOCK_MONOTONIC],[MONOTONIC_CLOCK="guessing yes"],[MONOTONIC_CLOCK=no],[#include <time.h>]) 1003 fi 1004 1005 LIBS="$LIBS_SAVE" 1006 CPPFLAGS="$CPPFLAGS_SAVE" 1007else 1008 MONOTONIC_CLOCK=no 1009fi 1010 1011AC_MSG_RESULT([$MONOTONIC_CLOCK]) 1012if test "$MONOTONIC_CLOCK" = "guessing yes"; then 1013 MONOTONIC_CLOCK=yes 1014fi 1015 1016if test "x$MONOTONIC_CLOCK" = xyes; then 1017 AC_DEFINE(MONOTONIC_CLOCK, 1, [Have monotonic clock from clock_gettime()]) 1018 LIBS="$LIBS $CLOCK_LIBS" 1019fi 1020 1021AM_CONDITIONAL(XV, [test "x$XV" = xyes]) 1022if test "x$XV" = xyes; then 1023 AC_DEFINE(XV, 1, [Support Xv extension]) 1024 AC_DEFINE(XvExtension, 1, [Build Xv extension]) 1025 REQUIRED_MODULES="$REQUIRED_MODULES $VIDEOPROTO" 1026 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $VIDEOPROTO" 1027else 1028 XVMC=no 1029fi 1030 1031AM_CONDITIONAL(XVMC, [test "x$XVMC" = xyes]) 1032if test "x$XVMC" = xyes; then 1033 AC_DEFINE(XvMCExtension, 1, [Build XvMC extension]) 1034fi 1035 1036AM_CONDITIONAL(COMPOSITE, [test "x$COMPOSITE" = xyes]) 1037if test "x$COMPOSITE" = xyes; then 1038 AC_DEFINE(COMPOSITE, 1, [Support Composite Extension]) 1039 REQUIRED_MODULES="$REQUIRED_MODULES $COMPOSITEPROTO" 1040 COMPOSITE_LIB='$(top_builddir)/composite/libcomposite.la' 1041 COMPOSITE_INC='-I$(top_srcdir)/composite' 1042fi 1043 1044if test "x$MITSHM" = xauto; then 1045 MITSHM="$ac_cv_sysv_ipc" 1046fi 1047AM_CONDITIONAL(MITSHM, [test "x$MITSHM" = xyes]) 1048if test "x$MITSHM" = xyes; then 1049 AC_DEFINE(MITSHM, 1, [Support MIT-SHM extension]) 1050 AC_DEFINE(HAS_SHM, 1, [Support SHM]) 1051fi 1052 1053AM_CONDITIONAL(RECORD, [test "x$RECORD" = xyes]) 1054if test "x$RECORD" = xyes; then 1055 AC_DEFINE(XRECORD, 1, [Support Record extension]) 1056 REQUIRED_MODULES="$REQUIRED_MODULES $RECORDPROTO" 1057 RECORD_LIB='$(top_builddir)/record/librecord.la' 1058fi 1059 1060AM_CONDITIONAL(SCREENSAVER, [test "x$SCREENSAVER" = xyes]) 1061if test "x$SCREENSAVER" = xyes; then 1062 AC_DEFINE(SCREENSAVER, 1, [Support MIT-SCREEN-SAVER extension]) 1063 REQUIRED_MODULES="$REQUIRED_MODULES $SCRNSAVERPROTO" 1064 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $SCRNSAVERPROTO" 1065fi 1066 1067AM_CONDITIONAL(RES, [test "x$RES" = xyes]) 1068if test "x$RES" = xyes; then 1069 AC_DEFINE(RES, 1, [Support X resource extension]) 1070 REQUIRED_MODULES="$REQUIRED_MODULES $RESOURCEPROTO" 1071 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $RESOURCEPROTO" 1072fi 1073 1074if test "x$LISTEN_TCP" = xyes; then 1075 AC_DEFINE(LISTEN_TCP, 1, [Listen on TCP socket]) 1076fi 1077if test "x$LISTEN_UNIX" = xyes; then 1078 AC_DEFINE(LISTEN_UNIX, 1, [Listen on Unix socket]) 1079fi 1080if test "x$LISTEN_LOCAL" = xyes; then 1081 AC_DEFINE(LISTEN_LOCAL, 1, [Listen on local socket]) 1082fi 1083 1084# The XRes extension may support client ID tracking only if it has 1085# been specifically enabled. Client ID tracking is implicitly not 1086# supported if XRes extension is disabled. 1087AC_MSG_CHECKING([whether to track client ids]) 1088if test "x$RES" = xyes && test "x$CLIENTIDS" = xyes; then 1089 AC_DEFINE(CLIENTIDS, 1, [Support client ID tracking]) 1090else 1091 CLIENTIDS=no 1092fi 1093if test "x$CLIENTIDS" = xyes; then 1094 case $host_os in 1095 openbsd*) 1096 SYS_LIBS="$SYS_LIBS -lkvm" 1097 ;; 1098 esac 1099fi 1100AC_MSG_RESULT([$CLIENTIDS]) 1101AM_CONDITIONAL(CLIENTIDS, [test "x$CLIENTIDS" = xyes]) 1102 1103AM_CONDITIONAL(DRI, test "x$DRI" = xyes) 1104if test "x$DRI" = xyes; then 1105 AC_DEFINE(XF86DRI, 1, [Build DRI extension]) 1106 REQUIRED_MODULES="$REQUIRED_MODULES $DRIPROTO $GLPROTO $LIBDRI" 1107 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $DRIPROTO $GLPROTO $LIBDRI" 1108fi 1109 1110PKG_CHECK_MODULES([DRI2PROTO], $DRI2PROTO, 1111 [HAVE_DRI2PROTO=yes], [HAVE_DRI2PROTO=no]) 1112case "$DRI2,$HAVE_DRI2PROTO" in 1113 yes,no) 1114 AC_MSG_ERROR([DRI2 requested, but dri2proto not found.]) 1115 ;; 1116 yes,yes | auto,yes) 1117 AC_DEFINE(DRI2, 1, [Build DRI2 extension]) 1118 DRI2=yes 1119 LIBGL="gl >= 9.2.0" 1120 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $DRI2PROTO" 1121 ;; 1122esac 1123AM_CONDITIONAL(DRI2, test "x$DRI2" = xyes) 1124 1125dnl 1126dnl Locate a suitable tmp file system for creating shared memeory files 1127dnl 1128 1129AC_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)]), 1130[], 1131[with_shared_memory_dir=yes]) 1132 1133shmdirs="/run/shm /var/tmp /tmp" 1134 1135case x"$with_shared_memory_dir" in 1136xyes) 1137 for dir in $shmdirs; do 1138 case x"$with_shared_memory_dir" in 1139 xyes) 1140 echo Checking temp dir "$dir" 1141 if test -d "$dir"; then 1142 with_shared_memory_dir="$dir" 1143 fi 1144 ;; 1145 esac 1146 done 1147 ;; 1148x/*) 1149 ;; 1150xno) 1151 ;; 1152*) 1153 AC_MSG_ERROR([Invalid directory specified for --with-shared-memory-dir: $with_shared_memory_dir]) 1154 ;; 1155esac 1156 1157case x"$with_shared_memory_dir" in 1158xyes) 1159 AC_MSG_ERROR([No directory found for shared memory temp files.]) 1160 ;; 1161xno) 1162 ;; 1163*) 1164 AC_DEFINE_UNQUOTED(SHMDIR, ["$with_shared_memory_dir"], [Directory for shared memory temp files]) 1165 ;; 1166esac 1167 1168AC_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]) 1169 1170case "x$XTRANS_SEND_FDS" in 1171xauto) 1172 case "$host_os" in 1173 linux*|solaris*|freebsd*|dragonfly*|openbsd*) 1174 XTRANS_SEND_FDS=yes 1175 ;; 1176 *) 1177 XTRANS_SEND_FDS=no 1178 ;; 1179 esac 1180esac 1181 1182case "x$XTRANS_SEND_FDS" in 1183xyes) 1184 AC_DEFINE(XTRANS_SEND_FDS, 1, [Enable xtrans fd passing support]) 1185 ;; 1186esac 1187 1188case "$DRI3,$XTRANS_SEND_FDS" in 1189 yes,yes | auto,yes) 1190 ;; 1191 yes,no) 1192 AC_MSG_ERROR([DRI3 requested, but xtrans fd passing support not found.]) 1193 DRI3=no 1194 ;; 1195 no,*) 1196 ;; 1197 *) 1198 AC_MSG_NOTICE([DRI3 disabled because xtrans fd passing support not found.]) 1199 DRI3=no 1200 ;; 1201esac 1202 1203PKG_CHECK_MODULES([DRI3PROTO], $DRI3PROTO, 1204 [HAVE_DRI3PROTO=yes], [HAVE_DRI3PROTO=no]) 1205 1206case "$DRI3,$HAVE_DRI3PROTO" in 1207 yes,yes | auto,yes) 1208 REQUIRED_MODULES="$REQUIRED_MODULES dri3proto" 1209 ;; 1210 yes,no) 1211 AC_MSG_ERROR([DRI3 requested, but dri3proto not found.]) 1212 DRI3=no 1213 ;; 1214 no,*) 1215 ;; 1216 *) 1217 AC_MSG_NOTICE([DRI3 disabled because dri3proto not found.]) 1218 DRI3=no 1219 ;; 1220esac 1221 1222AC_CHECK_FUNCS([sigaction]) 1223 1224BUSFAULT=no 1225 1226case x"$ac_cv_func_sigaction" in 1227 xyes) 1228 AC_DEFINE(HAVE_SIGACTION, 1, [Have sigaction function]) 1229 BUSFAULT=yes 1230 ;; 1231esac 1232 1233case x"$BUSFAULT" in 1234 xyes) 1235 AC_DEFINE(BUSFAULT, 1, [Include busfault OS API]) 1236 ;; 1237esac 1238 1239AM_CONDITIONAL(BUSFAULT, test x"$BUSFAULT" = xyes) 1240 1241 1242PKG_CHECK_MODULES([XSHMFENCE], $LIBXSHMFENCE, [HAVE_XSHMFENCE=yes], [HAVE_XSHMFENCE=no]) 1243if test "x$XSHMFENCE" = "xauto"; then 1244 XSHMFENCE="$HAVE_XSHMFENCE" 1245fi 1246 1247if test "x$XSHMFENCE" = "xyes"; then 1248 if test "x$HAVE_XSHMFENCE" != "xyes"; then 1249 AC_MSG_ERROR([xshmfence requested but not installed.]) 1250 fi 1251 AC_DEFINE(HAVE_XSHMFENCE, 1, [Have xshmfence support]) 1252 REQUIRED_LIBS="$REQUIRED_LIBS $LIBXSHMFENCE" 1253fi 1254 1255AM_CONDITIONAL(XSHMFENCE, [test "x$XSHMFENCE" = xyes]) 1256 1257case "$DRI3,$XSHMFENCE" in 1258 yes,yes | auto,yes) 1259 ;; 1260 yes,no) 1261 AC_MSG_ERROR([DRI3 requested, but xshmfence not found.]) 1262 DRI3=no 1263 ;; 1264 no,*) 1265 ;; 1266 *) 1267 AC_MSG_NOTICE([DRI3 disabled because xshmfence not found.]) 1268 DRI3=no 1269 ;; 1270esac 1271 1272case x"$DRI3" in 1273 xyes|xauto) 1274 DRI3=yes 1275 AC_DEFINE(DRI3, 1, [Build DRI3 extension]) 1276 DRI3_LIB='$(top_builddir)/dri3/libdri3.la' 1277 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $DRI3PROTO" 1278 AC_MSG_NOTICE([DRI3 enabled]); 1279 ;; 1280esac 1281 1282AM_CONDITIONAL(DRI3, test "x$DRI3" = xyes) 1283 1284if test "x$DRI" = xyes || test "x$DRI2" = xyes || test "x$DRI3" = xyes || test "x$CONFIG_UDEV_KMS" = xyes; then 1285 if test "x$DRM" = xyes; then 1286 AC_DEFINE(WITH_LIBDRM, 1, [Building with libdrm support]) 1287 PKG_CHECK_MODULES([LIBDRM], $LIBDRM) 1288 fi 1289fi 1290 1291if test "x$GLX" = xyes; then 1292 PKG_CHECK_MODULES([XLIB], [x11]) 1293 PKG_CHECK_MODULES([GL], $GLPROTO $LIBGL) 1294 AC_SUBST(XLIB_CFLAGS) 1295 AC_DEFINE(GLXEXT, 1, [Build GLX extension]) 1296 GLX_LIBS='$(top_builddir)/glx/libglx.la $(top_builddir)/glx/libglxvnd.la' 1297 GLX_SYS_LIBS="$GLX_SYS_LIBS $GL_LIBS" 1298else 1299 GLX=no 1300fi 1301AM_CONDITIONAL(GLX, test "x$GLX" = xyes) 1302 1303AC_SUBST([GLX_DEFINES]) 1304AC_SUBST([GLX_SYS_LIBS]) 1305 1306AM_CONDITIONAL(PRESENT, [test "x$PRESENT" = xyes]) 1307if test "x$PRESENT" = xyes; then 1308 AC_DEFINE(PRESENT, 1, [Support Present extension]) 1309 REQUIRED_MODULES="$REQUIRED_MODULES $PRESENTPROTO" 1310 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $PRESENTPROTO" 1311 PRESENT_INC='-I$(top_srcdir)/present' 1312 PRESENT_LIB='$(top_builddir)/present/libpresent.la' 1313fi 1314 1315AM_CONDITIONAL(XINERAMA, [test "x$XINERAMA" = xyes]) 1316if test "x$XINERAMA" = xyes; then 1317 AC_DEFINE(XINERAMA, 1, [Support Xinerama extension]) 1318 AC_DEFINE(PANORAMIX, 1, [Internal define for Xinerama]) 1319 REQUIRED_MODULES="$REQUIRED_MODULES $XINERAMAPROTO" 1320 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $XINERAMAPROTO" 1321fi 1322 1323AM_CONDITIONAL(XACE, [test "x$XACE" = xyes]) 1324if test "x$XACE" = xyes; then 1325 AC_DEFINE(XACE, 1, [Build X-ACE extension]) 1326fi 1327 1328AM_CONDITIONAL(XSELINUX, [test "x$XSELINUX" = xyes]) 1329if test "x$XSELINUX" = xyes; then 1330 if test "x$XACE" != xyes; then 1331 AC_MSG_ERROR([cannot build SELinux extension without X-ACE]) 1332 fi 1333 AC_CHECK_HEADERS([libaudit.h], [], AC_MSG_ERROR([SELinux extension requires audit system headers])) 1334 AC_CHECK_LIB(audit, audit_open, [], AC_MSG_ERROR([SELinux extension requires audit system library])) 1335 PKG_CHECK_MODULES([SELINUX], $LIBSELINUX) 1336 SELINUX_LIBS="$SELINUX_LIBS -laudit" 1337 AC_DEFINE(XSELINUX, 1, [Build SELinux extension]) 1338fi 1339 1340AM_CONDITIONAL(XCSECURITY, [test "x$XCSECURITY" = xyes]) 1341if test "x$XCSECURITY" = xyes; then 1342 if test "x$XACE" != xyes; then 1343 AC_MSG_ERROR([cannot build Security extension without X-ACE]) 1344 fi 1345 AC_DEFINE(XCSECURITY, 1, [Build Security extension]) 1346fi 1347 1348AM_CONDITIONAL(DBE, [test "x$DBE" = xyes]) 1349if test "x$DBE" = xyes; then 1350 AC_DEFINE(DBE, 1, [Support DBE extension]) 1351 DBE_LIB='$(top_builddir)/dbe/libdbe.la' 1352 DBE_INC='-I$(top_srcdir)/dbe' 1353fi 1354 1355AM_CONDITIONAL(XF86BIGFONT, [test "x$XF86BIGFONT" = xyes]) 1356if test "x$XF86BIGFONT" = xyes; then 1357 AC_DEFINE(XF86BIGFONT, 1, [Support XF86 Big font extension]) 1358 REQUIRED_MODULES="$REQUIRED_MODULES $BIGFONTPROTO" 1359 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $BIGFONTPROTO" 1360fi 1361 1362AM_CONDITIONAL(DPMSExtension, [test "x$DPMSExtension" = xyes]) 1363if test "x$DPMSExtension" = xyes; then 1364 AC_DEFINE(DPMSExtension, 1, [Support DPMS extension]) 1365fi 1366 1367AC_DEFINE(RENDER, 1, [Support RENDER extension]) 1368RENDER_LIB='$(top_builddir)/render/librender.la' 1369RENDER_INC='-I$(top_srcdir)/render' 1370 1371AC_DEFINE(RANDR, 1, [Support RANDR extension]) 1372RANDR_LIB='$(top_builddir)/randr/librandr.la' 1373RANDR_INC='-I$(top_srcdir)/randr' 1374 1375AC_DEFINE(XFIXES,1,[Support XFixes extension]) 1376FIXES_LIB='$(top_builddir)/xfixes/libxfixes.la' 1377FIXES_INC='-I$(top_srcdir)/xfixes' 1378 1379AC_DEFINE(DAMAGE,1,[Support Damage extension]) 1380DAMAGE_LIB='$(top_builddir)/damageext/libdamageext.la' 1381DAMAGE_INC='-I$(top_srcdir)/damageext' 1382MIEXT_DAMAGE_LIB='$(top_builddir)/miext/damage/libdamage.la' 1383MIEXT_DAMAGE_INC='-I$(top_srcdir)/miext/damage' 1384 1385# XINPUT extension is integral part of the server 1386AC_DEFINE(XINPUT, 1, [Support X Input extension]) 1387XI_LIB='$(top_builddir)/Xi/libXi.la' 1388XI_INC='-I$(top_srcdir)/Xi' 1389 1390AM_CONDITIONAL(XF86UTILS, test "x$XF86UTILS" = xyes) 1391AM_CONDITIONAL(VGAHW, test "x$VGAHW" = xyes) 1392AM_CONDITIONAL(VBE, test "x$VBE" = xyes) 1393AM_CONDITIONAL(INT10MODULE, test "x$INT10MODULE" = xyes) 1394 1395AC_DEFINE(SHAPE, 1, [Support SHAPE extension]) 1396 1397if test "x$XKBPATH" = "xauto"; then 1398 XKBPATH=$(pkg-config --variable datadir xkbcomp || echo ${datadir})/X11/xkb 1399fi 1400 1401AC_DEFINE_DIR(XKB_BASE_DIRECTORY, XKBPATH, [Path to XKB data]) 1402AC_ARG_WITH(xkb-bin-directory, 1403 AS_HELP_STRING([--with-xkb-bin-directory=DIR], [Directory containing xkbcomp program (default: auto)]), 1404 [XKB_BIN_DIRECTORY="$withval"], 1405 [XKB_BIN_DIRECTORY="auto"]) 1406 1407if test "x$XKB_BIN_DIRECTORY" = "xauto"; then 1408 XKB_BIN_DIRECTORY=$(pkg-config --variable bindir xkbcomp || echo ${bindir}) 1409fi 1410 1411AC_DEFINE_DIR(XKB_BIN_DIRECTORY, XKB_BIN_DIRECTORY, [Path to XKB bin dir]) 1412 1413dnl Make sure XKM_OUTPUT_DIR is an absolute path 1414XKBOUTPUT_FIRSTCHAR=`echo $XKBOUTPUT | cut -b 1` 1415if [[ x$XKBOUTPUT_FIRSTCHAR != x/ -a x$XKBOUTPUT_FIRSTCHAR != 'x$' ]] ; then 1416 XKBOUTPUT="$XKB_BASE_DIRECTORY/$XKBOUTPUT" 1417fi 1418 1419dnl XKM_OUTPUT_DIR (used in code) must end in / or file names get hosed 1420dnl XKB_COMPILED_DIR (used in Makefiles) must not or install-sh gets confused 1421 1422XKBOUTPUT=`echo $XKBOUTPUT/ | $SED 's|/*$|/|'` 1423XKB_COMPILED_DIR=`echo $XKBOUTPUT | $SED 's|/*$||'` 1424AC_DEFINE_DIR(XKM_OUTPUT_DIR, XKBOUTPUT, [Path to XKB output dir]) 1425AC_SUBST(XKB_COMPILED_DIR) 1426 1427if test "x$XKB_DFLT_RULES" = x; then 1428 case $host_os in 1429 linux*) 1430 dnl doesn't take AutoAddDevices into account, but whatever. 1431 XKB_DFLT_RULES="evdev" 1432 ;; 1433 *) 1434 XKB_DFLT_RULES="base" 1435 ;; 1436 esac 1437fi 1438AC_DEFINE_UNQUOTED(XKB_DFLT_RULES, ["$XKB_DFLT_RULES"], [Default XKB ruleset]) 1439AC_DEFINE_UNQUOTED(XKB_DFLT_MODEL, ["$XKB_DFLT_MODEL"], [Default XKB model]) 1440AC_DEFINE_UNQUOTED(XKB_DFLT_LAYOUT, ["$XKB_DFLT_LAYOUT"], [Default XKB layout]) 1441AC_DEFINE_UNQUOTED(XKB_DFLT_VARIANT, ["$XKB_DFLT_VARIANT"], [Default XKB variant]) 1442AC_DEFINE_UNQUOTED(XKB_DFLT_OPTIONS, ["$XKB_DFLT_OPTIONS"], [Default XKB options]) 1443AC_SUBST([XKB_DFLT_RULES]) 1444AC_SUBST([XKB_DFLT_MODEL]) 1445AC_SUBST([XKB_DFLT_LAYOUT]) 1446AC_SUBST([XKB_DFLT_VARIANT]) 1447AC_SUBST([XKB_DFLT_OPTIONS]) 1448 1449XKB_LIB='$(top_builddir)/xkb/libxkb.la' 1450XKB_STUB_LIB='$(top_builddir)/xkb/libxkbstubs.la' 1451REQUIRED_MODULES="$REQUIRED_MODULES xkbfile" 1452 1453PKG_CHECK_MODULES([XDMCP], [xdmcp], [have_libxdmcp="yes"], [have_libxdmcp="no"]) 1454if test "x$XDMCP" = xauto; then 1455 if test "x$have_libxdmcp" = xyes; then 1456 XDMCP=yes 1457 else 1458 XDMCP=no 1459 fi 1460fi 1461if test "x$XDMAUTH" = xauto; then 1462 if test "x$have_libxdmcp" = xyes; then 1463 XDMAUTH=yes 1464 else 1465 XDMAUTH=no 1466 fi 1467fi 1468 1469AM_CONDITIONAL(XDMCP, [test "x$XDMCP" = xyes]) 1470if test "x$XDMCP" = xyes; then 1471 AC_DEFINE(XDMCP, 1, [Support XDM Control Protocol]) 1472 REQUIRED_LIBS="$REQUIRED_LIBS xdmcp" 1473 XDMCP_MODULES="xdmcp" 1474fi 1475 1476AM_CONDITIONAL(XDMAUTH, [test "x$XDMAUTH" = xyes]) 1477if test "x$XDMAUTH" = xyes; then 1478 AC_DEFINE(HASXDMAUTH,1,[Support XDM-AUTH*-1]) 1479 if ! test "x$XDMCP" = xyes; then 1480 REQUIRED_LIBS="$REQUIRED_LIBS xdmcp" 1481 XDMCP_MODULES="xdmcp" 1482 fi 1483fi 1484 1485if test "x$XF86VIDMODE" = xauto; then 1486 PKG_CHECK_EXISTS($VIDMODEPROTO, [XF86VIDMODE=yes], [XF86VIDMODE=no]) 1487fi 1488if test "x$XF86VIDMODE" = xyes; then 1489 AC_DEFINE(XF86VIDMODE, 1, [Support XFree86 Video Mode extension]) 1490fi 1491AM_CONDITIONAL([XF86VIDMODE], [test "x$XF86VIDMODE" = xyes]) 1492 1493AC_DEFINE_DIR(COMPILEDDEFAULTFONTPATH, FONTPATH, [Default font path]) 1494AC_DEFINE_DIR(SERVER_MISC_CONFIG_PATH, SERVERCONFIG, [Server miscellaneous config path]) 1495AC_DEFINE_DIR(BASE_FONT_PATH, FONTROOTDIR, [Default base font path]) 1496dridriverdir=`$PKG_CONFIG --variable=dridriverdir dri` 1497AC_DEFINE_DIR(DRI_DRIVER_PATH, dridriverdir, [Default DRI driver path]) 1498AC_DEFINE_UNQUOTED(XVENDORNAME, ["$VENDOR_NAME"], [Vendor name]) 1499AC_DEFINE_UNQUOTED(XVENDORNAMESHORT, ["$VENDOR_NAME_SHORT"], [Short vendor name]) 1500AC_DEFINE_UNQUOTED(XORG_MAN_VERSION, ["$VENDOR_MAN_VERSION"], [Vendor man version]) 1501AC_DEFINE_UNQUOTED(BUILDERADDR, ["$BUILDERADDR"], [Builder address]) 1502 1503if test -z "$OSNAME"; then 1504 OSNAME="UNKNOWN" 1505fi 1506 1507AC_DEFINE_UNQUOTED(OSNAME, ["$OSNAME"], [Operating System Name]) 1508AC_DEFINE_UNQUOTED(OSVENDOR, ["$OSVENDOR"], [Operating System Vendor]) 1509AC_DEFINE_UNQUOTED(BUILDERSTRING, ["$BUILDERSTRING"], [Builder string]) 1510 1511AC_SUBST([VENDOR_NAME_SHORT]) 1512AC_DEFINE_UNQUOTED(VENDOR_NAME, ["$VENDOR_NAME"], [Vendor name]) 1513AC_DEFINE_UNQUOTED(VENDOR_NAME_SHORT, ["$VENDOR_NAME_SHORT"], [Vendor name]) 1514AC_DEFINE_UNQUOTED(VENDOR_RELEASE, [$VENDOR_RELEASE], [Vendor release]) 1515AC_DEFINE_UNQUOTED(VENDOR_MAN_VERSION, ["$VENDOR_MAN_VERSION"], [Vendor man version]) 1516 1517if test "x$DEBUGGING" = xyes; then 1518 AC_DEFINE(DEBUG, 1, [Enable debugging code]) 1519fi 1520AM_CONDITIONAL(DEBUG, [test "x$DEBUGGING" = xyes]) 1521 1522AC_DEFINE(XTEST, 1, [Support XTest extension]) 1523AC_DEFINE(XSYNC, 1, [Support XSync extension]) 1524AC_DEFINE(XCMISC, 1, [Support XCMisc extension]) 1525AC_DEFINE(BIGREQS, 1, [Support BigRequests extension]) 1526 1527if test "x$SPECIAL_DTRACE_OBJECTS" = "xyes" ; then 1528 DIX_LIB='$(top_builddir)/dix/dix.O' 1529 OS_LIB='$(top_builddir)/os/os.O $(SHA1_LIBS) $(DLOPEN_LIBS) $(LIBUNWIND_LIBS)' 1530else 1531 DIX_LIB='$(top_builddir)/dix/libdix.la' 1532 OS_LIB='$(top_builddir)/os/libos.la' 1533fi 1534AC_SUBST([DIX_LIB]) 1535AC_SUBST([OS_LIB]) 1536 1537MAIN_LIB='$(top_builddir)/dix/libmain.la' 1538AC_SUBST([MAIN_LIB]) 1539 1540MI_LIB='$(top_builddir)/mi/libmi.la' 1541MI_EXT_LIB='$(top_builddir)/mi/libmiext.la' 1542MI_INC='-I$(top_srcdir)/mi' 1543FB_LIB='$(top_builddir)/fb/libfb.la' 1544FB_INC='-I$(top_srcdir)/fb' 1545MIEXT_SHADOW_INC='-I$(top_srcdir)/miext/shadow' 1546MIEXT_SHADOW_LIB='$(top_builddir)/miext/shadow/libshadow.la' 1547MIEXT_SYNC_INC='-I$(top_srcdir)/miext/sync' 1548MIEXT_SYNC_LIB='$(top_builddir)/miext/sync/libsync.la' 1549CORE_INCS='-I$(top_srcdir)/include -I$(top_builddir)/include' 1550 1551# SHA1 hashing 1552AC_ARG_WITH([sha1], 1553 [AS_HELP_STRING([--with-sha1=libc|libmd|libnettle|libgcrypt|libcrypto|libsha1|CommonCrypto|CryptoAPI], 1554 [choose SHA1 implementation])]) 1555AC_CHECK_FUNC([SHA1Init], [HAVE_SHA1_IN_LIBC=yes]) 1556if test "x$with_sha1" = x && test "x$HAVE_SHA1_IN_LIBC" = xyes; then 1557 with_sha1=libc 1558fi 1559if test "x$with_sha1" = xlibc && test "x$HAVE_SHA1_IN_LIBC" != xyes; then 1560 AC_MSG_ERROR([libc requested but not found]) 1561fi 1562if test "x$with_sha1" = xlibc; then 1563 AC_DEFINE([HAVE_SHA1_IN_LIBC], [1], 1564 [Use libc SHA1 functions]) 1565 SHA1_LIBS="" 1566fi 1567AC_CHECK_FUNC([CC_SHA1_Init], [HAVE_SHA1_IN_COMMONCRYPTO=yes]) 1568if test "x$with_sha1" = x && test "x$HAVE_SHA1_IN_COMMONCRYPTO" = xyes; then 1569 with_sha1=CommonCrypto 1570fi 1571if test "x$with_sha1" = xCommonCrypto && test "x$HAVE_SHA1_IN_COMMONCRYPTO" != xyes; then 1572 AC_MSG_ERROR([CommonCrypto requested but not found]) 1573fi 1574if test "x$with_sha1" = xCommonCrypto; then 1575 AC_DEFINE([HAVE_SHA1_IN_COMMONCRYPTO], [1], 1576 [Use CommonCrypto SHA1 functions]) 1577 SHA1_LIBS="" 1578fi 1579dnl stdcall functions cannot be tested with AC_CHECK_LIB 1580AC_CHECK_HEADER([wincrypt.h], [HAVE_SHA1_IN_CRYPTOAPI=yes], [], [#include <windows.h>]) 1581if test "x$with_sha1" = x && test "x$HAVE_SHA1_IN_CRYPTOAPI" = xyes; then 1582 with_sha1=CryptoAPI 1583fi 1584if test "x$with_sha1" = xCryptoAPI && test "x$HAVE_SHA1_IN_CRYPTOAPI" != xyes; then 1585 AC_MSG_ERROR([CryptoAPI requested but not found]) 1586fi 1587if test "x$with_sha1" = xCryptoAPI; then 1588 AC_DEFINE([HAVE_SHA1_IN_CRYPTOAPI], [1], 1589 [Use CryptoAPI SHA1 functions]) 1590 SHA1_LIBS="" 1591fi 1592AC_CHECK_LIB([md], [SHA1Init], [HAVE_LIBMD=yes]) 1593if test "x$with_sha1" = x && test "x$HAVE_LIBMD" = xyes; then 1594 with_sha1=libmd 1595fi 1596if test "x$with_sha1" = xlibmd && test "x$HAVE_LIBMD" != xyes; then 1597 AC_MSG_ERROR([libmd requested but not found]) 1598fi 1599if test "x$with_sha1" = xlibmd; then 1600 AC_DEFINE([HAVE_SHA1_IN_LIBMD], [1], 1601 [Use libmd SHA1 functions]) 1602 SHA1_LIBS=-lmd 1603fi 1604PKG_CHECK_MODULES([LIBSHA1], [libsha1], [HAVE_LIBSHA1=yes], [HAVE_LIBSHA1=no]) 1605if test "x$with_sha1" = x && test "x$HAVE_LIBSHA1" = xyes; then 1606 with_sha1=libsha1 1607fi 1608if test "x$with_sha1" = xlibsha1 && test "x$HAVE_LIBSHA1" != xyes; then 1609 AC_MSG_ERROR([libsha1 requested but not found]) 1610fi 1611if test "x$with_sha1" = xlibsha1; then 1612 AC_DEFINE([HAVE_SHA1_IN_LIBSHA1], [1], 1613 [Use libsha1 for SHA1]) 1614 SHA1_LIBS=-lsha1 1615fi 1616AC_CHECK_LIB([nettle], [nettle_sha1_init], [HAVE_LIBNETTLE=yes]) 1617if test "x$with_sha1" = x && test "x$HAVE_LIBNETTLE" = xyes; then 1618 with_sha1=libnettle 1619fi 1620if test "x$with_sha1" = xlibnettle && test "x$HAVE_LIBNETTLE" != xyes; then 1621 AC_MSG_ERROR([libnettle requested but not found]) 1622fi 1623if test "x$with_sha1" = xlibnettle; then 1624 AC_DEFINE([HAVE_SHA1_IN_LIBNETTLE], [1], 1625 [Use libnettle SHA1 functions]) 1626 SHA1_LIBS=-lnettle 1627fi 1628AC_CHECK_LIB([gcrypt], [gcry_md_open], [HAVE_LIBGCRYPT=yes]) 1629if test "x$with_sha1" = x && test "x$HAVE_LIBGCRYPT" = xyes; then 1630 with_sha1=libgcrypt 1631fi 1632if test "x$with_sha1" = xlibgcrypt && test "x$HAVE_LIBGCRYPT" != xyes; then 1633 AC_MSG_ERROR([libgcrypt requested but not found]) 1634fi 1635if test "x$with_sha1" = xlibgcrypt; then 1636 AC_DEFINE([HAVE_SHA1_IN_LIBGCRYPT], [1], 1637 [Use libgcrypt SHA1 functions]) 1638 SHA1_LIBS=-lgcrypt 1639fi 1640# We don't need all of the OpenSSL libraries, just libcrypto 1641AC_CHECK_LIB([crypto], [SHA1_Init], [HAVE_LIBCRYPTO=yes]) 1642PKG_CHECK_MODULES([OPENSSL], [openssl], [HAVE_OPENSSL_PKC=yes], 1643 [HAVE_OPENSSL_PKC=no]) 1644if test "x$HAVE_LIBCRYPTO" = xyes || test "x$HAVE_OPENSSL_PKC" = xyes; then 1645 if test "x$with_sha1" = x; then 1646 with_sha1=libcrypto 1647 fi 1648else 1649 if test "x$with_sha1" = xlibcrypto; then 1650 AC_MSG_ERROR([OpenSSL libcrypto requested but not found]) 1651 fi 1652fi 1653if test "x$with_sha1" = xlibcrypto; then 1654 if test "x$HAVE_LIBCRYPTO" = xyes; then 1655 SHA1_LIBS=-lcrypto 1656 else 1657 SHA1_LIBS="$OPENSSL_LIBS" 1658 SHA1_CFLAGS="$OPENSSL_CFLAGS" 1659 fi 1660fi 1661AC_MSG_CHECKING([for SHA1 implementation]) 1662if test "x$with_sha1" = x; then 1663 AC_MSG_ERROR([No suitable SHA1 implementation found]) 1664fi 1665AC_MSG_RESULT([$with_sha1]) 1666AC_SUBST(SHA1_LIBS) 1667AC_SUBST(SHA1_CFLAGS) 1668 1669PKG_CHECK_MODULES([XSERVERCFLAGS], [$REQUIRED_MODULES $REQUIRED_LIBS]) 1670PKG_CHECK_MODULES([XSERVERLIBS], [$REQUIRED_LIBS]) 1671 1672PKG_CHECK_MODULES(LIBUNWIND, libunwind, [HAVE_LIBUNWIND=yes], [HAVE_LIBUNWIND=no]) 1673if test "x$LIBUNWIND" = "xauto"; then 1674 LIBUNWIND="$HAVE_LIBUNWIND" 1675fi 1676 1677if test "x$LIBUNWIND" = "xyes"; then 1678 if test "x$HAVE_LIBUNWIND" != "xyes"; then 1679 AC_MSG_ERROR([libunwind requested but not installed.]) 1680 fi 1681 AC_DEFINE(HAVE_LIBUNWIND, 1, [Have libunwind support]) 1682fi 1683 1684AM_CONDITIONAL(HAVE_LIBUNWIND, [test "x$LIBUNWIND" = xyes]) 1685 1686# Autotools has some unfortunate issues with library handling. In order to 1687# get a server to rebuild when a dependency in the tree is changed, it must 1688# be listed in SERVERNAME_DEPENDENCIES. However, no system libraries may be 1689# listed there, or some versions of autotools will break (especially if a -L 1690# is required to find the library). So, we keep two sets of libraries 1691# detected: NAMESPACE_LIBS for in-tree libraries to be linked against, which 1692# will go into the _DEPENDENCIES and _LDADD of the server, and 1693# NAMESPACE_SYS_LIBS which will go into only the _LDADD. The 1694# NAMESPACEMODULES_LIBS detected from pkgconfig should always go in 1695# NAMESPACE_SYS_LIBS. 1696# 1697# XSERVER_LIBS is the set of in-tree libraries which all servers require. 1698# XSERVER_SYS_LIBS is the set of out-of-tree libraries which all servers 1699# require. 1700# 1701XSERVER_CFLAGS="${XSERVER_CFLAGS} ${XSERVERCFLAGS_CFLAGS}" 1702XSERVER_LIBS="$DIX_LIB $MI_LIB $OS_LIB" 1703XSERVER_SYS_LIBS="${XSERVERLIBS_LIBS} ${SYS_LIBS} ${LIBS}" 1704AC_SUBST([XSERVER_LIBS]) 1705AC_SUBST([XSERVER_SYS_LIBS]) 1706 1707UTILS_SYS_LIBS="${SYS_LIBS}" 1708AC_SUBST([UTILS_SYS_LIBS]) 1709 1710# The Xorg binary needs to export symbols so that they can be used from modules 1711# Some platforms require extra flags to do this. libtool should set the 1712# necessary flags for each platform when -export-dynamic is passed to it. 1713LD_EXPORT_SYMBOLS_FLAG="-export-dynamic" 1714LD_NO_UNDEFINED_FLAG= 1715XORG_DRIVER_LIBS= 1716case "$host_os" in 1717 cygwin*) 1718 LD_EXPORT_SYMBOLS_FLAG="-Wl,--export-all,--out-implib,lib\$@.a" 1719 LD_NO_UNDEFINED_FLAG="-no-undefined -Wl,\$(top_builddir)/hw/xfree86/libXorg.exe.a" 1720 XORG_DRIVER_LIBS="-lXorg.exe -L\${moduledir} -lshadow -lfb -no-undefined" 1721 CYGWIN=yes 1722 ;; 1723 solaris*) 1724 # We use AC_LINK_IFELSE to generate a temporary program conftest$EXEEXT 1725 # that we can link against for testing if the system linker is new 1726 # enough to support -z parent=<program> for verifying loadable modules 1727 # are only calling functions defined in either the loading program or 1728 # the libraries they're linked with. 1729 AC_LINK_IFELSE( 1730 [AC_LANG_SOURCE([int main(int argc, char **argv) { return 0; }])], 1731 [mv conftest$EXEEXT conftest.parent 1732 XORG_CHECK_LINKER_FLAGS([-Wl,-z,parent=conftest.parent -G], 1733 [LD_NO_UNDEFINED_FLAG="-Wl,-z,defs -Wl,-z,parent=\$(top_builddir)/hw/xfree86/Xorg" 1734# Not set yet, since this gets exported in xorg-server.pc to all the drivers, 1735# and they're not all fixed to build correctly with it yet. 1736# XORG_DRIVER_LIBS="-Wl,-z,defs -Wl,-z,parent=${bindir}/Xorg" 1737 ],[], 1738 [AC_LANG_SOURCE([extern int main(int argc, char **argv); 1739 int call_main(void) { return main(0, (void *)0); }])]) 1740 rm -f conftest.parent 1741 ]) 1742 ;; 1743esac 1744AC_SUBST([LD_EXPORT_SYMBOLS_FLAG]) 1745AC_SUBST([LD_NO_UNDEFINED_FLAG]) 1746AC_SUBST([XORG_DRIVER_LIBS]) 1747AM_CONDITIONAL([CYGWIN], [test x"$CYGWIN" = xyes]) 1748AM_CONDITIONAL([NO_UNDEFINED], [test x"$LD_NO_UNDEFINED_FLAG" != x]) 1749 1750dnl Imake defines SVR4 on SVR4 systems, and many files check for it, so 1751dnl we need to replicate that here until those can all be fixed 1752AC_MSG_CHECKING([if SVR4 needs to be defined]) 1753AC_EGREP_CPP([I_AM_SVR4],[ 1754#if defined(SVR4) || defined(__svr4__) || defined(__SVR4) 1755 I_AM_SVR4 1756#endif 1757],[ 1758AC_DEFINE([SVR4],1,[Define to 1 on systems derived from System V Release 4]) 1759AC_MSG_RESULT([yes])], AC_MSG_RESULT([no])) 1760 1761XSERVER_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" 1762 1763dnl --------------------------------------------------------------------------- 1764dnl DDX section. 1765dnl --------------------------------------------------------------------------- 1766 1767dnl Xvfb DDX 1768 1769AC_MSG_CHECKING([whether to build Xvfb DDX]) 1770AC_MSG_RESULT([$XVFB]) 1771AM_CONDITIONAL(XVFB, [test "x$XVFB" = xyes]) 1772 1773if test "x$XVFB" = xyes; then 1774 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" 1775 XVFB_SYS_LIBS="$XVFBMODULES_LIBS $GLX_SYS_LIBS" 1776 AC_SUBST([XVFB_LIBS]) 1777 AC_SUBST([XVFB_SYS_LIBS]) 1778fi 1779 1780 1781dnl Xnest DDX 1782 1783PKG_CHECK_MODULES(XNESTMODULES, [$LIBXEXT x11 xau $XDMCP_MODULES], [have_xnest=yes], [have_xnest=no]) 1784AC_MSG_CHECKING([whether to build Xnest DDX]) 1785if test "x$XNEST" = xauto; then 1786 XNEST="$have_xnest" 1787fi 1788AC_MSG_RESULT([$XNEST]) 1789AM_CONDITIONAL(XNEST, [test "x$XNEST" = xyes]) 1790 1791if test "x$XNEST" = xyes; then 1792 if test "x$have_xnest" = xno; then 1793 AC_MSG_ERROR([Xnest build explicitly requested, but required modules not found.]) 1794 fi 1795 XNEST_LIBS="$FB_LIB $FIXES_LIB $MI_LIB $XEXT_LIB $DBE_LIB $RECORD_LIB $GLX_LIBS $RANDR_LIB $DAMAGE_LIB $DRI3_LIB $PRESENT_LIB $MIEXT_SYNC_LIB $MIEXT_DAMAGE_LIB $RENDER_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB $MAIN_LIB $DIX_LIB $OS_LIB" 1796 XNEST_SYS_LIBS="$XNESTMODULES_LIBS $GLX_SYS_LIBS" 1797 AC_SUBST([XNEST_LIBS]) 1798 AC_SUBST([XNEST_SYS_LIBS]) 1799fi 1800 1801 1802dnl Xorg DDX 1803 1804AC_MSG_CHECKING([whether to build Xorg DDX]) 1805if test "x$XORG" = xauto; then 1806 XORG="yes" 1807 case $host_os in 1808 cygwin*) XORG="no" ;; 1809 mingw*) XORG="no" ;; 1810 darwin*) XORG="no" ;; 1811 esac 1812fi 1813AC_MSG_RESULT([$XORG]) 1814 1815if test "x$XORG" = xyes; then 1816 XORG_DDXINCS='-I$(top_srcdir)/hw/xfree86 -I$(top_srcdir)/hw/xfree86/include -I$(top_srcdir)/hw/xfree86/common' 1817 XORG_OSINCS='-I$(top_srcdir)/hw/xfree86/os-support -I$(top_srcdir)/hw/xfree86/os-support/bus -I$(top_srcdir)/os' 1818 XORG_INCS="$XORG_DDXINCS $XORG_OSINCS" 1819 XORG_CFLAGS="$XORGSERVER_CFLAGS -DHAVE_XORG_CONFIG_H" 1820 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" 1821 1822 dnl ================================================================== 1823 dnl symbol visibility 1824 symbol_visibility= 1825 have_visibility=disabled 1826 if test x$SYMBOL_VISIBILITY != xno; then 1827 AC_MSG_CHECKING(for symbol visibility support) 1828 if test x$GCC = xyes; then 1829 VISIBILITY_CFLAGS="-fvisibility=hidden" 1830 else 1831 if test x$SUNCC = xyes; then 1832 VISIBILITY_CFLAGS="-xldscope=hidden" 1833 else 1834 have_visibility=no 1835 fi 1836 fi 1837 if test x$have_visibility != xno; then 1838 save_CFLAGS="$CFLAGS" 1839 proto_inc=`$PKG_CONFIG --cflags xproto` 1840 CFLAGS="$CFLAGS $VISIBILITY_CFLAGS $proto_inc" 1841 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ 1842 [#include <X11/Xfuncproto.h> 1843 extern _X_HIDDEN int hidden_int; 1844 extern _X_EXPORT int public_int; 1845 extern _X_HIDDEN int hidden_int_func(void); 1846 extern _X_EXPORT int public_int_func(void);]], 1847 [])], 1848 have_visibility=yes, 1849 have_visibility=no) 1850 CFLAGS=$save_CFLAGS 1851 fi 1852 AC_MSG_RESULT([$have_visibility]) 1853 if test x$have_visibility != xno; then 1854 symbol_visibility=$VISIBILITY_CFLAGS 1855 XORG_CFLAGS="$XORG_CFLAGS $VISIBILITY_CFLAGS" 1856 XSERVER_CFLAGS="$XSERVER_CFLAGS $VISIBILITY_CFLAGS" 1857 fi 1858 fi 1859 dnl added to xorg-server.pc 1860 AC_SUBST([symbol_visibility]) 1861 dnl =================================================================== 1862 1863 dnl =================================================================== 1864 dnl ================= beginning of PCI configuration ================== 1865 dnl =================================================================== 1866 xorg_bus_bsdpci=no 1867 xorg_bus_sparc=no 1868 1869 AC_MSG_CHECKING([whether to build Xorg PCI functions]) 1870 if test "x$PCI" = xyes; then 1871 PKG_CHECK_MODULES([PCIACCESS], $LIBPCIACCESS) 1872 SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $LIBPCIACCESS" 1873 XORG_SYS_LIBS="$XORG_SYS_LIBS $PCIACCESS_LIBS $LIBDRM_LIBS" 1874 XORG_CFLAGS="$XORG_CFLAGS $PCIACCESS_CFLAGS $LIBDRM_CFLAGS" 1875 1876 AC_DEFINE(XSERVER_LIBPCIACCESS, 1, [Use libpciaccess for all pci manipulation]) 1877 AC_DEFINE_DIR(PCI_TXT_IDS_PATH, PCI_TXT_IDS_DIR, [Default PCI text file ID path]) 1878 case $host_os in 1879 gnu* | freebsd* | kfreebsd*-gnu | netbsd* | openbsd* | solaris* | dragonfly*) 1880 xorg_bus_bsdpci="yes" 1881 ;; 1882 esac 1883 case $host_cpu in 1884 sparc*) 1885 xorg_bus_sparc="yes" 1886 ;; 1887 esac 1888 else 1889 if test "x$CONFIG_UDEV_KMS" = xyes; then 1890 AC_MSG_ERROR([Platform device enumeration requires libpciaccess]) 1891 fi 1892 if test "x$INT10MODULE" = xyes && test "x$INT10" != xstub; then 1893 AC_MSG_ERROR([Cannot build int10 without libpciaccess]) 1894 fi 1895 fi 1896 AC_MSG_RESULT([$PCI]) 1897 1898 if test "x$CONFIG_UDEV_KMS" = xyes; then 1899 AC_DEFINE(XSERVER_PLATFORM_BUS, 1, [X server supports platform device enumeration]) 1900 fi 1901 AC_MSG_RESULT([$XSERVER_PLATFORM_BUS]) 1902 dnl =================================================================== 1903 dnl ==================== end of PCI configuration ===================== 1904 dnl =================================================================== 1905 1906 case $host_os in 1907 linux*) 1908 XORG_OS_SUBDIR="linux" 1909 linux_acpi="no" 1910 case $host_cpu in 1911 i*86|amd64*|x86_64*|ia64*) 1912 linux_acpi=$enable_linux_acpi 1913 ;; 1914 *) 1915 ;; 1916 esac 1917 dnl APM header 1918 AC_CHECK_HEADERS([linux/apm_bios.h], [linux_apm=$enable_linux_apm]) 1919 if test "x$linux_apm" = xyes -o "x$linux_acpi" = xyes; then 1920 AC_DEFINE(XF86PM, 1, [Support APM/ACPI power management in the server]) 1921 fi 1922 ;; 1923 freebsd* | kfreebsd*-gnu | dragonfly*) 1924 XORG_OS_SUBDIR="bsd" 1925 ;; 1926 netbsd*) 1927 XORG_OS_SUBDIR="bsd" 1928 ;; 1929 openbsd*) 1930 if test "x$ac_cv_BSD_APM" = xyes \ 1931 -o "x$ac_cv_BSD_KQUEUE_APM" = xyes; then 1932 XORG_CFLAGS="$XORG_CFLAGS -DXF86PM" 1933 fi 1934 XORG_OS_SUBDIR="bsd" 1935 ;; 1936 solaris*) 1937 XORG_OS_SUBDIR="solaris" 1938 XORG_CFLAGS="$XORG_CFLAGS -DXF86PM" 1939 AC_CHECK_HEADERS([sys/kd.h]) 1940 AC_CHECK_HEADERS([sys/vt.h], [solaris_vt=yes], [solaris_vt=no]) 1941 # Check for minimum supported release 1942 AC_MSG_CHECKING([Solaris version]) 1943 OS_MINOR=`echo ${host_os}|$SED -e 's/^.*solaris2\.//' -e s'/\..*$//'` 1944 if test "${OS_MINOR}" -ge 7 ; then 1945 AC_MSG_RESULT(Solaris ${OS_MINOR}) 1946 else 1947 AC_MSG_RESULT(Solaris `echo ${host_os}|$SED -e 's/^.*solaris//`) 1948 fi 1949 if test "${OS_MINOR}" -lt 8 ; then 1950 AC_MSG_ERROR([This release no longer supports Solaris versions older than Solaris 8.]) 1951 fi 1952 AC_CHECK_DECL([_LP64], [SOLARIS_64="yes"], [SOLARIS_64="no"]) 1953 1954 case $host_cpu in 1955 sparc*) 1956 SOLARIS_INOUT_ARCH="sparcv8plus" 1957 ;; 1958 i*86|x86_64*) 1959 if test x$SOLARIS_64 = xyes ; then 1960 SOLARIS_INOUT_ARCH="amd64" 1961 else 1962 SOLARIS_INOUT_ARCH="ia32" 1963 fi 1964 ;; 1965 *) 1966 AC_MSG_ERROR([Unsupported Solaris platform. Only SPARC & x86 \ 1967 are supported on Solaris in this release. If you are \ 1968 interested in porting Xorg to your platform, please email \ 1969 xorg@lists.freedesktop.org.]) ;; 1970 esac 1971 AC_SUBST([SOLARIS_INOUT_ARCH]) 1972 ;; 1973 gnu*) 1974 XORG_OS_SUBDIR="hurd" 1975 ;; 1976 cygwin*) 1977 XORG_OS_SUBDIR="stub" 1978 ;; 1979 *) 1980 XORG_OS_SUBDIR="stub" 1981 AC_MSG_NOTICE([m4_text_wrap(m4_join([ ], 1982 [Your OS is unknown.], 1983 [If you are interested in porting Xorg to your platform,], 1984 [please email xorg@lists.freedesktop.org.]))]) 1985 ;; 1986 esac 1987 1988 if test "x$DGA" = xauto; then 1989 PKG_CHECK_MODULES(DGA, $DGAPROTO, [DGA=yes], [DGA=no]) 1990 fi 1991 if test "x$DGA" = xyes; then 1992 XORG_MODULES="$XORG_MODULES $DGAPROTO" 1993 PKG_CHECK_MODULES(DGA, $DGAPROTO) 1994 AC_DEFINE(DGA, 1, [Support DGA extension]) 1995 AC_DEFINE(XFreeXDGA, 1, [Build XDGA support]) 1996 fi 1997 1998 if test "x$XF86VIDMODE" = xyes; then 1999 XORG_MODULES="$XORG_MODULES $VIDMODEPROTO" 2000 fi 2001 2002 if test -n "$XORG_MODULES"; then 2003 PKG_CHECK_MODULES(XORG_MODULES, [$XORG_MODULES]) 2004 XORG_CFLAGS="$XORG_CFLAGS $XORG_MODULES_CFLAGS" 2005 XORG_SYS_LIBS="$XORG_SYS_LIBS $XORG_MODULES_LIBS" 2006 fi 2007 2008 if test "x$DRM" = xyes; then 2009 XORG_DRIVER_MODESETTING=yes 2010 fi 2011 2012 AC_SUBST([XORG_LIBS]) 2013 AC_SUBST([XORG_SYS_LIBS]) 2014 AC_SUBST([XORG_INCS]) 2015 AC_SUBST([XORG_OS_SUBDIR]) 2016 AC_SUBST([XORG_CFLAGS]) 2017 2018 dnl these only go in xorg-config.h 2019 XF86CONFIGFILE="xorg.conf" 2020 XF86CONFIGDIR="xorg.conf.d" 2021 AC_SUBST(XF86CONFIGDIR) 2022 CONFIGFILE="$sysconfdir/$XF86CONFIGFILE" 2023 LOGPREFIX="Xorg." 2024 XDG_DATA_HOME=".local/share" 2025 XDG_DATA_HOME_LOGDIR="xorg" 2026 AC_DEFINE(XORG_SERVER, 1, [Building Xorg server]) 2027 AC_DEFINE(XORGSERVER, 1, [Building Xorg server]) 2028 AC_DEFINE(XFree86Server, 1, [Building XFree86 server]) 2029 AC_DEFINE_UNQUOTED(XORG_VERSION_CURRENT, [$VENDOR_RELEASE], [Current Xorg version]) 2030 AC_DEFINE(NEED_XF86_TYPES, 1, [Need XFree86 typedefs]) 2031 AC_DEFINE(NEED_XF86_PROTOTYPES, 1, [Need XFree86 helper functions]) 2032 AC_DEFINE(__XSERVERNAME__, "Xorg", [Name of X server]) 2033 AC_DEFINE_DIR(XCONFIGFILE, XF86CONFIGFILE, [Name of configuration file]) 2034 AC_DEFINE_DIR(XF86CONFIGFILE, XF86CONFIGFILE, [Name of configuration file]) 2035 AC_DEFINE_DIR(XCONFIGDIR, XF86CONFIGDIR, [Name of configuration directory]) 2036 AC_DEFINE_DIR(DEFAULT_MODULE_PATH, moduledir, [Default module search path]) 2037 AC_DEFINE_DIR(DEFAULT_LIBRARY_PATH, libdir, [Default library install path]) 2038 AC_DEFINE_DIR(DEFAULT_LOGDIR, logdir, [Default log location]) 2039 AC_DEFINE_DIR(DEFAULT_LOGPREFIX, LOGPREFIX, [Default logfile prefix]) 2040 AC_DEFINE_DIR(DEFAULT_XDG_DATA_HOME, XDG_DATA_HOME, [Default XDG_DATA dir under HOME]) 2041 AC_DEFINE_DIR(DEFAULT_XDG_DATA_HOME_LOGDIR, XDG_DATA_HOME_LOGDIR, [Default log dir under XDG_DATA_HOME]) 2042 AC_DEFINE_UNQUOTED(__VENDORDWEBSUPPORT__, ["$VENDOR_WEB"], [Vendor web address for support]) 2043 if test "x$VGAHW" = xyes; then 2044 AC_DEFINE(WITH_VGAHW, 1, [Building vgahw module]) 2045 fi 2046 2047 driverdir="$moduledir/drivers" 2048 AC_SUBST([moduledir]) 2049 AC_SUBST([driverdir]) 2050 sdkdir="$includedir/xorg" 2051 extdir="$includedir/X11/extensions" 2052 sysconfigdir="$datadir/X11/$XF86CONFIGDIR" 2053 AC_SUBST([sdkdir]) 2054 AC_SUBST([extdir]) 2055 AC_SUBST([sysconfigdir]) 2056 AC_SUBST([logdir]) 2057 2058 # stuff the ABI versions into the pc file too 2059 extract_abi() { 2060 grep ^.define.*${1}_VERSION ${srcdir}/hw/xfree86/common/xf86Module.h | tr '(),' ' .' | awk '{ print $4$5 }' 2061 } 2062 abi_ansic=`extract_abi ANSIC` 2063 abi_videodrv=`extract_abi VIDEODRV` 2064 abi_xinput=`extract_abi XINPUT` 2065 abi_extension=`extract_abi EXTENSION` 2066 AC_SUBST([abi_ansic]) 2067 AC_SUBST([abi_videodrv]) 2068 AC_SUBST([abi_xinput]) 2069 AC_SUBST([abi_extension]) 2070fi 2071AM_CONDITIONAL([XORG], [test "x$XORG" = xyes]) 2072AM_CONDITIONAL([XORG_BUS_PCI], [test "x$PCI" = xyes]) 2073AM_CONDITIONAL([XORG_BUS_BSDPCI], [test "x$xorg_bus_bsdpci" = xyes]) 2074AM_CONDITIONAL([XORG_BUS_SPARC], [test "x$xorg_bus_sparc" = xyes]) 2075AM_CONDITIONAL([LNXACPI], [test "x$linux_acpi" = xyes]) 2076AM_CONDITIONAL([LNXAPM], [test "x$linux_apm" = xyes]) 2077AM_CONDITIONAL([SOLARIS_VT], [test "x$solaris_vt" = xyes]) 2078AM_CONDITIONAL([DGA], [test "x$DGA" = xyes]) 2079AM_CONDITIONAL([XORG_BUS_PLATFORM], [test "x$CONFIG_UDEV_KMS" = xyes]) 2080AM_CONDITIONAL([XORG_DRIVER_MODESETTING], [test "x$XORG_DRIVER_MODESETTING" = xyes]) 2081 2082dnl glamor 2083if test "x$GLAMOR" = xauto; then 2084 if echo "$XORG" "$XEPHYR" "$XWAYLAND" | grep -q yes ; then 2085 GLAMOR=yes 2086 fi 2087fi 2088 2089AM_CONDITIONAL([GLAMOR], [test "x$GLAMOR" = xyes]) 2090 2091if test "x$GLAMOR" = xyes; then 2092 AC_DEFINE(GLAMOR, 1, [Build glamor]) 2093 PKG_CHECK_MODULES([GLAMOR], [epoxy]) 2094 2095 PKG_CHECK_EXISTS(epoxy >= 1.4.4, 2096 [AC_DEFINE(GLAMOR_HAS_EGL_QUERY_DMABUF, 1, [Have GLAMOR_HAS_EGL_QUERY_DMABUF])], 2097 []) 2098 2099 PKG_CHECK_MODULES(GBM, "$LIBGBM", [GBM=yes], [GBM=no]) 2100 if test "x$GBM" = xyes; then 2101 AC_DEFINE(GLAMOR_HAS_GBM, 1, 2102 [Build glamor with GBM-based EGL support]) 2103 AC_CHECK_DECL(GBM_BO_USE_LINEAR, 2104 [AC_DEFINE(GLAMOR_HAS_GBM_LINEAR, 1, [Have GBM_BO_USE_LINEAR])], [], 2105 [#include <stdlib.h> 2106 #include <gbm.h>]) 2107 dnl 17.1.0 is required for gbm_bo_create_with_modifiers 2108 PKG_CHECK_EXISTS(gbm >= 17.1.0, 2109 [AC_DEFINE(GBM_BO_WITH_MODIFIERS, 1, [Have gbm_bo_create_with_modifiers])], 2110 []) 2111 else 2112 if test "x$XORG" = xyes; then 2113 AC_MSG_ERROR([Glamor for Xorg requires $LIBGBM]) 2114 fi 2115 fi 2116fi 2117AM_CONDITIONAL([GLAMOR_EGL], [test "x$GBM" = xyes]) 2118 2119dnl XWin DDX 2120 2121AC_MSG_CHECKING([whether to build XWin DDX]) 2122if test "x$XWIN" = xauto; then 2123 case $host_os in 2124 cygwin*) XWIN="yes" ;; 2125 mingw*) XWIN="yes" ;; 2126 *) XWIN="no" ;; 2127 esac 2128fi 2129AC_MSG_RESULT([$XWIN]) 2130 2131if test "x$XWIN" = xyes; then 2132 AC_DEFINE_DIR(DEFAULT_LOGDIR, logdir, [Default log location]) 2133 AC_DEFINE_UNQUOTED(XORG_VERSION_CURRENT, [$VENDOR_RELEASE], [Current Xorg version]) 2134 AC_DEFINE_UNQUOTED(__VENDORDWEBSUPPORT__, ["$VENDOR_WEB"], [Vendor web address for support]) 2135 AC_CHECK_TOOL(WINDRES, windres) 2136 2137 PKG_CHECK_MODULES([XWINMODULES],[x11 xdmcp xau xfixes x11-xcb xcb-aux xcb-image xcb-ewmh xcb-icccm]) 2138 2139 if test "x$WINDOWSWM" = xauto; then 2140 PKG_CHECK_EXISTS($WINDOWSWMPROTO, [WINDOWSWM=yes], [WINDOWSWM=no]) 2141 fi 2142 if test "x$WINDOWSWM" = xyes ; then 2143 PKG_CHECK_MODULES(WINDOWSWM, $WINDOWSWMPROTO) 2144 XWINMODULES_CFLAGS="$XWINMODULES_CFLAGS $WINDOWSWM_CFLAGS" 2145 AC_DEFINE(ROOTLESS,1,[Build Rootless code]) 2146 fi 2147 2148 if test "x$WINDOWSDRI" = xauto; then 2149 PKG_CHECK_EXISTS([windowsdriproto], [WINDOWSDRI=yes], [WINDOWSDRI=no]) 2150 fi 2151 if test "x$WINDOWSDRI" = xyes ; then 2152 PKG_CHECK_MODULES(WINDOWSDRI, [windowsdriproto]) 2153 fi 2154 2155 case $host_os in 2156 cygwin*) 2157 XWIN_SERVER_NAME=XWin 2158 AC_DEFINE(HAS_DEVWINDOWS,1,[Cygwin has /dev/windows for signaling new win32 messages]) 2159 ;; 2160 mingw*) 2161 XWIN_SERVER_NAME=Xming 2162 AC_DEFINE(RELOCATE_PROJECTROOT,1,[Make PROJECT_ROOT relative to the xserver location]) 2163 AC_DEFINE(HAS_WINSOCK,1,[Use Windows sockets]) 2164 XWIN_SYS_LIBS="-lpthread -lws2_32" 2165 ;; 2166 esac 2167 2168 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" 2169 XWIN_SYS_LIBS="$XWIN_SYS_LIBS $XWINMODULES_LIBS" 2170 AC_SUBST(XWIN_LIBS) 2171 AC_SUBST(XWIN_SERVER_NAME) 2172 AC_SUBST(XWIN_SYS_LIBS) 2173 2174 if test "x$DEBUGGING" = xyes; then 2175 AC_DEFINE(CYGDEBUG, 1, [Simple debug messages]) 2176 AC_DEFINE(CYGWINDOWING_DEBUG, 1, [Debug messages for window handling]) 2177 AC_DEFINE(CYGMULTIWINDOW_DEBUG, 1, [Debug window manager]) 2178 fi 2179 2180 AC_DEFINE(DDXOSVERRORF, 1, [Use OsVendorVErrorF]) 2181 AC_DEFINE(DDXBEFORERESET, 1, [Use ddxBeforeReset ]) 2182 2183dnl XWin requires OpenGL spec files in order to generate wrapper code for native GL functions 2184 if [test "x$XWIN" = xyes && test "x$GLX" = xyes] ; then 2185 AC_CHECK_PROG(PYTHON3, python3, python3) 2186 if test -z "$PYTHON3"; then 2187 AC_MSG_ERROR([python3 not found]) 2188 fi 2189 AC_MSG_CHECKING(for python module lxml) 2190 $PYTHON3 -c "import lxml;" 2191 if test $? -ne 0 ; then 2192 AC_MSG_ERROR([not found]) 2193 fi 2194 AC_MSG_RESULT(yes) 2195 if test "x$KHRONOS_SPEC_DIR" = "xauto" ; then 2196 PKG_CHECK_MODULES([KHRONOS_OPENGL_REGISTRY], [khronos-opengl-registry]) 2197 KHRONOS_SPEC_DIR=`pkg-config khronos-opengl-registry --variable=specdir` 2198 fi 2199 AC_SUBST(KHRONOS_SPEC_DIR) 2200 fi 2201 2202fi 2203AM_CONDITIONAL(XWIN, [test "x$XWIN" = xyes]) 2204AM_CONDITIONAL(XWIN_MULTIWINDOWEXTWM, [test "x$XWIN" = xyes && test "x$WINDOWSWM" = xyes]) 2205AM_CONDITIONAL(XWIN_GLX_WINDOWS, [test "x$XWIN" = xyes && test "x$GLX" = xyes]) 2206AM_CONDITIONAL(XWIN_WINDOWS_DRI, [test "x$XWIN" = xyes && test "x$WINDOWSDRI" = xyes]) 2207 2208dnl Darwin / OS X DDX 2209if test "x$XQUARTZ" = xyes; then 2210 AC_DEFINE(XQUARTZ,1,[Have Quartz]) 2211 AC_DEFINE(ROOTLESS,1,[Build Rootless code]) 2212 2213 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" 2214 AC_SUBST([XQUARTZ_LIBS]) 2215 2216 AC_CHECK_LIB([Xplugin],[xp_init],[:]) 2217 2218 CFLAGS="${CFLAGS} -DROOTLESS_WORKAROUND -DROOTLESS_SAFEALPHA -DNO_ALLOCA" 2219 2220 PKG_CHECK_MODULES(XPBPROXY, $APPLEWMPROTO $LIBAPPLEWM xfixes x11) 2221 2222 if test "x$XQUARTZ_SPARKLE" = xyes ; then 2223 AC_DEFINE(XQUARTZ_SPARKLE,1,[Support application updating through sparkle.]) 2224 fi 2225 2226 if test "x$STANDALONE_XPBPROXY" = xyes ; then 2227 AC_DEFINE(STANDALONE_XPBPROXY,1,[Build a standalone xpbproxy]) 2228 fi 2229fi 2230 2231AM_CONDITIONAL(PSEUDORAMIX, [test "x$XQUARTZ" = xyes -o "x$XWIN" = xyes ]) 2232 2233# Support for objc in autotools is minimal and not documented. 2234OBJC='$(CC)' 2235OBJCLD='$(CCLD)' 2236OBJCLINK='$(LINK)' 2237OBJCFLAGS='$(CFLAGS)' 2238AC_SUBST([OBJC]) 2239AC_SUBST([OBJCCLD]) 2240AC_SUBST([OBJCLINK]) 2241AC_SUBST([OBJCFLAGS]) 2242# internal, undocumented automake func follows :( 2243_AM_DEPENDENCIES([OBJC]) 2244AM_CONDITIONAL(XQUARTZ, [test "x$XQUARTZ" = xyes]) 2245AM_CONDITIONAL(XQUARTZ_SPARKLE, [test "x$XQUARTZ_SPARKLE" != "xno"]) 2246AM_CONDITIONAL(STANDALONE_XPBPROXY, [test "x$STANDALONE_XPBPROXY" = xyes]) 2247 2248dnl DMX DDX 2249PKG_CHECK_MODULES( 2250 [DMXMODULES], 2251 [xmuu $LIBXEXT x11 >= 1.6 xrender xfixes $LIBXI $DMXPROTO xau $XDMCP_MODULES], 2252 [PKG_CHECK_MODULES( 2253 [XDMXCONFIG_DEP], 2254 [xaw7 xmu xt xpm x11], 2255 [have_dmx=yes], 2256 [have_dmx=no])], 2257 [have_dmx=no]) 2258AC_MSG_CHECKING([whether to build Xdmx DDX]) 2259if test "x$DMX" = xauto; then 2260 DMX="$have_dmx" 2261 case $host_os in 2262 cygwin*) DMX="no" ;; 2263 mingw*) DMX="no" ;; 2264 darwin*) DMX="no" ;; 2265 esac 2266fi 2267AC_MSG_RESULT([$DMX]) 2268AM_CONDITIONAL(DMX, [test "x$DMX" = xyes]) 2269 2270if test "x$DMX" = xyes; then 2271 if test "x$have_dmx" = xno; then 2272 AC_MSG_ERROR([Xdmx build explicitly requested, but required 2273 modules not found.]) 2274 fi 2275 DMX_INCLUDES="$XEXT_INC $RENDER_INC $RECORD_INC" 2276 XDMX_CFLAGS="$DMXMODULES_CFLAGS" 2277 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 $RANDR_LIB $CONFIG_LIB $OS_LIB $FIXES_LIB" 2278 XDMX_SYS_LIBS="$DMXMODULES_LIBS" 2279 AC_SUBST([XDMX_CFLAGS]) 2280 AC_SUBST([XDMX_LIBS]) 2281 AC_SUBST([XDMX_SYS_LIBS]) 2282 2283dnl USB sources in DMX require <linux/input.h> 2284 AC_CHECK_HEADER([linux/input.h], DMX_BUILD_USB="yes", 2285 DMX_BUILD_USB="no") 2286 AC_SUBST(XDMXCONFIG_DEP_CFLAGS) 2287 AC_SUBST(XDMXCONFIG_DEP_LIBS) 2288 PKG_CHECK_MODULES([DMXEXAMPLES_DEP], [$LIBDMX $LIBXEXT x11]) 2289 AC_SUBST(DMXEXAMPLES_DEP_LIBS) 2290 PKG_CHECK_MODULES([DMXXMUEXAMPLES_DEP], [$LIBDMX xmu $LIBXEXT x11]) 2291 AC_SUBST(DMXXMUEXAMPLES_DEP_LIBS) 2292 PKG_CHECK_MODULES([DMXXIEXAMPLES_DEP], [$LIBDMX $LIBXI $LIBXEXT x11]) 2293 AC_SUBST(DMXXIEXAMPLES_DEP_LIBS) 2294 PKG_CHECK_MODULES([XTSTEXAMPLES_DEP], [$LIBXTST $LIBXEXT x11]) 2295 AC_SUBST(XTSTEXAMPLES_DEP_LIBS) 2296 PKG_CHECK_MODULES([XRESEXAMPLES_DEP], [xres $LIBXEXT x11]) 2297 AC_SUBST(XRESEXAMPLES_DEP_LIBS) 2298 PKG_CHECK_MODULES([X11EXAMPLES_DEP], [$LIBXEXT x11]) 2299 AC_SUBST(X11EXAMPLES_DEP_LIBS) 2300 2301fi 2302AM_CONDITIONAL([DMX_BUILD_USB], [test "x$DMX_BUILD_USB" = xyes]) 2303 2304dnl kdrive DDX 2305 2306XEPHYR_LIBS= 2307XEPHYR_INCS= 2308 2309AM_CONDITIONAL(KDRIVE, [test x$KDRIVE = xyes]) 2310 2311if test "$KDRIVE" = yes; then 2312 XEPHYR_REQUIRED_LIBS="xau xdmcp xcb xcb-shape xcb-render xcb-renderutil xcb-aux xcb-image xcb-icccm xcb-shm >= 1.9.3 xcb-keysyms xcb-randr xcb-xkb" 2313 if test "x$XV" = xyes; then 2314 XEPHYR_REQUIRED_LIBS="$XEPHYR_REQUIRED_LIBS xcb-xv" 2315 fi 2316 if test "x$DRI" = xyes && test "x$GLX" = xyes; then 2317 XEPHYR_REQUIRED_LIBS="$XEPHYR_REQUIRED_LIBS $LIBDRM xcb-glx xcb-xf86dri > 1.6" 2318 fi 2319 if test "x$GLAMOR" = xyes; then 2320 XEPHYR_REQUIRED_LIBS="$XEPHYR_REQUIRED_LIBS x11-xcb" 2321 fi 2322 2323 if test "x$XEPHYR" = xauto; then 2324 PKG_CHECK_MODULES(XEPHYR, $XEPHYR_REQUIRED_LIBS, [XEPHYR="yes"], [XEPHYR="no"]) 2325 elif test "x$XEPHYR" = xyes ; then 2326 PKG_CHECK_MODULES(XEPHYR, $XEPHYR_REQUIRED_LIBS) 2327 fi 2328 2329 # Xephyr needs nanosleep() which is in librt on Solaris 2330 AC_CHECK_FUNC([nanosleep], [], 2331 AC_CHECK_LIB([rt], [nanosleep], XEPHYR_LIBS="$XEPHYR_LIBS -lrt")) 2332 2333 # damage shadow extension glx (NOTYET) fb mi 2334 KDRIVE_INC='-I$(top_srcdir)/hw/kdrive/src' 2335 KDRIVE_PURE_INCS="$KDRIVE_INC $MIEXT_SYNC_INC $MIEXT_DAMAGE_INC $MIEXT_SHADOW_INC $XEXT_INC $FB_INC $MI_INC" 2336 KDRIVE_OS_INC='-I$(top_srcdir)/hw/kdrive/linux' 2337 KDRIVE_INCS="$KDRIVE_PURE_INCS $KDRIVE_OS_INC" 2338 2339 KDRIVE_CFLAGS="$XSERVER_CFLAGS" 2340 2341 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" 2342 KDRIVE_LIB='$(top_builddir)/hw/kdrive/src/libkdrive.la' 2343 KDRIVE_MAIN_LIB="$MAIN_LIB" 2344 KDRIVE_LOCAL_LIBS="$DIX_LIB $KDRIVE_LIB" 2345 KDRIVE_LOCAL_LIBS="$KDRIVE_LOCAL_LIBS $FB_LIB $MI_LIB $KDRIVE_PURE_LIBS" 2346 KDRIVE_LOCAL_LIBS="$KDRIVE_LOCAL_LIBS $KDRIVE_OS_LIB" 2347 KDRIVE_LIBS="$KDRIVE_LOCAL_LIBS $XSERVER_SYS_LIBS $GLX_SYS_LIBS $DLOPEN_LIBS" 2348 2349 AC_SUBST([XEPHYR_LIBS]) 2350 AC_SUBST([XEPHYR_INCS]) 2351fi 2352AC_SUBST([KDRIVE_INCS]) 2353AC_SUBST([KDRIVE_PURE_INCS]) 2354AC_SUBST([KDRIVE_CFLAGS]) 2355AC_SUBST([KDRIVE_PURE_LIBS]) 2356AC_SUBST([KDRIVE_MAIN_LIB]) 2357AC_SUBST([KDRIVE_LOCAL_LIBS]) 2358AC_SUBST([KDRIVE_LIBS]) 2359AM_CONDITIONAL(XEPHYR, [test "x$KDRIVE" = xyes && test "x$XEPHYR" = xyes]) 2360 2361dnl Xwayland DDX 2362 2363XWAYLANDMODULES="wayland-client >= 1.3.0 wayland-protocols >= 1.10 $LIBDRM epoxy" 2364if test "x$XF86VIDMODE" = xyes; then 2365 XWAYLANDMODULES="$XWAYLANDMODULES $VIDMODEPROTO" 2366fi 2367PKG_CHECK_MODULES(XWAYLANDMODULES, [$XWAYLANDMODULES], [have_xwayland=yes], [have_xwayland=no]) 2368AC_MSG_CHECKING([whether to build Xwayland DDX]) 2369if test "x$XWAYLAND" = xauto; then 2370 XWAYLAND="$have_xwayland" 2371fi 2372AC_MSG_RESULT([$XWAYLAND]) 2373AM_CONDITIONAL(XWAYLAND, [test "x$XWAYLAND" = xyes]) 2374 2375if test "x$XWAYLAND" = xyes; then 2376 if test "x$have_xwayland" = xno; then 2377 AC_MSG_ERROR([Xwayland build explicitly requested, but required modules not found.]) 2378 fi 2379 2380 if test "x$GLAMOR" = xyes && test "x$GBM" = xyes; then 2381 AC_DEFINE(XWL_HAS_GLAMOR, 1, 2382 [Build xwayland with glamor support]) 2383 fi 2384 2385 PKG_CHECK_MODULES(WAYLAND_EGLSTREAM, [wayland-eglstream-protocols >= 1.0.2], [have_wl_eglstream=yes], [have_wl_eglstream=no]) 2386 2387 if test "x$XWAYLAND_EGLSTREAM" = xauto; then 2388 if test "x$have_wl_eglstream" = xyes && test "x$GLAMOR" = xyes; then 2389 XWAYLAND_EGLSTREAM=yes 2390 fi 2391 fi 2392 2393 if test "x$XWAYLAND_EGLSTREAM" = xyes; then 2394 if test "x$GLAMOR" != xyes; then 2395 AC_MSG_ERROR([Xwayland eglstream support explicitly requested, but required modules not found.]) 2396 fi 2397 2398 if test "x$have_wl_eglstream" = xno; then 2399 AC_MSG_ERROR([Xwayland eglstream support requires wayland-eglstream-protocols >= 1.0.2]) 2400 fi 2401 2402 AC_SUBST(WAYLAND_EGLSTREAM_DATADIR, `$PKG_CONFIG --variable=pkgdatadir wayland-eglstream-protocols`) 2403 AC_DEFINE(XWL_HAS_EGLSTREAM, 1, 2404 [Build xwayland with eglstream support]) 2405 fi 2406 2407 XWAYLAND_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" 2408 XWAYLAND_SYS_LIBS="$XWAYLANDMODULES_LIBS $GLX_SYS_LIBS" 2409 AC_SUBST([XWAYLAND_LIBS]) 2410 AC_SUBST([XWAYLAND_SYS_LIBS]) 2411 2412 if test "x$MONOTONIC_CLOCK" != xyes; then 2413 AC_MSG_ERROR([Xwayland requires CLOCK_MONOTONIC support.]) 2414 fi 2415 2416 AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner]) 2417 if test "x$WAYLAND_SCANNER" = x; then 2418 PKG_CHECK_MODULES(WAYLAND_SCANNER, [wayland-scanner]) 2419 AC_SUBST(WAYLAND_SCANNER, `$PKG_CONFIG --variable=wayland_scanner wayland-scanner`) 2420 fi 2421 2422 PKG_CHECK_MODULES(WAYLAND_SCANNER, [wayland-scanner >= 1.14.91], 2423 AC_SUBST(SCANNER_ARG, 'private-code'), 2424 AC_SUBST(SCANNER_ARG, 'code')) 2425 2426 AC_SUBST(WAYLAND_PROTOCOLS_DATADIR, `$PKG_CONFIG --variable=pkgdatadir wayland-protocols`) 2427fi 2428AM_CONDITIONAL(XWAYLAND_EGLSTREAM, [test "x$XWAYLAND_EGLSTREAM" = "xyes"]) 2429 2430 2431dnl and the rest of these are generic, so they're in config.h 2432dnl 2433dnl though, thanks to the passing of some significant amount of time, the 2434dnl above is probably a complete fallacy, and you should not rely on it. 2435dnl but this is still actually better than imake, honest. -daniels 2436 2437AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ 2438#include <features.h> 2439#ifndef __GLIBC__ 2440#error not glibc 2441#endif 2442]], [])], [AC_DEFINE(_GNU_SOURCE, 1, 2443 [ Enable GNU and other extensions to the C environment for glibc])]) 2444 2445AC_DEFINE_DIR(PROJECTROOT, prefix, [Overall prefix]) 2446AC_DEFINE_DIR(SYSCONFDIR, sysconfdir, [sysconfdir]) 2447 2448AC_SUBST([RELEASE_DATE]) 2449DATE_FMT="%Y%m%d" 2450TIME_FMT="1%H%M%S" 2451BUILD_DATE="`date "+$DATE_FMT"`" 2452BUILD_TIME="`date "+$TIME_FMT"`" 2453if test "x$SOURCE_DATE_EPOCH" != "x"; then 2454 BUILD_DATE="`date -u -d "@$SOURCE_DATE_EPOCH" "+$DATE_FMT" 2>/dev/null || date -u -r "$SOURCE_DATE_EPOCH" "+$DATE_FMT" 2>/dev/null || date -u "+$DATE_FMT"`" 2455 BUILD_TIME="`date -u -d "@$SOURCE_DATE_EPOCH" "+$TIME_FMT" 2>/dev/null || date -u -r "$SOURCE_DATE_EPOCH" "+$TIME_FMT" 2>/dev/null || date -u "+$TIME_FMT"`" 2456fi 2457AC_SUBST([BUILD_DATE]) 2458AC_SUBST([BUILD_TIME]) 2459 2460DIX_CFLAGS="-DHAVE_DIX_CONFIG_H $XSERVER_CFLAGS" 2461 2462AC_SUBST([DIX_CFLAGS]) 2463 2464AC_SUBST([libdir]) 2465AC_SUBST([exec_prefix]) 2466AC_SUBST([prefix]) 2467 2468AC_CONFIG_COMMANDS([sdksyms], [touch hw/xfree86/sdksyms.dep]) 2469 2470if test "x$CONFIG_HAL" = xno && test "x$CONFIG_UDEV" = xno; then 2471 AC_MSG_WARN([ 2472 *********************************************** 2473 Neither HAL nor udev backend will be enabled. 2474 Input device hotplugging will not be available! 2475 ***********************************************]) 2476fi 2477 2478AC_CONFIG_FILES([ 2479Makefile 2480glx/Makefile 2481include/Makefile 2482composite/Makefile 2483damageext/Makefile 2484dbe/Makefile 2485dix/Makefile 2486doc/Makefile 2487doc/dtrace/Makefile 2488man/Makefile 2489fb/Makefile 2490glamor/Makefile 2491record/Makefile 2492config/Makefile 2493mi/Makefile 2494miext/Makefile 2495miext/sync/Makefile 2496miext/damage/Makefile 2497miext/shadow/Makefile 2498miext/rootless/Makefile 2499os/Makefile 2500pseudoramiX/Makefile 2501randr/Makefile 2502render/Makefile 2503xkb/Makefile 2504Xext/Makefile 2505Xi/Makefile 2506xfixes/Makefile 2507exa/Makefile 2508dri3/Makefile 2509present/Makefile 2510hw/Makefile 2511hw/xfree86/Makefile 2512hw/xfree86/Xorg.sh 2513hw/xfree86/common/Makefile 2514hw/xfree86/common/xf86Build.h 2515hw/xfree86/ddc/Makefile 2516hw/xfree86/dixmods/Makefile 2517hw/xfree86/doc/Makefile 2518hw/xfree86/dri/Makefile 2519hw/xfree86/dri2/Makefile 2520hw/xfree86/dri2/pci_ids/Makefile 2521hw/xfree86/drivers/Makefile 2522hw/xfree86/drivers/modesetting/Makefile 2523hw/xfree86/exa/Makefile 2524hw/xfree86/exa/man/Makefile 2525hw/xfree86/fbdevhw/Makefile 2526hw/xfree86/fbdevhw/man/Makefile 2527hw/xfree86/glamor_egl/Makefile 2528hw/xfree86/i2c/Makefile 2529hw/xfree86/int10/Makefile 2530hw/xfree86/loader/Makefile 2531hw/xfree86/man/Makefile 2532hw/xfree86/modes/Makefile 2533hw/xfree86/os-support/Makefile 2534hw/xfree86/os-support/bsd/Makefile 2535hw/xfree86/os-support/bus/Makefile 2536hw/xfree86/os-support/hurd/Makefile 2537hw/xfree86/os-support/misc/Makefile 2538hw/xfree86/os-support/linux/Makefile 2539hw/xfree86/os-support/solaris/Makefile 2540hw/xfree86/os-support/stub/Makefile 2541hw/xfree86/parser/Makefile 2542hw/xfree86/ramdac/Makefile 2543hw/xfree86/shadowfb/Makefile 2544hw/xfree86/vbe/Makefile 2545hw/xfree86/vgahw/Makefile 2546hw/xfree86/x86emu/Makefile 2547hw/xfree86/xkb/Makefile 2548hw/xfree86/utils/Makefile 2549hw/xfree86/utils/man/Makefile 2550hw/xfree86/utils/cvt/Makefile 2551hw/xfree86/utils/gtf/Makefile 2552hw/dmx/config/Makefile 2553hw/dmx/config/man/Makefile 2554hw/dmx/doc/Makefile 2555hw/dmx/doxygen/doxygen.conf 2556hw/dmx/doxygen/Makefile 2557hw/dmx/examples/Makefile 2558hw/dmx/input/Makefile 2559hw/dmx/glxProxy/Makefile 2560hw/dmx/Makefile 2561hw/dmx/man/Makefile 2562hw/vfb/Makefile 2563hw/vfb/man/Makefile 2564hw/xnest/Makefile 2565hw/xnest/man/Makefile 2566hw/xwin/Makefile 2567hw/xwin/dri/Makefile 2568hw/xwin/glx/Makefile 2569hw/xwin/man/Makefile 2570hw/xwin/winclipboard/Makefile 2571hw/xquartz/Makefile 2572hw/xquartz/GL/Makefile 2573hw/xquartz/bundle/Makefile 2574hw/xquartz/man/Makefile 2575hw/xquartz/mach-startup/Makefile 2576hw/xquartz/pbproxy/Makefile 2577hw/xquartz/xpr/Makefile 2578hw/kdrive/Makefile 2579hw/kdrive/ephyr/Makefile 2580hw/kdrive/ephyr/man/Makefile 2581hw/kdrive/src/Makefile 2582hw/xwayland/Makefile 2583test/Makefile 2584xserver.ent 2585xorg-server.pc 2586]) 2587AC_OUTPUT 2588