1
dnl Process this file with autoconf to produce a configure script.
3
AC_INIT([wdm],[0.0],[voins@voins.program.ru])
4
AC_CONFIG_SRCDIR(install-sh)
5
AC_CONFIG_HEADERS(include/config.h)
11
AC_ARG_VAR(XRDB_PATH, [Path to xrdb program from X])
12
AC_PATH_PROG(XRDB_PATH, xrdb)
13
AC_DEFINE_UNQUOTED(XRDB_PROGRAM, "$XRDB_PATH", [Value is a path for xrdb program])
17
AC_ARG_VAR(XCONSOLE, [Path to xconsole program])
18
AC_PATH_PROG(XCONSOLE, xconsole)
22
AC_ARG_VAR(SHUTDOWN, [Path to shutdown program])
23
AC_PATH_PROG(SHUTDOWN,shutdown,,$PATH:/sbin:/usr/sbin)
27
AC_ARG_VAR(FAILSAFE_PATH, [Path to program, that is used as failsafe client])
28
AC_PATH_PROG(FAILSAFE_PATH, xterm)
29
AC_DEFINE_UNQUOTED(DEF_FAILSAFE_CLIENT, "$FAILSAFE_PATH", [Value is a path for program used as failsafe client])
30
AC_DEFINE_UNQUOTED(DEF_SESSION, "$FAILSAFE_PATH -ls", [Value is a command for default session])
31
AC_SUBST(FAILSAFE_PATH)
34
AC_ARG_VAR(DEF_SERVER, [Path to default X server])
35
AC_PATH_PROG(DEF_SERVER, X)
36
AC_DEFINE_UNQUOTED(DEF_SERVER_LINE, ":0 local $DEF_SERVER :0", [Value is default command to start X server])
40
AC_ARG_VAR(SYSTEM_SHELL, [Path to default shell])
41
AC_PATH_PROG(SYSTEM_SHELL, sh)
42
AC_PATH_PROG(SHELL_BASH,bash,,$PATH:/usr/local/bin)
43
if test "x$SYSTEM_SHELL" = "x"; then
44
AC_MSG_ERROR(the program sh cannot be found)
46
dnl hope this is correct:
47
if test "x$SHELL_BASH" = "x"; then
48
SHELL_LOGIN="$SYSTEM_SHELL -"
50
SHELL_LOGIN="$SHELL_BASH -login"
53
AC_SUBST(SYSTEM_SHELL)
58
AC_CHECK_HEADERS(fcntl.h sys/param.h syslog.h libintl.h)
66
dnl if there is mkstemp use it instead of mktemp
67
AC_CHECK_FUNC(mkstemp,
68
[AC_DEFINE(HAVE_MKSTEMP, 1,
69
[Define if you have mkstemp function to use it instead of mktemp.])])
71
dnl Password processing options
73
AC_HELP_STRING([--disable-pam], [don't use PAM for authentication]))
76
AC_HELP_STRING([--disable-shadow], [don't use shadow for authentication]))
79
AC_HELP_STRING([--with-pamdir],[specify where pam directory is]),
81
[PAMDIR="/etc/pam.d"])
85
if test "$enable_pam" != "no" -a "$enable_shadow" != "yes" \
86
|| test "$enable_pam" = "yes" -a "$enable_shadow" = "yes"; then
88
AC_CHECK_LIB(pam, main,
91
PASSWDLIB="-lpam -ldl"
92
AC_DEFINE_UNQUOTED(HAVE_PAM_LIB, 1, [Define if libpam is installed])
93
AC_DEFINE(USE_PAM, 1, [Define if you want wdm to use pam for auth])],
98
if test -z "$PASSWDLIB" \
99
&& ( test "$enable_shadow" != "no" -a "$enable_pam" != "yes" \
100
|| test "$enable_pam" = "yes" -a "$enable_shadow" = "yes" ); then
102
AC_CHECK_LIB(shadow, main,[PASSWDLIB="-lshadow"])
103
AC_CHECK_HEADERS(shadow.h)
109
AC_MSG_CHECKING(for SELinux support)
110
AC_ARG_ENABLE(selinux,
111
AC_HELP_STRING([--enable-selinux], [enable SELinux support]),
114
AC_CHECK_LIB(selinux, is_selinux_enabled, [SELINUX_LIBS="-lselinux"
115
AC_DEFINE_UNQUOTED(HAVE_SELINUX_LIB, 1, [Define if libselinux is installed])
116
AC_DEFINE(WITH_SELINUX, 1, [Define if you want wdm to be compiled with SELinux support])
117
SELINUX_CFLAGS="-DWITH_SELINUX -I/usr/include/selinux"
120
AC_MSG_WARN([libselinux not found, compiling without SELinux support])
126
AC_SUBST(SELINUX_LIBS)
127
AC_SUBST(SELINUX_CFLAGS)
130
AC_CHECK_LIB(util, main) dnl for FreeBSD
131
AC_CHECK_LIB(crypt, main) dnl for BSD and RHL
132
AC_CHECK_LIB(ucb, killpg) dnl for Solaris2.4
135
AC_HELP_STRING([--enable-debug],[enable debugging]),
137
CFLAGS="$CFLAGS -g -DDEBUG"
143
XLIBS="$X_PRE_LIBS -lXext -lX11 -lm $X_EXTRA_LIBS"
145
AC_ARG_ENABLE(xinerama,
146
AC_HELP_STRING([--disable-xinerama],[explicit disable use of libXinerama]))
148
if test "$enable_xinerama" = "yes" -o -z "$enable_xinerama"; then
149
AC_CHECK_LIB(Xinerama, XineramaIsActive,
151
XLIBS="$XLIBS -lXinerama"
152
AC_DEFINE(HAVE_XINERAMA, 1, Define if Xinerama library is installed)
153
],,[$XLDFLAGS $XLIBS])
157
AC_CHECK_PROG(GETWINGSFLAGS,get-wings-flags,get-wings-flags,,[$PATH])
158
if test -z "$GETWINGSFLAGS"; then
159
AC_MSG_ERROR(['get-wings-flags' command was not found in \$PATH, please upgrade your WindowMaker.])
162
WCFLAGS=`get-wings-flags --cflags`
163
WLDFLAGS=`get-wings-flags --ldflags`
164
WLIBS=`get-wings-flags --libs`
174
dnl ===============================================
176
dnl handle this here so we can use it
177
dnl ===============================================
179
dnl First, check for prefix:
180
AC_MSG_CHECKING(for prefix)
181
if test "$prefix" = "NONE"; then
184
AC_MSG_RESULT($prefix)
186
AC_MSG_CHECKING(for exec_prefix)
187
if test "$exec_prefix" = "NONE"; then
190
AC_MSG_RESULT($exec_prefix)
192
dnl ===============================================
193
dnl specify some WITH options for these settings
194
dnl ===============================================
196
AC_MSG_CHECKING(for logdir)
198
AC_HELP_STRING([--with-logdir=PATH],[specify directory where logfile goes]))
199
if test "x$with_logdir" != "x"; then
205
AC_MSG_RESULT($LOGDIR)
207
AC_MSG_CHECKING(for runlockdir)
208
AC_ARG_WITH(runlockdir,
209
AC_HELP_STRING([--with-runlockdir=PATH],[specify directory where run lock goes]))
210
if test "x$with_runlockdir" != "x"; then
211
RUNDIR=$with_runlockdir
216
AC_MSG_RESULT($RUNDIR)
218
AC_MSG_CHECKING(for defuserpath)
219
AC_ARG_WITH(defuserpath,
220
AC_HELP_STRING([--with-defuserpath=PATHlist],[specify list of paths for user sessions]))
221
if test "x$with_defuserpath" != "x"; then
222
AC_DEFINE_UNQUOTED(DEF_USER_PATH,"$with_defuserpath", "Value is a list of paths for user sessions")
223
AC_MSG_RESULT($with_defuserpath)
225
AC_DEFINE(DEF_USER_PATH,"/usr/local/bin:/bin:/usr/bin")
226
AC_MSG_RESULT([using default: /usr/local/bin:/bin:/usr/bin])
229
AC_MSG_CHECKING(for defsystempath)
230
AC_ARG_WITH(defsystempath,
231
AC_HELP_STRING([--with-defsystempath=PATHlist],[specify list of paths for superuser sessions]))
232
if test "x$with_defsystempath" != "x"; then
233
AC_DEFINE_UNQUOTED(DEF_SYSTEM_PATH,"$with_defsystempath", "Value is a list of paths for superuser sessions")
234
AC_MSG_RESULT($with_defsystempath)
236
AC_DEFINE(DEF_SYSTEM_PATH,"/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/bin")
237
AC_MSG_RESULT([using default: /sbin:/usr/sbin:/bin:/usr/bin:/usr/local/bin])
240
dnl user must use --with-wdmdir= rather than --sysconfigdir= to put it
241
dnl somewhere other than $prefix/etc
243
AC_MSG_CHECKING(if wdmdir has been specified)
245
AC_HELP_STRING([--with-wdmdir=PATH],[specify path for wdm directory]))
246
if test "x$with_wdmdir" != "x"; then
248
AC_MSG_RESULT([yes, using $DMDIR])
250
DMDIR="$prefix/etc/wdm"
251
AC_MSG_RESULT([no, using $DMDIR])
253
AC_DEFINE_UNQUOTED(WDMDIR, "$DMDIR", [Value is a path to wdm directory])
254
AC_DEFINE_UNQUOTED(DEF_XDM_CONFIG, "$DMDIR/wdm-config", [Value is a path to default wdm config file])
255
AC_DEFINE_UNQUOTED(DEF_WDMLOGIN_CONFIG, "$DMDIR/wdmLogin-config", [Value is a path to default wdmLogin config file])
256
AC_DEFINE_UNQUOTED(DEF_CHOOSER, "$DMDIR/chooser", [Value is a path to default chooser program])
257
AC_DEFINE_UNQUOTED(DEF_AUTH_DIR, "$DMDIR/authdir", [Value is a path to default authdir])
261
dnl Let the user specify a location for pixmap files.
263
AC_MSG_CHECKING(if gfxdir has been specified)
265
AC_HELP_STRING([--with-gfxdir=PATH],[specify path for pixmaps directory]))
266
if test "x$with_gfxdir" != "x"; then
267
GFXDIR="$with_gfxdir"
268
AC_MSG_RESULT([yes, using $GFXDIR])
270
GFXDIR="$prefix/share/pixmaps/wdm"
271
AC_MSG_RESULT([no, using $GFXDIR])
273
AC_DEFINE_UNQUOTED(WGFXDIR, "$GFXDIR", [Value is a path to the pixmaps directory])
277
AC_MSG_CHECKING(if Logo pixmap specified)
279
AC_HELP_STRING([--with-Logo=PIXMAP_FILENAME],[specify file in wdm/pixmaps for Logo]))
280
if test "x$with_Logo" != "x"; then
281
PIXMAPFILE="$with_Logo"
283
AC_MSG_RESULT($with_Logo)
285
PIXMAPFILE="Eagle.xpm"
290
AC_SUBST(PIXMAPCOMMENT)
294
AC_ARG_VAR(WMAKER_PATH, [Path to wmaker program])
295
AC_PATH_PROG(WMAKER_PATH,wmaker,,$PATH:/usr/local/bin)
296
if test "x$WMAKER_PATH" != "x"; then
301
AC_SUBST(WMAKER_PATH)
304
AC_ARG_VAR(AFTERSTEP_PATH, [Path to afterstep program])
305
AC_PATH_PROG(AFTERSTEP_PATH,afterstep,,$PATH:/usr/local/bin)
306
if test "x$AFTERSTEP_PATH" != "x"; then
307
WMLIST=$WMLIST:AfterStep
309
AFTERSTEP_PATH=afterstep
311
AC_SUBST(AFTERSTEP_PATH)
314
AC_ARG_VAR(BLACKBOX_PATH, [Path to blackbox program])
315
AC_PATH_PROG(BLACKBOX_PATH,blackbox,,$PATH:/usr/local/bin)
316
if test "x$BLACKBOX_PATH" != "x"; then
317
WMLIST=$WMLIST:BlackBox
319
BLACKBOX_PATH=blackbox
321
AC_SUBST(BLACKBOX_PATH)
324
AC_ARG_VAR(ICEWM_PATH, [Path to icewm program])
325
AC_PATH_PROG(ICEWM_PATH,icewm,,$PATH:/usr/local/bin)
326
if test "x$ICEWM_PATH" != "x"; then
334
AC_ARG_VAR(XSESSION_PATH, [Path to xsession program])
335
AC_PATH_PROG(XSESSION_PATH,xsession,,$PATH:/usr/local/bin)
336
if test "x$XSESSION_PATH" != "x"; then
337
WMLIST=$WMLIST:Xsession
339
XSESSION_PATH=xsession
341
AC_SUBST(XSESSION_PATH)
344
AC_PATH_PROG(STARTKDE_PATH,startkde,,$PATH:/usr/local/bin)
345
if test "x$STARTKDE_PATH" != "x"; then
348
STARTKDE_PATH=startkde
350
AC_SUBST(STARTKDE_PATH)
354
AC_HELP_STRING([--with-winmgr=NAME_OF_WM], [specify an arbitrary window manager]))
355
if test "x$with_winmgr" != "x"; then
356
WINMGR_NAME=$with_winmgr
357
AC_PATH_PROG(WINMGR_PATH,$WINMGR_NAME,,$PATH:/usr/local/bin)
358
if test "x$WINMGR_PATH" = "x"; then
359
AC_ARG_WITH(winmgr_path,
360
AC_HELP_STRING([--with-winmgr_path=WINMGR_PATH], [specify path to your window manager]))
361
if test "x$with_winmgr_path" != "x"; then
362
WINMGR_PATH=$with_winmgr_path
365
AC_MSG_CHECKING(for winmgr_path)
366
if test "x$WINMGR_PATH" = "x"; then
367
AC_MSG_ERROR([unable to locate $WINMGR_NAME, use --with-winmgr_path])
369
AC_MSG_RESULT($WINMGR_PATH)
370
WMLIST=$WMLIST:$WINMGR_NAME
372
AC_SUBST(WINMGR_PATH)
373
AC_SUBST(WINMGR_NAME)
376
AC_MSG_CHECKING(if window manager list specified)
378
AC_HELP_STRING([--with-wmlist=LIST_OF_WM],[specify list of window managers]))
379
if test "x$with_wmlist" != "x"; then
380
WMLIST="$with_wmlist"
381
AC_MSG_RESULT($with_wmlist)
382
AC_MSG_WARN(make sure Xsession and Xclients support the above list)
384
AC_MSG_RESULT([no, default to $WMLIST])
390
dnl gettext tests (partially copy/paste from WindowMaker's configure.ac)
393
AC_CHECK_FUNC(gettext, [HAVEGETTEXT="yes"],
394
AC_CHECK_LIB(intl, gettext, [INTLIBS="-lintl" HAVEGETTEXT="yes"],
397
AC_CHECK_PROG(XGETTEXT, xgettext, xgettext)
398
AC_CHECK_PROG(MSGFMT, msgfmt, msgfmt)
400
if test "x$XGETTEXT" != "x"; then
401
if $XGETTEXT --help 2>&1 | grep illegal &> /dev/null; then
402
echo "xgettext isn't GNU version"
408
if test "x$MSGFMT" != "x" -a "x$HAVEGETTEXT" != "x"; then
409
AC_DEFINE(I18N, 1, [Define if you want internationalization support])
415
AC_HELP_STRING([--with-nlsdir=PATH],[specify where locale stuff should go]))
417
if test "x$NLSDIR" = "x"; then
418
if test "x$with_nlsdir" != "x"; then
421
NLSDIR=$prefix/lib/locale
425
AC_DEFINE_UNQUOTED(NLSDIR, "$NLSDIR", [where to look for locale files])
430
dnl this is hackaround for libfontconfig bug
431
AC_ARG_WITH(fakehome,
432
AC_HELP_STRING([--with-fakehome=PATH],[path to use as home when no HOME is present. [/var/run/wdm] ]))
434
FAKEHOME=/var/run/wdm
435
if test "x$with_fakehome" != "x"; then
436
FAKEHOME=$with_fakehome
438
AC_DEFINE_UNQUOTED(FAKEHOME, "$FAKEHOME", [what to use as HOME value])
441
AC_ARG_ENABLE(aafont,
442
AC_HELP_STRING([--enable-aafont],[enable support for antialiased fonts.]))
443
if test "$enable_aafont" = "yes"; then
444
AC_DEFINE(USE_AA, 1, [Define if you want support for antialiased fonts])
447
AC_ARG_ENABLE(exitlogin,
448
AC_HELP_STRING([--enable-exitlogin],[enable ExitLogin command in wdmLogin.]))
449
if test "$enable_exitlogin" = "yes"; then
450
AC_DEFINE(WITH_EXITLOGIN, 1, [Define if you want to have ExitLogin])
453
AC_CONFIG_FILES([Makefile])