diff options
-rw-r--r-- | configure.ac | 10 | ||||
-rw-r--r-- | sys-utils/setarch.c | 32 |
2 files changed, 42 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index f767361f2..a2887575b 100644 --- a/configure.ac +++ b/configure.ac @@ -381,6 +381,16 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ [AC_DEFINE(HAVE_TM_GMTOFF,1,[Does struct tm have a field tm_gmtoff?]) ]) +AC_CHECK_DECLS([ + 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_CHECK_HEADERS([sys/swap.h]) diff --git a/sys-utils/setarch.c b/sys-utils/setarch.c index bc6a12d03..c5f885b4a 100644 --- a/sys-utils/setarch.c +++ b/sys-utils/setarch.c @@ -50,6 +50,38 @@ printf(_("Switching on %s.\n"), #_flag); \ } while(0) + +#if !HAVE_DECL_ADDR_NO_RANDOMIZE +# define ADDR_NO_RANDOMIZE 0x0040000 +#endif +#if !HAVE_DECL_FDPIC_FUNCPTRS +# define FDPIC_FUNCPTRS 0x0080000 +#endif +#if !HAVE_DECL_MMAP_PAGE_ZERO +# define MMAP_PAGE_ZERO 0x0100000 +#endif +#if !HAVE_DECL_ADDR_COMPAT_LAYOUT +# define ADDR_COMPAT_LAYOUT 0x0200000 +#endif +#if !HAVE_DECL_READ_IMPLIES_EXEC +# define READ_IMPLIES_EXEC 0x0400000 +#endif +#if !HAVE_DECL_ADDR_LIMIT_32BIT +# define ADDR_LIMIT_32BIT 0x0800000 +#endif +#if !HAVE_DECL_SHORT_INODE +# define SHORT_INODE 0x1000000 +#endif +#if !HAVE_DECL_WHOLE_SECONDS +# define WHOLE_SECONDS 0x2000000 +#endif +#if !HAVE_DECL_STICKY_TIMEOUTS +# define STICKY_TIMEOUTS 0x4000000 +#endif +#if !HAVE_DECL_ADDR_LIMIT_3GB +# define ADDR_LIMIT_3GB 0x8000000 +#endif + /* Options --3gb and --4gb are for compatibitity with an old Debian setarch implementation. */ struct option longopts[] = |