globus_common  17.8
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
globus_config.h
Go to the documentation of this file.
1 /*
2  * Copyright 1999-2013 University of Chicago
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
22 #include <stdint.h>
23 #include <limits.h>
24 
25 #if !defined(GLOBUS_CONFIG_H)
26 #define GLOBUS_CONFIG_H 1
27 #define BUILD_DEBUG 1
28 
29 #ifdef __STDC__
30  #ifndef HAVE_STDARG_H
31  #define HAVE_STDARG_H
32  #endif
33 #endif
34 
35 #ifdef _WIN32
36  #define TARGET_ARCH_WIN32 1
37  #define WINVER 0x0601
38  #define _WIN32_WINNT WINVER
39 #endif
40 
41 #ifdef __MINGW32__
42  #ifndef HAVE_IN6_IS_ADDR_UNSPECIFIED
43  #define HAVE_IN6_IS_ADDR_UNSPECIFIED 1
44  #endif
45  #ifndef __USE_MINGW_ANSI_STDIO
46  #define __USE_MINGW_ANSI_STDIO 1
47  #endif
48  #ifndef _POSIX
49  #define _POSIX 1
50  #endif
51  #define TARGET_ARCH_MINGW32
52 #endif
53 
54 #ifdef __HOS_AIX__
55  #define TARGET_ARCH_AIX 1
56 #endif
57 
58 #ifdef __FreeBSD__
59  #define TARGET_ARCH_FREEBSD 1
60  #define TARGET_ARCH_BSD 1
61 #endif
62 
63 #ifdef __OpenBSD__
64  #define TARGET_ARCH_OPENBSD 1
65  #define TARGET_ARCH_BSD 1
66 #endif
67 
68 #ifdef __CYGWIN__
69  #define TARGET_ARCH_CYGWIN
70 #endif
71 
72 #ifdef __APPLE__
73  #define TARGET_ARCH_DARWIN 1
74  #define TARGET_ARCH_BSD 1
75 #endif
76 
77 #ifdef sun
78  #define TARGET_ARCH_SOLARIS 1
79  #ifdef __i386
80  #define TARGET_ARCH_X86 1
81  #endif
82  #ifdef __x86_64
83  #define TARGET_ARCH_X86_64 1
84  #endif
85 #endif
86 
87 #ifdef __hpux
88  #define TARGET_ARCH_HPUX 1
89  #ifdef __ia64
90  #define TARGET_ARCH_IA64 1
91  #endif
92 #endif
93 
94 #if defined(__linux__) || defined(linux) || defined(__linux)
95  #define TARGET_ARCH_LINUX 1
96  #if defined(__x86_64) || defined(__x86_64__)
97  #define TARGET_ARCH_X86 1
98  #elif defined(i386) || defined(__i386) || defined(__i386__)
99  #define TARGET_ARCH_X86_64 1
100  #elif defined(__ia64) || defined(__itanium__)
101  #define TARGET_ARCH_IA64 1
102  #elif defined(__sparc)
103  #define TARGET_ARCH_SPARC 1
104  #endif
105 #endif
106 
107 #ifdef __GNUC__
108 #define GLOBUS_FLAVOR_PREFIX "gcc"
109 #else
110 #define GLOBUS_FLAVOR_PREFIX "cc"
111 #endif
112 
113 #if LONG_MAX >= INT64_MAX
114 #define GLOBUS_FLAVOR_SUFFIX "64"
115 #else
116 #define GLOBUS_FLAVOR_SUFFIX "32"
117 #endif
118 
119 #define GLOBUS_FLAVOR_NAME GLOBUS_FLAVOR_PREFIX GLOBUS_FLAVOR_SUFFIX
120 
121 #endif /* GLOBUS_CONFIG_H */