Move workaround macros for fat binaries into the separate header file
This commit is contained in:
parent
fe6ba5e5c5
commit
becbdaebe3
|
@ -25,14 +25,15 @@ DOCSRC=@DOCSRC@
|
||||||
SUBDIRS=fontconfig fc-case fc-lang fc-glyphname src \
|
SUBDIRS=fontconfig fc-case fc-lang fc-glyphname src \
|
||||||
fc-cache fc-cat fc-list fc-match fc-pattern fc-query fc-scan \
|
fc-cache fc-cat fc-list fc-match fc-pattern fc-query fc-scan \
|
||||||
conf.d $(DOCSRC) test
|
conf.d $(DOCSRC) test
|
||||||
|
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
fontconfig.pc.in \
|
fontconfig.pc.in \
|
||||||
fonts.conf.in \
|
fonts.conf.in \
|
||||||
fonts.dtd \
|
fonts.dtd \
|
||||||
fontconfig.spec.in \
|
fontconfig.spec.in \
|
||||||
fontconfig.spec \
|
fontconfig.spec \
|
||||||
fontconfig-zip.in
|
fontconfig-zip.in \
|
||||||
|
config-fixups.h
|
||||||
CLEANFILES = fonts.conf
|
CLEANFILES = fonts.conf
|
||||||
DISTCLEANFILES = config.cache doltcompile
|
DISTCLEANFILES = config.cache doltcompile
|
||||||
MAINTAINERCLEANFILES = \
|
MAINTAINERCLEANFILES = \
|
||||||
|
|
|
@ -0,0 +1,44 @@
|
||||||
|
/*
|
||||||
|
* Copyright 息 2006 Keith Packard
|
||||||
|
* Copyright 息 2010 Behdad Esfahbod
|
||||||
|
*
|
||||||
|
* Permission to use, copy, modify, distribute, and sell this software and its
|
||||||
|
* documentation for any purpose is hereby granted without fee, provided that
|
||||||
|
* the above copyright notice appear in all copies and that both that
|
||||||
|
* copyright notice and this permission notice appear in supporting
|
||||||
|
* documentation, and that the name of the author(s) not be used in
|
||||||
|
* advertising or publicity pertaining to distribution of the software without
|
||||||
|
* specific, written prior permission. The authors make no
|
||||||
|
* representations about the suitability of this software for any purpose. It
|
||||||
|
* is provided "as is" without express or implied warranty.
|
||||||
|
*
|
||||||
|
* THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
|
||||||
|
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
|
||||||
|
* EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
|
||||||
|
* CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
|
||||||
|
* DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||||||
|
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||||
|
* PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
*/
|
||||||
|
#ifndef _CONFIG_FIXUPS_H_
|
||||||
|
#define _CONFIG_FIXUPS_H_
|
||||||
|
|
||||||
|
/* This header file is supposed to be included in config.h */
|
||||||
|
|
||||||
|
/* just a hack to build the fat binaries:
|
||||||
|
* https://bugs.freedesktop.org/show_bug.cgi?id=20208
|
||||||
|
*/
|
||||||
|
#ifdef __APPLE__
|
||||||
|
# include <machine/endian.h>
|
||||||
|
# undef SIZEOF_VOID_P
|
||||||
|
# undef ALIGNOF_DOUBLE
|
||||||
|
# ifdef __LP64__
|
||||||
|
# define SIZEOF_VOID_P 8
|
||||||
|
# define ALIGNOF_DOUBLE 8
|
||||||
|
# else
|
||||||
|
# define SIZEOF_VOID_P 4
|
||||||
|
# define ALIGNOF_DOUBLE 4
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* _CONFIG_FIXUPS_H_ */
|
|
@ -496,7 +496,9 @@ AC_C_BIGENDIAN
|
||||||
AC_CHECK_SIZEOF([void *])
|
AC_CHECK_SIZEOF([void *])
|
||||||
AC_CHECK_ALIGNOF([double])
|
AC_CHECK_ALIGNOF([double])
|
||||||
|
|
||||||
|
dnl include the header file for workaround of miscalculating size on autoconf
|
||||||
|
dnl particularly for fat binaries
|
||||||
|
AH_BOTTOM([#include "config-fixups.h"])
|
||||||
|
|
||||||
AC_OUTPUT([
|
AC_OUTPUT([
|
||||||
Makefile
|
Makefile
|
||||||
|
|
13
src/fcarch.h
13
src/fcarch.h
|
@ -46,19 +46,6 @@
|
||||||
* be64 1234 8 8
|
* be64 1234 8 8
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifdef __APPLE__
|
|
||||||
# include <machine/endian.h>
|
|
||||||
# undef SIZEOF_VOID_P
|
|
||||||
# undef ALIGNOF_DOUBLE
|
|
||||||
# ifdef __LP64__
|
|
||||||
# define SIZEOF_VOID_P 8
|
|
||||||
# define ALIGNOF_DOUBLE 8
|
|
||||||
# else
|
|
||||||
# define SIZEOF_VOID_P 4
|
|
||||||
# define ALIGNOF_DOUBLE 4
|
|
||||||
# endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined(__DARWIN_BYTE_ORDER) && __DARWIN_BYTE_ORDER == __DARWIN_LITTLE_ENDIAN
|
#if defined(__DARWIN_BYTE_ORDER) && __DARWIN_BYTE_ORDER == __DARWIN_LITTLE_ENDIAN
|
||||||
# define FC_ARCH_ENDIAN "le"
|
# define FC_ARCH_ENDIAN "le"
|
||||||
#elif defined(__DARWIN_BYTE_ORDER) && __DARWIN_BYTE_ORDER == __DARWIN_BIG_ENDIAN
|
#elif defined(__DARWIN_BYTE_ORDER) && __DARWIN_BYTE_ORDER == __DARWIN_BIG_ENDIAN
|
||||||
|
|
Loading…
Reference in New Issue