From: Karel Zak Date: Tue, 13 May 2008 12:00:39 +0000 (+0200) Subject: setarch: add fallback for linux/personality X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2d281745d918b1c03bfde69f4b1f663cf2e2577d;p=util-linux setarch: add fallback for linux/personality setarch.c:248: error: 'ADDR_NO_RANDOMIZE' undeclared (first use in this function) setarch.c:248: error: (Each undeclared identifier is reported only once setarch.c:248: error: for each function it appears in.) setarch.c:251: error: 'FDPIC_FUNCPTRS' undeclared (first use in this function) setarch.c:257: error: 'ADDR_COMPAT_LAYOUT' undeclared (first use in this function) setarch.c:260: error: 'READ_IMPLIES_EXEC' undeclared (first use in this function) Linux gzp1 2.4.36.1-gzp1 #1 SMP Tue Feb 19 10:23:48 CET 2008 i686 GNU/Linux Reported-By: Gabor Z. Papp Signed-off-by: Karel Zak --- diff --git a/configure.ac b/configure.ac index f767361f..a2887575 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 ]) AC_CHECK_HEADERS([sys/swap.h]) diff --git a/sys-utils/setarch.c b/sys-utils/setarch.c index bc6a12d0..c5f885b4 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[] =