]> git.ipfire.org Git - thirdparty/util-linux.git/blame - configure.ac
mkfs.bfs: add setlocale
[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])
df5f3c54 9AM_INIT_AUTOMAKE([-Wall foreign 1.10 tar-pax dist-bzip2 no-dist-gzip dist-xz -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"
1e962459 25LIBBLKID_DATE="06-Feb-2012"
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 \
485a8bfa 266 scandirat \
a0948ffe 267 strtoull \
754fed0c
KZ
268 sysconf \
269 getdtablesize \
a804f444 270 getexecname \
754fed0c 271 getrlimit \
a1504d8b 272 sigqueue \
754fed0c 273 srandom \
69045d3d
KZ
274 setresgid \
275 setresuid \
69b7e41e
KZ
276 strndup \
277 strnlen \
278 strnchr \
fc7aeb09 279 inotify_init \
a0948ffe 280 prctl \
a67bb3bf 281 posix_fadvise \
acf6ab6f 282 getmntinfo \
a0948ffe 283 __secure_getenv \
eb76ca98
FG
284 warn \
285 warnx \
bf962c0a 286 rpmatch])
48d7b13a 287AC_FUNC_FSEEKO
48d7b13a 288
940fd28c 289AC_CHECK_FUNCS([openat fstatat unlinkat], [have_openat=yes], [have_openat=no])
465e9973 290AC_CHECK_FUNCS([ioperm iopl], [have_io=yes])
465e9973 291
754fed0c
KZ
292AC_CHECK_MEMBER(struct sockaddr.sa_len,
293 AC_DEFINE_UNQUOTED(HAVE_SA_LEN,1,[Define if struct sockaddr contains sa_len]),,
294 [#include <sys/types.h>
295 #include <sys/socket.h>])
296
60cc9f94
FG
297SOCKET_LIBS=
298AC_SEARCH_LIBS([gethostbyname], [nsl],
299 [if test x"$ac_cv_search_gethostbyname" != x"none required"; then
300 SOCKET_LIBS="$SOCKET_LIBS -lnsl";
301 fi])
302AC_SEARCH_LIBS([socket], [socket],
303 [if test x"$ac_cv_search_socket" != x"none required"; then
304 SOCKET_LIBS="$SOCKET_LIBS -lsocket";
305 fi])
306AC_SUBST([SOCKET_LIBS])
307
d58c47d9
FG
308
309have_dirfd=no
310AC_CHECK_FUNCS([dirfd], [have_dirfd=yes], [have_dirfd=no])
311if test x"$have_dirfd" = xno ; then
312 AC_CHECK_DECLS([dirfd],
313 [have_dirfd=yes], [have_dirfd=no],
314 [#include <sys/types.h>
315 #include <dirent.h>])
316fi
317
318have_ddfd=no
319if test x"$have_dirfd" = xno ; then
320 AC_CHECK_MEMBERS([DIR.dd_fd],
321 [have_ddfd=yes], [have_ddfd=no],
322 [#include <sys/types.h>
323 #include <dirent.h>])
324fi
325
326case "$have_dirfd:$have_ddfd" in
327no:no)
328 AC_MSG_ERROR([cannot find a method to get filedescriptor of directory]) ;;
329esac
330
331
a804f444
FG
332AC_MSG_CHECKING(whether program_invocation_short_name is defined)
333AC_TRY_COMPILE([#include <argp.h>],
334 [program_invocation_short_name = "test";],
335 AC_DEFINE(HAVE_PROGRAM_INVOCATION_SHORT_NAME, 1,
336 [Define if program_invocation_short_name is defined])
337 AC_MSG_RESULT(yes),
338 AC_MSG_RESULT(no))
339
340AC_MSG_CHECKING([whether __progname is defined])
341AC_LINK_IFELSE([AC_LANG_PROGRAM([extern char *__progname;],
342 [if (*__progname == 0) return;])],
343 AC_DEFINE(HAVE___PROGNAME, 1, [Define if __progname is defined])
344 AC_MSG_RESULT(yes),
345 AC_MSG_RESULT(no))
346
8569410c 347dnl Static compilation
132ea941 348m4_define([UL_STATIC_PROGRAMS], [losetup, mount, umount, fdisk, sfdisk, blkid])
8569410c
SK
349
350AC_ARG_ENABLE([static-programs],
351 [AS_HELP_STRING([--enable-static-programs=LIST],
352 [link static the programs in LIST (comma-separated,
132ea941 353 supported for ]m4_defn([UL_STATIC_PROGRAMS])[)])])
8569410c
SK
354
355case $enable_static_programs in
132ea941 356yes) enable_static_programs=m4_quote(UL_STATIC_PROGRAMS) ;;
8569410c
SK
357no) enable_static_programs= ;;
358esac
359
8569410c 360dnl Set all the individual AM_CONDITIONALs
132ea941 361m4_foreach([UL_PRG], m4_defn([UL_STATIC_PROGRAMS]), [
8569410c 362 case ,$enable_static_programs, in
132ea941 363 *,UL_PRG,*) static_[]UL_PRG=yes ;;
8569410c 364 esac
132ea941
KZ
365 AM_CONDITIONAL([HAVE_STATIC_]m4_toupper(UL_PRG),
366 [test "x$static_[]UL_PRG" = xyes])
8569410c
SK
367])
368
d7a01582 369AX_CHECK_TLS
3ac22f7a 370
13f5473e
KZ
371AC_DEFUN([UL_SCANF_TYPE_MODIFIER], [dnl
372# include <stdio.h>
373int main()
374{
375 int i;
376 char *s;
377 i = sscanf("x", $1, &s);
378 if (i == 1)
379 return 0;
380 return 1;
381}])
382
383AC_CACHE_VAL([scanf_cv_alloc_modifier],
384 AC_RUN_IFELSE([AC_LANG_SOURCE([UL_SCANF_TYPE_MODIFIER(["%ms"])])],
385 [scanf_cv_alloc_modifier=ms],
386 AC_RUN_IFELSE([AC_LANG_SOURCE([UL_SCANF_TYPE_MODIFIER(["%as"])])],
387 [scanf_cv_alloc_modifier=as],
388 [scanf_cv_alloc_modifier=no]
389 )
390 )
391)
392
393AC_MSG_CHECKING([scanf string alloc modifiers])
394case "$scanf_cv_alloc_modifier" in
395ms)
396 AC_MSG_RESULT([(%ms) yes])
397 AC_DEFINE([HAVE_SCANF_MS_MODIFIER], [1], [scanf %ms modifier])
398 have_scanf_alloc_modifier=yes
399 ;;
400as)
401 AC_MSG_RESULT([(%as) yes])
402 have_scanf_alloc_modifier=yes
403 AC_DEFINE([HAVE_SCANF_AS_MODIFIER], [1], [scanf %as modifier])
404 ;;
405*)
406 AC_MSG_RESULT([no])
407 have_scanf_alloc_modifier=no
408 ;;
409esac
410
3aecf79d
KZ
411UL_CHECK_LIB(util, openpty)
412UL_CHECK_LIB(termcap, tgetnum)
413
414AC_CHECK_TYPES([union semun], [], [], [[
415#include <sys/sem.h>
416]])
417AC_CHECK_TYPES(loff_t)
418
419AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
420#include <wchar.h>
421#include <wctype.h>
422#include <stdio.h>
423]], [[
424 wchar_t wc;
425 wint_t w;
426 w = fgetwc(stdin);
427 if (w == WEOF) exit(1);
428 wc = w;
429 fputwc(wc,stdout);
430]])],
431[AC_DEFINE(HAVE_WIDECHAR,1,Do we have wide character support?)
432])
433
434AC_CHECK_TYPES([cpu_set_t], [have_cpu_set_t=yes], [], [[
435#include <sched.h>
436]])
437
438AM_CONDITIONAL(HAVE_CPU_SET_T, [test "x$have_cpu_set_t" = xyes])
439
440AC_CHECK_DECLS([CPU_ALLOC], [], [], [[
441#include <sched.h>
442]])
443
8d35bdc9
KZ
444# on Solaris, you can't mix and match standards, since we use c99
445# aparently at this stage, XOPEN_SOURCE will conflict. As workaround,
446# check for crypt.h and use that without XOPEN_SOURCE.
447AC_CHECK_HEADERS([crypt.h])
448AC_LINK_IFELSE([AC_LANG_PROGRAM([[
449#ifdef HAVE_CRYPT_H
450#include <crypt.h>
451#else
452#define _XOPEN_SOURCE
453#include <unistd.h>
454#endif
455]], [[
456char *c = crypt("abc","pw");
457]])],[],[
458 LIBS="$LIBS -lcrypt"
459 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
460 #ifdef HAVE_CRYPT_H
461 #include <crypt.h>
462 #else
463 #define _XOPEN_SOURCE
464 #include <unistd.h>
465 #endif
466 ]], [[
467 char *c = crypt("abc","pw");
468 ]])],[
469 AC_DEFINE(HAVE_LIBCRYPT, 1, [Do we need -lcrypt?])
470 have_libcrypt=yes
471 ],[
472 AC_MSG_ERROR([crypt() is not available])
473 ])
474])
475AM_CONDITIONAL(HAVE_LIBCRYPT, test "x$have_libcrypt" = xyes)
476
13f5473e 477
75ad4910
KZ
478AC_ARG_WITH([selinux],
479 AS_HELP_STRING([--with-selinux], [compile with SELinux support]),
480 [], with_selinux=no
481)
482
483if test "x$with_selinux" = xno; then
484 AM_CONDITIONAL(HAVE_SELINUX, false)
485else
486 UL_CHECK_LIB(selinux, getprevcon)
487 case "$with_selinux:$have_selinux" in
488 yes:no) AC_MSG_ERROR([SELinux selected but libselinux not found]);;
489 esac
490fi
491
492if test "x$have_selinux" = xyes; then
493 SELINUX_LIBS="-lselinux -lsepol"
494 SELINUX_LIBS_STATIC="-lselinux -lsepol"
495 old_LDFLAGS="$LDFLAGS"
496 LDFLAGS="$LDFLAGS $SELINUX_LIBS"
497 # This function is missing in old libselinux 1.xx versions
498 AC_CHECK_FUNCS([security_get_initial_context])
499 LDFLAGS="$old_LDFLAGS"
500fi
501AC_SUBST([SELINUX_LIBS])
502AC_SUBST([SELINUX_LIBS_STATIC])
503
504AC_ARG_WITH([audit],
505 AS_HELP_STRING([--with-audit], [compile with audit support]),
506 [], with_audit=no
507)
508
509if test "x$with_audit" = xno; then
510 AM_CONDITIONAL(HAVE_AUDIT, false)
511else
512 UL_CHECK_LIB(audit, audit_log_user_message)
513 case "$with_audit:$have_audit" in
514 yes:no)
515 AC_MSG_ERROR([Audit selected but libaudit not found (or does not support audit_log_user_message())])
516 ;;
517 esac
518fi
519
520AC_ARG_WITH([udev], AS_HELP_STRING([--without-udev], [compile without udev support]),
521 [], with_udev=auto
522)
523
524if test "x$with_udev" = xno; then
525 AM_CONDITIONAL(HAVE_UDEV, false)
526else
527 UL_CHECK_LIB(udev, udev_new)
528 case "$with_udev:$have_udev" in
529 yes:no)
530 AC_MSG_ERROR([udev selected but libudev not found])
531 ;;
532 esac
533fi
534
535AC_ARG_WITH([ncurses],
536 AS_HELP_STRING([--with-ncurses], [build with non-wide ncurses, default is wide version
537 (--without-ncurses disables all ncurses(w) support)]),
538 [], with_ncurses=auto
539)
540AM_CONDITIONAL(HAVE_NCURSES, false)
541
542if test "x$with_ncurses" != xno; then
543 have_ncurses=no
544 AC_CHECK_HEADERS([ncurses.h ncurses/ncurses.h], [
545 if test "x$with_ncurses" = xauto; then
546 UL_CHECK_LIB(ncursesw, initscr, ncurses)
547 if test "x$have_ncurses" = xyes; then
548 AC_CHECK_HEADERS([ncursesw/ncurses.h])
549 NCURSES_LIBS="-lncursesw"
550 fi
551 fi
552 if test "x$have_ncurses" = xno; then
553 UL_CHECK_LIB(ncurses, initscr)
554 if test "x$have_ncurses" = xyes; then
555 NCURSES_LIBS="-lncurses"
556 fi
557 fi
558 ])
559 if test "x$have_ncurses" = xno; then
560 AC_MSG_ERROR([ncurses or ncursesw selected, but library not found (--without-ncurses to disable)])
561 fi
562fi
563AC_SUBST([NCURSES_LIBS])
564
565
566AC_ARG_WITH([slang],
567 AS_HELP_STRING([--with-slang], [compile cfdisk with slang]),
568 [], with_slang=no
569)
570
571have_tinfo=no
572AC_CHECK_LIB(tinfo, tgetent, [have_tinfo=yes])
573AM_CONDITIONAL(HAVE_TINFO, test "x$have_tinfo" = xyes)
574
575use_slang=no
576if test "x$with_slang" = xyes; then
577 AC_CHECK_HEADERS([slang.h slang/slang.h])
578 AC_CHECK_HEADERS([slcurses.h slang/slcurses.h],
579 [use_slang=yes], [], [
580#ifdef HAVE_SLANG_H
581#include <slang.h>
582#elif defined(HAVE_SLANG_SLANG_H)
583#include <slang/slang.h>
584#endif
585])
586 if test "x$use_slang" = xno; then
587 AC_MSG_ERROR([slang selected but slcurses.h not found])
588 fi
589fi
590AM_CONDITIONAL(USE_SLANG, test "x$use_slang" = xyes)
591
592
593AC_ARG_WITH([utempter],
594 AS_HELP_STRING([--with-utempter], [compile script(1) with libutempter]),
595 [], with_utempter=no
596)
597
598if test "x$with_utempter" = xyes; then
599 UL_CHECK_LIB(utempter, utempter_add_record)
600 if test "x$have_utempter" = xno; then
601 AC_MSG_ERROR([utempter selected but libutempter not found])
602 fi
603else
604 AM_CONDITIONAL(HAVE_UTEMPTER, false)
605fi
606
607
d17584b6
SK
608AC_ARG_ENABLE([most-builds],
609 AS_HELP_STRING([--enable-most-builds], [build everthing other than experimental code]),
610 [], enable_most_builds=no
611)
612if test "x$enable_most_builds" = xyes; then
613 enable_arch=yes
614 enable_ddate=yes
615 enable_elvtune=yes
616 enable_kill=yes
617 enable_last=yes
618 enable_line=yes
619 enable_mesg=yes
620 enable_raw=yes
621 enable_rename=yes
622 enable_reset=yes
623 enable_login_utils=yes
624 enable_write=yes
625fi
626
1dbbde66
KZ
627dnl
628dnl libuuid
629dnl
17afb032
KZ
630AC_ARG_ENABLE([libuuid],
631 AS_HELP_STRING([--disable-libuuid], [do not build libuuid and uuid utilities]),
632 [], enable_libuuid=yes
633)
fa7be20e 634UL_BUILD_INIT([libuuid])
dc2b8d87
KZ
635AC_SUBST([LIBUUID_VERSION])
636AC_SUBST([LIBUUID_VERSION_INFO])
fa7be20e 637AM_CONDITIONAL(BUILD_LIBUUID, test "x$build_libuuid" = xyes)
9dc801d2 638
403e2d0c 639if test "x$enable_libuuid" = xyes; then
17afb032
KZ
640 AC_DEFINE(HAVE_LIBUUID, 1, [Define to 1 if you have the -luuid.])
641else
642 AC_MSG_WARN([uuid library is not found; mkswap(8) will not generate UUIDs])
643fi
48d7b13a 644
1dbbde66
KZ
645dnl
646dnl libblkid
647dnl
f910b559 648AC_ARG_ENABLE([libblkid],
1d12ed57 649 AS_HELP_STRING([--disable-libblkid], [do not build libblkid and many related utilities]),
f910b559 650 [], enable_libblkid=yes
40f07ff7 651)
61a074f7 652UL_BUILD_INIT([libblkid])
033cf439 653AC_SUBST([LIBBLKID_DATE])
dc2b8d87
KZ
654AC_SUBST([LIBBLKID_VERSION])
655AC_SUBST([LIBBLKID_VERSION_INFO])
f910b559
KZ
656AC_DEFINE_UNQUOTED(LIBBLKID_VERSION, "$LIBBLKID_VERSION", [libblkid version string])
657AC_DEFINE_UNQUOTED(LIBBLKID_DATE, "$LIBBLKID_DATE", [libblkid date string])
4f3b364b 658if test "x$build_libblkid" = xyes; then
d06d028a 659 AC_DEFINE(HAVE_LIBBLKID, 1, [Define to 1 if you have the -lblkid.])
64754af9 660fi
4f3b364b 661AM_CONDITIONAL(BUILD_LIBBLKID, test "x$build_libblkid" = xyes)
f910b559 662
1dbbde66
KZ
663dnl
664dnl libmount
665dnl
f1cde479
KZ
666AC_ARG_ENABLE([libmount],
667 AS_HELP_STRING([--disable-libmount], [do not build libmount]),
a2b3d040 668 [], enable_libmount=check
f1cde479 669)
61a074f7 670UL_BUILD_INIT([libmount])
13f5473e
KZ
671UL_REQUIRES_LINUX([libmount])
672UL_REQUIRES_BUILD([libmount], [libblkid])
673UL_REQUIRES_HAVE([libmount], [scanf_alloc_modifier], [scanf string alloc modifier])
674AM_CONDITIONAL(BUILD_LIBMOUNT, test "x$build_libmount" = xyes)
8e368761 675
f1cde479
KZ
676AC_SUBST([LIBMOUNT_VERSION])
677AC_SUBST([LIBMOUNT_VERSION_INFO])
f4ab4ae8 678AC_DEFINE_UNQUOTED(LIBMOUNT_VERSION, "$LIBMOUNT_VERSION", [libmount version string])
13f5473e 679
f1cde479 680
1dbbde66
KZ
681AC_ARG_ENABLE([mount],
682 AS_HELP_STRING([--disable-mount], [do not build mount utilities]),
683 [], enable_mount=check
684)
61a074f7 685UL_BUILD_INIT([mount])
9ead6701
KZ
686UL_REQUIRES_LINUX([mount])
687UL_REQUIRES_BUILD([mount], [libblkid])
1dbbde66
KZ
688AM_CONDITIONAL(BUILD_MOUNT, test "x$build_mount" = xyes)
689
690
bd6d0d03
KZ
691AC_ARG_ENABLE([losetup],
692 AS_HELP_STRING([--disable-losetup], [do not build losetup]),
693 [], enable_losetup=check
694)
695UL_BUILD_INIT([losetup])
696UL_REQUIRES_LINUX([losetup])
697AM_CONDITIONAL(BUILD_LOSETUP, test "x$build_losetup" = xyes)
698
699
9ead6701 700AC_ARG_ENABLE([libmount-mount],
ecdba5dd 701 AS_HELP_STRING([--enable-libmount-mount], [link old mount(8) with libmount]),
9ead6701
KZ
702 [], enable_libmount_mount=no
703)
61a074f7 704UL_BUILD_INIT([libmount_mount])
9ead6701
KZ
705UL_REQUIRES_BUILD([libmount_mount], [mount])
706UL_REQUIRES_BUILD([libmount_mount], [libmount])
707if test "x$build_libmount_mount" = xyes; then
708 AC_DEFINE(HAVE_LIBMOUNT_MOUNT, 1, [use libmount for mount(8)])
709fi
710AM_CONDITIONAL(BUILD_LIBMOUNT_MOUNT, test "x$build_libmount_mount" = xyes)
711
712
ecdba5dd
KZ
713AC_ARG_ENABLE([new-mount],
714 AS_HELP_STRING([--enable-new-mount], [build new pure libmount based mount(8) (EXPERIMENTAL)]),
715 [], enable_new_mount=no
716)
717UL_BUILD_INIT([new_mount])
718UL_REQUIRES_BUILD([new_mount], [libmount])
719if test "x$build_new_mount" = xyes; then
720 AM_CONDITIONAL(BUILD_MOUNT, [false])
721fi
722AM_CONDITIONAL(BUILD_NEW_MOUNT, test "x$build_new_mount" = xyes)
723
724
1dbbde66
KZ
725AC_ARG_ENABLE([fsck],
726 AS_HELP_STRING([--disable-fsck], [do not build fsck]),
1d12ed57 727 [], enable_fsck=check
1dbbde66 728)
61a074f7 729UL_BUILD_INIT([fsck])
1d12ed57
KZ
730UL_REQUIRES_BUILD([fsck], [libblkid])
731AM_CONDITIONAL(BUILD_FSCK, test "x$build_fsck" = xyes)
1dbbde66
KZ
732
733
734AC_ARG_ENABLE([partx],
735 AS_HELP_STRING([--disable-partx], [do not build addpart, delpart, partx]),
736 [], enable_partx=check
737)
61a074f7 738UL_BUILD_INIT([partx])
ecde2536
KZ
739UL_REQUIRES_LINUX([partx])
740UL_REQUIRES_BUILD([partx], [libblkid])
1dbbde66
KZ
741AM_CONDITIONAL(BUILD_PARTX, test "x$build_partx" = xyes)
742
743
1dbbde66
KZ
744AC_ARG_ENABLE([uuidd],
745 AS_HELP_STRING([--disable-uuidd], [do not build the uuid daemon]),
bcdab497 746 [], enable_uuidd=check
1dbbde66 747)
61a074f7 748UL_BUILD_INIT([uuidd])
bcdab497
KZ
749UL_REQUIRES_BUILD([uuidd], [libuuid])
750if test "x$build_uuidd" = xyes; then
1dbbde66
KZ
751 AC_DEFINE(HAVE_UUIDD, 1, [Define to 1 if you want to use uuid daemon.])
752fi
bcdab497 753AM_CONDITIONAL(BUILD_UUIDD, test "x$build_uuidd" = xyes)
1dbbde66
KZ
754
755
0164c245 756AC_ARG_ENABLE([mountpoint],
2023ccc4 757 AS_HELP_STRING([--disable-mountpoint], [do not build mountpoint]),
3d92ed40 758 [], enable_mountpoint=check
0164c245 759)
61a074f7 760UL_BUILD_INIT([mountpoint])
a9127bc1 761UL_REQUIRES_BUILD([mountpoint], [libmount])
3d92ed40 762AM_CONDITIONAL(BUILD_MOUNTPOINT, test "x$build_mountpoint" = xyes)
0164c245
KZ
763
764
10e56b49
KZ
765AC_ARG_ENABLE([fallocate],
766 AS_HELP_STRING([--disable-fallocate], [do not build fallocate]),
767 [], enable_fallocate=check
768)
61a074f7 769UL_BUILD_INIT([fallocate])
10e56b49
KZ
770UL_REQUIRES_LINUX([fallocate])
771UL_REQUIRES_SYSCALL_CHECK([fallocate], [UL_CHECK_SYSCALL([fallocate])])
772AM_CONDITIONAL(BUILD_FALLOCATE, test "x$build_fallocate" = xyes)
773
774if test "x$build_fallocate" = xyes; then
775 dnl check for valid fallocate() function
776 dnl with 32 bits glibc 2.10, fallocate() exists but not fallocate64()
777 dnl when _FILE_OFFSET_BITS==64, fallocate() is redirect to fallocate64()
778 dnl and program can't be linked.
779 dnl AC_CHECK_FUNC can't catch such errors since it's redefining
780 dnl function prototype.
781 AC_MSG_CHECKING([for valid fallocate() function])
782 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
b832c2fe
YD
783#ifdef HAVE_UNISTD_H
784# include <unistd.h>
785#endif
786#ifdef HAVE_SYS_TYPES_H
787# include <sys/types.h>
788#endif
789#ifdef HAVE_LINUX_FALLOC_H
790# include <linux/falloc.h>
791#endif
792#ifdef HAVE_FCNTL_H
793# include <fcntl.h>
794#endif
795]],[[
796 long ret;
b832c2fe 797 ret = fallocate(0, FALLOC_FL_KEEP_SIZE, 0xfffffffful, 0xfffffffful);
b832c2fe
YD
798 if (ret != 0) {
799 return 1;
800 }
801 ]])],[
10e56b49
KZ
802 AC_MSG_RESULT([yes])
803 AC_DEFINE(HAVE_FALLOCATE,1,[Have valid fallocate() function])],[
804 AC_MSG_RESULT([no])])
805fi
806
19a224ad 807
a2ea6670
KZ
808AC_ARG_ENABLE([unshare],
809 AS_HELP_STRING([--disable-unshare], [do not build unshare]),
810 [], enable_unshare=check
811)
61a074f7 812UL_BUILD_INIT([unshare])
a2ea6670
KZ
813UL_REQUIRES_LINUX([unshare])
814UL_REQUIRES_SYSCALL_CHECK([unshare], [UL_CHECK_SYSCALL([unshare])])
815AM_CONDITIONAL(BUILD_UNSHARE, test "x$build_unshare" = xyes)
816if test "x$build_unshare" = xyes; then
817 AC_CHECK_FUNCS([unshare])
818fi
b3425806
SK
819
820
6a97809b
KZ
821AC_ARG_ENABLE([arch],
822 AS_HELP_STRING([--enable-arch], [do build arch]),
823 [], enable_arch=no
824)
61a074f7 825UL_BUILD_INIT([arch])
3c6e292c
KZ
826UL_REQUIRES_LINUX([arch])
827AM_CONDITIONAL(BUILD_ARCH, test "x$build_arch" = xyes)
828
48d7b13a 829
4a8962f3
KZ
830AC_ARG_ENABLE([ddate],
831 AS_HELP_STRING([--enable-ddate], [do build ddate]),
564cea2b 832 [], enable_ddate=no
4a8962f3 833)
61a074f7 834UL_BUILD_INIT([ddate])
0fc74be1
KZ
835AM_CONDITIONAL(BUILD_DDATE, test "x$build_ddate" = xyes)
836
4a8962f3 837
48d7b13a 838AC_ARG_ENABLE([agetty],
7fa4f112 839 AS_HELP_STRING([--disable-agetty], [do not build agetty]),
271d98e0 840 [], enable_agetty=yes
48d7b13a 841)
61a074f7 842UL_BUILD_INIT([agetty])
0fc74be1
KZ
843AM_CONDITIONAL(BUILD_AGETTY, test "x$build_agetty" = xyes)
844
48d7b13a 845
9cb68977 846AC_ARG_ENABLE([cramfs],
7fa4f112 847 AS_HELP_STRING([--disable-cramfs], [do not build fsck.cramfs, mkfs.cramfs]),
271d98e0 848 [], enable_cramfs=check
9cb68977 849)
61a074f7 850UL_BUILD_INIT([cramfs])
d81b5a52
KZ
851AC_CHECK_LIB(z, crc32, [have_z=yes], [have_z=no])
852UL_REQUIRES_HAVE([cramfs], [z], [z library])
49ccbae6 853AM_CONDITIONAL(BUILD_CRAMFS, test "x$build_cramfs" = xyes)
9cb68977 854
a13cdb7a 855
e09ebf22
KZ
856if test "x$have_io" = xyes -o "x$linux_os" = xyes; then
857 build_hwclock=yes
858fi
859AM_CONDITIONAL(BUILD_HWCLOCK, test "x$build_hwclock" = xyes)
860
861
143635c9
KZ
862UL_BUILD_INIT([swapon], [check])
863UL_REQUIRES_LINUX([swapon])
864UL_REQUIRES_BUILD([swapon], [libblkid])
865AM_CONDITIONAL(BUILD_SWAPON, test "x$build_swapon" = xyes)
866
867
61a074f7 868UL_BUILD_INIT([lsblk], [check])
a13cdb7a
KZ
869UL_REQUIRES_LINUX([lsblk])
870UL_REQUIRES_BUILD([lsblk], [libblkid])
7f7126d7 871AM_CONDITIONAL(BUILD_LSBLK, test "x$build_lsblk" = xyes)
9cb68977 872
a3d3b770 873
61a074f7 874UL_BUILD_INIT([lscpu], [check])
da396d88
KZ
875UL_REQUIRES_LINUX([lscpu])
876UL_REQUIRES_HAVE([lscpu], [cpu_set_t], [cpu_set_t type])
877AM_CONDITIONAL(BUILD_LSCPU, test "x$build_lscpu" = xyes)
878
a3d3b770 879
61a074f7 880UL_BUILD_INIT([chcpu], [check])
da396d88
KZ
881UL_REQUIRES_LINUX([chcpu])
882UL_REQUIRES_HAVE([chcpu], [cpu_set_t], [cpu_set_t type])
883AM_CONDITIONAL(BUILD_CHCPU, test "x$build_chcpu" = xyes)
884
a13cdb7a 885
945ac250
KZ
886UL_BUILD_INIT([prlimit], [check])
887UL_REQUIRES_LINUX([prlimit])
888UL_REQUIRES_SYSCALL_CHECK([prlimit], [UL_CHECK_SYSCALL([prlimit64])], [prlimit64])
889AM_CONDITIONAL(BUILD_PRLIMIT, test "x$build_prlimit" = xyes)
890if test "x$build_prlimit" = xyes; then
891 AC_CHECK_FUNCS([prlimit])
892fi
893
894
bd671347
KZ
895AC_ARG_ENABLE([switch_root],
896 AS_HELP_STRING([--disable-switch_root], [do not build switch_root]),
940fd28c 897 [], enable_switch_root=check
bd671347 898)
61a074f7 899UL_BUILD_INIT([switch_root])
a3d3b770
KZ
900UL_REQUIRES_LINUX([switch_root])
901UL_REQUIRES_HAVE([switch_root], [openat], [openat function])
940fd28c 902AM_CONDITIONAL(BUILD_SWITCH_ROOT, test "x$build_switch_root" = xyes)
bd671347
KZ
903
904
11125e7a
KZ
905AC_ARG_ENABLE([pivot_root],
906 AS_HELP_STRING([--disable-pivot_root], [do not build pivot_root]),
907 [], enable_pivot_root=check
908)
61a074f7 909UL_BUILD_INIT([pivot_root])
9f632667
KZ
910UL_REQUIRES_LINUX([switch_root])
911UL_REQUIRES_SYSCALL_CHECK([pivot_root], [UL_CHECK_SYSCALL([pivot_root])])
4a2ecf0a 912AM_CONDITIONAL(BUILD_PIVOT_ROOT, test "x$build_pivot_root" = xyes)
11125e7a
KZ
913
914
48d7b13a 915AC_ARG_ENABLE([elvtune],
7fa4f112 916 AS_HELP_STRING([--enable-elvtune], [build elvtune (only works with 2.2 and 2.4 kernels)]),
271d98e0 917 [], enable_elvtune=no
48d7b13a 918)
61a074f7 919UL_BUILD_INIT([elvtune])
b8d8c653
KZ
920UL_REQUIRES_LINUX([elvtune])
921AM_CONDITIONAL(BUILD_ELVTUNE, test "x$build_elvtune" = xyes)
922
48d7b13a 923
48d7b13a 924AC_ARG_ENABLE([kill],
4be753aa
KZ
925 AS_HELP_STRING([--disable-kill], [do not build kill]),
926 [], enable_kill=check
48d7b13a 927)
61a074f7 928UL_BUILD_INIT([kill])
4be753aa 929UL_REQUIRES_LINUX([kill])
49ccbae6 930AM_CONDITIONAL(BUILD_KILL, test "x$enable_kill" = xyes)
48d7b13a
KZ
931
932
933AC_ARG_ENABLE([last],
7fa4f112 934 AS_HELP_STRING([--enable-last], [build last]),
271d98e0 935 [], enable_last=no
48d7b13a 936)
61a074f7 937UL_BUILD_INIT([last])
2dc68529
KZ
938AM_CONDITIONAL(BUILD_LAST, test "x$build_last" = xyes)
939
48d7b13a 940
c135a8bd
SK
941AC_ARG_ENABLE([line],
942 AS_HELP_STRING([--enable-line], [build line]),
943 [], enable_line=no
944)
61a074f7 945UL_BUILD_INIT([line])
2dc68529
KZ
946AM_CONDITIONAL(BUILD_LINE, test "x$build_line" = xyes)
947
48d7b13a
KZ
948
949AC_ARG_ENABLE([mesg],
7fa4f112 950 AS_HELP_STRING([--enable-mesg], [build mesg]),
271d98e0 951 [], enable_mesg=no
48d7b13a 952)
61a074f7 953UL_BUILD_INIT([mesg])
2dc68529 954AM_CONDITIONAL(BUILD_MESG, test "x$build_mesg" = xyes)
48d7b13a
KZ
955
956
48d7b13a 957AC_ARG_ENABLE([raw],
7fa4f112 958 AS_HELP_STRING([--enable-raw], [build raw]),
16ba8d58 959 [], enable_raw=check
48d7b13a 960)
61a074f7 961UL_BUILD_INIT([raw])
16ba8d58
KZ
962UL_REQUIRES_LINUX([raw])
963UL_REQUIRES_HAVE([raw], [linux_raw_h], [raw.h header file])
964AM_CONDITIONAL(BUILD_RAW, test "x$build_raw" = xyes)
48d7b13a
KZ
965
966
48d7b13a 967AC_ARG_ENABLE([rename],
7fa4f112 968 AS_HELP_STRING([--disable-rename], [do not build rename]),
271d98e0 969 [], enable_rename=yes
48d7b13a 970)
61a074f7 971UL_BUILD_INIT([rename])
d1171542 972AM_CONDITIONAL(BUILD_RENAME, test "x$build_rename" = xyes)
48d7b13a
KZ
973
974
975AC_ARG_ENABLE([reset],
7fa4f112 976 AS_HELP_STRING([--enable-reset], [build reset]),
271d98e0 977 [], enable_reset=no
48d7b13a 978)
61a074f7 979UL_BUILD_INIT([reset])
d1171542 980AM_CONDITIONAL(BUILD_RESET, test "x$build_reset" = xyes)
48d7b13a
KZ
981
982
983AC_ARG_ENABLE([login-utils],
7fa4f112 984 AS_HELP_STRING([--enable-login-utils], [build chfn, chsh, login, newgrp, vipw]),
271d98e0 985 [], enable_login_utils=no
48d7b13a 986)
61a074f7 987UL_BUILD_INIT([login_utils])
ff0cb84d
KZ
988UL_REQUIRES_HAVE([login_utils], [security_pam_misc_h], [PAM header file])
989AM_CONDITIONAL(BUILD_LOGIN_UTILS, test "x$build_login_utils" = xyes)
9cb68977 990
c94b3604 991
f17f5f48 992
48d7b13a 993AC_ARG_ENABLE([schedutils],
7fa4f112 994 AS_HELP_STRING([--disable-schedutils], [do not build chrt, ionice, teskset]),
271d98e0 995 [], enable_schedutils=yes
48d7b13a 996)
61a074f7 997UL_BUILD_INIT([schedutils])
17d5e11b
KZ
998AM_CONDITIONAL(BUILD_SCHEDUTILS, test "x$build_schedutils" = xyes)
999
61a074f7 1000UL_BUILD_INIT([ionice], [check])
17d5e11b
KZ
1001UL_REQUIRES_BUILD([ionice], [schedutils])
1002UL_REQUIRES_SYSCALL_CHECK([ionice],
1003 [UL_CHECK_SYSCALL([ioprio_set],
1004 [alpha], [442],
1005 [i*86], [289],
1006 [ia64*], [1274],
1007 [powerpc*], [273],
1008 [s390*], [282],
1009 [sparc*], [196],
1010 [sh*], [288],
1011 [x86_64*], [251])],
1012 [ioprio_set])
1013
1014UL_REQUIRES_SYSCALL_CHECK([ionice],
1015 [UL_CHECK_SYSCALL([ioprio_get],
1016 [alpha], [443],
1017 [i*86], [290],
1018 [ia64*], [1275],
1019 [powerpc*], [274],
1020 [s390*], [283],
1021 [sparc*], [218],
1022 [sh*], [289],
1023 [x86_64*], [252])],
1024 [ioprio_get])
1025
1026AM_CONDITIONAL(BUILD_IONICE, test "x$build_ionice" = xyes)
1027
61a074f7 1028UL_BUILD_INIT([taskset], [check])
17d5e11b
KZ
1029UL_REQUIRES_BUILD([taskset], [schedutils])
1030UL_REQUIRES_SYSCALL_CHECK([taskset],
1031 [UL_CHECK_SYSCALL([sched_getaffinity])],
1032 [sched_getaffinity])
1033AM_CONDITIONAL(BUILD_TASKSET, test "x$build_taskset" = xyes)
48d7b13a
KZ
1034
1035
1036AC_ARG_ENABLE([wall],
7fa4f112 1037 AS_HELP_STRING([--disable-wall], [do not build wall]),
271d98e0 1038 [], enable_wall=yes
48d7b13a 1039)
61a074f7 1040UL_BUILD_INIT([wasll])
f0898116 1041AM_CONDITIONAL(BUILD_WALL, test "x$build_wall" = xyes)
48d7b13a
KZ
1042
1043
1044AC_ARG_ENABLE([write],
7fa4f112 1045 AS_HELP_STRING([--enable-write], [build write]),
271d98e0 1046 [], enable_write=no
48d7b13a 1047)
61a074f7 1048UL_BUILD_INIT([write])
f0898116 1049AM_CONDITIONAL(BUILD_WRITE, test "x$build_write" = xyes)
48d7b13a
KZ
1050
1051
1052AC_ARG_ENABLE([chsh-only-listed],
7fa4f112 1053 AS_HELP_STRING([--disable-chsh-only-listed], [chsh: allow shells not in /etc/shells]),
271d98e0 1054 [], enable_chsh_only_listed=yes
48d7b13a
KZ
1055)
1056
49ccbae6 1057if test "x$enable_chsh_only_listed" = xyes; then
48d7b13a
KZ
1058 AC_DEFINE(ONLY_LISTED_SHELLS, 1, [Should chsh allow only shells in /etc/shells?])
1059fi
1060
1061
1062AC_ARG_ENABLE([login-chown-vcs],
7fa4f112 1063 AS_HELP_STRING([--enable-login-chown-vcs], [let login chown /dev/vcsN]),
271d98e0 1064 [], enable_login_chown_vcs=no
48d7b13a
KZ
1065)
1066
49ccbae6 1067if test "x$enable_login_chown_vcs" = xyes; then
48d7b13a
KZ
1068 AC_DEFINE(LOGIN_CHOWN_VCS, 1, [Should login chown /dev/vcsN?])
1069fi
1070
1071
1072AC_ARG_ENABLE([login-stat-mail],
7fa4f112 1073 AS_HELP_STRING([--enable-login-stat-mail], [let login stat() the mailbox]),
271d98e0 1074 [], enable_login_stat_mail=no
48d7b13a
KZ
1075)
1076
49ccbae6 1077if test "x$enable_login_stat_mail" = xyes; then
48d7b13a
KZ
1078 AC_DEFINE(LOGIN_STAT_MAIL, 1, [Should login stat() the mailbox?])
1079fi
1080
1081
1082AC_ARG_ENABLE([pg-bell],
7fa4f112 1083 AS_HELP_STRING([--disable-pg-bell], [let pg not ring the bell on invalid keys]),
271d98e0 1084 [], enable_pg_bell=yes
48d7b13a
KZ
1085)
1086
49ccbae6 1087if test "x$enable_pg_bell" = xyes; then
48d7b13a
KZ
1088 AC_DEFINE(PG_BELL, 1, [Should pg ring the bell on invalid keys?])
1089fi
1090
1091
1092AC_ARG_ENABLE([require-password],
7fa4f112 1093 AS_HELP_STRING([--disable-require-password], [do not require the user to enter the password in chfn and chsh]),
271d98e0 1094 [], enable_require_password=yes
48d7b13a
KZ
1095)
1096
49ccbae6 1097if test "x$enable_require_password" = xyes; then
48d7b13a
KZ
1098 AC_DEFINE(REQUIRE_PASSWORD, 1, [Should chfn and chsh require the user to enter the password?])
1099fi
1100
1101
bb4cb69d
MF
1102AC_DEFUN([FS_PATHS_DEFAULT], [/sbin:/sbin/fs.d:/sbin/fs])
1103AC_ARG_ENABLE([fs-paths-default],
1104 AS_HELP_STRING([--enable-fs-paths-default=paths], [default search path for fs helpers @<:@FS_PATHS_DEFAULT@:>@]),
1105 [case "$enableval" in
1106 yes) fs_paths_defaults="FS_PATHS_DEFAULT" ;;
1107 no) fs_paths_defaults="" ;;
1108 *) fs_paths_defaults="$enableval" ;;
1109 esac],
1110 [fs_paths_defaults="FS_PATHS_DEFAULT"]
1111)
1112AC_ARG_ENABLE([fs-paths-extra],
1113 AS_HELP_STRING([--enable-fs-paths-extra=paths], [additional search paths for fs helpers]),
1114 [case "$enableval" in
1115 yes|no) fs_paths_extra="" ;;
1116 *) fs_paths_extra="$enableval" ;;
1117 esac],
1118 [fs_paths_extra=""]
1119)
1120fs_paths="$fs_paths_defaults"
1121if test "x$fs_paths_extra" != "x"; then
1122 if test "x$fs_paths" != "x"; then
1123 fs_paths="${fs_paths}:"
1124 fi
1125 fs_paths="${fs_paths}${fs_paths_extra}"
1126fi
1127AC_DEFINE_UNQUOTED([FS_SEARCH_PATH], "$fs_paths", [search path for fs helpers])
1128
1129
48d7b13a 1130AC_ARG_ENABLE([use-tty-group],
7fa4f112 1131 AS_HELP_STRING([--disable-use-tty-group], [do not install wall and write setgid tty]),
271d98e0 1132 [], enable_use_tty_group=yes
48d7b13a 1133)
49ccbae6 1134AM_CONDITIONAL(USE_TTY_GROUP, test "x$enable_use_tty_group" = xyes)
48d7b13a 1135
49ccbae6 1136if test "x$enable_use_tty_group" = xyes; then
48d7b13a
KZ
1137 AC_DEFINE(USE_TTY_GROUP, 1, [Should wall and write be installed setgid tty?])
1138fi
1139
f3831bbd
KZ
1140AC_ARG_ENABLE([makeinstall-chown],
1141 AS_HELP_STRING([--disable-makeinstall-chown], [do not do chown-like operations during "make install"]),
1142 [], enable_makeinstall_chown=yes
1143)
49ccbae6 1144AM_CONDITIONAL(MAKEINSTALL_DO_CHOWN, test "x$enable_makeinstall_chown" = xyes)
f3831bbd 1145
4c24a7ae
KZ
1146AC_ARG_ENABLE([makeinstall-setuid],
1147 AS_HELP_STRING([--disable-makeinstall-setuid], [do not do setuid chmod operations during "make install"]),
1148 [], enable_makeinstall_setuid=yes
1149)
1150AM_CONDITIONAL(MAKEINSTALL_DO_SETUID, test "x$enable_makeinstall_setuid" = xyes)
1151
06bcee19 1152
1f10890f
SK
1153AC_ARG_VAR([SUID_CFLAGS],
1154 [CFLAGS used for binaries which are usually with the suid bit])
1155AC_ARG_VAR([SUID_LDFLAGS],
1156 [LDFLAGS used for binaries which are usually with the suid bit])
06bcee19 1157
9cb68977 1158LIBS=""
48d7b13a 1159
48d7b13a
KZ
1160
1161AC_CONFIG_HEADERS(config.h)
1162
8eeb575c 1163AC_CONFIG_FILES([
8eeb575c 1164disk-utils/Makefile
562218e6 1165fdisk/Makefile
607c2a72 1166fsck/Makefile
8eeb575c
KZ
1167getopt/Makefile
1168hwclock/Makefile
562218e6 1169include/Makefile
d00ed891 1170lib/Makefile
8eeb575c 1171login-utils/Makefile
20ad4963 1172Makefile
f331598a 1173man/ru/Makefile
20ad4963 1174misc-utils/chkdupexe:misc-utils/chkdupexe.pl
8eeb575c
KZ
1175misc-utils/Makefile
1176mount/Makefile
1177partx/Makefile
1178po/Makefile.in
1179schedutils/Makefile
8fb4efae
KZ
1180libblkid/blkid.pc
1181libblkid/Makefile
1182libblkid/docs/Makefile
1183libblkid/docs/version.xml
1184libblkid/src/Makefile
1185libblkid/src/blkid.h
1186libblkid/src/superblocks/Makefile
1187libblkid/src/topology/Makefile
1188libblkid/src/partitions/Makefile
1189libblkid/samples/Makefile
2aefc0a8
KZ
1190libmount/mount.pc
1191libmount/Makefile
1192libmount/src/Makefile
1193libmount/src/libmount.h
1194libmount/docs/Makefile
1195libmount/docs/version.xml
83d20837
KZ
1196libuuid/uuid.pc
1197libuuid/Makefile
1198libuuid/man/Makefile
1199libuuid/src/Makefile
8eeb575c 1200sys-utils/Makefile
c0f20acb 1201term-utils/Makefile
e83446da 1202tests/commands.sh
20ad4963
KZ
1203tests/helpers/Makefile
1204tests/Makefile
1205text-utils/Makefile
8eeb575c 1206])
48d7b13a 1207
996fb358 1208
48d7b13a 1209AC_OUTPUT