From 6f2eb03433bcb2d3c351efed848a1f8554a7ff78 Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Mon, 20 Feb 2017 14:17:37 +0100 Subject: build-sys: fix --disable-all-programs --enable-schedutils * add UL_ENABLE_ALIAS(NAME, MASTERNAME) to initialize $enable_ according to MASTERNAME. Note that we have to use $build_, the $enable_ is just AC_ARG_ENABLE() stuff only. The $build_ is evaluated and modified by our UL_...() functions. * add enable-schedutils.conf to have build-system regression test for this use-case Addresses: https://github.com/karelzak/util-linux/issues/415 Signed-off-by: Karel Zak --- configure.ac | 14 ++++++++------ m4/ul.m4 | 15 +++++++++++++++ tools/config-gen.d/enable-schedutils.conf | 3 +++ 3 files changed, 26 insertions(+), 6 deletions(-) create mode 100644 tools/config-gen.d/enable-schedutils.conf diff --git a/configure.ac b/configure.ac index ad241fec2..be282f04c 100644 --- a/configure.ac +++ b/configure.ac @@ -1909,8 +1909,9 @@ AC_ARG_ENABLE([schedutils], ) UL_BUILD_INIT([schedutils]) -UL_BUILD_INIT([ionice], [check]) -UL_REQUIRES_BUILD([ionice], [schedutils]) + +UL_ENABLE_ALIAS([ionice], [schedutils]) +UL_BUILD_INIT([ionice]) UL_REQUIRES_SYSCALL_CHECK([ionice], [UL_CHECK_SYSCALL([ioprio_set], [alpha], [442], @@ -1937,8 +1938,9 @@ UL_REQUIRES_SYSCALL_CHECK([ionice], AM_CONDITIONAL([BUILD_IONICE], [test "x$build_ionice" = xyes]) -UL_BUILD_INIT([taskset], [check]) -UL_REQUIRES_BUILD([taskset], [schedutils]) + +UL_ENABLE_ALIAS([taskset], [schedutils]) +UL_BUILD_INIT([taskset]) UL_REQUIRES_HAVE([taskset], [cpu_set_t], [cpu_set_t type]) UL_REQUIRES_SYSCALL_CHECK([taskset], [UL_CHECK_SYSCALL([sched_getaffinity])], @@ -1950,8 +1952,8 @@ have_schedsetter=no AS_IF([test "x$ac_cv_func_sched_setscheduler" = xyes], [have_schedsetter=yes], [test "x$ac_cv_func_sched_setattr" = xyes], [have_schedsetter=yes]) -UL_BUILD_INIT([chrt], [check]) -UL_REQUIRES_BUILD([chrt], [schedutils]) +UL_ENABLE_ALIAS([chrt], [schedutils]) +UL_BUILD_INIT([chrt]) UL_REQUIRES_HAVE([chrt], [schedsetter], [sched_set functions]) AM_CONDITIONAL([BUILD_CHRT], [test "x$build_chrt" = xyes]) diff --git a/m4/ul.m4 b/m4/ul.m4 index f8a0dd7cb..ed7227c51 100644 --- a/m4/ul.m4 +++ b/m4/ul.m4 @@ -429,6 +429,21 @@ AC_DEFUN([UL_DEFAULT_ENABLE], [ fi ]) + +dnl UL_ENABLE_ALIAS(NAME, MASTERNAME) +dnl +dnl Initializes $enable_ variable according to $build_. This +dnl is usefull for example if you want to use one --enable-mastername option +dnl for group of programs. +dnl +AC_DEFUN([UL_ENABLE_ALIAS], [ + m4_define([suffix], $1) + m4_define([mastersuffix], $2) + + enable_[]suffix=$build_[]mastersuffix +]) + + dnl UL_NCURSES_CHECK(NAME) dnl dnl Initializes $have_, NCURSES_LIBS and NCURSES_CFLAGS variables according to diff --git a/tools/config-gen.d/enable-schedutils.conf b/tools/config-gen.d/enable-schedutils.conf new file mode 100644 index 000000000..08deee46b --- /dev/null +++ b/tools/config-gen.d/enable-schedutils.conf @@ -0,0 +1,3 @@ +include:disable-all.conf + +--enable-schedutils -- cgit v1.2.3-55-g7522