Use configure-time checks for stdint.h vs. inttypes.h vs. sys/int_types.h rather than ad-hoc system-specific macros. Also define these types manually none of these header are available. (Thanks to Jason Dorje Short <jdorje@users.sf.net>).

This commit is contained in:
Carl Worth 2005-04-07 12:05:52 +00:00
parent 945e6c2458
commit d4209c331f
4 changed files with 28 additions and 16 deletions

View file

@ -1,3 +1,13 @@
2005-04-07 Carl Worth <cworth@cworth.org>
* configure.in:
* src/cairo-wideint.h:
* src/cairoint.h: Use configure-time checks for stdint.h
vs. inttypes.h vs. sys/int_types.h rather than ad-hoc
system-specific macros. Also define these types manually none of
these header are available. (Thanks to Jason Dorje Short
<jdorje@users.sf.net>).
2005-04-07 Carl Worth <cworth@cworth.org>
* test/imagediff.c (main): Fix to return non-zero status on error.

View file

@ -398,6 +398,7 @@ AC_SUBST(ATSUI_FONT_FEATURE)
dnl ===========================================================================
dnl Checks for precise integer types
AC_CHECK_HEADERS([stdint.h inttypes.h sys/int_types.h])
AC_CHECK_TYPES([uint64_t, uint128_t])
dnl Use lots of warning flags with GCC

View file

@ -1,5 +1,5 @@
/*
* $Id: cairo-wideint.h,v 1.7 2005-03-29 19:48:58 tor Exp $
* $Id: cairo-wideint.h,v 1.8 2005-04-07 19:05:52 cworth Exp $
*
* Copyright © 2004 Keith Packard
*
@ -38,13 +38,24 @@
#ifndef CAIRO_WIDEINT_H
#define CAIRO_WIDEINT_H
#if defined (__SVR4) && defined (__sun)
#if HAVE_STDINT_H
# include <stdint.h>
#elif HAVE_INTTYPES_H
# include <inttypes.h>
#elif HAVE_SYS_INT_TYPES_H
# include <sys/int_types.h>
#else
# if defined (__OpenBSD__) || defined (_AIX)
# include <inttypes.h>
# else
# include <stdint.h>
typedef signed char int8_t;
typedef short int16_t;
typedef long int32_t;
typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
typedef unsigned long uint32_t;
# if sizeof(long long) == 64
typedef long long int64_t;
typedef unsigned long long uint64_t;
# define HAVE_UINT64_T
# endif
#endif

View file

@ -56,16 +56,6 @@
#include <limits.h>
#include <stdio.h>
#if defined (__SVR4) && defined (__sun)
# include <sys/int_types.h>
#else
# if defined (__OpenBSD__) || defined (_AIX)
# include <inttypes.h>
# else
# include <stdint.h>
# endif
#endif
#include "cairo.h"
#if __GNUC__ >= 3 && defined(__ELF__)