Initial commit for Tizen
[profile/extras/shadow-utils.git] / configure.in
1 dnl Process this file with autoconf to produce a configure script.
2 AC_INIT
3 AM_INIT_AUTOMAKE(shadow, 4.1.4.3)
4 AC_CONFIG_HEADERS([config.h])
5
6 dnl Some hacks...
7 test "$prefix" = "NONE" && prefix="/usr"
8 test "$prefix" = "/usr" && exec_prefix=""
9
10 AC_GNU_SOURCE
11
12 AM_DISABLE_SHARED
13 AM_ENABLE_STATIC
14
15 AM_MAINTAINER_MODE
16
17 dnl Checks for programs.
18 AC_PROG_CC
19 AC_ISC_POSIX
20 AC_PROG_LN_S
21 AC_PROG_YACC
22 AM_C_PROTOTYPES
23 AM_PROG_LIBTOOL
24
25 dnl Checks for libraries.
26
27 dnl Checks for header files.
28 AC_HEADER_DIRENT
29 AC_HEADER_STDC
30 AC_HEADER_SYS_WAIT
31 AC_HEADER_STDBOOL
32
33 AC_CHECK_HEADERS(errno.h fcntl.h limits.h unistd.h sys/time.h utmp.h \
34         utmpx.h termios.h termio.h sgtty.h sys/ioctl.h syslog.h paths.h \
35         utime.h ulimit.h sys/resource.h gshadow.h lastlog.h \
36         locale.h rpc/key_prot.h netdb.h)
37
38 dnl shadow now uses the libc's shadow implementation
39 AC_CHECK_HEADER([shadow.h],,[AC_MSG_ERROR([You need a libc with shadow.h])])
40
41 AC_CHECK_FUNCS(l64a fchmod fchown fsync futimes getgroups gethostname getspnam \
42         gettimeofday getusershell getutent initgroups lchown lckpwdf lstat \
43         lutimes memcpy memset setgroups sigaction strchr updwtmp updwtmpx innetgr \
44         getpwnam_r getpwuid_r getgrnam_r getgrgid_r getspnam_r getaddrinfo)
45 AC_SYS_LARGEFILE
46
47 dnl Checks for typedefs, structures, and compiler characteristics.
48 AC_C_CONST
49 AC_TYPE_UID_T
50 AC_TYPE_OFF_T
51 AC_TYPE_PID_T
52 AC_TYPE_MODE_T
53 AC_HEADER_STAT
54 AC_CHECK_MEMBERS([struct stat.st_rdev])
55 AC_CHECK_MEMBERS([struct stat.st_atim])
56 AC_CHECK_MEMBERS([struct stat.st_atimensec])
57 AC_CHECK_MEMBERS([struct stat.st_mtim])
58 AC_CHECK_MEMBERS([struct stat.st_mtimensec])
59 AC_HEADER_TIME
60 AC_STRUCT_TM
61
62 AC_CHECK_MEMBERS([struct utmp.ut_type,
63                   struct utmp.ut_id,
64                   struct utmp.ut_name,
65                   struct utmp.ut_user,
66                   struct utmp.ut_host,
67                   struct utmp.ut_syslen,
68                   struct utmp.ut_addr,
69                   struct utmp.ut_addr_v6,
70                   struct utmp.ut_time,
71                   struct utmp.ut_xtime,
72                   struct utmp.ut_tv],,,[[#include <utmp.h>]])
73 dnl There are dependencies:
74 dnl If UTMPX has to be used, the utmp structure shall have a ut_id field.
75 if test "$ac_cv_header_utmpx_h" = "yes" &&
76    test "$ac_cv_member_struct_utmp_ut_id" != "yes"; then
77         AC_MSG_ERROR(Systems with UTMPX and no ut_id field in the utmp structure are not supported)
78 fi
79
80 AC_CHECK_MEMBERS([struct utmpx.ut_name,
81                   struct utmpx.ut_host,
82                   struct utmpx.ut_syslen,
83                   struct utmpx.ut_addr,
84                   struct utmpx.ut_addr_v6,
85                   struct utmpx.ut_time,
86                   struct utmpx.ut_xtime],,,[[#include <utmpx.h>]])
87
88 if test "$ac_cv_header_lastlog_h" = "yes"; then
89         AC_CACHE_CHECK(for ll_host in struct lastlog,
90                 ac_cv_struct_lastlog_ll_host,
91                 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <lastlog.h>],
92                                         [struct lastlog ll; char *cp = ll.ll_host;]
93                                 )],
94                         [ac_cv_struct_lastlog_ll_host=yes],
95                         [ac_cv_struct_lastlog_ll_host=no]
96                 )
97         )
98
99         if test "$ac_cv_struct_lastlog_ll_host" = "yes"; then
100                 AC_DEFINE(HAVE_LL_HOST, 1,
101                         [Define if struct lastlog has ll_host])
102         fi
103 fi
104
105 dnl Checks for library functions.
106 AC_TYPE_GETGROUPS
107 AC_TYPE_SIGNAL
108 AC_FUNC_UTIME_NULL
109 AC_FUNC_STRFTIME
110 AC_REPLACE_FUNCS(mkdir putgrent putpwent putspent rename rmdir)
111 AC_REPLACE_FUNCS(sgetgrent sgetpwent sgetspent)
112 AC_REPLACE_FUNCS(snprintf strcasecmp strdup strerror strstr)
113
114 AC_CHECK_FUNC(setpgrp)
115 AC_FUNC_SETPGRP
116
117 if test "$ac_cv_header_shadow_h" = "yes"; then
118         AC_CACHE_CHECK(for working shadow group support,
119                 ac_cv_libc_shadowgrp,
120                 AC_RUN_IFELSE([AC_LANG_SOURCE([
121                                 #include <shadow.h>
122                                 main()
123                                 {
124                                         struct sgrp *sg = sgetsgent("test:x::");
125                                         /* NYS libc on Red Hat 3.0.3 has broken shadow group support */
126                                         return !sg || !sg->sg_adm || !sg->sg_mem;
127                                 }]
128                         )],
129                         [ac_cv_libc_shadowgrp=yes],
130                         [ac_cv_libc_shadowgrp=no],
131                         [ac_cv_libc_shadowgrp=no]
132                 )
133         )
134
135         if test "$ac_cv_libc_shadowgrp" = "yes"; then
136                 AC_DEFINE(HAVE_SHADOWGRP, 1, [Have working shadow group support in libc])
137         fi
138 fi
139
140 AC_CACHE_CHECK([location of shared mail directory], shadow_cv_maildir,
141 [for shadow_cv_maildir in /var/mail /var/spool/mail /usr/spool/mail /usr/mail none; do
142         if test -d $shadow_cv_maildir; then
143                 break
144         fi
145 done])
146 if test $shadow_cv_maildir != none; then
147         AC_DEFINE_UNQUOTED(MAIL_SPOOL_DIR, "$shadow_cv_maildir",
148                 [Location of system mail spool directory.])
149 fi
150
151 AC_CACHE_CHECK([location of user mail file], shadow_cv_mailfile,
152 [for shadow_cv_mailfile in Mailbox mailbox Mail mail .mail none; do
153         if test -f $HOME/$shadow_cv_mailfile; then
154                 break
155         fi
156 done])
157 if test $shadow_cv_mailfile != none; then
158         AC_DEFINE_UNQUOTED(MAIL_SPOOL_FILE, "$shadow_cv_mailfile",
159                 [Name of user's mail spool file if stored in user's home directory.])
160 fi
161
162 AC_CACHE_CHECK([location of utmp], shadow_cv_utmpdir,
163 [for shadow_cv_utmpdir in /var/run /var/adm /usr/adm /etc none; do
164         if test -f $shadow_cv_utmpdir/utmp; then
165                 break
166         fi
167 done])
168 if test "$shadow_cv_utmpdir" = "none"; then
169         AC_MSG_WARN(utmp file not found)
170 fi
171 AC_DEFINE_UNQUOTED(_UTMP_FILE, "$shadow_cv_utmpdir/utmp",
172         [Path for utmp file.])
173
174 AC_CACHE_CHECK([location of faillog/lastlog/wtmp], shadow_cv_logdir,
175 [for shadow_cv_logdir in /var/log /var/adm /usr/adm /etc; do
176         if test -d $shadow_cv_logdir; then
177                 break
178         fi
179 done])
180 AC_DEFINE_UNQUOTED(_WTMP_FILE, "$shadow_cv_logdir/wtmp",
181         [Path for wtmp file.])
182 AC_DEFINE_UNQUOTED(LASTLOG_FILE, "$shadow_cv_logdir/lastlog",
183         [Path for lastlog file.])
184 AC_DEFINE_UNQUOTED(FAILLOG_FILE, "$shadow_cv_logdir/faillog",
185         [Path for faillog file.])
186
187 AC_CACHE_CHECK([location of the passwd program], shadow_cv_passwd_dir,
188 [if test -f /usr/bin/passwd; then
189         shadow_cv_passwd_dir=/usr/bin
190 else
191         shadow_cv_passwd_dir=/bin
192 fi])
193 AC_DEFINE_UNQUOTED(PASSWD_PROGRAM, "$shadow_cv_passwd_dir/passwd",
194         [Path to passwd program.])
195
196 dnl XXX - quick hack, should disappear before anyone notices :).
197 AC_DEFINE(USE_SYSLOG, 1, [Define to use syslog().])
198 AC_DEFINE(RLOGIN, 1, [Define if login should support the -r flag for rlogind.])
199 AC_DEFINE(RUSEROK, 0, [Define to the ruserok() "success" return value (0 or 1).])
200
201 AC_ARG_ENABLE(shadowgrp,
202         [AC_HELP_STRING([--enable-shadowgrp], [enable shadow group support @<:@default=yes@:>@])],
203         [case "${enableval}" in
204          yes) enable_shadowgrp="yes" ;;
205           no) enable_shadowgrp="no" ;;
206            *) AC_MSG_ERROR(bad value ${enableval} for --enable-shadowgrp) ;;
207          esac],
208         [enable_shadowgrp="yes"]
209 )
210
211 AC_ARG_ENABLE(man,
212         [AC_HELP_STRING([--enable-man],
213                 [regenerate roff man pages from Docbook @<:@default=no@:>@])],
214         [enable_man="${enableval}"],
215         [enable_man="no"]
216 )
217
218 AC_ARG_ENABLE(account-tools-setuid,
219         [AC_HELP_STRING([--enable-account-tools-setuid],
220                 [Install the user and group management tools setuid and authenticate the callers. This requires --with-pam.])],
221         [case "${enableval}" in
222          yes) enable_acct_tools_setuid="yes" ;;
223           no) enable_acct_tools_setuid="no" ;;
224            *) AC_MSG_ERROR(bad value ${enableval} for --enable-account-tools-setuid)
225            ;;
226          esac],
227         [enable_acct_tools_setuid="maybe"]
228 )
229
230 AC_ARG_ENABLE(utmpx,
231         [AC_HELP_STRING([--enable-utmpx],
232                         [enable loggin in utmpx / wtmpx @<:@default=no@:>@])],
233         [case "${enableval}" in
234          yes) enable_utmpx="yes" ;;
235           no) enable_utmpx="no" ;;
236            *) AC_MSG_ERROR(bad value ${enableval} for --enable-utmpx) ;;
237          esac],
238         [enable_utmpx="no"]
239 )
240
241 AC_ARG_WITH(audit, 
242         [AC_HELP_STRING([--with-audit], [use auditing support @<:@default=yes if found@:>@])],
243         [with_audit=$withval], [with_audit=maybe])
244 AC_ARG_WITH(libpam,
245         [AC_HELP_STRING([--with-libpam], [use libpam for PAM support @<:@default=yes if found@:>@])],
246         [with_libpam=$withval], [with_libpam=maybe])
247 AC_ARG_WITH(selinux,
248         [AC_HELP_STRING([--with-selinux], [use SELinux support @<:@default=yes if found@:>@])],
249         [with_selinux=$withval], [with_selinux=maybe])
250 AC_ARG_WITH(skey,
251         [AC_HELP_STRING([--with-skey], [use S/Key support @<:@default=no@:>@])],
252         [with_skey=$withval], [with_skey=no])
253 AC_ARG_WITH(libcrack,
254         [AC_HELP_STRING([--with-libcrack], [use libcrack @<:@default=yes if found and if PAM not enabled@:>@])],
255         [with_libcrack=$withval], [with_libcrack=no])
256 AC_ARG_WITH(sha-crypt,
257         [AC_HELP_STRING([--with-sha-crypt], [allow the SHA256 and SHA512 password encryption algorithms @<:@default=yes@:>@])],
258         [with_sha_crypt=$withval], [with_sha_crypt=yes])
259 AC_ARG_WITH(nscd,
260         [AC_HELP_STRING([--with-nscd], [enable support for nscd @<:@default=yes@:>@])],
261         [with_nscd=$withval], [with_nscd=yes])
262 AC_ARG_WITH(group-name-max-length,
263         [AC_HELP_STRING([--with-group-name-max-length], [set max group name length @<:@default=16@:>@])],
264         [with_group_name_max_length=$withval], [with_group_name_max_length=yes])
265
266 if test "$with_group_name_max_length" = "no" ; then
267         with_group_name_max_length=0
268 elif test "$with_group_name_max_length" = "yes" ; then
269         with_group_name_max_length=16
270 fi
271 AC_DEFINE_UNQUOTED(GROUP_NAME_MAX_LENGTH, $with_group_name_max_length, [max group name length])
272 AC_SUBST(GROUP_NAME_MAX_LENGTH)
273 GROUP_NAME_MAX_LENGTH="$with_group_name_max_length"
274
275 AM_CONDITIONAL(USE_SHA_CRYPT, test "x$with_sha_crypt" = "xyes")
276 if test "$with_sha_crypt" = "yes"; then
277         AC_DEFINE(USE_SHA_CRYPT, 1, [Define to allow the SHA256 and SHA512 password encryption algorithms])
278 fi
279
280 if test "$with_nscd" = "yes"; then
281         AC_CHECK_FUNC(posix_spawn,
282                       [AC_DEFINE(USE_NSCD, 1, [Define to support flushing of nscd caches])],
283                       [AC_MSG_ERROR([posix_spawn is needed for nscd support])])
284 fi
285
286 dnl Check for some functions in libc first, only if not found check for
287 dnl other libraries.  This should prevent linking libnsl if not really
288 dnl needed (Linux glibc, Irix), but still link it if needed (Solaris).
289
290 AC_SEARCH_LIBS(inet_ntoa, inet)
291 AC_SEARCH_LIBS(socket, socket)
292 AC_SEARCH_LIBS(gethostbyname, nsl)
293
294 if test "$enable_shadowgrp" = "yes"; then
295         AC_DEFINE(SHADOWGRP, 1, [Define to support the shadow group file.])
296 fi
297 AM_CONDITIONAL(SHADOWGRP, test "x$enable_shadowgrp" = "xyes")
298
299 if test "$enable_man" = "yes"; then
300         dnl
301         dnl Check for xsltproc
302         dnl
303         AC_PATH_PROG([XSLTPROC], [xsltproc])
304         if test -z "$XSLTPROC"; then
305                 enable_man=no
306         fi
307
308         dnl check for DocBook DTD and stylesheets in the local catalog.
309         JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.1.2//EN],
310                 [DocBook XML DTD V4.1.2], [], enable_man=no)
311         JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl],
312                 [DocBook XSL Stylesheets >= 1.70.1], [], enable_man=no)
313 fi
314 AM_CONDITIONAL(ENABLE_REGENERATE_MAN, test "x$enable_man" != "xno")
315
316 AC_SUBST(LIBCRYPT)
317 AC_CHECK_LIB(crypt, crypt, [LIBCRYPT=-lcrypt],
318         [AC_MSG_ERROR([crypt() not found])])
319
320 AC_SUBST(LIBAUDIT)
321 if test "$with_audit" != "no"; then
322         AC_CHECK_HEADER(libaudit.h, [audit_header="yes"], [audit_header="no"])
323         if test "$audit_header$with_audit" = "noyes" ; then
324                 AC_MSG_ERROR([libaudit.h is missing])
325         elif test "$audit_header" = "yes"; then
326                 AC_CHECK_DECL(AUDIT_ADD_USER,,[audit_header="no"],[#include <libaudit.h>])
327                 AC_CHECK_DECL(AUDIT_DEL_USER,,[audit_header="no"],[#include <libaudit.h>])
328                 AC_CHECK_DECL(AUDIT_ADD_GROUP,,[audit_header="no"],[#include <libaudit.h>])
329                 AC_CHECK_DECL(AUDIT_DEL_GROUP,,[audit_header="no"],[#include <libaudit.h>])
330                 if test "$audit_header$with_audit" = "noyes" ; then
331                         AC_MSG_ERROR([AUDIT_ADD_USER AUDIT_DEL_USER AUDIT_ADD_GROUP or AUDIT_DEL_GROUP missing from libaudit.h])
332                 fi
333         fi
334         if test "$audit_header" = "yes"; then
335                 AC_CHECK_LIB(audit, audit_log_acct_message,
336                              [audit_lib="yes"], [audit_lib="no"])
337                 if test "$audit_lib$with_audit" = "noyes" ; then
338                         AC_MSG_ERROR([libaudit not found])
339                 elif test "$audit_lib" = "no" ; then
340                         with_audit="no"
341                 else
342                         AC_DEFINE(WITH_AUDIT, 1,
343                                   [Define if you want to enable Audit messages])
344                         LIBAUDIT="-laudit"
345                         with_audit="yes"
346                 fi
347         else
348                 with_audit="no"
349         fi
350 fi
351
352 AC_SUBST(LIBCRACK)
353 if test "$with_libcrack" = "yes"; then
354         echo "checking cracklib flavour, don't be surprised by the results"
355         AC_CHECK_LIB(crack, FascistCheck,
356                 [LIBCRACK=-lcrack AC_DEFINE(HAVE_LIBCRACK, 1, [Defined if you have libcrack.])])
357         AC_CHECK_LIB(crack, FascistHistory,
358                 AC_DEFINE(HAVE_LIBCRACK_HIST, 1, [Defined if you have the ts&szs cracklib.]))
359         AC_CHECK_LIB(crack, FascistHistoryPw,
360                 AC_DEFINE(HAVE_LIBCRACK_PW, 1, [Defined if it includes *Pw functions.]))
361 fi
362
363 AC_SUBST(LIBSELINUX)
364 if test "$with_selinux" != "no"; then
365         AC_CHECK_HEADERS(selinux/selinux.h, [selinux_header="yes"], [selinux_header="no"])
366         if test "$selinux_header$with_selinux" = "noyes" ; then
367                 AC_MSG_ERROR([selinux/selinux.h is missing])
368         elif test "$selinux_header" = "yes" ; then
369                 AC_CHECK_LIB(selinux, is_selinux_enabled,
370                              [selinux_lib="yes"], [selinux_lib="no"])
371                 if test "$selinux_lib$with_selinux" = "noyes" ; then
372                         AC_MSG_ERROR([libselinux not found])
373                 elif test "$selinux_lib" = "no" ; then
374                         with_selinux="no"
375                 else
376                         AC_DEFINE(WITH_SELINUX, 1,
377                                   [Build shadow with SELinux support])
378                         LIBSELINUX="-lselinux"
379                         with_selinux="yes"
380                 fi
381         else
382                 with_selinux="no"
383         fi
384 fi
385
386 AC_SUBST(LIBPAM)
387 if test "$with_libpam" != "no"; then
388         AC_CHECK_LIB(pam, pam_start,
389                      [pam_lib="yes"], [pam_lib="no"])
390         if test "$pam_lib$with_libpam" = "noyes" ; then
391                 AC_MSG_ERROR(libpam not found)
392         fi
393
394         LIBPAM="-lpam"
395         pam_conv_function="no"
396
397         AC_CHECK_LIB(pam, openpam_ttyconv,
398                      [pam_conv_function="openpam_ttyconv"],
399                      AC_CHECK_LIB(pam_misc, misc_conv,
400                                   [pam_conv_function="misc_conv"; LIBPAM="$LIBPAM -lpam_misc"])
401                     )
402
403         if test "$pam_conv_function$with_libpam" = "noyes" ; then
404                 AC_MSG_ERROR(PAM conversation function not found)
405         fi
406
407         pam_headers_found=no
408         AC_CHECK_HEADERS( [security/openpam.h security/pam_misc.h],
409                          [ pam_headers_found=yes ; break ], [],
410                          [ #include <security/pam_appl.h> ] )
411         if test "$pam_headers_found$with_libpam" = "noyes" ; then
412                         AC_MSG_ERROR(PAM headers not found)
413         fi
414
415
416         if test "$pam_lib$pam_headers_found" = "yesyes" -a "$pam_conv_function" != "no" ; then
417                 with_libpam="yes"
418         else
419                 with_libpam="no"
420                 unset LIBPAM
421         fi
422 fi
423 dnl Now with_libpam is either yes or no
424 if test "$with_libpam" = "yes"; then
425         AC_CHECK_DECLS([PAM_ESTABLISH_CRED,
426                         PAM_DELETE_CRED,
427                         PAM_NEW_AUTHTOK_REQD,
428                         PAM_DATA_SILENT],
429                        [], [], [#include <security/pam_appl.h>])
430
431
432         save_libs=$LIBS
433         LIBS="$LIBS $LIBPAM"
434         # We do not use AC_CHECK_FUNCS to avoid duplicated definition with
435         # Linux PAM.
436         AC_CHECK_FUNC(pam_fail_delay, [AC_DEFINE(HAS_PAM_FAIL_DELAY, 1, [Define to 1 if you have the declaration of 'pam_fail_delay'])])
437         LIBS=$save_libs
438
439         AC_DEFINE(USE_PAM, 1, [Define to support Pluggable Authentication Modules])
440         AC_DEFINE_UNQUOTED(SHADOW_PAM_CONVERSATION, [$pam_conv_function],[PAM converstation to use])
441         AM_CONDITIONAL(USE_PAM, [true])
442
443         AC_MSG_CHECKING(use login and su access checking if PAM not used)
444         AC_MSG_RESULT(no)
445 else
446         AC_DEFINE(SU_ACCESS, 1, [Define to support /etc/suauth su access control.])
447         AM_CONDITIONAL(USE_PAM, [false])
448         AC_MSG_CHECKING(use login and su access checking if PAM not used)
449         AC_MSG_RESULT(yes)
450 fi
451
452 if test "$enable_acct_tools_setuid" != "no"; then
453         if test "$with_libpam" != "yes"; then
454                 if test "$enable_acct_tools_setuid" = "yes"; then
455                         AC_MSG_ERROR(PAM support is required for --enable-account-tools-setuid)
456                 else
457                         enable_acct_tools_setuid="no"
458                 fi
459         else
460                 enable_acct_tools_setuid="yes"
461         fi
462         if test "$enable_acct_tools_setuid" = "yes"; then
463                 AC_DEFINE(ACCT_TOOLS_SETUID,
464                           1,
465                           [Define if account management tools should be installed setuid and authenticate the callers])
466         fi
467 fi
468 AM_CONDITIONAL(ACCT_TOOLS_SETUID, test "x$enable_acct_tools_setuid" = "xyes")
469
470 AC_SUBST(LIBSKEY)
471 AC_SUBST(LIBMD)
472 if test "$with_skey" = "yes"; then
473         AC_CHECK_LIB(md, MD5Init, [LIBMD=-lmd])
474         AC_CHECK_LIB(skey, skeychallenge, [LIBSKEY=-lskey],
475                 [AC_MSG_ERROR([liskey missing. You can download S/Key source code from http://rsync1.it.gentoo.org/gentoo/distfiles/skey-1.1.5.tar.bz2])])
476         AC_DEFINE(SKEY, 1, [Define to support S/Key logins.])
477         AC_TRY_COMPILE([
478                 #include <stdio.h>
479                 #include <skey.h>
480         ],[
481                 skeychallenge((void*)0, (void*)0, (void*)0, 0);
482         ],[AC_DEFINE(SKEY_BSD_STYLE, 1, [Define to support newer BSD S/Key API])])
483 fi
484
485 if test "$enable_utmpx" = "yes"; then
486         if test "$ac_cv_header_utmpx_h" != "yes"; then
487                 AC_MSG_ERROR([The utmpx.h header file is required for utmpx support.])
488         fi
489         AC_DEFINE(USE_UTMPX,
490                   1,
491                   [Define if utmpx should be used])
492 fi
493
494 AC_DEFINE_UNQUOTED(SHELL, ["$SHELL"], [The default shell.])
495
496 AM_GNU_GETTEXT_VERSION(0.16)
497 AM_GNU_GETTEXT([external], [need-ngettext])
498 AM_CONDITIONAL(USE_NLS, test "x$USE_NLS" = "xyes")
499
500 AC_CONFIG_FILES([
501         Makefile
502         po/Makefile.in
503         doc/Makefile
504         man/Makefile
505         man/config.xml
506         man/po/Makefile
507         man/cs/Makefile
508         man/de/Makefile
509         man/es/Makefile
510         man/fi/Makefile
511         man/fr/Makefile
512         man/hu/Makefile
513         man/id/Makefile
514         man/it/Makefile
515         man/ja/Makefile
516         man/ko/Makefile
517         man/pl/Makefile
518         man/pt_BR/Makefile
519         man/ru/Makefile
520         man/sv/Makefile
521         man/tr/Makefile
522         man/zh_CN/Makefile
523         man/zh_TW/Makefile
524         libmisc/Makefile
525         lib/Makefile
526         src/Makefile
527         contrib/Makefile
528         etc/Makefile
529         etc/pam.d/Makefile
530         shadow.spec
531 ])
532 AC_OUTPUT
533
534 echo
535 echo "shadow will be compiled with the following features:"
536 echo
537 echo "  auditing support:               $with_audit"
538 echo "  CrackLib support:               $with_libcrack"
539 echo "  PAM support:                    $with_libpam"
540 if test "$with_libpam" = "yes"; then
541 echo "  suid account management tools:  $enable_acct_tools_setuid"
542 fi
543 echo "  SELinux support:                $with_selinux"
544 echo "  shadow group support:           $enable_shadowgrp"
545 echo "  S/Key support:                  $with_skey"
546 echo "  SHA passwords encryption:       $with_sha_crypt"
547 echo "  nscd support:                   $with_nscd"
548 echo