Blob Blame History Raw
From e08af84191b2a8ca226e1c72c27c63dcf8ac8c27 Mon Sep 17 00:00:00 2001
From: Sami Kerola <kerolasa@iki.fi>
Date: Sun, 28 Jul 2013 22:11:16 +0100
Subject: [PATCH] setarch: prefer preprocessor rather than autotools check

It seems to be pointless to spend time in ./configure phase when
preprocessor has to perform #ifndef check anyway.

[kzak@redhat.com: -
   Note that on RHEL-7 glibc' <sys/personality.h> does not contain the
   same set of the flags like <linux/personality.h>. We need to include
   glibc version dues to syscall, so it seems better make our macro
   fallbacks more robust.]

Addresses: http://bugzilla.redhat.com/show_bug.cgi?id=1690102
Upstream: http://github.com/karelzak/util-linux/commit/f29a3d1868c847ae41bc681db58bd087fc9f941d
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
---
 configure.ac        | 12 ------------
 sys-utils/setarch.c | 22 +++++++++++-----------
 2 files changed, 11 insertions(+), 23 deletions(-)

diff --git a/configure.ac b/configure.ac
index 4c5d098e6..49de6c6b3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -260,18 +260,6 @@ AC_CHECK_MEMBERS([struct termios.c_line],,,
 AC_CHECK_MEMBERS([struct stat.st_mtim.tv_nsec],,,
 	[#include <sys/stat.h>])
 
-AC_CHECK_DECLS([
- UNAME26,
- ADDR_NO_RANDOMIZE,
- FDPIC_FUNCPTRS,
- MMAP_PAGE_ZERO,
- ADDR_COMPAT_LAYOUT,
- READ_IMPLIES_EXEC,
- ADDR_LIMIT_32BIT,
- WHOLE_SECONDS,
- STICKY_TIMEOUTS,
- ADDR_LIMIT_3GB], [], [], [#include <linux/personality.h>])
-
 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
 [[
 #ifdef HAVE_SYS_SWAP_H
diff --git a/sys-utils/setarch.c b/sys-utils/setarch.c
index 0e45cfef9..9863cb298 100644
--- a/sys-utils/setarch.c
+++ b/sys-utils/setarch.c
@@ -56,37 +56,37 @@ enum {
 	} while(0)
 
 
-#if !HAVE_DECL_UNAME26
+#ifndef UNAME26
 # define UNAME26                 0x0020000
 #endif
-#if !HAVE_DECL_ADDR_NO_RANDOMIZE
+#ifndef ADDR_NO_RANDOMIZE
 # define ADDR_NO_RANDOMIZE       0x0040000
 #endif
-#if !HAVE_DECL_FDPIC_FUNCPTRS
+#ifndef FDPIC_FUNCPTRS
 # define FDPIC_FUNCPTRS          0x0080000
 #endif
-#if !HAVE_DECL_MMAP_PAGE_ZERO
+#ifndef MMAP_PAGE_ZERO
 # define MMAP_PAGE_ZERO          0x0100000
 #endif
-#if !HAVE_DECL_ADDR_COMPAT_LAYOUT
+#ifndef ADDR_COMPAT_LAYOUT
 # define ADDR_COMPAT_LAYOUT      0x0200000
 #endif
-#if !HAVE_DECL_READ_IMPLIES_EXEC
+#ifndef READ_IMPLIES_EXEC
 # define READ_IMPLIES_EXEC       0x0400000
 #endif
-#if !HAVE_DECL_ADDR_LIMIT_32BIT
+#ifndef ADDR_LIMIT_32BIT
 # define ADDR_LIMIT_32BIT        0x0800000
 #endif
-#if !HAVE_DECL_SHORT_INODE
+#ifndef SHORT_INODE
 # define SHORT_INODE             0x1000000
 #endif
-#if !HAVE_DECL_WHOLE_SECONDS
+#ifndef WHOLE_SECONDS
 # define WHOLE_SECONDS           0x2000000
 #endif
-#if !HAVE_DECL_STICKY_TIMEOUTS
+#ifndef STICKY_TIMEOUTS
 # define STICKY_TIMEOUTS         0x4000000
 #endif
-#if !HAVE_DECL_ADDR_LIMIT_3GB
+#ifndef ADDR_LIMIT_3GB
 # define ADDR_LIMIT_3GB          0x8000000
 #endif
 
-- 
2.21.0