]> git.ipfire.org Git - thirdparty/util-linux.git/blame - configure.ac
prlimit: add add falbacks
[thirdparty/util-linux.git] / configure.ac
CommitLineData
38c75b59
SK
1AC_INIT(util-linux,
2 m4_esyscmd([tools/git-version-gen .tarball-version]),
3 kzak@redhat.com)
baf39af1 4
7fc9786b 5AC_PREREQ(2.60)
48d7b13a
KZ
6
7AC_CONFIG_AUX_DIR(config)
b12991dd 8AC_CONFIG_MACRO_DIR([m4])
488c033f 9AM_INIT_AUTOMAKE([-Wall foreign 1.10 dist-bzip2 -Wno-portability])
48d7b13a 10
eb35c251
GJ
11m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])],
12 [AC_SUBST([AM_DEFAULT_VERBOSITY], [1])])
13
48d7b13a 14AC_CONFIG_SRCDIR(mount/mount.c)
15a9b48c
SK
15AC_PREFIX_DEFAULT([/usr])
16
33b0be6d
KZ
17dnl version details from <major>.<minor>[-<suffix>]
18PACKAGE_VERSION_MAJOR=$(echo $PACKAGE_VERSION | awk -F. '{print $1}')
19PACKAGE_VERSION_MINOR=$(echo $PACKAGE_VERSION | awk -F. '{print $2}' \
20 | awk -F- '{print $1}')
21PACKAGE_VERSION_RELEASE=0
a0948ffe 22
33b0be6d
KZ
23dnl libblkid version
24LIBBLKID_VERSION="$PACKAGE_VERSION_MAJOR.$PACKAGE_VERSION_MINOR.$PACKAGE_VERSION_RELEASE"
60a5833b 25LIBBLKID_DATE="29-Aug-2011"
dc2b8d87
KZ
26LIBBLKID_LT_MAJOR=1
27LIBBLKID_LT_MINOR=1
28LIBBLKID_LT_MICRO=0
29LIBBLKID_VERSION_INFO=`expr $LIBBLKID_LT_MAJOR + $LIBBLKID_LT_MINOR`:$LIBBLKID_LT_MICRO:$LIBBLKID_LT_MINOR
a0948ffe 30
f6076f55
KZ
31dnl libuuid version
32LIBUUID_VERSION="$PACKAGE_VERSION_MAJOR.$PACKAGE_VERSION_MINOR.$PACKAGE_VERSION_RELEASE"
dc2b8d87
KZ
33LIBUUID_LT_MAJOR=1
34LIBUUID_LT_MINOR=3
35LIBUUID_LT_MICRO=0
36LIBUUID_VERSION_INFO=`expr $LIBUUID_LT_MAJOR + $LIBUUID_LT_MINOR`:$LIBUUID_LT_MICRO:$LIBUUID_LT_MINOR
f6076f55 37
f1cde479
KZ
38dnl libmount version
39LIBMOUNT_VERSION="$PACKAGE_VERSION_MAJOR.$PACKAGE_VERSION_MINOR.$PACKAGE_VERSION_RELEASE"
40LIBMOUNT_LT_MAJOR=1
41LIBMOUNT_LT_MINOR=1
42LIBMOUNT_LT_MICRO=0
43LIBMOUNT_VERSION_INFO=`expr $LIBMOUNT_LT_MAJOR + $LIBMOUNT_LT_MINOR`:$LIBMOUNT_LT_MICRO:$LIBMOUNT_LT_MINOR
44
15a9b48c
SK
45# Check whether exec_prefix=/usr:
46case $exec_prefix:$prefix in
47NONE:NONE | NONE:/usr | /usr:*)
48 AC_MSG_NOTICE([Default --exec-prefix detected.])
49 case $bindir in
50 '${exec_prefix}/bin') bindir=/bin
51 AC_MSG_NOTICE([ --bindir defaults to /bin]) ;;
52 esac
53 case $sbindir in
54 '${exec_prefix}/sbin') sbindir=/sbin
55 AC_MSG_NOTICE([ --sbindir defaults to /sbin]) ;;
971f57f6
KZ
56 esac
57 case $libdir in
58 '${exec_prefix}/lib') libdir=/lib
59 AC_MSG_NOTICE([ --libdir defaults to /lib]) ;;
15a9b48c
SK
60 esac ;;
61esac
48d7b13a 62
cb5212e2 63libdirname=`basename "$libdir"`
b0a0d7d5
KZ
64AC_SUBST([libdirname])
65
996fb358 66# The original default values of {bin,sbin,lib}dir
aaf3e8f5 67usrbin_execdir='${exec_prefix}/bin'
30688dde 68AC_SUBST([usrbin_execdir])
996fb358 69
aaf3e8f5 70usrsbin_execdir='${exec_prefix}/sbin'
30688dde 71AC_SUBST([usrsbin_execdir])
996fb358 72
aaf3e8f5 73usrlib_execdir='${exec_prefix}/'$libdirname
30688dde 74AC_SUBST([usrlib_execdir])
996fb358 75
31c9c1c4 76AM_PROG_CC_C_O
48d7b13a 77AC_PROG_CC_STDC
240f7101 78AC_GNU_SOURCE
a6996860 79AC_CANONICAL_HOST
85b4c147 80AC_C_CONST
e79829db 81AC_C_VOLATILE
fbaec83b 82AC_C_BIGENDIAN
b12991dd
KZ
83
84dnl libtool-2
85LT_INIT
48d7b13a 86
fd0f4132
SK
87m4_ifndef([PKG_PROG_PKG_CONFIG],
88 [m4_fatal([Could not locate the pkg-config autoconf
89 macros. These are usually located in /usr/share/aclocal/pkg.m4.
90 If your macros are in a different location, try setting the
91 environment variable AL_OPTS="-I/other/macro/dir" before running
92 ./autogen.sh or autoreconf again.])])
d06d028a
KZ
93PKG_PROG_PKG_CONFIG
94
22aa5166
KZ
95GTK_DOC_CHECK([1.10])
96AC_PATH_PROG([XSLTPROC], [xsltproc])
97
8c182554
KZ
98linux_os=no
99case ${host_os} in
100 *linux*)
101 linux_os=yes
102 ;;
103esac
49ccbae6 104AM_CONDITIONAL([LINUX], test "x$linux_os" = xyes)
8c182554 105
3c6e292c
KZ
106dnl define ARCH_<NAME> conditionals
107UL_SET_ARCH(I86, i?86-*)
108UL_SET_ARCH(86_64, x86_64*)
109UL_SET_ARCH(IA64, ia64*)
110UL_SET_ARCH(S390, s390*)
111UL_SET_ARCH(SPARC, sparc*)
112UL_SET_ARCH(PPC, ppc*|powerpc*)
113UL_SET_ARCH(M68K, m68*)
114UL_SET_ARCH(MIPS, mips*)
115UL_SET_ARCH(HPPA, hppa*)
116
48d7b13a
KZ
117AC_SYS_LARGEFILE
118
09734b00
KZ
119AM_GNU_GETTEXT_VERSION([0.14.1])
120AM_GNU_GETTEXT([external])
121if test -d "$srcdir/po"
122then
123 ALL_LINGUAS=`cd $srcdir/po > /dev/null && echo *.po | sed 's/\.po//g'`
124else
125 ALL_LINGUAS="af am ar as be bg bn_IN bn ca cs cy da de el en_GB es et eu_ES fa fi fr gl gu he hi hr hu hy id is it ja ka kn ko ku lo lt lv mk ml mr ms my nb nl nn no nso or pa pl pt_BR pt ro ru si sk sl sq sr@Latn sr sv ta te th tr uk ur vi zh_CN zh_TW zu"
126fi
127
e460a5bf 128AC_CHECK_HEADERS([linux/compiler.h linux/blkpg.h linux/major.h], [], [], [
48d7b13a
KZ
129#ifdef HAVE_LINUX_COMPILER_H
130#include <linux/compiler.h>
131#endif
132])
bf962c0a 133AC_CHECK_HEADERS(
a0948ffe
KZ
134 [err.h \
135 errno.h \
136 getopt.h \
a0948ffe
KZ
137 linux/fd.h \
138 linux/tiocl.h \
139 linux/version.h \
b832c2fe 140 linux/falloc.h \
55113b15 141 linux/cdrom.h \
b832c2fe 142 fcntl.h \
8b7f16fc 143 locale.h \
754fed0c
KZ
144 stdint.h \
145 inttypes.h \
0bf9d41d 146 paths.h \
a0948ffe 147 pty.h \
607c2a72 148 mntent.h \
754fed0c
KZ
149 net/if.h \
150 net/if_dl.h \
151 netinet/in.h \
bf962c0a 152 rpcsvc/nfs_prot.h \
a0948ffe 153 stdlib.h \
363ce071 154 asm/io.h \
a0948ffe
KZ
155 sys/disk.h \
156 sys/disklabel.h \
157 sys/ioctl.h \
3edaa201 158 sys/ioccom.h \
bf962c0a 159 sys/io.h \
754fed0c 160 sys/time.h \
a0948ffe
KZ
161 sys/mkdev.h \
162 sys/prctl.h \
163 sys/queue.h \
754fed0c 164 sys/sockio.h \
2a7c1f70
KZ
165 sys/socket.h \
166 sys/syscall.h \
754fed0c
KZ
167 sys/file.h \
168 sys/ioctl.h \
a0948ffe
KZ
169 sys/stat.h \
170 sys/types.h \
754fed0c 171 sys/un.h \
a0948ffe 172 sys/user.h \
a67387b7 173 sys/swap.h \
754fed0c 174 sys/resource.h \
ff0cb84d 175 security/pam_misc.h \
16ba8d58 176 linux/raw.h \
a0948ffe 177 unistd.h ])
dc61d398 178
a67387b7
KZ
179AC_CHECK_HEADERS([langinfo.h],
180 [AM_CONDITIONAL([HAVE_LANGINFO], [true])],
181 [AM_CONDITIONAL([HAVE_LANGINFO], [false])])
182
16ba8d58
KZ
183dnl Convert some ac_cv_header_* variables to have_*
184dnl
185have_linux_raw_h=$ac_cv_header_linux_raw_h
ff0cb84d 186have_security_pam_misc_h=$ac_cv_header_security_pam_misc_h
48d7b13a 187
a67387b7
KZ
188
189AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
190#include <time.h>
191#include <unistd.h>
192]], [[
193 int a = 0;
194 struct tm *tm = localtime(0);
195 if (a == -1) /* false */
196 sleep(tm->tm_gmtoff);
197]])],
198[AC_DEFINE(HAVE_TM_GMTOFF,1,[Does struct tm have a field tm_gmtoff?])
199])
200
201AC_CHECK_MEMBERS([struct termios.c_line],,,
202 [[#include <termios.h>]])
203
204AC_CHECK_MEMBERS([struct stat.st_mtim.tv_nsec],,,
205 [#include <sys/stat.h>])
206
207AC_CHECK_DECLS([
208 UNAME26,
209 ADDR_NO_RANDOMIZE,
210 FDPIC_FUNCPTRS,
211 MMAP_PAGE_ZERO,
212 ADDR_COMPAT_LAYOUT,
213 READ_IMPLIES_EXEC,
214 ADDR_LIMIT_32BIT,
215 WHOLE_SECONDS,
216 STICKY_TIMEOUTS,
217 ADDR_LIMIT_3GB], [], [], [#include <linux/personality.h>])
218
219AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
220[[
221#ifdef HAVE_SYS_SWAP_H
222# include <sys/swap.h>
223#endif
224#include <unistd.h>
225]],
226[[swapon("/dev/null", 0);]])],
227[AC_DEFINE(SWAPON_HAS_TWO_ARGS, 1, [Is swapon() declared with two parameters?])
228],
229[AC_MSG_NOTICE([Your libc thinks that swapon has 1 arg only.])
230])
dc61d398
KZ
231
232
a88057d9
TP
233AC_CHECK_DECLS([_NL_TIME_WEEK_1STDAY],[],[],[[#include <langinfo.h>]])
234
2a7c1f70
KZ
235AC_CHECK_DECL([llseek],
236 [AC_DEFINE(HAVE_LLSEEK_PROTOTYPE, 1,
237 [Define to 1 if have llseek prototype])],
238 [],
239 [#include <unistd.h>])
240
241AC_CHECK_DECL([lseek64],
242 [AC_DEFINE(HAVE_LSEEK64_PROTOTYPE, 1,
243 [Define to 1 if have lseek64 prototype])],
244 [],
245 [#define _LARGEFILE_SOURCE
246 #define _LARGEFILE64_SOURCE
247 #include <unistd.h>])
248
bf962c0a
SK
249AC_CHECK_FUNCS(
250 [inet_aton \
eb76ca98
FG
251 err \
252 errx \
b7ce600d 253 futimens \
2a7c1f70 254 fstat64 \
bf962c0a
SK
255 fsync \
256 getdomainname \
e27a08ab 257 get_current_dir_name \
437fa54f 258 usleep \
bf962c0a
SK
259 nanosleep \
260 personality \
132ea941 261 updwtmp \
3ac22f7a 262 jrand48 \
bf962c0a 263 lchown \
a0948ffe
KZ
264 llseek \
265 lseek64 \
266 strtoull \
754fed0c
KZ
267 sysconf \
268 getdtablesize \
a804f444 269 getexecname \
754fed0c 270 getrlimit \
a1504d8b 271 sigqueue \
754fed0c 272 srandom \
69045d3d
KZ
273 setresgid \
274 setresuid \
69b7e41e
KZ
275 strndup \
276 strnlen \
277 strnchr \
fc7aeb09 278 inotify_init \
a0948ffe 279 prctl \
a67bb3bf 280 posix_fadvise \
acf6ab6f 281 getmntinfo \
a0948ffe 282 __secure_getenv \
eb76ca98
FG
283 warn \
284 warnx \
bf962c0a 285 rpmatch])
48d7b13a 286AC_FUNC_FSEEKO
48d7b13a 287
940fd28c 288AC_CHECK_FUNCS([openat fstatat unlinkat], [have_openat=yes], [have_openat=no])
465e9973 289AC_CHECK_FUNCS([ioperm iopl], [have_io=yes])
465e9973 290
754fed0c
KZ
291AC_CHECK_MEMBER(struct sockaddr.sa_len,
292 AC_DEFINE_UNQUOTED(HAVE_SA_LEN,1,[Define if struct sockaddr contains sa_len]),,
293 [#include <sys/types.h>
294 #include <sys/socket.h>])
295
60cc9f94
FG
296SOCKET_LIBS=
297AC_SEARCH_LIBS([gethostbyname], [nsl],
298 [if test x"$ac_cv_search_gethostbyname" != x"none required"; then
299 SOCKET_LIBS="$SOCKET_LIBS -lnsl";
300 fi])
301AC_SEARCH_LIBS([socket], [socket],
302 [if test x"$ac_cv_search_socket" != x"none required"; then
303 SOCKET_LIBS="$SOCKET_LIBS -lsocket";
304 fi])
305AC_SUBST([SOCKET_LIBS])
306
d58c47d9
FG
307
308have_dirfd=no
309AC_CHECK_FUNCS([dirfd], [have_dirfd=yes], [have_dirfd=no])
310if test x"$have_dirfd" = xno ; then
311 AC_CHECK_DECLS([dirfd],
312 [have_dirfd=yes], [have_dirfd=no],
313 [#include <sys/types.h>
314 #include <dirent.h>])
315fi
316
317have_ddfd=no
318if test x"$have_dirfd" = xno ; then
319 AC_CHECK_MEMBERS([DIR.dd_fd],
320 [have_ddfd=yes], [have_ddfd=no],
321 [#include <sys/types.h>
322 #include <dirent.h>])
323fi
324
325case "$have_dirfd:$have_ddfd" in
326no:no)
327 AC_MSG_ERROR([cannot find a method to get filedescriptor of directory]) ;;
328esac
329
330
a804f444
FG
331AC_MSG_CHECKING(whether program_invocation_short_name is defined)
332AC_TRY_COMPILE([#include <argp.h>],
333 [program_invocation_short_name = "test";],
334 AC_DEFINE(HAVE_PROGRAM_INVOCATION_SHORT_NAME, 1,
335 [Define if program_invocation_short_name is defined])
336 AC_MSG_RESULT(yes),
337 AC_MSG_RESULT(no))
338
339AC_MSG_CHECKING([whether __progname is defined])
340AC_LINK_IFELSE([AC_LANG_PROGRAM([extern char *__progname;],
341 [if (*__progname == 0) return;])],
342 AC_DEFINE(HAVE___PROGNAME, 1, [Define if __progname is defined])
343 AC_MSG_RESULT(yes),
344 AC_MSG_RESULT(no))
345
8569410c 346dnl Static compilation
132ea941 347m4_define([UL_STATIC_PROGRAMS], [losetup, mount, umount, fdisk, sfdisk, blkid])
8569410c
SK
348
349AC_ARG_ENABLE([static-programs],
350 [AS_HELP_STRING([--enable-static-programs=LIST],
351 [link static the programs in LIST (comma-separated,
132ea941 352 supported for ]m4_defn([UL_STATIC_PROGRAMS])[)])])
8569410c
SK
353
354case $enable_static_programs in
132ea941 355yes) enable_static_programs=m4_quote(UL_STATIC_PROGRAMS) ;;
8569410c
SK
356no) enable_static_programs= ;;
357esac
358
8569410c 359dnl Set all the individual AM_CONDITIONALs
132ea941 360m4_foreach([UL_PRG], m4_defn([UL_STATIC_PROGRAMS]), [
8569410c 361 case ,$enable_static_programs, in
132ea941 362 *,UL_PRG,*) static_[]UL_PRG=yes ;;
8569410c 363 esac
132ea941
KZ
364 AM_CONDITIONAL([HAVE_STATIC_]m4_toupper(UL_PRG),
365 [test "x$static_[]UL_PRG" = xyes])
8569410c
SK
366])
367
d7a01582 368AX_CHECK_TLS
3ac22f7a 369
13f5473e
KZ
370AC_DEFUN([UL_SCANF_TYPE_MODIFIER], [dnl
371# include <stdio.h>
372int main()
373{
374 int i;
375 char *s;
376 i = sscanf("x", $1, &s);
377 if (i == 1)
378 return 0;
379 return 1;
380}])
381
382AC_CACHE_VAL([scanf_cv_alloc_modifier],
383 AC_RUN_IFELSE([AC_LANG_SOURCE([UL_SCANF_TYPE_MODIFIER(["%ms"])])],
384 [scanf_cv_alloc_modifier=ms],
385 AC_RUN_IFELSE([AC_LANG_SOURCE([UL_SCANF_TYPE_MODIFIER(["%as"])])],
386 [scanf_cv_alloc_modifier=as],
387 [scanf_cv_alloc_modifier=no]
388 )
389 )
390)
391
392AC_MSG_CHECKING([scanf string alloc modifiers])
393case "$scanf_cv_alloc_modifier" in
394ms)
395 AC_MSG_RESULT([(%ms) yes])
396 AC_DEFINE([HAVE_SCANF_MS_MODIFIER], [1], [scanf %ms modifier])
397 have_scanf_alloc_modifier=yes
398 ;;
399as)
400 AC_MSG_RESULT([(%as) yes])
401 have_scanf_alloc_modifier=yes
402 AC_DEFINE([HAVE_SCANF_AS_MODIFIER], [1], [scanf %as modifier])
403 ;;
404*)
405 AC_MSG_RESULT([no])
406 have_scanf_alloc_modifier=no
407 ;;
408esac
409
3aecf79d
KZ
410UL_CHECK_LIB(util, openpty)
411UL_CHECK_LIB(termcap, tgetnum)
412
413AC_CHECK_TYPES([union semun], [], [], [[
414#include <sys/sem.h>
415]])
416AC_CHECK_TYPES(loff_t)
417
418AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
419#include <wchar.h>
420#include <wctype.h>
421#include <stdio.h>
422]], [[
423 wchar_t wc;
424 wint_t w;
425 w = fgetwc(stdin);
426 if (w == WEOF) exit(1);
427 wc = w;
428 fputwc(wc,stdout);
429]])],
430[AC_DEFINE(HAVE_WIDECHAR,1,Do we have wide character support?)
431])
432
433AC_CHECK_TYPES([cpu_set_t], [have_cpu_set_t=yes], [], [[
434#include <sched.h>
435]])
436
437AM_CONDITIONAL(HAVE_CPU_SET_T, [test "x$have_cpu_set_t" = xyes])
438
439AC_CHECK_DECLS([CPU_ALLOC], [], [], [[
440#include <sched.h>
441]])
442
8d35bdc9
KZ
443# on Solaris, you can't mix and match standards, since we use c99
444# aparently at this stage, XOPEN_SOURCE will conflict. As workaround,
445# check for crypt.h and use that without XOPEN_SOURCE.
446AC_CHECK_HEADERS([crypt.h])
447AC_LINK_IFELSE([AC_LANG_PROGRAM([[
448#ifdef HAVE_CRYPT_H
449#include <crypt.h>
450#else
451#define _XOPEN_SOURCE
452#include <unistd.h>
453#endif
454]], [[
455char *c = crypt("abc","pw");
456]])],[],[
457 LIBS="$LIBS -lcrypt"
458 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
459 #ifdef HAVE_CRYPT_H
460 #include <crypt.h>
461 #else
462 #define _XOPEN_SOURCE
463 #include <unistd.h>
464 #endif
465 ]], [[
466 char *c = crypt("abc","pw");
467 ]])],[
468 AC_DEFINE(HAVE_LIBCRYPT, 1, [Do we need -lcrypt?])
469 have_libcrypt=yes
470 ],[
471 AC_MSG_ERROR([crypt() is not available])
472 ])
473])
474AM_CONDITIONAL(HAVE_LIBCRYPT, test "x$have_libcrypt" = xyes)
475
13f5473e 476
75ad4910
KZ
477AC_ARG_WITH([selinux],
478 AS_HELP_STRING([--with-selinux], [compile with SELinux support]),
479 [], with_selinux=no
480)
481
482if test "x$with_selinux" = xno; then
483 AM_CONDITIONAL(HAVE_SELINUX, false)
484else
485 UL_CHECK_LIB(selinux, getprevcon)
486 case "$with_selinux:$have_selinux" in
487 yes:no) AC_MSG_ERROR([SELinux selected but libselinux not found]);;
488 esac
489fi
490
491if test "x$have_selinux" = xyes; then
492 SELINUX_LIBS="-lselinux -lsepol"
493 SELINUX_LIBS_STATIC="-lselinux -lsepol"
494 old_LDFLAGS="$LDFLAGS"
495 LDFLAGS="$LDFLAGS $SELINUX_LIBS"
496 # This function is missing in old libselinux 1.xx versions
497 AC_CHECK_FUNCS([security_get_initial_context])
498 LDFLAGS="$old_LDFLAGS"
499fi
500AC_SUBST([SELINUX_LIBS])
501AC_SUBST([SELINUX_LIBS_STATIC])
502
503AC_ARG_WITH([audit],
504 AS_HELP_STRING([--with-audit], [compile with audit support]),
505 [], with_audit=no
506)
507
508if test "x$with_audit" = xno; then
509 AM_CONDITIONAL(HAVE_AUDIT, false)
510else
511 UL_CHECK_LIB(audit, audit_log_user_message)
512 case "$with_audit:$have_audit" in
513 yes:no)
514 AC_MSG_ERROR([Audit selected but libaudit not found (or does not support audit_log_user_message())])
515 ;;
516 esac
517fi
518
519AC_ARG_WITH([udev], AS_HELP_STRING([--without-udev], [compile without udev support]),
520 [], with_udev=auto
521)
522
523if test "x$with_udev" = xno; then
524 AM_CONDITIONAL(HAVE_UDEV, false)
525else
526 UL_CHECK_LIB(udev, udev_new)
527 case "$with_udev:$have_udev" in
528 yes:no)
529 AC_MSG_ERROR([udev selected but libudev not found])
530 ;;
531 esac
532fi
533
534AC_ARG_WITH([ncurses],
535 AS_HELP_STRING([--with-ncurses], [build with non-wide ncurses, default is wide version
536 (--without-ncurses disables all ncurses(w) support)]),
537 [], with_ncurses=auto
538)
539AM_CONDITIONAL(HAVE_NCURSES, false)
540
541if test "x$with_ncurses" != xno; then
542 have_ncurses=no
543 AC_CHECK_HEADERS([ncurses.h ncurses/ncurses.h], [
544 if test "x$with_ncurses" = xauto; then
545 UL_CHECK_LIB(ncursesw, initscr, ncurses)
546 if test "x$have_ncurses" = xyes; then
547 AC_CHECK_HEADERS([ncursesw/ncurses.h])
548 NCURSES_LIBS="-lncursesw"
549 fi
550 fi
551 if test "x$have_ncurses" = xno; then
552 UL_CHECK_LIB(ncurses, initscr)
553 if test "x$have_ncurses" = xyes; then
554 NCURSES_LIBS="-lncurses"
555 fi
556 fi
557 ])
558 if test "x$have_ncurses" = xno; then
559 AC_MSG_ERROR([ncurses or ncursesw selected, but library not found (--without-ncurses to disable)])
560 fi
561fi
562AC_SUBST([NCURSES_LIBS])
563
564
565AC_ARG_WITH([slang],
566 AS_HELP_STRING([--with-slang], [compile cfdisk with slang]),
567 [], with_slang=no
568)
569
570have_tinfo=no
571AC_CHECK_LIB(tinfo, tgetent, [have_tinfo=yes])
572AM_CONDITIONAL(HAVE_TINFO, test "x$have_tinfo" = xyes)
573
574use_slang=no
575if test "x$with_slang" = xyes; then
576 AC_CHECK_HEADERS([slang.h slang/slang.h])
577 AC_CHECK_HEADERS([slcurses.h slang/slcurses.h],
578 [use_slang=yes], [], [
579#ifdef HAVE_SLANG_H
580#include <slang.h>
581#elif defined(HAVE_SLANG_SLANG_H)
582#include <slang/slang.h>
583#endif
584])
585 if test "x$use_slang" = xno; then
586 AC_MSG_ERROR([slang selected but slcurses.h not found])
587 fi
588fi
589AM_CONDITIONAL(USE_SLANG, test "x$use_slang" = xyes)
590
591
592AC_ARG_WITH([utempter],
593 AS_HELP_STRING([--with-utempter], [compile script(1) with libutempter]),
594 [], with_utempter=no
595)
596
597if test "x$with_utempter" = xyes; then
598 UL_CHECK_LIB(utempter, utempter_add_record)
599 if test "x$have_utempter" = xno; then
600 AC_MSG_ERROR([utempter selected but libutempter not found])
601 fi
602else
603 AM_CONDITIONAL(HAVE_UTEMPTER, false)
604fi
605
606
d17584b6
SK
607AC_ARG_ENABLE([most-builds],
608 AS_HELP_STRING([--enable-most-builds], [build everthing other than experimental code]),
609 [], enable_most_builds=no
610)
611if test "x$enable_most_builds" = xyes; then
612 enable_arch=yes
613 enable_ddate=yes
614 enable_elvtune=yes
615 enable_kill=yes
616 enable_last=yes
617 enable_line=yes
618 enable_mesg=yes
619 enable_raw=yes
620 enable_rename=yes
621 enable_reset=yes
622 enable_login_utils=yes
623 enable_write=yes
624fi
625
1dbbde66
KZ
626dnl
627dnl libuuid
628dnl
17afb032
KZ
629AC_ARG_ENABLE([libuuid],
630 AS_HELP_STRING([--disable-libuuid], [do not build libuuid and uuid utilities]),
631 [], enable_libuuid=yes
632)
dc2b8d87
KZ
633AC_SUBST([LIBUUID_VERSION])
634AC_SUBST([LIBUUID_VERSION_INFO])
17afb032 635AM_CONDITIONAL(BUILD_LIBUUID, test "x$enable_libuuid" = xyes)
9dc801d2 636
403e2d0c 637if test "x$enable_libuuid" = xyes; then
17afb032
KZ
638 AC_DEFINE(HAVE_LIBUUID, 1, [Define to 1 if you have the -luuid.])
639else
640 AC_MSG_WARN([uuid library is not found; mkswap(8) will not generate UUIDs])
641fi
48d7b13a 642
1dbbde66
KZ
643dnl
644dnl libblkid
645dnl
f910b559 646AC_ARG_ENABLE([libblkid],
1d12ed57 647 AS_HELP_STRING([--disable-libblkid], [do not build libblkid and many related utilities]),
f910b559 648 [], enable_libblkid=yes
40f07ff7 649)
61a074f7 650UL_BUILD_INIT([libblkid])
033cf439 651AC_SUBST([LIBBLKID_DATE])
dc2b8d87
KZ
652AC_SUBST([LIBBLKID_VERSION])
653AC_SUBST([LIBBLKID_VERSION_INFO])
f910b559
KZ
654AC_DEFINE_UNQUOTED(LIBBLKID_VERSION, "$LIBBLKID_VERSION", [libblkid version string])
655AC_DEFINE_UNQUOTED(LIBBLKID_DATE, "$LIBBLKID_DATE", [libblkid date string])
4f3b364b 656if test "x$build_libblkid" = xyes; then
d06d028a 657 AC_DEFINE(HAVE_LIBBLKID, 1, [Define to 1 if you have the -lblkid.])
64754af9 658fi
4f3b364b 659AM_CONDITIONAL(BUILD_LIBBLKID, test "x$build_libblkid" = xyes)
f910b559 660
1dbbde66
KZ
661dnl
662dnl libmount
663dnl
f1cde479
KZ
664AC_ARG_ENABLE([libmount],
665 AS_HELP_STRING([--disable-libmount], [do not build libmount]),
a2b3d040 666 [], enable_libmount=check
f1cde479 667)
61a074f7 668UL_BUILD_INIT([libmount])
13f5473e
KZ
669UL_REQUIRES_LINUX([libmount])
670UL_REQUIRES_BUILD([libmount], [libblkid])
671UL_REQUIRES_HAVE([libmount], [scanf_alloc_modifier], [scanf string alloc modifier])
672AM_CONDITIONAL(BUILD_LIBMOUNT, test "x$build_libmount" = xyes)
8e368761 673
f1cde479
KZ
674AC_SUBST([LIBMOUNT_VERSION])
675AC_SUBST([LIBMOUNT_VERSION_INFO])
f4ab4ae8 676AC_DEFINE_UNQUOTED(LIBMOUNT_VERSION, "$LIBMOUNT_VERSION", [libmount version string])
13f5473e 677
f1cde479 678
1dbbde66
KZ
679AC_ARG_ENABLE([mount],
680 AS_HELP_STRING([--disable-mount], [do not build mount utilities]),
681 [], enable_mount=check
682)
61a074f7 683UL_BUILD_INIT([mount])
9ead6701
KZ
684UL_REQUIRES_LINUX([mount])
685UL_REQUIRES_BUILD([mount], [libblkid])
1dbbde66
KZ
686AM_CONDITIONAL(BUILD_MOUNT, test "x$build_mount" = xyes)
687
688
9ead6701
KZ
689AC_ARG_ENABLE([libmount-mount],
690 AS_HELP_STRING([--enable-libmount-mount], [link mount(8) with libmount (EXPERIMENTAL)]),
691 [], enable_libmount_mount=no
692)
61a074f7 693UL_BUILD_INIT([libmount_mount])
9ead6701
KZ
694UL_REQUIRES_BUILD([libmount_mount], [mount])
695UL_REQUIRES_BUILD([libmount_mount], [libmount])
696if test "x$build_libmount_mount" = xyes; then
697 AC_DEFINE(HAVE_LIBMOUNT_MOUNT, 1, [use libmount for mount(8)])
698fi
699AM_CONDITIONAL(BUILD_LIBMOUNT_MOUNT, test "x$build_libmount_mount" = xyes)
700
701
1dbbde66
KZ
702AC_ARG_ENABLE([fsck],
703 AS_HELP_STRING([--disable-fsck], [do not build fsck]),
1d12ed57 704 [], enable_fsck=check
1dbbde66 705)
61a074f7 706UL_BUILD_INIT([fsck])
1d12ed57
KZ
707UL_REQUIRES_BUILD([fsck], [libblkid])
708AM_CONDITIONAL(BUILD_FSCK, test "x$build_fsck" = xyes)
1dbbde66
KZ
709
710
711AC_ARG_ENABLE([partx],
712 AS_HELP_STRING([--disable-partx], [do not build addpart, delpart, partx]),
713 [], enable_partx=check
714)
61a074f7 715UL_BUILD_INIT([partx])
ecde2536
KZ
716UL_REQUIRES_LINUX([partx])
717UL_REQUIRES_BUILD([partx], [libblkid])
1dbbde66
KZ
718AM_CONDITIONAL(BUILD_PARTX, test "x$build_partx" = xyes)
719
720
1dbbde66
KZ
721AC_ARG_ENABLE([uuidd],
722 AS_HELP_STRING([--disable-uuidd], [do not build the uuid daemon]),
bcdab497 723 [], enable_uuidd=check
1dbbde66 724)
61a074f7 725UL_BUILD_INIT([uuidd])
bcdab497
KZ
726UL_REQUIRES_BUILD([uuidd], [libuuid])
727if test "x$build_uuidd" = xyes; then
1dbbde66
KZ
728 AC_DEFINE(HAVE_UUIDD, 1, [Define to 1 if you want to use uuid daemon.])
729fi
bcdab497 730AM_CONDITIONAL(BUILD_UUIDD, test "x$build_uuidd" = xyes)
1dbbde66
KZ
731
732
0164c245 733AC_ARG_ENABLE([mountpoint],
2023ccc4 734 AS_HELP_STRING([--disable-mountpoint], [do not build mountpoint]),
3d92ed40 735 [], enable_mountpoint=check
0164c245 736)
61a074f7 737UL_BUILD_INIT([mountpoint])
a9127bc1 738UL_REQUIRES_BUILD([mountpoint], [libmount])
3d92ed40 739AM_CONDITIONAL(BUILD_MOUNTPOINT, test "x$build_mountpoint" = xyes)
0164c245
KZ
740
741
10e56b49
KZ
742AC_ARG_ENABLE([fallocate],
743 AS_HELP_STRING([--disable-fallocate], [do not build fallocate]),
744 [], enable_fallocate=check
745)
61a074f7 746UL_BUILD_INIT([fallocate])
10e56b49
KZ
747UL_REQUIRES_LINUX([fallocate])
748UL_REQUIRES_SYSCALL_CHECK([fallocate], [UL_CHECK_SYSCALL([fallocate])])
749AM_CONDITIONAL(BUILD_FALLOCATE, test "x$build_fallocate" = xyes)
750
751if test "x$build_fallocate" = xyes; then
752 dnl check for valid fallocate() function
753 dnl with 32 bits glibc 2.10, fallocate() exists but not fallocate64()
754 dnl when _FILE_OFFSET_BITS==64, fallocate() is redirect to fallocate64()
755 dnl and program can't be linked.
756 dnl AC_CHECK_FUNC can't catch such errors since it's redefining
757 dnl function prototype.
758 AC_MSG_CHECKING([for valid fallocate() function])
759 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
b832c2fe
YD
760#ifdef HAVE_UNISTD_H
761# include <unistd.h>
762#endif
763#ifdef HAVE_SYS_TYPES_H
764# include <sys/types.h>
765#endif
766#ifdef HAVE_LINUX_FALLOC_H
767# include <linux/falloc.h>
768#endif
769#ifdef HAVE_FCNTL_H
770# include <fcntl.h>
771#endif
772]],[[
773 long ret;
b832c2fe 774 ret = fallocate(0, FALLOC_FL_KEEP_SIZE, 0xfffffffful, 0xfffffffful);
b832c2fe
YD
775 if (ret != 0) {
776 return 1;
777 }
778 ]])],[
10e56b49
KZ
779 AC_MSG_RESULT([yes])
780 AC_DEFINE(HAVE_FALLOCATE,1,[Have valid fallocate() function])],[
781 AC_MSG_RESULT([no])])
782fi
783
19a224ad 784
a2ea6670
KZ
785AC_ARG_ENABLE([unshare],
786 AS_HELP_STRING([--disable-unshare], [do not build unshare]),
787 [], enable_unshare=check
788)
61a074f7 789UL_BUILD_INIT([unshare])
a2ea6670
KZ
790UL_REQUIRES_LINUX([unshare])
791UL_REQUIRES_SYSCALL_CHECK([unshare], [UL_CHECK_SYSCALL([unshare])])
792AM_CONDITIONAL(BUILD_UNSHARE, test "x$build_unshare" = xyes)
793if test "x$build_unshare" = xyes; then
794 AC_CHECK_FUNCS([unshare])
795fi
b3425806
SK
796
797
6a97809b
KZ
798AC_ARG_ENABLE([arch],
799 AS_HELP_STRING([--enable-arch], [do build arch]),
800 [], enable_arch=no
801)
61a074f7 802UL_BUILD_INIT([arch])
3c6e292c
KZ
803UL_REQUIRES_LINUX([arch])
804AM_CONDITIONAL(BUILD_ARCH, test "x$build_arch" = xyes)
805
48d7b13a 806
4a8962f3
KZ
807AC_ARG_ENABLE([ddate],
808 AS_HELP_STRING([--enable-ddate], [do build ddate]),
564cea2b 809 [], enable_ddate=no
4a8962f3 810)
61a074f7 811UL_BUILD_INIT([ddate])
0fc74be1
KZ
812AM_CONDITIONAL(BUILD_DDATE, test "x$build_ddate" = xyes)
813
4a8962f3 814
48d7b13a 815AC_ARG_ENABLE([agetty],
7fa4f112 816 AS_HELP_STRING([--disable-agetty], [do not build agetty]),
271d98e0 817 [], enable_agetty=yes
48d7b13a 818)
61a074f7 819UL_BUILD_INIT([agetty])
0fc74be1
KZ
820AM_CONDITIONAL(BUILD_AGETTY, test "x$build_agetty" = xyes)
821
48d7b13a 822
9cb68977 823AC_ARG_ENABLE([cramfs],
7fa4f112 824 AS_HELP_STRING([--disable-cramfs], [do not build fsck.cramfs, mkfs.cramfs]),
271d98e0 825 [], enable_cramfs=check
9cb68977 826)
61a074f7 827UL_BUILD_INIT([cramfs])
d81b5a52
KZ
828AC_CHECK_LIB(z, crc32, [have_z=yes], [have_z=no])
829UL_REQUIRES_HAVE([cramfs], [z], [z library])
49ccbae6 830AM_CONDITIONAL(BUILD_CRAMFS, test "x$build_cramfs" = xyes)
9cb68977 831
a13cdb7a 832
e09ebf22
KZ
833if test "x$have_io" = xyes -o "x$linux_os" = xyes; then
834 build_hwclock=yes
835fi
836AM_CONDITIONAL(BUILD_HWCLOCK, test "x$build_hwclock" = xyes)
837
838
61a074f7 839UL_BUILD_INIT([lsblk], [check])
a13cdb7a
KZ
840UL_REQUIRES_LINUX([lsblk])
841UL_REQUIRES_BUILD([lsblk], [libblkid])
7f7126d7 842AM_CONDITIONAL(BUILD_LSBLK, test "x$build_lsblk" = xyes)
9cb68977 843
a3d3b770 844
61a074f7 845UL_BUILD_INIT([lscpu], [check])
da396d88
KZ
846UL_REQUIRES_LINUX([lscpu])
847UL_REQUIRES_HAVE([lscpu], [cpu_set_t], [cpu_set_t type])
848AM_CONDITIONAL(BUILD_LSCPU, test "x$build_lscpu" = xyes)
849
a3d3b770 850
61a074f7 851UL_BUILD_INIT([chcpu], [check])
da396d88
KZ
852UL_REQUIRES_LINUX([chcpu])
853UL_REQUIRES_HAVE([chcpu], [cpu_set_t], [cpu_set_t type])
854AM_CONDITIONAL(BUILD_CHCPU, test "x$build_chcpu" = xyes)
855
a13cdb7a 856
945ac250
KZ
857UL_BUILD_INIT([prlimit], [check])
858UL_REQUIRES_LINUX([prlimit])
859UL_REQUIRES_SYSCALL_CHECK([prlimit], [UL_CHECK_SYSCALL([prlimit64])], [prlimit64])
860AM_CONDITIONAL(BUILD_PRLIMIT, test "x$build_prlimit" = xyes)
861if test "x$build_prlimit" = xyes; then
862 AC_CHECK_FUNCS([prlimit])
863fi
864
865
bd671347
KZ
866AC_ARG_ENABLE([switch_root],
867 AS_HELP_STRING([--disable-switch_root], [do not build switch_root]),
940fd28c 868 [], enable_switch_root=check
bd671347 869)
61a074f7 870UL_BUILD_INIT([switch_root])
a3d3b770
KZ
871UL_REQUIRES_LINUX([switch_root])
872UL_REQUIRES_HAVE([switch_root], [openat], [openat function])
940fd28c 873AM_CONDITIONAL(BUILD_SWITCH_ROOT, test "x$build_switch_root" = xyes)
bd671347
KZ
874
875
11125e7a
KZ
876AC_ARG_ENABLE([pivot_root],
877 AS_HELP_STRING([--disable-pivot_root], [do not build pivot_root]),
878 [], enable_pivot_root=check
879)
61a074f7 880UL_BUILD_INIT([pivot_root])
9f632667
KZ
881UL_REQUIRES_LINUX([switch_root])
882UL_REQUIRES_SYSCALL_CHECK([pivot_root], [UL_CHECK_SYSCALL([pivot_root])])
4a2ecf0a 883AM_CONDITIONAL(BUILD_PIVOT_ROOT, test "x$build_pivot_root" = xyes)
11125e7a
KZ
884
885
48d7b13a 886AC_ARG_ENABLE([elvtune],
7fa4f112 887 AS_HELP_STRING([--enable-elvtune], [build elvtune (only works with 2.2 and 2.4 kernels)]),
271d98e0 888 [], enable_elvtune=no
48d7b13a 889)
61a074f7 890UL_BUILD_INIT([elvtune])
b8d8c653
KZ
891UL_REQUIRES_LINUX([elvtune])
892AM_CONDITIONAL(BUILD_ELVTUNE, test "x$build_elvtune" = xyes)
893
48d7b13a 894
48d7b13a 895AC_ARG_ENABLE([kill],
4be753aa
KZ
896 AS_HELP_STRING([--disable-kill], [do not build kill]),
897 [], enable_kill=check
48d7b13a 898)
61a074f7 899UL_BUILD_INIT([kill])
4be753aa 900UL_REQUIRES_LINUX([kill])
49ccbae6 901AM_CONDITIONAL(BUILD_KILL, test "x$enable_kill" = xyes)
48d7b13a
KZ
902
903
904AC_ARG_ENABLE([last],
7fa4f112 905 AS_HELP_STRING([--enable-last], [build last]),
271d98e0 906 [], enable_last=no
48d7b13a 907)
61a074f7 908UL_BUILD_INIT([last])
2dc68529
KZ
909AM_CONDITIONAL(BUILD_LAST, test "x$build_last" = xyes)
910
48d7b13a 911
c135a8bd
SK
912AC_ARG_ENABLE([line],
913 AS_HELP_STRING([--enable-line], [build line]),
914 [], enable_line=no
915)
61a074f7 916UL_BUILD_INIT([line])
2dc68529
KZ
917AM_CONDITIONAL(BUILD_LINE, test "x$build_line" = xyes)
918
48d7b13a
KZ
919
920AC_ARG_ENABLE([mesg],
7fa4f112 921 AS_HELP_STRING([--enable-mesg], [build mesg]),
271d98e0 922 [], enable_mesg=no
48d7b13a 923)
61a074f7 924UL_BUILD_INIT([mesg])
2dc68529 925AM_CONDITIONAL(BUILD_MESG, test "x$build_mesg" = xyes)
48d7b13a
KZ
926
927
48d7b13a 928AC_ARG_ENABLE([raw],
7fa4f112 929 AS_HELP_STRING([--enable-raw], [build raw]),
16ba8d58 930 [], enable_raw=check
48d7b13a 931)
61a074f7 932UL_BUILD_INIT([raw])
16ba8d58
KZ
933UL_REQUIRES_LINUX([raw])
934UL_REQUIRES_HAVE([raw], [linux_raw_h], [raw.h header file])
935AM_CONDITIONAL(BUILD_RAW, test "x$build_raw" = xyes)
48d7b13a
KZ
936
937
48d7b13a 938AC_ARG_ENABLE([rename],
7fa4f112 939 AS_HELP_STRING([--disable-rename], [do not build rename]),
271d98e0 940 [], enable_rename=yes
48d7b13a 941)
61a074f7 942UL_BUILD_INIT([rename])
d1171542 943AM_CONDITIONAL(BUILD_RENAME, test "x$build_rename" = xyes)
48d7b13a
KZ
944
945
946AC_ARG_ENABLE([reset],
7fa4f112 947 AS_HELP_STRING([--enable-reset], [build reset]),
271d98e0 948 [], enable_reset=no
48d7b13a 949)
61a074f7 950UL_BUILD_INIT([reset])
d1171542 951AM_CONDITIONAL(BUILD_RESET, test "x$build_reset" = xyes)
48d7b13a
KZ
952
953
954AC_ARG_ENABLE([login-utils],
7fa4f112 955 AS_HELP_STRING([--enable-login-utils], [build chfn, chsh, login, newgrp, vipw]),
271d98e0 956 [], enable_login_utils=no
48d7b13a 957)
61a074f7 958UL_BUILD_INIT([login_utils])
ff0cb84d
KZ
959UL_REQUIRES_HAVE([login_utils], [security_pam_misc_h], [PAM header file])
960AM_CONDITIONAL(BUILD_LOGIN_UTILS, test "x$build_login_utils" = xyes)
9cb68977 961
c94b3604 962
f17f5f48 963
48d7b13a 964AC_ARG_ENABLE([schedutils],
7fa4f112 965 AS_HELP_STRING([--disable-schedutils], [do not build chrt, ionice, teskset]),
271d98e0 966 [], enable_schedutils=yes
48d7b13a 967)
61a074f7 968UL_BUILD_INIT([schedutils])
17d5e11b
KZ
969AM_CONDITIONAL(BUILD_SCHEDUTILS, test "x$build_schedutils" = xyes)
970
61a074f7 971UL_BUILD_INIT([ionice], [check])
17d5e11b
KZ
972UL_REQUIRES_BUILD([ionice], [schedutils])
973UL_REQUIRES_SYSCALL_CHECK([ionice],
974 [UL_CHECK_SYSCALL([ioprio_set],
975 [alpha], [442],
976 [i*86], [289],
977 [ia64*], [1274],
978 [powerpc*], [273],
979 [s390*], [282],
980 [sparc*], [196],
981 [sh*], [288],
982 [x86_64*], [251])],
983 [ioprio_set])
984
985UL_REQUIRES_SYSCALL_CHECK([ionice],
986 [UL_CHECK_SYSCALL([ioprio_get],
987 [alpha], [443],
988 [i*86], [290],
989 [ia64*], [1275],
990 [powerpc*], [274],
991 [s390*], [283],
992 [sparc*], [218],
993 [sh*], [289],
994 [x86_64*], [252])],
995 [ioprio_get])
996
997AM_CONDITIONAL(BUILD_IONICE, test "x$build_ionice" = xyes)
998
61a074f7 999UL_BUILD_INIT([taskset], [check])
17d5e11b
KZ
1000UL_REQUIRES_BUILD([taskset], [schedutils])
1001UL_REQUIRES_SYSCALL_CHECK([taskset],
1002 [UL_CHECK_SYSCALL([sched_getaffinity])],
1003 [sched_getaffinity])
1004AM_CONDITIONAL(BUILD_TASKSET, test "x$build_taskset" = xyes)
48d7b13a
KZ
1005
1006
1007AC_ARG_ENABLE([wall],
7fa4f112 1008 AS_HELP_STRING([--disable-wall], [do not build wall]),
271d98e0 1009 [], enable_wall=yes
48d7b13a 1010)
61a074f7 1011UL_BUILD_INIT([wasll])
f0898116 1012AM_CONDITIONAL(BUILD_WALL, test "x$build_wall" = xyes)
48d7b13a
KZ
1013
1014
1015AC_ARG_ENABLE([write],
7fa4f112 1016 AS_HELP_STRING([--enable-write], [build write]),
271d98e0 1017 [], enable_write=no
48d7b13a 1018)
61a074f7 1019UL_BUILD_INIT([write])
f0898116 1020AM_CONDITIONAL(BUILD_WRITE, test "x$build_write" = xyes)
48d7b13a
KZ
1021
1022
1023AC_ARG_ENABLE([chsh-only-listed],
7fa4f112 1024 AS_HELP_STRING([--disable-chsh-only-listed], [chsh: allow shells not in /etc/shells]),
271d98e0 1025 [], enable_chsh_only_listed=yes
48d7b13a
KZ
1026)
1027
49ccbae6 1028if test "x$enable_chsh_only_listed" = xyes; then
48d7b13a
KZ
1029 AC_DEFINE(ONLY_LISTED_SHELLS, 1, [Should chsh allow only shells in /etc/shells?])
1030fi
1031
1032
1033AC_ARG_ENABLE([login-chown-vcs],
7fa4f112 1034 AS_HELP_STRING([--enable-login-chown-vcs], [let login chown /dev/vcsN]),
271d98e0 1035 [], enable_login_chown_vcs=no
48d7b13a
KZ
1036)
1037
49ccbae6 1038if test "x$enable_login_chown_vcs" = xyes; then
48d7b13a
KZ
1039 AC_DEFINE(LOGIN_CHOWN_VCS, 1, [Should login chown /dev/vcsN?])
1040fi
1041
1042
1043AC_ARG_ENABLE([login-stat-mail],
7fa4f112 1044 AS_HELP_STRING([--enable-login-stat-mail], [let login stat() the mailbox]),
271d98e0 1045 [], enable_login_stat_mail=no
48d7b13a
KZ
1046)
1047
49ccbae6 1048if test "x$enable_login_stat_mail" = xyes; then
48d7b13a
KZ
1049 AC_DEFINE(LOGIN_STAT_MAIL, 1, [Should login stat() the mailbox?])
1050fi
1051
1052
1053AC_ARG_ENABLE([pg-bell],
7fa4f112 1054 AS_HELP_STRING([--disable-pg-bell], [let pg not ring the bell on invalid keys]),
271d98e0 1055 [], enable_pg_bell=yes
48d7b13a
KZ
1056)
1057
49ccbae6 1058if test "x$enable_pg_bell" = xyes; then
48d7b13a
KZ
1059 AC_DEFINE(PG_BELL, 1, [Should pg ring the bell on invalid keys?])
1060fi
1061
1062
1063AC_ARG_ENABLE([require-password],
7fa4f112 1064 AS_HELP_STRING([--disable-require-password], [do not require the user to enter the password in chfn and chsh]),
271d98e0 1065 [], enable_require_password=yes
48d7b13a
KZ
1066)
1067
49ccbae6 1068if test "x$enable_require_password" = xyes; then
48d7b13a
KZ
1069 AC_DEFINE(REQUIRE_PASSWORD, 1, [Should chfn and chsh require the user to enter the password?])
1070fi
1071
1072
bb4cb69d
MF
1073AC_DEFUN([FS_PATHS_DEFAULT], [/sbin:/sbin/fs.d:/sbin/fs])
1074AC_ARG_ENABLE([fs-paths-default],
1075 AS_HELP_STRING([--enable-fs-paths-default=paths], [default search path for fs helpers @<:@FS_PATHS_DEFAULT@:>@]),
1076 [case "$enableval" in
1077 yes) fs_paths_defaults="FS_PATHS_DEFAULT" ;;
1078 no) fs_paths_defaults="" ;;
1079 *) fs_paths_defaults="$enableval" ;;
1080 esac],
1081 [fs_paths_defaults="FS_PATHS_DEFAULT"]
1082)
1083AC_ARG_ENABLE([fs-paths-extra],
1084 AS_HELP_STRING([--enable-fs-paths-extra=paths], [additional search paths for fs helpers]),
1085 [case "$enableval" in
1086 yes|no) fs_paths_extra="" ;;
1087 *) fs_paths_extra="$enableval" ;;
1088 esac],
1089 [fs_paths_extra=""]
1090)
1091fs_paths="$fs_paths_defaults"
1092if test "x$fs_paths_extra" != "x"; then
1093 if test "x$fs_paths" != "x"; then
1094 fs_paths="${fs_paths}:"
1095 fi
1096 fs_paths="${fs_paths}${fs_paths_extra}"
1097fi
1098AC_DEFINE_UNQUOTED([FS_SEARCH_PATH], "$fs_paths", [search path for fs helpers])
1099
1100
48d7b13a 1101AC_ARG_ENABLE([use-tty-group],
7fa4f112 1102 AS_HELP_STRING([--disable-use-tty-group], [do not install wall and write setgid tty]),
271d98e0 1103 [], enable_use_tty_group=yes
48d7b13a 1104)
49ccbae6 1105AM_CONDITIONAL(USE_TTY_GROUP, test "x$enable_use_tty_group" = xyes)
48d7b13a 1106
49ccbae6 1107if test "x$enable_use_tty_group" = xyes; then
48d7b13a
KZ
1108 AC_DEFINE(USE_TTY_GROUP, 1, [Should wall and write be installed setgid tty?])
1109fi
1110
f3831bbd
KZ
1111AC_ARG_ENABLE([makeinstall-chown],
1112 AS_HELP_STRING([--disable-makeinstall-chown], [do not do chown-like operations during "make install"]),
1113 [], enable_makeinstall_chown=yes
1114)
49ccbae6 1115AM_CONDITIONAL(MAKEINSTALL_DO_CHOWN, test "x$enable_makeinstall_chown" = xyes)
f3831bbd 1116
4c24a7ae
KZ
1117AC_ARG_ENABLE([makeinstall-setuid],
1118 AS_HELP_STRING([--disable-makeinstall-setuid], [do not do setuid chmod operations during "make install"]),
1119 [], enable_makeinstall_setuid=yes
1120)
1121AM_CONDITIONAL(MAKEINSTALL_DO_SETUID, test "x$enable_makeinstall_setuid" = xyes)
1122
06bcee19 1123
1f10890f
SK
1124AC_ARG_VAR([SUID_CFLAGS],
1125 [CFLAGS used for binaries which are usually with the suid bit])
1126AC_ARG_VAR([SUID_LDFLAGS],
1127 [LDFLAGS used for binaries which are usually with the suid bit])
06bcee19 1128
9cb68977 1129LIBS=""
48d7b13a 1130
48d7b13a
KZ
1131
1132AC_CONFIG_HEADERS(config.h)
1133
8eeb575c 1134AC_CONFIG_FILES([
8eeb575c 1135disk-utils/Makefile
562218e6 1136fdisk/Makefile
607c2a72 1137fsck/Makefile
8eeb575c
KZ
1138getopt/Makefile
1139hwclock/Makefile
562218e6 1140include/Makefile
d00ed891 1141lib/Makefile
8eeb575c 1142login-utils/Makefile
20ad4963 1143Makefile
f331598a 1144man/ru/Makefile
20ad4963 1145misc-utils/chkdupexe:misc-utils/chkdupexe.pl
8eeb575c
KZ
1146misc-utils/Makefile
1147mount/Makefile
1148partx/Makefile
1149po/Makefile.in
1150schedutils/Makefile
8fb4efae
KZ
1151libblkid/blkid.pc
1152libblkid/Makefile
1153libblkid/docs/Makefile
1154libblkid/docs/version.xml
1155libblkid/src/Makefile
1156libblkid/src/blkid.h
1157libblkid/src/superblocks/Makefile
1158libblkid/src/topology/Makefile
1159libblkid/src/partitions/Makefile
1160libblkid/samples/Makefile
2aefc0a8
KZ
1161libmount/mount.pc
1162libmount/Makefile
1163libmount/src/Makefile
1164libmount/src/libmount.h
1165libmount/docs/Makefile
1166libmount/docs/version.xml
1167libmount/samples/Makefile
83d20837
KZ
1168libuuid/uuid.pc
1169libuuid/Makefile
1170libuuid/man/Makefile
1171libuuid/src/Makefile
8eeb575c 1172sys-utils/Makefile
c0f20acb 1173term-utils/Makefile
e83446da 1174tests/commands.sh
20ad4963
KZ
1175tests/helpers/Makefile
1176tests/Makefile
1177text-utils/Makefile
8eeb575c 1178])
48d7b13a 1179
996fb358 1180
48d7b13a 1181AC_OUTPUT