> From: Julien Cristau <[email protected]>
> Date: Fri,  2 Aug 2013 20:07:36 +0200
> 
> Replace hardcoded SVR4 || linux || CSRG_BASED with an autoconf check and
> the _POSIX_SAVED_IDS macro.
> 
> Suggested-by: Mark Kettenis <[email protected]>
> Signed-off-by: Julien Cristau <[email protected]>

Hmm, you need to include <unistd.h> to get the _POSIX_SAVED_IDS macro.
And I don't quite see how that gets pulled in.

> ---
>  configure.ac              |    2 +-
>  hw/xfree86/parser/write.c |    3 ++-
>  include/xorg-config.h.in  |    3 +++
>  3 files changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/configure.ac b/configure.ac
> index c6ecba4..d27ca23 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -215,7 +215,7 @@ AC_SUBST(DLOPEN_LIBS)
>  dnl Checks for library functions.
>  AC_CHECK_FUNCS([backtrace ffs geteuid getuid issetugid getresuid \
>       getdtablesize getifaddrs getpeereid getpeerucred getzoneid \
> -     mmap shmctl64 strncasecmp vasprintf vsnprintf walkcontext])
> +     mmap seteuid shmctl64 strncasecmp vasprintf vsnprintf walkcontext])
>  AC_REPLACE_FUNCS([strcasecmp strcasestr strlcat strlcpy strndup])
>  
>  dnl Find the math libary, then check for cbrt function in it.
> diff --git a/hw/xfree86/parser/write.c b/hw/xfree86/parser/write.c
> index 9c706a0..26739b9 100644
> --- a/hw/xfree86/parser/write.c
> +++ b/hw/xfree86/parser/write.c
> @@ -55,6 +55,7 @@
>  #include <xorg-config.h>
>  #endif
>  
> +#include "os.h"
>  #include "xf86Parser.h"
>  #include "xf86tokens.h"
>  #include "Configint.h"
> @@ -65,7 +66,7 @@
>  #include <signal.h>
>  #include <errno.h>
>  
> -#if defined(SVR4) || defined(__linux__) || defined(CSRG_BASED)
> +#if defined(HAVE_SETEUID) && defined(_POSIX_SAVED_IDS) && _POSIX_SAVED_IDS > > 0
>  #define HAS_SAVED_IDS_AND_SETEUID
>  #endif
>  #if defined(WIN32)
> diff --git a/include/xorg-config.h.in b/include/xorg-config.h.in
> index a71b25d..0df31ae 100644
> --- a/include/xorg-config.h.in
> +++ b/include/xorg-config.h.in
> @@ -139,4 +139,7 @@
>  /* Have X server platform bus support */
>  #undef XSERVER_PLATFORM_BUS
>  
> +/* Define to 1 if you have the `seteuid' function. */
> +#undef HAVE_SETEUID
> +
>  #endif /* _XORG_CONFIG_H_ */
> -- 
> 1.7.10.4
> 
> _______________________________________________
> [email protected]: X.Org development
> Archives: http://lists.x.org/archives/xorg-devel
> Info: http://lists.x.org/mailman/listinfo/xorg-devel
> 
_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to