dnl libblkid version
LIBBLKID_VERSION="$PACKAGE_VERSION_MAJOR.$PACKAGE_VERSION_MINOR.$PACKAGE_VERSION_RELEASE"
-LIBBLKID_DATE="13-Feb-2018"
+LIBBLKID_DATE="21-Jan-2020"
LIBBLKID_LT_MAJOR=1
LIBBLKID_LT_MINOR=1
LIBBLKID_LT_MICRO=0
AS_CASE([$bindir], ['${exec_prefix}/bin'], [bindir=/bin; AC_MSG_NOTICE([ --bindir defaults to /bin]) ])
AS_CASE([$sbindir], ['${exec_prefix}/sbin'], [sbindir=/sbin; AC_MSG_NOTICE([ --sbindir defaults to /sbin])])
AS_CASE([$libdir], ['${exec_prefix}/lib'], [libdir=/lib; AC_MSG_NOTICE([ --libdir defaults to /lib]) ])
+ AS_CASE([$libdir], ['${exec_prefix}/lib64'],[libdir=/lib64; AC_MSG_NOTICE([ --libdir defaults to /lib64]) ])
]
)
)
AC_SUBST([usrlib_execdir])
+# static configuration maintaned by packages (e.g. /usr/lib)
+AC_ARG_VAR([SYSCONFSTATICDIR],
+ [Path to static system configuration, default ${prefix}/lib])
+AS_IF([test "x$SYSCONFSTATICDIR" = x],
+ [sysconfstaticdir='${prefix}/lib'],
+ [sysconfstaticdir=$SYSCONFSTATICDIR])
+AC_SUBST([sysconfstaticdir])
+
AM_PROG_CC_C_O
AC_PROG_MKDIR_P
UL_WARN_ADD([-Wstrict-prototypes])
UL_WARN_ADD([-Wformat-security])
UL_WARN_ADD([-Wimplicit-function-declaration])
+UL_WARN_ADD([-Wdiscarded-qualifiers])
AC_SUBST([WARN_CFLAGS])
UL_WARN_ADD([-Wno-clobbered], [BSD_WARN_CFLAGS])
AC_SUBST([BSD_WARN_CFLAGS])
+
+UL_WARN_ADD([-Wno-cast-function-type], [PYTHON_WARN_CFLAGS])
+AC_SUBST([PYTHON_WARN_CFLAGS])
+
UL_WARN_ADD([-Wno-unused-parameter], [NO_UNUSED_WARN_CFLAGS])
AC_SUBST([NO_UNUSED_WARN_CFLAGS])
)
AS_IF([test "x$enable_asan" = xyes], [
UL_WARN_ADD([-fsanitize=address])
+ ASAN_LDFLAGS="-fsanitize=address"
])
-
-
+AC_SUBST([ASAN_LDFLAGS])
dnl libtool-2
LT_INIT
macros. These are usually located in /usr/share/aclocal/pkg.m4.
If your macros are in a different location, try setting the
environment variable AL_OPTS="-I/other/macro/dir" before running
- ./autogen.sh or autoreconf again.])])
+ ./autogen.sh or autoreconf again. Make sure pkg-config is installed.])])
PKG_PROG_PKG_CONFIG
+PKG_INSTALLDIR(['${usrlib_execdir}/pkgconfig'])
GTK_DOC_CHECK([1.10])
AC_PATH_PROG([XSLTPROC], [xsltproc])
linux/version.h \
linux/securebits.h \
linux/net_namespace.h \
+ linux/capability.h \
locale.h \
mntent.h \
net/if.h \
utmpx.h \
])
+# There is a collision in old kernel-headers. The both files mount.h and fs.h
+# define MS_* macros. Fixed by kernel commit e462ec50cb5fad19f6003a3d8087f4a0945dd2b1.
+#
+AC_CHECK_HEADERS([linux/fs.h ], [], [],
+ [#ifdef HAVE_SYS_MOUNT_H
+ # include <linux/fs.h>
+ # include <sys/mount.h>
+ #endif
+])
+
AC_CHECK_HEADERS([linux/gsmmux.h ], [], [],
[#ifdef LINUX_GSMMUX_H
# include <linux/gsmmux.h>
])
AC_CHECK_HEADERS([langinfo.h],
- [AM_CONDITIONAL([HAVE_LANGINFO], [true])],
- [AM_CONDITIONAL([HAVE_LANGINFO], [false])])
-
+ [AM_CONDITIONAL([HAVE_LANGINFO_H], [true])],
+ [AM_CONDITIONAL([HAVE_LANGINFO_H], [false])])
AC_MSG_CHECKING([whether langinfo.h defines ALTMON_x constants])
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
have_linux_btrfs_h=$ac_cv_header_linux_btrfs_h
have_linux_raw_h=$ac_cv_header_linux_raw_h
have_linux_securebits_h=$ac_cv_header_linux_securebits_h
+have_linux_capability_h=$ac_cv_header_linux_capability_h
have_linux_watchdog_h=$ac_cv_header_linux_watchdog_h
have_security_pam_appl_h=$ac_cv_header_security_pam_appl_h
have_security_pam_misc_h=$ac_cv_header_security_pam_misc_h
have_shadow_h=$ac_cv_header_shadow_h
have_sys_signalfd_h=$ac_cv_header_sys_signalfd_h
have_utmpx_h=$ac_cv_header_utmpx_h
+have_pty_h=$ac_cv_header_pty_h
AS_CASE([$linux_os:$have_linux_version_h],
[yes:no],
#include <sys/socket.h>])
AC_CHECK_FUNCS([ \
+ clearenv \
+ __fpurge \
+ fpurge \
__fpending \
secure_getenv \
__secure_getenv \
err \
errx \
explicit_bzero \
+ fmemopen \
fsync \
utimensat \
getdomainname \
nanosleep \
ntp_gettime \
personality \
+ pidfd_open \
+ pidfd_send_signal \
posix_fadvise \
prctl \
qsort_r \
AM_CONDITIONAL([HAVE_OPENAT], [test "x$have_openat" = xyes])
+have_setns_syscall="yes"
+UL_CHECK_SYSCALL([setns])
+AS_IF([test "x$ul_cv_syscall_setns" = xno], [
+ have_setns_syscall="no"
+])
+
+UL_CHECK_SYSCALL([pidfd_open])
+UL_CHECK_SYSCALL([pidfd_send_signal])
AC_CHECK_FUNCS([isnan], [],
[AC_CHECK_LIB([m], [isnan], [MATH_LIBS="-lm"])]
[AC_CHECK_LIB([rt], [timer_create], [
have_timer="yes"
REALTIME_LIBS="-lrt"
+ AC_DEFINE_UNQUOTED([HAVE_TIMER_CREATE], [1], [Define if timer_create exist in -lrt])
],[
AC_SEARCH_LIBS([timer_create], [rt], [
AC_MSG_RESULT(yes)
have_timer="yes"
REALTIME_LIBS="-lrt -lpthread"
+ AC_DEFINE_UNQUOTED([HAVE_TIMER_CREATE], [1], [Define if timer_create exist in -lrt -lpthread])
],[], [-lpthread]
)
- ])]
+ ])]
)
AC_SUBST([REALTIME_LIBS])
+AS_IF([test x"$have_timer" = xno], [
+ AC_CHECK_FUNCS([setitimer], [have_timer="yes"], [have_timer="no"])
+])
+
AC_CHECK_LIB([rtas], [rtas_get_sysparm], [
RTAS_LIBS="-lrtas"
#include <dirent.h>])
])
-AS_CASE([$have_dirfd:$have_ddfd],
- [no:no],
- [AC_MSG_ERROR([cannot find a method to get filedescriptor of directory])]
-)
+AM_CONDITIONAL([HAVE_DIRFD], [test "x$have_dirfd" = xyes -o "x$have_ddfd" = xyes])
AC_MSG_CHECKING([whether program_invocation_short_name is defined])
have_scanf_alloc_modifier=no]
)
-
+have_pty=no
AC_ARG_WITH([util], AS_HELP_STRING([--without-util], [compile without libutil]),
[], [with_util=auto]
)
UL_CHECK_LIB([util], [openpty])
])
+AS_IF([test "x$have_pty_h" = xyes -a "x$have_sys_signalfd_h" = xyes -a "x$have_util" = xyes], [
+ AM_CONDITIONAL([HAVE_PTY], [true])
+ AC_DEFINE([HAVE_PTY], [1], [have PTY support])
+ have_pty=yes
+], [
+ AM_CONDITIONAL([HAVE_PTY], [false])
+])
AC_CHECK_TYPES([union semun], [], [], [[
#include <sys/sem.h>
#include <wchar.h>
#include <wctype.h>
#include <stdio.h>
+ #include <stdlib.h>
]], [[
wchar_t wc;
wint_t w;
]])
# on Solaris, you can't mix and match standards, since we use c99
-# aparently at this stage, XOPEN_SOURCE will conflict. As workaround,
+# apparently at this stage, XOPEN_SOURCE will conflict. As workaround,
# check for crypt.h and use that without XOPEN_SOURCE.
+have_crypt=no
AC_CHECK_HEADERS([crypt.h])
AC_LINK_IFELSE([AC_LANG_PROGRAM([[
#ifdef HAVE_CRYPT_H
#endif
]], [[
char *c = crypt("abc","pw");
-]])],[],[
+]])],[
+ have_libcrypt=no
+ have_crypt=yes
+],[
LIBS="$LIBS -lcrypt"
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
#ifdef HAVE_CRYPT_H
]])],[
AC_DEFINE([HAVE_LIBCRYPT], [1], [Do we need -lcrypt?])
have_libcrypt=yes
+ have_crypt=yes
],[
- AC_MSG_ERROR([crypt() is not available])
+ AC_MSG_WARN([crypt() is not available])
])
])
AM_CONDITIONAL([HAVE_LIBCRYPT], [test "x$have_libcrypt" = xyes])
dnl wide-char ncurses
AC_ARG_WITH([ncursesw],
- AS_HELP_STRING([--with-ncursesw], [build with wide-char ncurses, enabled by default]),
+ AS_HELP_STRING([--without-ncursesw], [do not build with wide-char ncurses]),
[], [with_ncursesw=auto]
)
have_ncursesw=no
dnl non-wide ncurses
AC_ARG_WITH([ncurses],
- AS_HELP_STRING([--with-ncurses], [build with non-wide ncurses, disabled by default]),
+ AS_HELP_STRING([--with-ncurses], [build with non-wide ncurses]),
[], [with_ncurses=auto]
)
have_ncurses=no
AC_ARG_WITH([readline],
- AS_HELP_STRING([--with-readline], [compile with GNU Readline support]),
+ AS_HELP_STRING([--without-readline], [do not build with GNU Readline support]),
[], [with_readline=auto]
)
)
UL_BUILD_INIT([libblkid])
UL_REQUIRES_HAVE([libblkid], [openat], [openat functions])
+UL_REQUIRES_HAVE([libblkid], [dirfd,ddfd], [dirfd or ddfd function])
AC_SUBST([LIBBLKID_DATE])
AC_SUBST([LIBBLKID_VERSION])
AC_SUBST([LIBBLKID_VERSION_INFO])
UL_BUILD_INIT([libmount])
UL_REQUIRES_BUILD([libmount], [libblkid])
UL_REQUIRES_HAVE([libmount], [scanf_alloc_modifier], [scanf string alloc modifier])
+UL_REQUIRES_HAVE([libmount], [dirfd,ddfd], [dirfd or ddfd function])
AM_CONDITIONAL([BUILD_LIBMOUNT], [test "x$build_libmount" = xyes])
AM_CONDITIONAL([BUILD_LIBMOUNT_TESTS], [test "x$build_libmount" = xyes -a "x$enable_static" = xyes])
AS_IF([test "x$build_libmount" = xyes], [
- AC_DEFINE(HAVE_LIBMOUNT, 1, [Define if libmount available.])
+ AC_DEFINE(HAVE_LIBMOUNT, 1, [Define if libmount available.])
+ AS_IF([test "x$have_setns_syscall" = "xyes"], [
+ AC_DEFINE([USE_LIBMOUNT_SUPPORT_NAMESPACES], [1], [Define to 1 if want to support namepaces.])
+ ],[
+ AC_MSG_WARN([libmount will be compiled without namespaces support])
+ ])
])
AC_SUBST([LIBMOUNT_VERSION])
AC_DEFINE([USE_LIBMOUNT_SUPPORT_MTAB], [1], [Define to 1 if want to support mtab.])
])
-
dnl
dnl libsmartcols
dnl
AC_DEFINE_UNQUOTED([LIBFDISK_VERSION], ["$LIBFDISK_VERSION"], [libfdisk version string])
-UL_BUILD_INIT([fdisk], [check])
+AC_ARG_ENABLE([fdisks],
+ AS_HELP_STRING([--disable-fdisks], [do not build fdisk(8), sfdisk(8) and cfdisk(8)]),
+ [], [UL_DEFAULT_ENABLE([fdisks], [check])]
+)
+enable_fdisk=$enable_fdisks
+enable_sfdisk=$enable_fdisks
+enable_cfdisk=$enable_fdisks
+
+UL_BUILD_INIT([fdisk])
UL_REQUIRES_HAVE([fdisk], [openat], [openat functions])
+UL_REQUIRES_HAVE([fdisk], [dirfd,ddfd], [dirfd or ddfd function])
UL_REQUIRES_BUILD([fdisk], [libfdisk])
UL_REQUIRES_BUILD([fdisk], [libsmartcols])
AM_CONDITIONAL([BUILD_FDISK], [test "x$build_fdisk" = xyes])
-UL_BUILD_INIT([sfdisk], [check])
+UL_BUILD_INIT([sfdisk])
UL_REQUIRES_HAVE([sfdisk], [openat], [openat functions])
+UL_REQUIRES_HAVE([sfdisk], [dirfd,ddfd], [dirfd or ddfd function])
UL_REQUIRES_BUILD([sfdisk], [libfdisk])
UL_REQUIRES_BUILD([sfdisk], [libsmartcols])
AM_CONDITIONAL([BUILD_SFDISK], [test "x$build_sfdisk" = xyes])
-UL_BUILD_INIT([cfdisk], [check])
+UL_BUILD_INIT([cfdisk])
UL_REQUIRES_BUILD([cfdisk], [libfdisk])
UL_REQUIRES_BUILD([cfdisk], [libsmartcols])
UL_REQUIRES_HAVE([cfdisk], [open_memstream], [open_memstream function])
UL_REQUIRES_BUILD([findfs], [libblkid])
AM_CONDITIONAL([BUILD_FINDFS], [test "x$build_findfs" = xyes])
-UL_BUILD_INIT([wipefs], [check])
+AC_ARG_ENABLE([wipefs],
+ AS_HELP_STRING([--disable-wipefs], [do not build wipefs]),
+ [], [UL_DEFAULT_ENABLE([wipefs], [check])]
+)
+UL_BUILD_INIT([wipefs])
UL_REQUIRES_BUILD([wipefs], [libblkid])
UL_REQUIRES_BUILD([wipefs], [libsmartcols])
AM_CONDITIONAL([BUILD_WIPEFS], [test "x$build_wipefs" = xyes])
UL_BUILD_INIT([unshare])
UL_REQUIRES_LINUX([unshare])
UL_REQUIRES_SYSCALL_CHECK([unshare], [UL_CHECK_SYSCALL([unshare])])
+UL_REQUIRES_HAVE([unshare], [linux_capability_h], [linux/capability.h header file])
AM_CONDITIONAL([BUILD_UNSHARE], [test "x$build_unshare" = xyes])
AC_CHECK_FUNCS([unshare])
)
UL_BUILD_INIT([nsenter])
UL_REQUIRES_LINUX([nsenter])
-UL_REQUIRES_SYSCALL_CHECK([nsenter], [UL_CHECK_SYSCALL([setns])], [setns])
+UL_REQUIRES_HAVE([nsenter], [setns_syscall], [setns syscall])
AM_CONDITIONAL([BUILD_NSENTER], [test "x$build_nsenter" = xyes])
AC_CHECK_FUNCS([setns])
)
UL_BUILD_INIT([setpriv])
UL_REQUIRES_LINUX([setpriv])
-UL_REQUIRES_HAVE([setpriv], [linux_securebits_h], [securebits.h header file])
+UL_REQUIRES_HAVE([setpriv], [linux_securebits_h], [linux/securebits.h header file])
+UL_REQUIRES_HAVE([setpriv], [linux_capability_h], [linux/capability.h header file])
UL_REQUIRES_HAVE([setpriv], [cap_ng], [libcap-ng library])
AM_CONDITIONAL([BUILD_SETPRIV], [test "x$build_setpriv" = xyes])
+PKG_CHECK_MODULES([PCRE], [libpcre2-8], [have_pcre=yes], [have_pcre=no])
+AS_IF([test "x$have_pcre" = xyes ], [
+ AC_DEFINE([HAVE_PCRE], [1], [Define if libpcre2 is available])
+])
+AM_CONDITIONAL([HAVE_PCRE], [test "x$have_pcre" = xyes])
+
+AC_ARG_ENABLE([hardlink],
+ AS_HELP_STRING([--disable-hardlink], [do not build hardlink]),
+ [], [UL_DEFAULT_ENABLE([hardlink], [check])]
+)
+UL_BUILD_INIT([hardlink])
+AM_CONDITIONAL([BUILD_HARDLINK], [test "x$build_hardlink" = xyes])
AC_ARG_ENABLE([eject],
AS_HELP_STRING([--disable-eject], [do not build eject]),
AC_ARG_ENABLE([plymouth_support],
- AS_HELP_STRING([--disable-plymouth_support], [don not care about plymouth in sylogin(8) and agetty(8)]),
+ AS_HELP_STRING([--disable-plymouth_support], [do not care about plymouth in sylogin(8) and agetty(8)]),
[], [enable_plymouth_support=check]
)
UL_BUILD_INIT([plymouth_support])
AC_CHECK_LIB([z], [crc32], [have_z=yes], [have_z=no])
])
+AC_ARG_WITH([libmagic],
+ AS_HELP_STRING([--without-libmagic], [compile without libmagic]),
+ [], [with_libmagic=auto]
+)
+AS_IF([test "x$with_libmagic" = xno], [have_magic=no], [
+ AC_CHECK_LIB([magic], [magic_open], [
+ AC_DEFINE([HAVE_MAGIC], [1], [Define to 1 if you have the libmagic present.])
+ MAGIC_LIBS="-lmagic"
+ ])
+])
+AC_SUBST([MAGIC_LIBS])
+
AC_ARG_ENABLE([cramfs],
AS_HELP_STRING([--disable-cramfs], [do not build fsck.cramfs, mkfs.cramfs]),
UL_REQUIRES_HAVE([hwclock], [io, linuxdummy], [ioperm iopl function or Linux])
AM_CONDITIONAL([BUILD_HWCLOCK], [test "x$build_hwclock" = xyes])
+AC_ARG_ENABLE([hwclock_cmos],
+ AS_HELP_STRING([--disable-hwclock-cmos], [do not use CMOS clock]),
+ [], [enable_hwclock_cmos=check]
+)
+UL_BUILD_INIT([hwclock_cmos])
+UL_REQUIRES_BUILD([hwclock_cmos], [hwclock])
+UL_REQUIRES_ARCH([hwclock_cmos], [i?86-*,x86_64*])
+AM_CONDITIONAL([USE_HWCLOCK_CMOS], [test "x$build_hwclock_cmos" = xyes])
+AS_IF([test "x$build_hwclock_cmos" = xyes ], [
+ AC_DEFINE([USE_HWCLOCK_CMOS], [1], [Define to 1 if want to use CMOS clock.])
+])
+
+AC_ARG_ENABLE([hwclock_gplv3],
+ AS_HELP_STRING([--disable-hwclock-gplv3], [do not use datetime parsing GPLv3 code]),
+ [], [enable_hwclock_gplv3=yes]
+)
+AM_CONDITIONAL([USE_HWCLOCK_GPLv3_DATETIME], [test "x$enable_hwclock_gplv3" = xyes])
+AS_IF([test "x$enable_hwclock_gplv3" = xyes ], [
+ AC_DEFINE([USE_HWCLOCK_GPLv3_DATETIME], [1], [use datetime parsing GPLv3 code to hwclock])
+])
+
UL_BUILD_INIT([mkfs], [yes])
AM_CONDITIONAL([BUILD_MKFS], [test "x$build_mkfs" = xyes])
UL_BUILD_INIT([switch_root])
UL_REQUIRES_LINUX([switch_root])
UL_REQUIRES_HAVE([switch_root], [openat], [openat function])
+UL_REQUIRES_HAVE([switch_root], [dirfd,ddfd], [dirfd or ddfd function])
AM_CONDITIONAL([BUILD_SWITCH_ROOT], [test "x$build_switch_root" = xyes])
UL_BUILD_INIT([flock], [check])
-UL_REQUIRES_HAVE([flock], [timer], [timer_create function])
+UL_REQUIRES_HAVE([flock], [timer], [timer_create/setitimer function])
AM_CONDITIONAL([BUILD_FLOCK], [test "x$build_flock" = xyes])
UL_BUILD_INIT([ipcs])
AM_CONDITIONAL([BUILD_IPCS], [test "x$build_ipcs" = xyes])
+
+AC_ARG_ENABLE([irqtop],
+ AS_HELP_STRING([--disable-irqtop], [do not build irqtop]),
+ [], [UL_DEFAULT_ENABLE([irqtop], [yes])]
+)
+UL_BUILD_INIT([irqtop])
+UL_REQUIRES_LINUX([irqtop])
+UL_REQUIRES_BUILD([irqtop], [libsmartcols])
+UL_REQUIRES_HAVE([irqtop], [open_memstream], [open_memstream function])
+UL_REQUIRES_HAVE([irqtop], [ncursesw,slang,ncurses], [ncursesw, ncurses or slang library])
+AM_CONDITIONAL([BUILD_IRQTOP], [test "x$build_irqtop" = xyes])
+
+AC_ARG_ENABLE([lsirq],
+ AS_HELP_STRING([--disable-lsirq], [do not build lsirq]),
+ [], [UL_DEFAULT_ENABLE([lsirq], [yes])]
+)
+UL_BUILD_INIT([lsirq])
+UL_REQUIRES_LINUX([lsirq])
+UL_REQUIRES_BUILD([lsirq], [libsmartcols])
+AM_CONDITIONAL([BUILD_LSIRQ], [test "x$build_lsirq" = xyes])
+
+
+UL_BUILD_INIT([choom], [check])
+UL_REQUIRES_LINUX([choom])
+AM_CONDITIONAL([BUILD_CHOOM], [test "x$build_choom" = xyes])
+
UL_BUILD_INIT([lsipc], [check])
UL_REQUIRES_LINUX([lsipc])
UL_REQUIRES_BUILD([lsipc], [libsmartcols])
AM_CONDITIONAL([BUILD_SETARCH], [test "x$build_setarch" = xyes])
UL_BUILD_INIT([script], [check])
-UL_REQUIRES_HAVE([script], [sys_signalfd_h], [sys/signalfd.h header])
+UL_REQUIRES_HAVE([script], [pty])
AM_CONDITIONAL([BUILD_SCRIPT], [test "x$build_script" = xyes])
UL_BUILD_INIT([scriptreplay], [yes])
AM_CONDITIONAL([BUILD_SCRIPTREPLAY], [test "x$build_scriptreplay" = xyes])
+UL_BUILD_INIT([scriptlive], [check])
+UL_REQUIRES_HAVE([scriptlive], [pty])
+AM_CONDITIONAL([BUILD_SCRIPTLIVE], [test "x$build_scriptlive" = xyes])
+
UL_BUILD_INIT([col], [yes])
AM_CONDITIONAL([BUILD_COL], [test "x$build_col" = xyes])
[], [UL_DEFAULT_ENABLE([newgrp], [no])]
)
UL_BUILD_INIT([newgrp])
+UL_REQUIRES_HAVE([newgrp], [crypt], [crypt function])
AM_CONDITIONAL([BUILD_NEWGRP], [test "x$build_newgrp" = xyes])
)
AC_ARG_ENABLE([chfn-chsh],
- AS_HELP_STRING([--enable-chfn-chsh], [build chfn and chsh]),
+ AS_HELP_STRING([--disable-chfn-chsh], [do not build chfn and chsh]),
[], [UL_DEFAULT_ENABLE([chfn_chsh], [check])]
)
UL_BUILD_INIT([chfn_chsh])
[], [UL_DEFAULT_ENABLE([sulogin], [check])]
)
UL_BUILD_INIT([sulogin])
+UL_REQUIRES_HAVE([sulogin], [crypt], [crypt function])
UL_REQUIRES_HAVE([sulogin], [shadow_h], [shadow.h header])
AM_CONDITIONAL([BUILD_SULOGIN], [test "x$build_sulogin" = xyes])
)
UL_BUILD_INIT([more])
UL_REQUIRES_HAVE([more], [ncursesw, ncurses], [ncursesw or ncurses libraries])
+UL_REQUIRES_LINUX([more])
AM_CONDITIONAL([BUILD_MORE], [test "x$build_more" = xyes])
AC_ARG_WITH([btrfs],
- AS_HELP_STRING([--with-btrfs], [build with support for btrfs]),
+ AS_HELP_STRING([--without-btrfs], [do not build with btrfs support]),
[], [with_btrfs=check]
)
have_btrfs=no
AC_ARG_WITH([systemd],
- AS_HELP_STRING([--with-systemd], [build with support for systemd]),
+ AS_HELP_STRING([--without-systemd], [do not build with systemd support]),
[], [with_systemd=check]
)
AC_ARG_WITH([systemdsystemunitdir],
- AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [directory for systemd service files]),
- [], [with_systemdsystemunitdir=`$PKG_CONFIG --variable=systemdsystemunitdir systemd`])
-
+ AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [directory for systemd unit files (requires systemd support)]),
+ [], [with_systemdsystemunitdir=check]
+)
+AS_IF([test "x$with_systemdsystemunitdir" = xcheck], [
+ AS_IF([test "x$have_systemd" = xyes], [
+ with_systemdsystemunitdir=`$PKG_CONFIG --variable=systemdsystemunitdir systemd`
+ ],[
+ with_systemdsystemunitdir=no
+ ])
+])
AS_IF([test "x$with_systemdsystemunitdir" != "xno"], [
AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])
])
AC_DEFINE([HAVE_SMACK], [1], [Add SMACK support])
])
+AC_ARG_WITH([econf],
+ AS_HELP_STRING([--without-econf], [do not use libeconf]),
+ [], [with_econf=check]
+)
+
+have_econf=no
+AS_IF([test "x$with_econf" != xno], [
+ PKG_CHECK_MODULES([ECONF], [libeconf], [have_econf=yes], [have_econf=no])
+ AS_CASE([$with_econf:$have_econf],
+ [yes:no],
+ [AC_MSG_ERROR([libeconf expected but libeconf not found])],
+ [*:yes],
+ AC_DEFINE([HAVE_LIBECONF], [1], [Define if libeconf is available])
+ )
+])
+AM_CONDITIONAL([HAVE_ECONF], [test "x$have_econf" = xyes])
+
+AC_ARG_WITH([vendordir],
+ AS_HELP_STRING([--with-vendordir=DIR], [Direcotry for distribution provided configuration files]),
+ [], []
+)
+AC_SUBST([vendordir], [$with_vendordir])
+AM_CONDITIONAL([USE_VENDORDIR], [test "x$with_vendordir" != x])
+AS_IF([test "x$with_vendordir" != x], [
+ AC_DEFINE([USE_VENDORDIR], [1], [Define to 1 to use vendordir])
+])
+
AC_ARG_WITH([bashcompletiondir],
AS_HELP_STRING([--with-bashcompletiondir=DIR], [Bash completions directory]),
])
+AC_ARG_WITH([cryptsetup],
+ AS_HELP_STRING([--with-cryptsetup], [compile with cryptsetup support]),
+ [], [with_cryptsetup=no]
+)
+
+AS_IF([test "x$with_cryptsetup" = xno], [
+ AM_CONDITIONAL([HAVE_CRYPTSETUP], [false])
+], [
+ PKG_CHECK_MODULES([CRYPTSETUP], [libcryptsetup],
+ [AC_DEFINE([HAVE_CRYPTSETUP], [1], [Define if cryptsetup is available])
+ UL_PKG_STATIC([CRYPTSETUP_LIBS_STATIC], [libcryptsetup])
+ AM_CONDITIONAL([HAVE_CRYPTSETUP], [true])
+ SAVE_CFLAGS="$CFLAGS"
+ CFLAGS="$CRYPTSETUP_CFLAGS $CFLAGS"
+ SAVE_LIBS="$LIBS"
+ LIBS="$CRYPTSETUP_LIBS $LIBS"
+ AC_CHECK_LIB([cryptsetup], [crypt_activate_by_signed_key], [
+ AC_DEFINE_UNQUOTED([HAVE_CRYPT_ACTIVATE_BY_SIGNED_KEY], [1], [Define if crypt_activate_by_signed_key exist in -lcryptsetup])
+ ])
+ CFLAGS="$SAVE_CFLAGS"
+ LIBS="$SAVE_LIBS"
+ have_cryptsetup=yes],
+ [have_cryptsetup=no
+ AM_CONDITIONAL([HAVE_CRYPTSETUP], [false])])
+
+ AS_CASE([$with_cryptsetup:$have_cryptsetup],
+ [yes:no], [AC_MSG_WARN([cryptsetup selected but libcryptsetup not found])]
+ )
+])
+AC_SUBST([CRYPTSETUP_LIBS])
+AC_SUBST([CRYPTSETUP_LIBS_STATIC])
+
+
AC_ARG_VAR([SUID_CFLAGS],
[CFLAGS used for binaries which are usually with the suid bit])
AC_ARG_VAR([SUID_LDFLAGS],
usrbin_execdir: ${usrbin_execdir}
usrsbin_execdir: ${usrsbin_execdir}
usrlib_execdir: ${usrlib_execdir}
+ vendordir: ${with_vendordir}
compiler: ${CC}
cflags: ${CFLAGS}
suid cflags: ${SUID_CFLAGS}
ldflags: ${LDFLAGS}
suid ldflags: ${SUID_LDFLAGS}
+ ASAN enabled: ${enable_asan}
Python: ${PYTHON}
Python version: ${PYTHON_VERSION}
Bash completions: ${with_bashcompletiondir}
Systemd support: ${have_systemd}
+ Systemd unitdir: ${with_systemdsystemunitdir}
+ libeconf support: ${have_econf}
Btrfs support: ${have_btrfs}
Wide-char support: ${build_widechar}