jpayne@69
|
1 #ifndef PYMACCONFIG_H
|
jpayne@69
|
2 #define PYMACCONFIG_H
|
jpayne@69
|
3 /*
|
jpayne@69
|
4 * This file moves some of the autoconf magic to compile-time
|
jpayne@69
|
5 * when building on MacOSX. This is needed for building 4-way
|
jpayne@69
|
6 * universal binaries and for 64-bit universal binaries because
|
jpayne@69
|
7 * the values redefined below aren't configure-time constant but
|
jpayne@69
|
8 * only compile-time constant in these scenarios.
|
jpayne@69
|
9 */
|
jpayne@69
|
10
|
jpayne@69
|
11 #if defined(__APPLE__)
|
jpayne@69
|
12
|
jpayne@69
|
13 # undef SIZEOF_LONG
|
jpayne@69
|
14 # undef SIZEOF_PTHREAD_T
|
jpayne@69
|
15 # undef SIZEOF_SIZE_T
|
jpayne@69
|
16 # undef SIZEOF_TIME_T
|
jpayne@69
|
17 # undef SIZEOF_VOID_P
|
jpayne@69
|
18 # undef SIZEOF__BOOL
|
jpayne@69
|
19 # undef SIZEOF_UINTPTR_T
|
jpayne@69
|
20 # undef SIZEOF_PTHREAD_T
|
jpayne@69
|
21 # undef WORDS_BIGENDIAN
|
jpayne@69
|
22 # undef DOUBLE_IS_ARM_MIXED_ENDIAN_IEEE754
|
jpayne@69
|
23 # undef DOUBLE_IS_BIG_ENDIAN_IEEE754
|
jpayne@69
|
24 # undef DOUBLE_IS_LITTLE_ENDIAN_IEEE754
|
jpayne@69
|
25 # undef HAVE_GCC_ASM_FOR_X87
|
jpayne@69
|
26
|
jpayne@69
|
27 # undef VA_LIST_IS_ARRAY
|
jpayne@69
|
28 # if defined(__LP64__) && defined(__x86_64__)
|
jpayne@69
|
29 # define VA_LIST_IS_ARRAY 1
|
jpayne@69
|
30 # endif
|
jpayne@69
|
31
|
jpayne@69
|
32 # undef HAVE_LARGEFILE_SUPPORT
|
jpayne@69
|
33 # ifndef __LP64__
|
jpayne@69
|
34 # define HAVE_LARGEFILE_SUPPORT 1
|
jpayne@69
|
35 # endif
|
jpayne@69
|
36
|
jpayne@69
|
37 # undef SIZEOF_LONG
|
jpayne@69
|
38 # ifdef __LP64__
|
jpayne@69
|
39 # define SIZEOF__BOOL 1
|
jpayne@69
|
40 # define SIZEOF__BOOL 1
|
jpayne@69
|
41 # define SIZEOF_LONG 8
|
jpayne@69
|
42 # define SIZEOF_PTHREAD_T 8
|
jpayne@69
|
43 # define SIZEOF_SIZE_T 8
|
jpayne@69
|
44 # define SIZEOF_TIME_T 8
|
jpayne@69
|
45 # define SIZEOF_VOID_P 8
|
jpayne@69
|
46 # define SIZEOF_UINTPTR_T 8
|
jpayne@69
|
47 # define SIZEOF_PTHREAD_T 8
|
jpayne@69
|
48 # else
|
jpayne@69
|
49 # ifdef __ppc__
|
jpayne@69
|
50 # define SIZEOF__BOOL 4
|
jpayne@69
|
51 # else
|
jpayne@69
|
52 # define SIZEOF__BOOL 1
|
jpayne@69
|
53 # endif
|
jpayne@69
|
54 # define SIZEOF_LONG 4
|
jpayne@69
|
55 # define SIZEOF_PTHREAD_T 4
|
jpayne@69
|
56 # define SIZEOF_SIZE_T 4
|
jpayne@69
|
57 # define SIZEOF_TIME_T 4
|
jpayne@69
|
58 # define SIZEOF_VOID_P 4
|
jpayne@69
|
59 # define SIZEOF_UINTPTR_T 4
|
jpayne@69
|
60 # define SIZEOF_PTHREAD_T 4
|
jpayne@69
|
61 # endif
|
jpayne@69
|
62
|
jpayne@69
|
63 # if defined(__LP64__)
|
jpayne@69
|
64 /* MacOSX 10.4 (the first release to support 64-bit code
|
jpayne@69
|
65 * at all) only supports 64-bit in the UNIX layer.
|
jpayne@69
|
66 * Therefore suppress the toolbox-glue in 64-bit mode.
|
jpayne@69
|
67 */
|
jpayne@69
|
68
|
jpayne@69
|
69 /* In 64-bit mode setpgrp always has no arguments, in 32-bit
|
jpayne@69
|
70 * mode that depends on the compilation environment
|
jpayne@69
|
71 */
|
jpayne@69
|
72 # undef SETPGRP_HAVE_ARG
|
jpayne@69
|
73
|
jpayne@69
|
74 # endif
|
jpayne@69
|
75
|
jpayne@69
|
76 #ifdef __BIG_ENDIAN__
|
jpayne@69
|
77 #define WORDS_BIGENDIAN 1
|
jpayne@69
|
78 #define DOUBLE_IS_BIG_ENDIAN_IEEE754
|
jpayne@69
|
79 #else
|
jpayne@69
|
80 #define DOUBLE_IS_LITTLE_ENDIAN_IEEE754
|
jpayne@69
|
81 #endif /* __BIG_ENDIAN */
|
jpayne@69
|
82
|
jpayne@69
|
83 #ifdef __i386__
|
jpayne@69
|
84 # define HAVE_GCC_ASM_FOR_X87
|
jpayne@69
|
85 #endif
|
jpayne@69
|
86
|
jpayne@69
|
87 /*
|
jpayne@69
|
88 * The definition in pyconfig.h is only valid on the OS release
|
jpayne@69
|
89 * where configure ran on and not necessarily for all systems where
|
jpayne@69
|
90 * the executable can be used on.
|
jpayne@69
|
91 *
|
jpayne@69
|
92 * Specifically: OSX 10.4 has limited supported for '%zd', while
|
jpayne@69
|
93 * 10.5 has full support for '%zd'. A binary built on 10.5 won't
|
jpayne@69
|
94 * work properly on 10.4 unless we suppress the definition
|
jpayne@69
|
95 * of PY_FORMAT_SIZE_T
|
jpayne@69
|
96 */
|
jpayne@69
|
97 #undef PY_FORMAT_SIZE_T
|
jpayne@69
|
98
|
jpayne@69
|
99
|
jpayne@69
|
100 #endif /* defined(_APPLE__) */
|
jpayne@69
|
101
|
jpayne@69
|
102 #endif /* PYMACCONFIG_H */
|