summaryrefslogtreecommitdiffstats
path: root/package/util-linux/0003-build-sys-fix-disable-all-programs-enable-schedutils.patch
blob: bf19e105469a3d09ee154ff7a9ee0867a251a764 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
From 6f2eb03433bcb2d3c351efed848a1f8554a7ff78 Mon Sep 17 00:00:00 2001
From: Karel Zak <kzak@redhat.com>
Date: Mon, 20 Feb 2017 14:17:37 +0100
Subject: [PATCH] build-sys: fix --disable-all-programs --enable-schedutils

* add UL_ENABLE_ALIAS(NAME, MASTERNAME) to initialize $enable_<name>
  according to MASTERNAME. Note that we have to use $build_<mastername>,
  the $enable_<mastername> 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 <kzak@redhat.com>
---
 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 ad241fe..be282f0 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 f8a0dd7..ed7227c 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_<name> variable according to $build_<mastername>.  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_<name>, 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 0000000..08deee4
--- /dev/null
+++ b/tools/config-gen.d/enable-schedutils.conf
@@ -0,0 +1,3 @@
+include:disable-all.conf
+
+--enable-schedutils
-- 
2.7.4

OpenPOWER on IntegriCloud