configure.ac revision 629baa8c
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# Initialize Autoconf
24AC_PREREQ([2.60])
25AC_INIT([xdm], [1.1.11],
26        [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [xdm])
27AC_USE_SYSTEM_EXTENSIONS
28AC_CONFIG_SRCDIR([Makefile.am])
29AC_CONFIG_MACRO_DIR([m4])
30AC_CONFIG_HEADERS(config.h)
31
32# Initialize Automake
33AM_INIT_AUTOMAKE([foreign dist-bzip2])
34AM_MAINTAINER_MODE
35
36# Initialize libtool
37AC_DISABLE_STATIC
38AC_LIBTOOL_DLOPEN
39AC_PROG_LIBTOOL
40
41# Require X.Org macros 1.8 or later for MAN_SUBSTS set by XORG_MANPAGE_SECTIONS
42m4_ifndef([XORG_MACROS_VERSION],
43          [m4_fatal([must install xorg-macros 1.8 or later before running autoconf/autogen])])
44XORG_MACROS_VERSION(1.8)
45XORG_DEFAULT_OPTIONS
46XORG_PROG_RAWCPP
47XORG_WITH_LINT
48
49# Checks for programs.
50# Check for mktemp to prevent security issue noted in Xorg bug #5898
51# See https://bugs.freedesktop.org/show_bug.cgi?id=5898 for details.
52AC_PATH_PROG(MKTEMP_COMMAND, mktemp)
53AM_CONDITIONAL(HAVE_MKTEMP_COMMAND, test x$MKTEMP_COMMAND != x)
54
55#------------------------------------------------------------------------------
56#			Check for system libraries
57#
58# AC_SEARCH_LIBS: tests using $LIBS and tests again with each listed library.
59#                 pre-pends the found library to $LIBS.
60#
61#------------------------------------------------------------------------------
62# Function getifaddrs() comes from the C library, Solaris 11 -lsocket, or
63# the -lnsl name service library
64AC_SEARCH_LIBS([getifaddrs], [socket nsl])
65
66# Function getspnam() comes from the C library, System V -lsec, UnixWare 7 -lgen
67# or Old Linux versions -lshadow
68AC_SEARCH_LIBS([getspnam], [sec gen shadow])
69
70# Function setproctitle() is in BSD -lutil or GNU systems -lbsd but N/A on Solaris
71AC_SEARCH_LIBS([setproctitle], [util bsd])
72
73# Function setusercontext() is in BSD -lutil but N/A on Solaris or GNU systems
74AC_SEARCH_LIBS([setusercontext], [util])
75
76# Function arc4random() is in BSD standard C or GNU systems -lbsd
77AC_SEARCH_LIBS([arc4random], [bsd], [HAVE_ARC4RANDOM="yes"])
78AC_SUBST(HAVE_ARC4RANDOM)
79AM_CONDITIONAL(HAVE_ARC4RANDOM, test x$HAVE_ARC4RANDOM = xyes)
80
81# Function crypt() comes from the C library or the -lcrypt data encryption library
82AC_SEARCH_LIBS(crypt, crypt)
83
84# Function dl() comes from the C library or -ldl
85AC_SEARCH_LIBS([dlopen], [dl])
86#------------------------------------------------------------------------------
87
88# Checks for header files.
89AC_CHECK_HEADERS([grp.h syslog.h sys/param.h])
90AC_CHECK_DECL(key_setnet,
91	AC_DEFINE(HAVE_DECL_KEY_SETNET,1,
92	     [Define to 1 if your headers define the key_setnet() function.]),
93	[],[
94#include <rpc/rpc.h>
95#include <rpc/key_prot.h>
96])
97
98# Checks for typedefs, structures, and compiler characteristics.
99AC_TYPE_SIGNAL
100
101# Check for system library functions
102# Required system libraries have been searched for and are listed in $LIBS
103AC_FUNC_FORK
104AC_CHECK_FUNCS([daemon sigaction openlog asprintf setproctitle setusercontext \
105                mkstemp getifaddrs getspnam arc4random])
106
107XDM_CFLAGS="$XDM_CFLAGS"
108GREETER_CFLAGS="$GREETER_CFLAGS"
109CHOOSER_CFLAGS="$CHOOSER_CFLAGS"
110
111# Find needed libraries for TCP sockets (pre-pended in $LIBS)
112XTRANS_CONNECTION_FLAGS
113
114# Sets $SECURE_RPC to "yes" or "no" using libraries found above from $LIBS
115XTRANS_SECURE_RPC_FLAGS
116AM_CONDITIONAL(HAS_SECURE_RPC, test x$SECURE_RPC = xyes)
117
118# Check for pluggable authentication modules (PAM) support
119AC_ARG_WITH(pam, AS_HELP_STRING([--with-pam],
120	[Use PAM for authentication (default is autodetected)]),
121	[USE_PAM=$withval], [USE_PAM=auto])
122if test "x$USE_PAM" != "xno" ; then
123    AC_SEARCH_LIBS([pam_open_session], [pam],
124	[AC_CHECK_FUNC([pam_open_session],
125	    [AC_DEFINE(USE_PAM,1,[Use PAM for authentication])]
126	)],
127	[AS_IF([test "x$USE_PAM" = "xyes"],
128	    [AC_MSG_ERROR([PAM support requested, but pam_open_session not found.])]
129	)]
130    )
131fi
132
133# Check for Security-Enhanced Linux (SELinux) support
134AC_ARG_WITH(selinux, AS_HELP_STRING([--with-selinux],
135	[Add support for SELinux (default is no support)]),
136	[USE_SELINUX=$withval], [USE_SELINUX=no])
137if test "x$USE_SELINUX" != "xno" ; then
138    AC_SEARCH_LIBS(is_selinux_enabled, [selinux],
139	[AC_CHECK_FUNC([is_selinux_enabled],
140	    [AC_DEFINE(USE_SELINUX,1,[Use Security-Enhanced Linux (SELinux) support])]
141	)],
142	[AS_IF([test "x$USE_SELINUX" = "xyes"],
143	    [AC_MSG_ERROR([SELinux support requested, but is_selinux_enabled not found.])]
144	)]
145    )
146fi
147
148# Check whether to install systemd unit files, as suggested in daemon(7).
149AC_ARG_WITH([systemdsystemunitdir], AS_HELP_STRING([--with-systemdsystemunitdir=DIR],
150	[Directory for systemd service files (default from the System and Service Manager)]),,
151	[with_systemdsystemunitdir=auto])
152AS_IF([test "x$with_systemdsystemunitdir" = "xyes" -o "x$with_systemdsystemunitdir" = "xauto"], [
153    def_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)
154
155    AS_IF([test "x$def_systemdsystemunitdir" = "x"], [
156	AS_IF([test "x$with_systemdsystemunitdir" = "xyes"], [
157	    AC_MSG_ERROR([systemd support requested but pkg-config unable to query systemd package])
158	])
159	with_systemdsystemunitdir=no
160    ], [
161	with_systemdsystemunitdir=$def_systemdsystemunitdir
162    ])
163])
164AS_IF([test "x$with_systemdsystemunitdir" != "xno"], [
165	AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])
166])
167AM_CONDITIONAL(HAVE_SYSTEMD, [test "x$with_systemdsystemunitdir" != "xno"])
168
169# FIXME: Find better test for which OS'es use su -m  - for now, just try to
170# mirror the Imakefile setting of:
171# if  defined(OpenBSDArchitecture) || defined(NetBSDArchitecture) || defined(FreeBSDArchitecture) || defined(DarwinArchitecture)
172
173
174case $host_os in
175    linux*|gnu*|*-gnu)
176	SU="su"
177        ;;
178    darwin*)
179	SU="su -m"
180        ;;
181    *bsd*|dragonfly*)
182	SU="su -m"
183        ;;
184    solaris*|sysv4*)
185	SU="su"
186	;;
187    *)
188	SU="su"
189        ;;
190esac
191AC_SUBST(SU)
192
193# Define a configure option to locate a special file (/dev/random or /dev/urandom)
194# that serves as a random or a pseudorandom number generator
195AC_ARG_WITH(random-device, AS_HELP_STRING([--with-random-device\[=<pathname>\]],
196	[Use <pathname> as a source of randomness (default is auto-detected)]),
197	[USE_DEVICE="$withval"], [USE_DEVICE="auto"])
198if test x$USE_DEVICE != xno ; then
199    if test x$USE_DEVICE = xyes -o x$USE_DEVICE = xauto ; then
200	AC_CHECK_FILE([/dev/urandom], [DEV_RANDOM=/dev/urandom],
201	    [AC_CHECK_FILE([/dev/random], [DEV_RANDOM=/dev/random],
202		[AS_IF([test "x$USE_DEVICE" = "xyes"],
203		    [AC_MSG_ERROR([random device support requested, but no random device was found.])]
204		)]
205	    )]
206	)
207    else
208	# assume the user input is a valid path to a random number generator
209	DEV_RANDOM=$USE_DEVICE
210    fi
211    if test x$DEV_RANDOM != x ; then
212	AC_DEFINE_UNQUOTED(DEV_RANDOM,"$DEV_RANDOM", [Define to device that provides random data source])
213    fi
214fi
215AC_SUBST(DEV_RANDOM)
216
217# FIXME: find out how to check for these things. Note that Kerberos was
218# turned off everywhere but on OpenBSD.
219AM_CONDITIONAL(HAS_KERBEROS_FIVE, false)
220
221
222# Figure out where everything goes in the filesystem
223
224AC_ARG_WITH(xdmlibdir,
225	AS_HELP_STRING([--with-xdmlibdir=<pathname>],
226	  [specify directory for xdm scripts and modules (default=${libdir}/X11/xdm)]),
227	[XDMLIBDIR="$withval"], [XDMLIBDIR="${libdir}/X11/xdm"])
228AC_SUBST(XDMLIBDIR)
229
230AC_ARG_WITH(xdmconfigdir,
231	AS_HELP_STRING([--with-xdmconfigdir=<pathname>],
232	  [specify directory for xdm config files (default is same as xdmlibdir)]),
233	[XDMCONFIGDIR="$withval"], [XDMCONFIGDIR="${XDMLIBDIR}"])
234AC_SUBST(XDMCONFIGDIR)
235
236AC_ARG_WITH(xdmscriptdir,
237	AS_HELP_STRING([--with-xdmscriptdir=<pathname>],
238	  [specify directory for xdm scripts (default is same as xdmlibdir)]),
239	[XDMSCRIPTDIR="$withval"], [XDMSCRIPTDIR="${XDMLIBDIR}"])
240AC_SUBST(XDMSCRIPTDIR)
241
242AC_ARG_WITH(logdir,
243	AS_HELP_STRING([--with-logdir=<pathname>],
244	  [specify directory for xdm log files (default=/var/log)]),
245	[XDMLOGDIR="$withval"], [XDMLOGDIR="/var/log"])
246AC_SUBST(XDMLOGDIR)
247
248AC_ARG_WITH(piddir,
249	AS_HELP_STRING([--with-piddir=<pathname>],
250	  [specify directory for xdm pid files (default=/var/run)]),
251	[XDMPIDDIR="$withval"], [XDMPIDDIR="/var/run"])
252AC_SUBST(XDMPIDDIR)
253
254AC_ARG_WITH(default-vt,
255	AS_HELP_STRING([--with-default-vt=<vtname>],
256	  [specify default vt to start xdm on (default=none)]),
257	[DEFAULTVT="$withval"], [[DEFAULTVT=""]])
258AC_SUBST(DEFAULTVT)
259
260AC_ARG_WITH(config-type,
261	AS_HELP_STRING([--with-config-type={ws|fs}],
262	 [default config file type to use - workstation (ws) or fileserver (fs) (default=ws)]),
263	[SERVERSTYPE="$withval"], [SERVERSTYPE="ws"])
264AC_SUBST(SERVERSTYPE)
265
266# Ideally we'd just pull out UTMP_FILE & WTMP_FILE from <utmp.h>
267# but that's not easy to do in autoconf
268AC_ARG_WITH(utmp_file,
269	AS_HELP_STRING([--with-utmp-file=<pathname>],
270	 [specify file to pass to sessreg -u for current logins]),
271	[UTMP_FILE="$withval"])
272if test "x$UTMP_FILE" = "xyes" ; then
273	AC_MSG_ERROR([path was not specified to --with-utmp-file])
274fi
275if test "x$UTMP_FILE" = "x" ; then
276	for UTMP_FILE in /var/adm/utmpx /var/run/utmp /var/log/utmp /var/adm/utmp /usr/adm/utmp /etc/utmp ; do
277		AC_CHECK_FILE([$UTMP_FILE], [break], [UTMP_FILE=""])
278	done
279	if test "x$UTMP_FILE" = "x" ; then
280		UTMP_FILE="/var/run/utmp"
281	fi
282fi
283AC_MSG_CHECKING([for path to file listing current logins for sessreg])
284AC_MSG_RESULT([$UTMP_FILE])
285AC_SUBST(UTMP_FILE)
286
287AC_ARG_WITH(wtmp_file,
288	AS_HELP_STRING([--with-wtmp-file=<pathname>],
289	 [specify file to pass to sessreg -w for login history]),
290	[WTMP_FILE="$withval"])
291if test "x$WTMP_FILE" = "xyes" ; then
292	AC_MSG_ERROR([path was not specified to --with-wtmp-file])
293fi
294if test "x$WTMP_FILE" = "x" ; then
295	for WTMP_FILE in /var/adm/wtmpx /var/log/wtmp /var/adm/wtmp /usr/adm/wtmp /etc/wtmp ; do
296		AC_CHECK_FILE([$WTMP_FILE], [break], [WTMP_FILE=""])
297	done
298	if test "x$WTMP_FILE" = "x" ; then
299		WTMP_FILE="/var/log/wtmp"
300	fi
301fi
302AC_MSG_CHECKING([for path to file listing login history for sessreg])
303AC_MSG_RESULT([$WTMP_FILE])
304AC_SUBST(WTMP_FILE)
305
306case $host_os in
307    *sco*|*solaris*)
308		SHELL_CMD="/bin/ksh"	;;
309    *)		SHELL_CMD="/bin/sh"	;;
310esac
311AC_SUBST(SHELL_CMD)
312
313# Checks for pkg-config packages
314
315PKG_CHECK_MODULES(XDM, xmu x11 xau)
316
317PKG_CHECK_EXISTS(xinerama, [
318	AC_DEFINE([USE_XINERAMA], 1,
319		[Define to 1 to use XINERAMA in greeter & chooser])
320	PKG_CHECK_MODULES(XINERAMA, xinerama)
321	CHOOSER_CFLAGS="$CHOOSER_CFLAGS $XINERAMA_CFLAGS"
322	CHOOSER_LIBS="$CHOOSER_LIBS $XINERAMA_LIBS"
323	GREETER_CFLAGS="$GREETER_CFLAGS $XINERAMA_CFLAGS"
324	GREETER_LIBS="$GREETER_LIBS $XINERAMA_LIBS"
325])
326
327# Xft text drawing for the greeter screen
328AC_ARG_WITH(xft,
329	AS_HELP_STRING([--with-xft],
330			[Use Xft to draw text (default is YES if installed)]),
331	[USE_XFT="$withval"],
332	PKG_CHECK_EXISTS(xft, [USE_XFT="yes"], [USE_XFT="no"]))
333
334if test "x$USE_XFT" = "xyes" ; then
335	PKG_CHECK_MODULES(XFT, xft)
336	GREETER_CFLAGS="$GREETER_CFLAGS $XFT_CFLAGS"
337	GREETER_LIBS="$GREETER_LIBS $XFT_LIBS"
338	AC_DEFINE([USE_XFT], 1,
339	    [Define to 1 to use Xft for text on greeter screen])
340fi
341
342# XPM logos for the greeter screen
343AC_ARG_ENABLE(xpm-logos,
344	AS_HELP_STRING([--enable-xpm-logos],
345			[Display xpm logos in greeter (default is YES)]),
346	[USE_XPM="$enableval"],
347	PKG_CHECK_EXISTS(xpm, [USE_XPM="yes"], [USE_XPM="no"]))
348if test "x$USE_XPM" = "xyes" ; then
349	PKG_CHECK_MODULES(XPM, xpm)
350	GREETER_CFLAGS="$GREETER_CFLAGS $XPM_CFLAGS"
351	GREETER_LIBS="$GREETER_LIBS $XPM_LIBS"
352	AC_DEFINE([XPM], 1,
353		[Define to 1 to display XPM logos on greeter screen])
354fi
355AM_CONDITIONAL(USE_XPM, test "x$USE_XPM" = "xyes")
356
357AC_ARG_WITH(color-pixmap,
358	AS_HELP_STRING([--with-color-pixmap=<filename>],
359		[specify xpm file to use as color logo (default=xorg.xpm)]),
360	[XDM_PIXMAP="$withval"], [XDM_PIXMAP="xorg.xpm"])
361AC_ARG_WITH(bw-pixmap,
362	AS_HELP_STRING([--with-bw-pixmap=<filename>],
363      [specify xpm file to use as black-and-white logo (default=xorg-bw.xpm)]),
364	[XDM_BWPIXMAP="$withval"], [XDM_BWPIXMAP="xorg-bw.xpm"])
365AC_ARG_WITH(pixmapdir,
366	AS_HELP_STRING([--with-pixmapdir=<pathname>],
367	[specify directory for xpm files (default=xdmlibdir/pixmaps)]),
368	[XDM_PIXMAPDIR="$withval"],
369	[XDM_PIXMAPDIR='${XDMLIBDIR}/pixmaps'])
370
371AC_SUBST(XDM_PIXMAP)
372AC_SUBST(XDM_BWPIXMAP)
373AC_SUBST(XDM_PIXMAPDIR)
374
375# Packages used by multiple programs
376
377PKG_CHECK_MODULES(XDM_TOOLKIT, xaw7)
378PKG_CHECK_MODULES(DMCP, xdmcp)
379PKG_CHECK_MODULES(XLIB, x11)
380PKG_CHECK_MODULES(AUTH, xau)
381
382#
383# Greeter
384#
385
386PKG_CHECK_MODULES(XDMGREET, xt x11 xext)
387
388GREETERLIB="${XDMLIBDIR}/libXdmGreet.so"
389AX_DEFINE_DIR(DEF_GREETER_LIB, GREETERLIB, [Location of Xdm Greeter library])
390
391XDMGREET_CFLAGS="$XDMGREET_CFLAGS $XDM_TOOLKIT_CFLAGS $DMCP_CFLAGS $XLIB_CFLAGS $GREETER_CFLAGS $AUTH_CFLAGS"
392XDMGREET_LIBS="$XDMGREET_LIBS $XDM_TOOLKIT_LIBS $DMCP_LIBS $GREETER_LIBS"
393
394#
395#  XDM
396#
397
398XDM_CFLAGS="$XDM_CFLAGS $DMCP_CFLAGS $XLIB_CFLAGS $AUTH_CFLAGS"
399XDM_LIBS="$XDM_LIBS $DMCP_LIBS"
400
401AC_CHECK_LIB(Xdmcp, XdmcpWrap, [xdmauth="yes"], [xdmauth="no"], [$DMCP_LIBS])
402
403AC_ARG_ENABLE(xdm-auth,
404	AS_HELP_STRING([--enable-xdm-auth],
405       [Support XDM-AUTHENTICATION-1 and XDM-AUTHORIZATION-1 (default: auto)]),
406	[xdmauth_enable="$enableval"], [xdmauth_enable="auto"])
407if test "x$xdmauth_enable" = "xyes" -a "x$xdmauth" = "xno" ; then
408	AC_MSG_ERROR([XDM-AUTH support requested, but XdmcpWrap not found in libXdmcp.])
409fi
410
411AM_CONDITIONAL(HAS_XDM_AUTH, test x$xdmauth = xyes -a x$xdmauth_enable != xno)
412
413AC_SUBST(XDM_CFLAGS)
414AC_SUBST(XDM_LIBS)
415
416#
417# xdmshell
418#
419
420AC_ARG_ENABLE(xdmshell,
421	AS_HELP_STRING([--enable-xdmshell],
422         [Install xdmshell (default: disabled)]),
423	[INSTALL_XDMSHELL="$enableval"], [INSTALL_XDMSHELL="no"])
424AM_CONDITIONAL(INSTALL_XDMSHELL, test x$INSTALL_XDMSHELL = xyes)
425
426PKG_CHECK_MODULES(XT, xt)
427XDMSHELL_CFLAGS="$XDM_CFLAGS $XDM_TOOLKIT_CFLAGS $AUTH_CFLAGS $DMCP_CFLAGS $XLIB_CFLAGS $XT_CFLAGS"
428XDMSHELL_LIBS="$XDM_LIBS $XDM_TOOLKIT_LIBS $DMCP_LIBS"
429
430AC_SUBST(XDMSHELL_CFLAGS)
431AC_SUBST(XDMSHELL_LIBS)
432
433#
434# Chooser
435#
436
437CHOOSER_CFLAGS="$CHOOSER_CFLAGS $XDM_TOOLKIT_CFLAGS $XLIB_CFLAGS $DMCP_CFLAGS $AUTH_CFLAGS"
438CHOOSER_LIBS="$CHOOSER_LIBS $XDM_TOOLKIT_LIBS $DMCP_LIBS"
439
440AC_SUBST(CHOOSER_CFLAGS)
441AC_SUBST(CHOOSER_LIBS)
442
443# Defaults for X session - should probably be configure --with-* flags
444# Currently just trying to mirror what defaults were set in Imake
445
446# -DDEF_SERVER_LINE=":0 local $(DEF_SERVER) :0"
447if test -z "$DEF_SERVER" ; then
448	DEF_SERVER="${bindir}/X"
449fi
450if test -z "$DEF_SERVER_LINE" ; then
451	DEF_SERVER_LINE=":0 local ${DEF_SERVER} :0"
452fi
453AX_DEFINE_DIR(DEF_SERVER_LINE, DEF_SERVER_LINE,
454	[Define to default Xserver file entry for local X server])
455
456# -DXRDB_PROGRAM="$(BINDIR)/xrdb"
457AC_ARG_WITH(xrdb, AS_HELP_STRING([--with-xrdb=path],
458			[Use path for xrdb (default: bindir/xrdb)]),
459	    [XRDB=$withval], [XRDB=${bindir}/xrdb])
460AX_DEFINE_DIR(XRDB_PROGRAM, XRDB,
461	[Define to pathname for xrdb program])
462
463# -DDEF_SESSION="$(BINDIR)/xterm -ls"
464AC_ARG_WITH(default-session, AS_HELP_STRING([--with-default-session=command],
465		[Use command for default session (default: bindir/xterm -ls)]),
466	    [DEF_SESSION=$withval], [DEF_SESSION="${bindir}/xterm -ls"])
467AX_DEFINE_DIR(DEF_SESSION, DEF_SESSION,
468	[Define to default command to start X session])
469
470# -DDEF_USER_PATH="$(DEF_USER_PATH)"
471# Default values taken from DefaultUserPath setting in the
472# old Imake *.cf files for each platform
473if test -z "$DEF_USER_PATH" ; then
474	case $host_os in
475	    dragonfly*)
476		DEF_USER_PATH="/bin:/usr/bin:/sbin:/usr/sbin:${bindir}:/usr/local/bin"
477		;;
478	    freebsd*)
479		DEF_USER_PATH="/bin:/usr/bin:/sbin:/usr/sbin:${bindir}:/usr/gnu/bin:/usr/local/bin"
480		;;
481	    netbsd*)
482		DEF_USER_PATH="/bin:/usr/bin:/usr/pkg/bin:/usr/local/bin:${bindir}"
483		;;
484	    openbsd*|bsdi*)
485		DEF_USER_PATH="/bin:/usr/bin:/usr/local/bin:${bindir}"
486		;;
487	    solaris*)
488		DEF_USER_PATH="/usr/bin:${bindir}"
489		;;
490	    *)
491		DEF_USER_PATH="/bin:/usr/bin:${bindir}:/usr/ucb"
492		;;
493	esac
494fi
495AX_DEFINE_DIR(DEF_USER_PATH, DEF_USER_PATH,
496	[Define to default PATH environment variable for user sessions])
497
498# -DDEF_SYSTEM_PATH="$(DEF_SYSTEM_PATH)"
499# Default values taken from DefaultSystemPath setting in the
500# old Imake *.cf files for each platform
501if test -z "$DEF_SYSTEM_PATH" ; then
502	case $host_os in
503	    freebsd*|dragonfly*)
504		DEF_SYSTEM_PATH="/bin:/usr/bin:/sbin:/usr/sbin:${bindir}"
505		;;
506	    netbsd*|openbsd*|bsdi*)
507		DEF_SYSTEM_PATH="/sbin:/usr/sbin:/bin:/usr/bin:${bindir}"
508		;;
509	    solaris*)
510		DEF_SYSTEM_PATH="/sbin:/usr/sbin:/usr/bin:${bindir}"
511		;;
512	    *)
513		DEF_SYSTEM_PATH="/etc:/bin:/usr/bin:${bindir}:/usr/ucb"
514		;;
515	esac
516fi
517AX_DEFINE_DIR(DEF_SYSTEM_PATH, DEF_SYSTEM_PATH,
518	[Define to default PATH environment variable for system commands])
519
520# -DDEF_SYSTEM_SHELL="$(BOURNE_SHELL)"
521if test -z "$BOURNE_SHELL" ; then
522	BOURNE_SHELL=/bin/sh
523fi
524AX_DEFINE_DIR(DEF_SYSTEM_SHELL, BOURNE_SHELL,
525	[Define to default shell])
526
527# -DDEF_FAILSAFE_CLIENT="$(BINDIR)/xterm"
528
529AX_DEFINE_DIR(DEF_FAILSAFE_CLIENT, bindir/xterm,
530	[Define to default command to start failsafe X session])
531
532# -DDEF_XDM_CONFIG="$(XDMDIR)/xdm-config"
533
534AX_DEFINE_DIR(DEF_XDM_CONFIG, XDMCONFIGDIR/xdm-config,
535	[Define to pathname of default xdm-config file])
536
537# -DDEF_CHOOSER="$(CHOOSERPATH)"
538
539AX_DEFINE_DIR(DEF_CHOOSER, XDMLIBDIR/chooser,
540	[Define to pathname of where chooser binary is installed])
541
542# -DDEF_AUTH_DIR="$(XDMDIR)"
543
544AC_ARG_WITH(authdir,
545	AS_HELP_STRING([--with-authdir=<pathname>],
546	  [specify directory for X auth files (default=/var/lib/xdm)]),
547	[XDMXAUTHDIR="$withval"], [XDMXAUTHDIR="/var/lib/xdm"])
548AC_SUBST(XDMXAUTHDIR)
549
550AX_DEFINE_DIR(DEF_AUTH_DIR, XDMXAUTHDIR,
551	[Define to pathname where authentication cookie files should be stored])
552
553# -DDEF_GREETER_LIB="$(XDMDIR)/libXdmGreet.so"
554
555AX_DEFINE_DIR(DEF_GREETER_LIB, XDMLIBDIR/libXdmGreet.so,
556	[Define to pathname where greeter shared object is installed (if used)])
557
558PKG_CHECK_MODULES(APPDEFS, xt)
559xt_appdefaultdir=`$PKG_CONFIG --variable=appdefaultdir xt`
560AC_ARG_WITH(appdefaultdir,
561	AS_HELP_STRING([--with-appdefaultdir=<pathname>],
562	  [specify directory for app-defaults files (default is autodetected)]),
563	[appdefaultdir="$withval"], [appdefaultdir="${xt_appdefaultdir}"])
564AC_SUBST(appdefaultdir)
565
566AC_SUBST(MKTEMP_COMMAND)
567
568AC_CONFIG_FILES([Makefile
569		app-defaults/Makefile
570		chooser/Makefile
571		config/Makefile
572		greeter/Makefile
573		include/Makefile
574		man/Makefile
575		xdm/Makefile
576		xdmshell/Makefile])
577AC_OUTPUT
578