[PATCH] Fix x86emu builds when using non-gnu compilers

Matt Turner mattst88 at gmail.com
Wed Mar 17 15:01:44 PDT 2010


On Fri, Mar 12, 2010 at 10:20 PM, Alan Coopersmith
<alan.coopersmith at sun.com> wrote:
> Before this fix, the u64 type would not be defined, causing
> x86emu/sys.c to fail to build:
> "sys.c", line 102: syntax error before or at: ldq_u
> "sys.c", line 102: syntax error before or at: *
>
> Since 64-bit types are now required by x86emu, assumes all platforms
> either have a 64-bit long or a 64-bit long long (defined by C99).
>
> Signed-off-by: Alan Coopersmith <alan.coopersmith at sun.com>
> ---
>  hw/xfree86/x86emu/x86emu/types.h |   16 ++++------------
>  1 files changed, 4 insertions(+), 12 deletions(-)
>
> diff --git a/hw/xfree86/x86emu/x86emu/types.h b/hw/xfree86/x86emu/x86emu/types.h
> index c18e11c..3e315c5 100644
> --- a/hw/xfree86/x86emu/x86emu/types.h
> +++ b/hw/xfree86/x86emu/x86emu/types.h
> @@ -61,12 +61,6 @@
>
>  /*---------------------- Macros and type definitions ----------------------*/
>
> -/* Currently only for Linux/32bit */
> -#undef  __HAS_LONG_LONG__
> -#if defined(__GNUC__) && !defined(NO_LONG_LONG)
> -#define __HAS_LONG_LONG__
> -#endif
> -
>  /* Taken from Xmd.h */
>  #undef NUM32
>  #if defined (_LP64) || \
> @@ -77,23 +71,21 @@
>     defined(__hppa__) && defined(__LP64) || \
>     defined(__amd64__) || defined(amd64)
>  #define NUM32 int
> +#define NUM64 long
>  #else
>  #define NUM32 long
> +#define NUM64 long long
>  #endif
>
>  typedef unsigned char          u8;
>  typedef unsigned short                 u16;
>  typedef unsigned NUM32                 u32;
> -#ifdef __HAS_LONG_LONG__
> -typedef unsigned long long     u64;
> -#endif
> +typedef unsigned NUM64                 u64;
>
>  typedef char                           s8;
>  typedef short                          s16;
>  typedef NUM32                          s32;
> -#ifdef __HAS_LONG_LONG__
> -typedef long long                      s64;
> -#endif
> +typedef NUM64                          s64;
>
>  typedef unsigned int                   uint;
>  typedef int                            sint;
> --
> 1.5.6.5
>
> _______________________________________________
> xorg-devel at lists.x.org: X.Org development
> Archives: http://lists.x.org/archives/xorg-devel
> Info: http://lists.x.org/mailman/listinfo/xorg-devel
>

Acked-by: Matt Turner <mattst88 at gmail.com>


More information about the xorg-devel mailing list