[kzak@redhat.com],,
[http://www.kernel.org/pub/linux/utils/util-linux/])
+
AC_PREREQ([2.60])
AC_CONFIG_AUX_DIR([config])
PACKAGE_VERSION_MAJOR=$(echo $PACKAGE_VERSION | awk -F. '{print $1}')
PACKAGE_VERSION_MINOR=$(echo $PACKAGE_VERSION | awk -F. '{print $2}' \
| awk -F- '{print $1}')
-PACKAGE_VERSION_RELEASE=0
+
+PACKAGE_VERSION_RELEASE=$(echo $PACKAGE_VERSION | awk -F. '{print $3}' \
+ | sed 's/.*@<:@^@<:@:digit:@:>@@:>@.*/0/')
+
dnl libblkid version
LIBBLKID_VERSION="$PACKAGE_VERSION_MAJOR.$PACKAGE_VERSION_MINOR.$PACKAGE_VERSION_RELEASE"
-LIBBLKID_DATE="19-Feb-2015"
+LIBBLKID_DATE="07-Sep-2015"
LIBBLKID_LT_MAJOR=1
LIBBLKID_LT_MINOR=1
LIBBLKID_LT_MICRO=0
UL_SET_ARCH([HPPA], [hppa*])
AC_SYS_LARGEFILE
+AC_HEADER_ASSERT
dnl Don't forget to maintain alternatively allowed versions in autogen.sh!
AM_GNU_GETTEXT_VERSION([0.18.3])
AC_CHECK_FUNCS([futimens], [have_futimens=yes])
AC_CHECK_FUNCS([inotify_init1], [have_inotify_init1=yes])
AC_CHECK_FUNCS([open_memstream], [have_open_memstream=yes],[have_open_memstream=no])
+AC_CHECK_FUNCS([reboot], [have_reboot=yes],[have_reboot=no])
dnl lib/mononotic.c may require -lrt
AC_CHECK_FUNCS([clock_gettime], [],
)
AC_SUBST([REALTIME_LIBS])
+AC_CHECK_LIB([rtas], [rtas_get_sysparm], [
+ RTAS_LIBS="-lrtas"
+ AC_DEFINE_UNQUOTED([HAVE_LIBRTAS], [1], [Define if librtas exists]), [],
+])
+AC_SUBST([RTAS_LIBS])
+
have_timer="no"
AC_CHECK_FUNCS([timer_createx],
[have_time="yes"],
AC_MSG_CHECKING([whether program_invocation_short_name is defined])
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
- #include <argp.h>
+ #include <errno.h>
]], [[
program_invocation_short_name = "test";
]])], [
AC_MSG_RESULT([no]))
dnl Static compilation
-m4_define([UL_STATIC_PROGRAMS], [losetup, mount, umount, fdisk, sfdisk, blkid, nsenter])
+m4_define([UL_STATIC_PROGRAMS], [losetup, mount, umount, fdisk, sfdisk, blkid, nsenter, unshare])
AC_ARG_ENABLE([static-programs],
[AS_HELP_STRING([--enable-static-programs=LIST],
have_scanf_alloc_modifier=no]
)
-UL_CHECK_LIB([util], [openpty])
-UL_CHECK_LIB([termcap], [tgetnum])
+
+AC_ARG_WITH([util], AS_HELP_STRING([--without-util], [compile without libutil]),
+ [], [with_util=auto]
+)
+AS_IF([test "x$with_util" = xno], [
+ AM_CONDITIONAL([HAVE_UTIL], [false])
+ have_util=no
+], [
+ UL_CHECK_LIB([util], [openpty])
+])
+
+
+AC_ARG_WITH([termcap], AS_HELP_STRING([--without-termcap], [compile without libtermcap]),
+ [], [with_termcap=auto]
+)
+AS_IF([test "x$with_termcap" = xno], [
+ AM_CONDITIONAL([HAVE_TERMCAP], [false])
+ have_termcap=no
+], [
+ UL_CHECK_LIB([termcap], [tgetnum])
+])
+
AC_CHECK_TYPES([union semun], [], [], [[
#include <sys/sem.h>
])
-dnl Try pkg-config for libtinfo
-PKG_CHECK_MODULES(TINFO, [tinfo], [
- dnl pkg-config success
- have_tinfo=yes
- UL_PKG_STATIC([TINFO_LIBS_STATIC], [tinfo])], [
+AC_ARG_WITH([tinfo], AS_HELP_STRING([--without-tinfo], [compile without libtinfo]),
+ [], [with_tinfo=auto]
+)
+have_tinfo=no
+AS_IF([test "x$with_tinfo" != xno], [
+ dnl Try pkg-config for libtinfo
+ PKG_CHECK_MODULES(TINFO, [tinfo], [
+ dnl pkg-config success
+ have_tinfo=yes
+ UL_PKG_STATIC([TINFO_LIBS_STATIC], [tinfo])], [
- dnl If pkg-config failed, fall back to classic searching.
- AC_CHECK_LIB([tinfo], [tgetent], [
+ dnl If pkg-config failed, fall back to classic searching.
+ AC_CHECK_LIB([tinfo], [tgetent], [
have_tinfo=yes
TINFO_LIBS="-ltinfo"
TINFO_LIBS_STATIC="-ltinfo"
TINFO_CFLAGS=""])
-
+ ])
])
AC_SUBST([TINFO_LIBS])
AC_SUBST([TINFO_LIBS_STATIC])
AC_SUBST([TINFO_CFLAGS])
AM_CONDITIONAL([HAVE_TINFO], [test "x$have_tinfo" = xyes])
AS_IF([test "x$have_tinfo" = xyes], [
- AC_DEFINE(HAVE_LIBTINFO, 1, [Define if libtinfo available.])
+ AC_DEFINE(HAVE_LIBTINFO, 1, [Define if libtinfo available.])
])
])
-
dnl
dnl libuuid
dnl
AM_CONDITIONAL([BUILD_NSENTER], [test "x$build_nsenter" = xyes])
AC_CHECK_FUNCS([setns])
-dnl setpriv depends on libcap-ng. It would be possible to build
-dnl a version of setpriv with limited functionality without libcap-ng,
-dnl but this isn't currently supported.
-UL_CHECK_LIB([cap-ng], [capng_apply], [cap_ng])
+
+AC_ARG_WITH([cap_ng],
+ AS_HELP_STRING([--without-capng], [compile without libcap-ng]),
+ [], [with_cap_ng=auto]
+)
+AS_IF([test "x$with_cap_ng" = xno], [have_cap_ng=no],[
+ UL_CHECK_LIB([cap-ng], [capng_apply], [cap_ng])
+])
+
+
AC_ARG_ENABLE([setpriv],
AS_HELP_STRING([--disable-setpriv], [do not build setpriv]),
[], [UL_DEFAULT_ENABLE([setpriv], [check])]
])
+AC_ARG_WITH([libz],
+ AS_HELP_STRING([--without-libz], [compile without libz]),
+ [], [with_libz=auto]
+)
+AS_IF([test "x$with_libz" = xno], [have_z=no], [
+ AC_CHECK_LIB([z], [crc32], [have_z=yes], [have_z=no])
+])
+
+
AC_ARG_ENABLE([cramfs],
AS_HELP_STRING([--disable-cramfs], [do not build fsck.cramfs, mkfs.cramfs]),
[], [UL_DEFAULT_ENABLE([cramfs], [check])]
)
UL_BUILD_INIT([cramfs])
-AC_CHECK_LIB([z], [crc32], [have_z=yes], [have_z=no])
UL_REQUIRES_HAVE([cramfs], [z], [z library])
AM_CONDITIONAL([BUILD_CRAMFS], [test "x$build_cramfs" = xyes])
AC_MSG_WARN([uuid library is not found; mkswap(8) will not generate UUIDs])
])
-UL_BUILD_INIT([cal], [yes])
+
+AC_ARG_ENABLE([cal],
+ AS_HELP_STRING([--disable-cal], [do not build cal]),
+ [], [UL_DEFAULT_ENABLE([cal], [check])]
+)
+UL_BUILD_INIT([cal])
AM_CONDITIONAL([BUILD_CAL], [test "x$build_cal" = xyes])
+
UL_BUILD_INIT([logger], [yes])
AM_CONDITIONAL([BUILD_LOGGER], [test "x$build_logger" = xyes])
UL_BUILD_INIT([ipcs], [yes])
AM_CONDITIONAL([BUILD_IPCS], [test "x$build_ipcs" = xyes])
+UL_BUILD_INIT([lsipc], [check])
+UL_REQUIRES_LINUX([lsipc])
+UL_REQUIRES_BUILD([lsipc], [libsmartcols])
+AM_CONDITIONAL([BUILD_LSIPC], [test "x$build_lsipc" = xyes])
+
+UL_BUILD_INIT([lsns], [check])
+UL_REQUIRES_LINUX([lsns])
+UL_REQUIRES_BUILD([lsns], [libsmartcols])
+AM_CONDITIONAL([BUILD_LSNS], [test "x$build_lsns" = xyes])
+
UL_BUILD_INIT([renice], [yes])
AM_CONDITIONAL([BUILD_RENICE], [test "x$build_renice" = xyes])
UL_BUILD_INIT([ctrlaltdel], [check])
UL_REQUIRES_LINUX([ctrlaltdel])
+dnl we assume reboot() to be the 1-argument variant, because even considering
+dnl widely used alternative C libraries like uclibc, dietlibc and musl,
+dnl reboot() with multiple arguments is yet only found in glibc versions
+dnl earlier than 2.x.
+UL_REQUIRES_HAVE([ctrlaltdel], [reboot])
AM_CONDITIONAL([BUILD_CTRLALTDEL], [test "x$build_ctrlaltdel" = xyes])
UL_BUILD_INIT([fsfreeze], [check])
UL_REQUIRES_LINUX([setarch])
AM_CONDITIONAL([BUILD_SETARCH], [test "x$build_setarch" = xyes])
-UL_BUILD_INIT([script], [yes])
+UL_BUILD_INIT([script], [check])
+UL_REQUIRES_LINUX([script])
AM_CONDITIONAL([BUILD_SCRIPT], [test "x$build_script" = xyes])
UL_BUILD_INIT([scriptreplay], [yes])
UL_REQUIRES_LINUX([kill])
AM_CONDITIONAL([BUILD_KILL], [test "x$build_kill" = xyes])
-dnl Don't use UL_DEFAULT_ENABLE() here, deprecated stuff has to be insensitive
-dnl to --enable-all-programs.
-AC_ARG_ENABLE([deprecated-last],
- AS_HELP_STRING([--enable-deprecated-last], [build old deprecated last]),
- [], [enable_deprecated_last=no]
-)
-UL_BUILD_INIT([deprecated_last])
-AM_CONDITIONAL([BUILD_DEPRECATED_LAST], [test "x$build_deprecated_last" = xyes])
-
AC_ARG_ENABLE([last],
AS_HELP_STRING([--disable-last], [do not build last]),
[], [UL_DEFAULT_ENABLE([last], [check])]
)
UL_BUILD_INIT([last])
-UL_CONFLICTS_BUILD([last], [deprecated_last], [old deprecated last version])
AM_CONDITIONAL([BUILD_LAST], [test "x$build_last" = xyes])