configure.ac revision 5ffd6003
1dnl Copyright 2005 Red Hat, Inc. 2dnl 3dnl Permission to use, copy, modify, distribute, and sell this software and its 4dnl documentation for any purpose is hereby granted without fee, provided that 5dnl the above copyright notice appear in all copies and that both that 6dnl copyright notice and this permission notice appear in supporting 7dnl documentation, and that the name of Red Hat not be used in 8dnl advertising or publicity pertaining to distribution of the software without 9dnl specific, written prior permission. Red Hat makes no 10dnl representations about the suitability of this software for any purpose. It 11dnl is provided "as is" without express or implied warranty. 12dnl 13dnl RED HAT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 14dnl INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO 15dnl EVENT SHALL RED HAT BE LIABLE FOR ANY SPECIAL, INDIRECT OR 16dnl CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 17dnl DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 18dnl TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 19dnl PERFORMANCE OF THIS SOFTWARE. 20dnl 21dnl Process this file with autoconf to create configure. 22 23 24AC_PREREQ([2.60]) 25AC_INIT(xdm,[1.1.10],[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],xdm) 26AM_INIT_AUTOMAKE([foreign dist-bzip2]) 27AM_MAINTAINER_MODE 28AC_CONFIG_MACRO_DIR([m4]) 29 30# Require xorg-macros: XORG_DEFAULT_OPTIONS 31m4_ifndef([XORG_MACROS_VERSION], 32 [m4_fatal([must install xorg-macros 1.4 or later before running autoconf/autogen])]) 33XORG_MACROS_VERSION(1.4) 34AC_USE_SYSTEM_EXTENSIONS 35XORG_DEFAULT_OPTIONS 36 37AM_CONFIG_HEADER(config.h) 38 39AC_PROG_CC 40AM_PROG_CC_C_O 41AC_C_INLINE 42AC_LIBTOOL_WIN32_DLL 43AM_PROG_LIBTOOL 44AC_PROG_INSTALL 45 46XORG_PROG_RAWCPP 47XORG_WITH_LINT 48 49m4_ifdef([AM_SILENT_RULES],[HAVE_AM_SILENT_RULES=yes]) 50AM_CONDITIONAL(HAVE_AM_SILENT_RULES, test x$HAVE_AM_SILENT_RULES != x) 51 52XDM_CFLAGS="$XDM_CFLAGS" 53GREETER_CFLAGS="$GREETER_CFLAGS" 54CHOOSER_CFLAGS="$CHOOSER_CFLAGS" 55 56# Check for mktemp to prevent security issue noted in Xorg bug #5898 57# See https://bugs.freedesktop.org/show_bug.cgi?id=5898 for details. 58AC_PATH_PROG(MKTEMP_COMMAND, mktemp) 59AM_CONDITIONAL(HAVE_MKTEMP_COMMAND, test x$MKTEMP_COMMAND != x) 60 61AC_FUNC_FORK 62 63dnl If you're looking here because you got a message that said 64dnl 'error: possibly undefined macro: AC_DEFINE', the source of 65dnl your problem is not here. You need to upgrade to pkgconfig 0.18 66dnl or later to get an updated pkg.m4 with PKG_CHECK_EXISTS defined. 67dnl See http://www.mail-archive.com/autoconf@gnu.org/msg13413.html 68AC_CHECK_FUNC(mkstemp, AC_DEFINE(HAS_MKSTEMP,1, 69 [Define to 1 if you have the 'mkstemp' function.])) 70AC_CHECK_FUNC(getifaddrs, AC_DEFINE(HAS_GETIFADDRS,1, 71 [Define to 1 if you have the 'getifaddrs' function.])) 72AC_CHECK_FUNC(getspnam, AC_DEFINE(USESHADOW,1, 73 [Define to 1 if you have the shadow password functions.])) 74 75 76# According to the old Imakefile, FreeBSD has this in libutil 77AC_CHECK_FUNC(setproctitle, [HAS_SETPROCTITLE="yes"], 78 AC_CHECK_LIB(util, setproctitle, 79 [HAS_SETPROCTITLE="yes" ; XDM_OS_LIBS="$XDM_OS_LIBS -lutil"])) 80if test "x$HAS_SETPROCTITLE" = "xyes" ; then 81 AC_DEFINE(HAS_SETPROCTITLE,1, 82 [Define to 1 if you have the 'setproctitle' function.]) 83fi 84 85# According to the old Imakefile, BSD/OS has this in libutil 86AC_CHECK_FUNC(setusercontext, [HAS_SETUSERCONTEXT="yes"], 87 AC_CHECK_LIB(util, setusercontext, 88 [HAS_SETUSERCONTEXT="yes" ; XDM_OS_LIBS="$XDM_OS_LIBS -lutil"])) 89if test "x$HAS_SETUSERCONTEXT" = "xyes" ; then 90 AC_DEFINE(HAS_SETUSERCONTEXT,1, 91 [Define to 1 if you have the 'setusercontext' function.]) 92fi 93 94AC_CHECK_FUNCS([daemon sigaction openlog asprintf]) 95AC_CHECK_HEADERS([grp.h syslog.h]) 96AC_TYPE_SIGNAL 97 98XTRANS_CONNECTION_FLAGS 99dnl Sets $SECURE_RPC to "yes" or "no" 100XTRANS_SECURE_RPC_FLAGS 101AM_CONDITIONAL(HAS_SECURE_RPC, test x$SECURE_RPC = xyes) 102 103dnl Is key_setnet defined in a header file? 104AC_CHECK_DECL(key_setnet, 105 AC_DEFINE(HAVE_DECL_KEY_SETNET,1, 106 [Define to 1 if your headers define the key_setnet() function.]), 107 [],[ 108#include <rpc/rpc.h> 109#include <rpc/key_prot.h> 110]) 111 112# darwin could have PAM support, but not yet 113case $host_os in 114 darwin*) 115 use_pam_default=no 116 ;; 117 *) 118 use_pam_default=try 119 ;; 120esac 121 122# Check for PAM support 123AC_ARG_WITH(pam, AC_HELP_STRING([--with-pam],[Use PAM for authentication]), 124 [USE_PAM=$withval], [USE_PAM=$use_pam_default]) 125if test "x$USE_PAM" != "xno" ; then 126 AC_SEARCH_LIBS(pam_open_session,[pam]) 127 AC_CHECK_FUNC(pam_open_session, 128 [AC_DEFINE(USE_PAM,1,[Use PAM for authentication])], 129 [if test "x$USE_PAM" != "xtry" ; then 130 AC_MSG_ERROR([PAM support requested, but pam_open_session not found.]) 131 fi]) 132fi 133 134use_selinux_default=no 135# Check for selinux support 136AC_ARG_WITH(selinux, AC_HELP_STRING([--with-selinux],[Add support for selinux]), 137 [USE_SELINUX=$withval], [USE_SELINUX=$use_selinux_default]) 138if test "x$USE_SELINUX" != "xno" ; then 139 old_LIBS="$LIBS" 140 LIBS="" 141 AC_SEARCH_LIBS(is_selinux_enabled,[selinux]) 142 AC_CHECK_FUNC(is_selinux_enabled, 143 [AC_DEFINE(HAVE_SELINUX,1,[Add support for selinux])], 144 [if test "x$USE_SELINUX" != "xtry" ; then 145 AC_MSG_ERROR(["selinux support requested, but is_selinux_enabled not found."]) 146 fi]) 147 XDM_LIBS="$XDM_LIBS $LIBS" 148 LIBS="$old_LIBS" 149fi 150 151# FIXME: Find better test for which OS'es use su -m - for now, just try to 152# mirror the Imakefile setting of: 153# if defined(OpenBSDArchitecture) || defined(NetBSDArchitecture) || defined(FreeBSDArchitecture) || defined(DarwinArchitecture) 154 155 156case $host_os in 157 linux*|gnu*|*-gnu) 158 OS_CFLAGS="" 159 SU="su" 160 ;; 161 darwin*) 162 OS_CFLAGS="-DNO_LASTLOG" 163 SU="su -m" 164 ;; 165 *bsd*|dragonfly*) 166 OS_CFLAGS="-DCSRG_BASED" 167 SU="su -m" 168 ;; 169 solaris*|sysv4*) 170 OS_CFLAGS="" 171 SU="su" 172 ;; 173 *) 174 OS_CFLAGS= 175 SU="su" 176 ;; 177esac 178AC_SUBST(SU) 179 180# Check for /dev/random or /dev/urandom 181AC_ARG_WITH(random-device, 182 AC_HELP_STRING([--with-random-device\[=<pathname>\]], 183 [Use <pathname> as a source of randomness]), 184 RANDOM_DEVICE="$withval", RANDOM_DEVICE="try") 185 186if test x$RANDOM_DEVICE = xyes -o x$RANDOM_DEVICE = xtry ; then 187 AC_CHECK_FILE([/dev/urandom], [RANDOM_DEVICE=/dev/urandom], 188 AC_CHECK_FILE([/dev/random], [RANDOM_DEVICE=/dev/random])) 189 if test x$RANDOM_DEVICE = xyes ; then 190 AC_MSG_ERROR([random device support requested, but no random device was found.]) 191 else 192 if test x$RANDOM_DEVICE = xtry ; then 193 RANDOM_DEVICE="no" 194 fi 195 fi 196fi 197 198if test x$RANDOM_DEVICE != xno ; then 199 AC_DEFINE_UNQUOTED(DEV_RANDOM,"$RANDOM_DEVICE", 200 [Define to device that provides random data source]) 201 RANDOMMANDEFS="$RANDOMMANDEFS -DDEV_RANDOM=\\\"$RANDOM_DEVICE\\\"" 202fi 203 204 205AC_CHECK_FUNC(arc4random, [HAS_ARC4_RANDOM="yes"], [HAS_ARC4_RANDOM="no"]) 206AM_CONDITIONAL(HAS_ARC4_RANDOM, test x$HAS_ARC4_RANDOM = xyes) 207if test x$HAS_ARC4_RANDOM = xyes ; then 208 AC_DEFINE(ARC4_RANDOM, 1, [Define to use arc4random() function]) 209 RANDOMMANDEFS="$RANDOMMANDEFS -DARC4_RANDOM" 210fi 211 212AC_SUBST(RANDOMMANDEFS) 213 214# FIXME: find out how to check for these things. Note that Kerberos was 215# turned off everywhere but on OpenBSD. 216AM_CONDITIONAL(HAS_KERBEROS_FIVE, false) 217 218 219# Figure out where everything goes in the filesystem 220 221AC_ARG_WITH(xdmlibdir, 222 AC_HELP_STRING([--with-xdmlibdir=<pathname>], 223 [specify directory for xdm scripts and modules (default=${libdir}/X11/xdm)]), 224 [XDMLIBDIR="$withval"], [XDMLIBDIR="${libdir}/X11/xdm"]) 225AC_SUBST(XDMLIBDIR) 226 227AC_ARG_WITH(xdmconfigdir, 228 AC_HELP_STRING([--with-xdmconfigdir=<pathname>], 229 [specify directory for xdm config files (default is same as xdmlibdir)]), 230 [XDMCONFIGDIR="$withval"], [XDMCONFIGDIR="${XDMLIBDIR}"]) 231AC_SUBST(XDMCONFIGDIR) 232 233AC_ARG_WITH(xdmscriptdir, 234 AC_HELP_STRING([--with-xdmscriptdir=<pathname>], 235 [specify directory for xdm scripts (default is same as xdmlibdir)]), 236 [XDMSCRIPTDIR="$withval"], [XDMSCRIPTDIR="${XDMLIBDIR}"]) 237AC_SUBST(XDMSCRIPTDIR) 238 239AC_ARG_WITH(logdir, 240 AC_HELP_STRING([--with-logdir=<pathname>], 241 [specify directory for xdm log files (default=/var/log)]), 242 [XDMLOGDIR="$withval"], [XDMLOGDIR="/var/log"]) 243AC_SUBST(XDMLOGDIR) 244 245AC_ARG_WITH(piddir, 246 AC_HELP_STRING([--with-piddir=<pathname>], 247 [specify directory for xdm pid files (default=/var/run)]), 248 [XDMPIDDIR="$withval"], [XDMPIDDIR="/var/run"]) 249AC_SUBST(XDMPIDDIR) 250 251AC_ARG_WITH(default-vt, 252 AC_HELP_STRING([--with-default-vt=<vtname>], 253 [specify default vt to start xdm on (default=none)]), 254 [DEFAULTVT="$withval"], [[DEFAULTVT=""]]) 255AC_SUBST(DEFAULTVT) 256 257AC_ARG_WITH(config-type, 258 AC_HELP_STRING([--with-config-type={ws|fs}], 259 [default config file type to use - workstation (ws) or fileserver (fs) (default=ws)]), 260 [SERVERSTYPE="$withval"], [SERVERSTYPE="ws"]) 261AC_SUBST(SERVERSTYPE) 262 263# Ideally we'd just pull out UTMP_FILE & WTMP_FILE from <utmp.h> 264# but that's not easy to do in autoconf 265AC_ARG_WITH(utmp_file, 266 AC_HELP_STRING([--with-utmp-file=<pathname>], 267 [specify file to pass to sessreg -u for current logins]), 268 [UTMP_FILE="$withval"]) 269if test "x$UTMP_FILE" = "xyes" ; then 270 AC_MSG_ERROR([path was not specified to --with-utmp-file]) 271fi 272if test "x$UTMP_FILE" = "x" ; then 273 for UTMP_FILE in /var/adm/utmpx /var/run/utmp /var/log/utmp /var/adm/utmp /usr/adm/utmp /etc/utmp ; do 274 AC_CHECK_FILE([$UTMP_FILE], [break], [UTMP_FILE=""]) 275 done 276 if test "x$UTMP_FILE" = "x" ; then 277 UTMP_FILE="/var/run/utmp" 278 fi 279fi 280AC_MSG_CHECKING([for path to file listing current logins for sessreg]) 281AC_MSG_RESULT([$UTMP_FILE]) 282AC_SUBST(UTMP_FILE) 283 284AC_ARG_WITH(wtmp_file, 285 AC_HELP_STRING([--with-wtmp-file=<pathname>], 286 [specify file to pass to sessreg -w for login history]), 287 [WTMP_FILE="$withval"]) 288if test "x$WTMP_FILE" = "xyes" ; then 289 AC_MSG_ERROR([path was not specified to --with-wtmp-file]) 290fi 291if test "x$WTMP_FILE" = "x" ; then 292 for WTMP_FILE in /var/adm/wtmpx /var/log/wtmp /var/adm/wtmp /usr/adm/wtmp /etc/wtmp ; do 293 AC_CHECK_FILE([$WTMP_FILE], [break], [WTMP_FILE=""]) 294 done 295 if test "x$WTMP_FILE" = "x" ; then 296 WTMP_FILE="/var/log/wtmp" 297 fi 298fi 299AC_MSG_CHECKING([for path to file listing login history for sessreg]) 300AC_MSG_RESULT([$WTMP_FILE]) 301AC_SUBST(WTMP_FILE) 302 303case $host_os in 304 *sco*|*solaris*) 305 SHELL_CMD="/bin/ksh" ;; 306 *) SHELL_CMD="/bin/sh" ;; 307esac 308AC_SUBST(SHELL_CMD) 309 310# Checks for pkg-config packages 311 312PKG_CHECK_MODULES(XDM, xmu x11 xau) 313 314XDM_LIBS="$XDM_LIBS $XDM_OS_LIBS" 315 316PKG_CHECK_EXISTS(xinerama, [ 317 AC_DEFINE([USE_XINERAMA], 1, 318 [Define to 1 to use XINERAMA in greeter & chooser]) 319 PKG_CHECK_MODULES(XINERAMA, xinerama) 320 XDM_CFLAGS="$XDM_CFLAGS $XINERAMA_CFLAGS" 321 XDM_LIBS="$XDM_LIBS $XINERAMA_LIBS" 322 CHOOSER_CFLAGS="$CHOOSER_CFLAGS $XINERAMA_CFLAGS" 323 CHOOSER_LIBS="$CHOOSER_LIBS $XINERAMA_LIBS" 324 GREETER_CFLAGS="$GREETER_CFLAGS $XINERAMA_CFLAGS" 325 GREETER_LIBS="$GREETER_LIBS $XINERAMA_LIBS" 326]) 327 328# Xft text drawing for the greeter screen 329AC_ARG_WITH(xft, 330 AC_HELP_STRING([--with-xft], 331 [Use Xft to draw text (default is YES if installed)]), 332 [USE_XFT="$withval"], 333 PKG_CHECK_EXISTS(xft, [USE_XFT="yes"], [USE_XFT="no"])) 334 335if test "x$USE_XFT" = "xyes" ; then 336 PKG_CHECK_MODULES(XFT, xft) 337 GREETER_CFLAGS="$GREETER_CFLAGS $XFT_CFLAGS" 338 GREETER_LIBS="$GREETER_LIBS $XFT_LIBS" 339 AC_DEFINE([USE_XFT], 1, 340 [Define to 1 to use Xft for text on greeter screen]) 341fi 342 343# XPM logos for the greeter screen 344AC_ARG_ENABLE(xpm-logos, 345 AC_HELP_STRING([--enable-xpm-logos], 346 [Display xpm logos in greeter (default is YES)]), 347 [USE_XPM="$enableval"], 348 PKG_CHECK_EXISTS(xpm, [USE_XPM="yes"], [USE_XPM="no"])) 349if test "x$USE_XPM" = "xyes" ; then 350 PKG_CHECK_MODULES(XPM, xpm) 351 XDM_CFLAGS="$XDM_CFLAGS $XPM_CFLAGS" 352 XDM_LIBS="$XDM_LIBS $XPM_LIBS" 353 GREETER_CFLAGS="$GREETER_CFLAGS $XPM_CFLAGS" 354 GREETER_LIBS="$GREETER_LIBS $XPM_LIBS" 355 AC_DEFINE([XPM], 1, 356 [Define to 1 to display XPM logos on greeter screen]) 357fi 358AM_CONDITIONAL(USE_XPM, test "x$USE_XPM" = "xyes") 359 360AC_ARG_WITH(color-pixmap, 361 AC_HELP_STRING([--with-color-pixmap=<filename>], 362 [specify xpm file to use as color logo (default=xorg.xpm)]), 363 [XDM_PIXMAP="$withval"], [XDM_PIXMAP="xorg.xpm"]) 364AC_ARG_WITH(bw-pixmap, 365 AC_HELP_STRING([--with-bw-pixmap=<filename>], 366 [specify xpm file to use as black-and-white logo (default=xorg-bw.xpm)]), 367 [XDM_BWPIXMAP="$withval"], [XDM_BWPIXMAP="xorg-bw.xpm"]) 368AC_ARG_WITH(pixmapdir, 369 AC_HELP_STRING([--with-pixmapdir=<pathname>], 370 [specify directory for xpm files (default=xdmlibdir/pixmaps)]), 371 [XDM_PIXMAPDIR="$withval"], 372 [XDM_PIXMAPDIR='${XDMLIBDIR}/pixmaps']) 373 374AC_SUBST(XDM_PIXMAP) 375AC_SUBST(XDM_BWPIXMAP) 376AC_SUBST(XDM_PIXMAPDIR) 377 378# Packages used by multiple programs 379 380PKG_CHECK_MODULES(XDM_PRINT, xaw7) 381PKG_CHECK_MODULES(DMCP, xdmcp) 382PKG_CHECK_MODULES(XLIB, x11) 383PKG_CHECK_MODULES(AUTH, xau) 384 385# 386# Greeter 387# 388 389AC_MSG_CHECKING([if the greeter should be built as a dynamically loaded shared object]) 390 391AC_ARG_ENABLE(dynamic-greeter, 392 AC_HELP_STRING([--enable-dynamic-greeter], 393 [Build greeter as dynamically loaded shared object]), 394 [DYNAMIC_GREETER="$enableval"], [DYNAMIC_GREETER="auto"]) 395 396# Not all OS'es built dynamic greeter in monolith, but all the ones supported 397# in the modular tree should be able to use it. We'll leave this here in case 398# some are found that can't. 399if test "x$DYNAMIC_GREETER" = "xauto" ; then 400 case $host_os in 401 *) DYNAMIC_GREETER="yes" ;; 402 esac 403fi 404 405AC_MSG_RESULT([$DYNAMIC_GREETER]) 406 407if test "x$DYNAMIC_GREETER" = "xyes" ; then 408 409 GREETER_CFLAGS="$GREETER_CFLAGS -DGREET_LIB" 410 411 # The xdm binary needs to export symbols so that they can be used from 412 # libXdmGreet.so. Some platforms require extra flags to do this. 413 # gcc should set these flags when -rdynamic is passed to it, other 414 # compilers/linkers may need to be added 415 if test "x$GCC" = "xyes"; then 416 XDM_LDFLAGS="$XDM_LDFLAGS -rdynamic" 417 fi 418 419 PKG_CHECK_MODULES(XDMGREET, xt x11 xext) 420 421 GREETERLIB="${XDMLIBDIR}/libXdmGreet.so" 422 AC_DEFINE_DIR(DEF_GREETER_LIB, GREETERLIB, 423 [Location of Xdm Greeter library]) 424 425 XDMGREET_CFLAGS="$XDMGREET_CFLAGS $XDM_PRINT_CFLAGS $DMCP_CFLAGS $XLIB_CFLAGS $OS_CFLAGS $GREETER_CFLAGS $AUTH_CFLAGS" 426 XDMGREET_LIBS="$XDMGREET_LIBS $XDM_PRINT_LIBS $DMCP_LIBS $GREETER_LIBS" 427 428 AC_SUBST(XDMGREET_CFLAGS) 429 AC_SUBST(XDMGREET_LIBS) 430else 431 XDM_CFLAGS="$XDM_CFLAGS $XDM_PRINT_CFLAGS $GREETER_CFLAGS -DGREET_USER_STATIC" 432 XDM_LIBS="$XDM_LIBS $XDM_PRINT_LIBS $GREETER_LIBS" 433fi 434 435AM_CONDITIONAL(DYNAMIC_GREETER, test x$DYNAMIC_GREETER = xyes) 436 437# 438# XDM 439# 440 441XDM_CFLAGS="$XDM_CFLAGS $DMCP_CFLAGS $XLIB_CFLAGS $OS_CFLAGS $AUTH_CFLAGS" 442XDM_LIBS="$XDM_LIBS $DMCP_LIBS" 443 444AC_CHECK_LIB(Xdmcp, XdmcpWrap, [xdmauth="yes"], [xdmauth="no"], [$DMCP_LIBS]) 445 446AC_ARG_ENABLE(xdm-auth, 447 AC_HELP_STRING([--enable-xdm-auth], 448 [Support XDM-AUTHENTICATION-1 and XDM-AUTHORIZATION-1 (default: auto)]), 449 [xdmauth_enable="$enableval"], [xdmauth_enable="auto"]) 450if test "x$xdmauth_enable" = "xyes" -a "x$xdmauth" = "xno" ; then 451 AC_MSG_ERROR([XDM-AUTH support requested, but XdmcpWrap not found in libXdmcp.]) 452fi 453 454AM_CONDITIONAL(HAS_XDM_AUTH, test x$xdmauth = xyes -a x$xdmauth_enable != xno) 455 456AC_SEARCH_LIBS(crypt, crypt) 457 458AC_SUBST(XDM_CFLAGS) 459AC_SUBST(XDM_LIBS) 460AC_SUBST(XDM_LDFLAGS) 461 462# 463# xdmshell 464# 465 466PKG_CHECK_MODULES(XT, xt) 467XDMSHELL_CFLAGS="$XDM_CFLAGS $XDM_PRINT_CFLAGS $AUTH_CFLAGS $DMCP_CFLAGS $XLIB_CFLAGS $XT_CFLAGS" 468XDMSHELL_LIBS="$XDM_LIBS $XDM_PRINT_LIBS $DMCP_LIBS" 469 470AC_SUBST(XDMSHELL_CFLAGS) 471AC_SUBST(XDMSHELL_LIBS) 472 473# 474# Chooser 475# 476 477CHOOSER_CFLAGS="$CHOOSER_CFLAGS $XDM_PRINT_CFLAGS $XLIB_CFLAGS $DMCP_CFLAGS $AUTH_CFLAGS" 478CHOOSER_LIBS="$CHOOSER_LIBS $XDM_PRINT_LIBS $DMCP_LIBS" 479 480AC_SUBST(CHOOSER_CFLAGS) 481AC_SUBST(CHOOSER_LIBS) 482 483# Defaults for X session - should probably be configure --with-* flags 484# Currently just trying to mirror what defaults were set in Imake 485 486# -DDEF_SERVER_LINE=":0 local $(DEF_SERVER) :0" 487if test -z "$DEF_SERVER" ; then 488 DEF_SERVER="${bindir}/X" 489fi 490if test -z "$DEF_SERVER_LINE" ; then 491 DEF_SERVER_LINE=":0 local ${DEF_SERVER} :0" 492fi 493AC_DEFINE_DIR(DEF_SERVER_LINE, DEF_SERVER_LINE, 494 [Define to default Xserver file entry for local X server]) 495 496# -DXRDB_PROGRAM="$(BINDIR)/xrdb" 497AC_ARG_WITH(xrdb, AC_HELP_STRING([--with-xrdb=path], 498 [Use path for xrdb (default: bindir/xrdb)]), 499 [XRDB=$withval], [XRDB=${bindir}/xrdb]) 500AC_DEFINE_DIR(XRDB_PROGRAM, XRDB, 501 [Define to pathname for xrdb program]) 502 503# -DDEF_SESSION="$(BINDIR)/xterm -ls" 504AC_ARG_WITH(default-session, AC_HELP_STRING([--with-default-session=command], 505 [Use command for default session (default: bindir/xterm -ls)]), 506 [DEF_SESSION=$withval], [DEF_SESSION="${bindir}/xterm -ls"]) 507AC_DEFINE_DIR(DEF_SESSION, DEF_SESSION, 508 [Define to default command to start X session]) 509 510# -DDEF_USER_PATH="$(DEF_USER_PATH)" 511# Default values taken from DefaultUserPath setting in the 512# old Imake *.cf files for each platform 513if test -z "$DEF_USER_PATH" ; then 514 case $host_os in 515 dragonfly*) 516 DEF_USER_PATH="/bin:/usr/bin:/sbin:/usr/sbin:${bindir}:/usr/local/bin" 517 ;; 518 freebsd*) 519 DEF_USER_PATH="/bin:/usr/bin:/sbin:/usr/sbin:${bindir}:/usr/gnu/bin:/usr/local/bin" 520 ;; 521 netbsd*) 522 DEF_USER_PATH="/bin:/usr/bin:/usr/pkg/bin:/usr/local/bin:${bindir}" 523 ;; 524 openbsd*|bsdi*) 525 DEF_USER_PATH="/bin:/usr/bin:/usr/local/bin:${bindir}" 526 ;; 527 solaris*) 528 DEF_USER_PATH="/usr/bin:${bindir}" 529 ;; 530 *) 531 DEF_USER_PATH="/bin:/usr/bin:${bindir}:/usr/ucb" 532 ;; 533 esac 534fi 535AC_DEFINE_DIR(DEF_USER_PATH, DEF_USER_PATH, 536 [Define to default PATH environment variable for user sessions]) 537 538# -DDEF_SYSTEM_PATH="$(DEF_SYSTEM_PATH)" 539# Default values taken from DefaultSystemPath setting in the 540# old Imake *.cf files for each platform 541if test -z "$DEF_SYSTEM_PATH" ; then 542 case $host_os in 543 freebsd*|dragonfly*) 544 DEF_SYSTEM_PATH="/bin:/usr/bin:/sbin:/usr/sbin:${bindir}" 545 ;; 546 netbsd*|openbsd*|bsdi*) 547 DEF_SYSTEM_PATH="/sbin:/usr/sbin:/bin:/usr/bin:${bindir}" 548 ;; 549 solaris*) 550 DEF_SYSTEM_PATH="/sbin:/usr/sbin:/usr/bin:${bindir}" 551 ;; 552 *) 553 DEF_SYSTEM_PATH="/etc:/bin:/usr/bin:${bindir}:/usr/ucb" 554 ;; 555 esac 556fi 557AC_DEFINE_DIR(DEF_SYSTEM_PATH, DEF_SYSTEM_PATH, 558 [Define to default PATH environment variable for system commands]) 559 560# -DDEF_SYSTEM_SHELL="$(BOURNE_SHELL)" 561if test -z "$BOURNE_SHELL" ; then 562 BOURNE_SHELL=/bin/sh 563fi 564AC_DEFINE_DIR(DEF_SYSTEM_SHELL, BOURNE_SHELL, 565 [Define to default shell]) 566 567# -DDEF_FAILSAFE_CLIENT="$(BINDIR)/xterm" 568 569AC_DEFINE_DIR(DEF_FAILSAFE_CLIENT, bindir/xterm, 570 [Define to default command to start failsafe X session]) 571 572# -DDEF_XDM_CONFIG="$(XDMDIR)/xdm-config" 573 574AC_DEFINE_DIR(DEF_XDM_CONFIG, XDMCONFIGDIR/xdm-config, 575 [Define to pathname of default xdm-config file]) 576 577# -DDEF_CHOOSER="$(CHOOSERPATH)" 578 579AC_DEFINE_DIR(DEF_CHOOSER, XDMLIBDIR/chooser, 580 [Define to pathname of where chooser binary is installed]) 581 582# -DDEF_AUTH_DIR="$(XDMDIR)" 583 584AC_ARG_WITH(authdir, 585 AC_HELP_STRING([--with-authdir=<pathname>], 586 [specify directory for X auth files (default=/var/lib/xdm)]), 587 [XDMXAUTHDIR="$withval"], [XDMXAUTHDIR="/var/lib/xdm"]) 588AC_SUBST(XDMXAUTHDIR) 589 590AC_DEFINE_DIR(DEF_AUTH_DIR, XDMXAUTHDIR, 591 [Define to pathname where authentication cookie files should be stored]) 592 593# -DDEF_GREETER_LIB="$(XDMDIR)/libXdmGreet.so" 594 595AC_DEFINE_DIR(DEF_GREETER_LIB, XDMLIBDIR/libXdmGreet.so, 596 [Define to pathname where greeter shared object is installed (if used)]) 597 598PKG_CHECK_MODULES(APPDEFS, xt) 599xt_appdefaultdir=`$PKG_CONFIG --variable=appdefaultdir xt` 600AC_ARG_WITH(appdefaultdir, 601 AC_HELP_STRING([--with-appdefaultdir=<pathname>], 602 [specify directory for app-defaults files (default is autodetected)]), 603 [appdefaultdir="$withval"], [appdefaultdir="${xt_appdefaultdir}"]) 604AC_SUBST(appdefaultdir) 605 606AC_SUBST(MKTEMP_COMMAND) 607 608AC_OUTPUT([Makefile config/Makefile greeter/Makefile]) 609