/[soft]/multiarch-utils/branches/1/multiarch-dispatch.h
ViewVC logotype

Contents of /multiarch-utils/branches/1/multiarch-dispatch.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1638 - (show annotations) (download)
Thu Jun 2 20:45:36 2011 UTC (12 years, 10 months ago) by dmorgan
File MIME type: text/plain
File size: 4075 byte(s)
Branch for updates
1 /* Undefine some built-ins */
2 #ifdef linux
3 #undef linux
4 #define _multiarch_defined_linux
5 #endif
6 #ifdef i386
7 #undef i386
8 #define _multiarch_defined_i386
9 #endif
10 #ifdef sparc
11 #undef sparc
12 #define _multiarch_defined_sparc
13 #endif
14 #ifdef mips
15 #undef mips
16 #define _multiarch_defined_mips
17 #endif
18 #ifdef arm
19 #undef arm
20 #define _multiarch_defined_arm
21 #endif
22
23 /* Undefine some interfering definitions (not built-ins) */
24 /* We can only redefine value 1, so we let it fail with other values */
25 #if x86_64 == 1
26 #define _multiarch_defined_x86_64
27 #undef x86_64
28 #endif
29 #if ppc64 == 1
30 #define _multiarch_defined_ppc64
31 #undef ppc64
32 #endif
33 #if ppc == 1
34 #define _multiarch_defined_ppc
35 #undef ppc
36 #endif
37 #if sparc64 == 1
38 #define _multiarch_defined_sparc64
39 #undef sparc64
40 #endif
41 #if s390x == 1
42 #define _multiarch_defined_s390x
43 #undef s390x
44 #endif
45 #if s390 == 1
46 #define _multiarch_defined_s390
47 #undef s390
48 #endif
49 #if ia64 == 1
50 #define _multiarch_defined_ia64
51 #undef ia64
52 #endif
53 #if alpha == 1
54 #define _multiarch_defined_alpha
55 #undef alpha
56 #endif
57 #if mipsel == 1
58 #define _multiarch_defined_mipsel
59 #undef mipsel
60 #endif
61 #if armeb == 1
62 #define _multiarch_defined_armeb
63 #undef armeb
64 #endif
65
66 /* Dispatch arch dependent header */
67 #if defined(__linux__)
68 #define _MULTIARCH_OS linux
69 #endif
70 #define _MULTIARCH_MAKE_HEADER(arch,header) <multiarch-arch-_MULTIARCH_OS/header>
71 #if defined(__x86_64__)
72 #include _MULTIARCH_MAKE_HEADER(x86_64,_MULTIARCH_HEADER)
73 #elif defined(__i386__)
74 #include _MULTIARCH_MAKE_HEADER(i386,_MULTIARCH_HEADER)
75 #elif defined(__powerpc64__)
76 #include _MULTIARCH_MAKE_HEADER(ppc64,_MULTIARCH_HEADER)
77 #elif defined(__powerpc__)
78 #include _MULTIARCH_MAKE_HEADER(ppc,_MULTIARCH_HEADER)
79 #elif defined(__sparc__) && defined(__arch64__)
80 #include _MULTIARCH_MAKE_HEADER(sparc64,_MULTIARCH_HEADER)
81 #elif defined(__sparc__)
82 #include _MULTIARCH_MAKE_HEADER(sparc,_MULTIARCH_HEADER)
83 #elif defined(__s390x__)
84 #include _MULTIARCH_MAKE_HEADER(s390x,_MULTIARCH_HEADER)
85 #elif defined(__s390__)
86 #include _MULTIARCH_MAKE_HEADER(s390,_MULTIARCH_HEADER)
87 #elif defined(__ia64__)
88 #include _MULTIARCH_MAKE_HEADER(ia64,_MULTIARCH_HEADER)
89 #elif defined(__alpha__)
90 #include _MULTIARCH_MAKE_HEADER(alpha,_MULTIARCH_HEADER)
91 #elif defined(__mips__)
92 #if defined(__BIG_ENDIAN__)
93 #include _MULTIARCH_MAKE_HEADER(mips,_MULTIARCH_HEADER)
94 #else
95 #include _MULTIARCH_MAKE_HEADER(mipsel,_MULTIARCH_HEADER)
96 #endif
97 #elif defined(__arm__)
98 #if defined(__BIG_ENDIAN__)
99 #include _MULTIARCH_MAKE_HEADER(armeb,_MULTIARCH_HEADER)
100 #else
101 #include _MULTIARCH_MAKE_HEADER(arm,_MULTIARCH_HEADER)
102 #endif
103 #else
104 #error "Unknown architecture, please submit bug report"
105 #endif
106 #undef _MULTIARCH_MAKE_HEADER
107 #undef _MULTIARCH_OS
108 #undef _MULTIARCH_HEADER
109
110 /* Redefine built-ins */
111 #ifdef _multiarch_defined_linux
112 #undef _multiarch_defined_linux
113 #define linux 1
114 #endif
115 #ifdef _multiarch_defined_i386
116 #undef _multiarch_defined_i386
117 #define i386 1
118 #endif
119 #ifdef _multiarch_defined_sparc
120 #undef _multiarch_defined_sparc
121 #define sparc 1
122 #endif
123 #ifdef _multiarch_defined_mips
124 #undef _multiarch_defined_mips
125 #define mips 1
126 #endif
127 #ifdef _multiarch_defined_arm
128 #undef _multiarch_defined_arm
129 #define arm 1
130 #endif
131
132 /* Redefine interfering defitions */
133 #ifdef _multiarch_defined_x86_64
134 #undef _multiarch_defined_x86_64
135 #define x86_64 1
136 #endif
137 #ifdef _multiarch_defined_ppc64
138 #undef _multiarch_defined_ppc64
139 #define ppc64 1
140 #endif
141 #ifdef _multiarch_defined_ppc
142 #undef _multiarch_defined_ppc
143 #define ppc 1
144 #endif
145 #ifdef _multiarch_defined_sparc64
146 #undef _multiarch_defined_sparc64
147 #define sparc64 1
148 #endif
149 #ifdef _multiarch_defined_s390x
150 #undef _multiarch_defined_s390x
151 #define s390x 1
152 #endif
153 #ifdef _multiarch_defined_s390
154 #undef _multiarch_defined_s390
155 #define s390 1
156 #endif
157 #ifdef _multiarch_defined_ia64
158 #undef _multiarch_defined_ia64
159 #define ia64 1
160 #endif
161 #ifdef _multiarch_defined_alpha
162 #undef _multiarch_defined_alpha
163 #define alpha 1
164 #endif
165 #ifdef _multiarch_defined_mipsel
166 #undef _multiarch_defined_mipsel
167 #define mipsel 1
168 #endif
169 #ifdef _multiarch_defined_armeb
170 #undef _multiarch_defined_armeb
171 #define armeb 1
172 #endif

Properties

Name Value
svn:eol-style native

  ViewVC Help
Powered by ViewVC 1.1.30