gccxml_gem 0.9.1-x86-darwin-9 → 0.9.2-x86-darwin-9
Sign up to get free protection for your applications and to get access to all the features.
- data/Rakefile +5 -1
- data/bin/gccxml +0 -0
- data/bin/gccxml_cc1plus +0 -0
- data/gccxml.rb +5 -5
- data/share/gccxml-0.9/GCC/3.2/bits/gthr-default.h +581 -0
- data/share/gccxml-0.9/GCC/3.4/bits/gthr-default.h +664 -0
- data/share/gccxml-0.9/GCC/4.3/gccxml_builtins.h +182 -0
- data/share/gccxml-0.9/IBM/8.0/adapt_headers.sh +34 -0
- data/share/gccxml-0.9/IBM/8.0/stdlib.h.patch +27 -0
- data/share/gccxml-0.9/IBM/8.0/xstring.patch +19 -0
- data/share/gccxml-0.9/IBM/README +8 -0
- data/share/gccxml-0.9/IBM/find_flags +51 -0
- data/share/gccxml-0.9/IBM/find_flags_common +48 -0
- data/share/gccxml-0.9/Intel/find_flags +1 -1
- data/share/gccxml-0.9/MIPSpro/find_flags +13 -80
- data/share/gccxml-0.9/MIPSpro/mipspro_defs.cxx +63 -0
- data/share/gccxml-0.9/Sun/5.8/{adaptation.patch → Cstd.patch} +96 -108
- data/share/gccxml-0.9/Sun/5.8/adapt_headers.sh +32 -0
- data/share/gccxml-0.9/Sun/5.8/std-5.10.patch +22 -0
- data/share/gccxml-0.9/Sun/README +4 -4
- data/share/gccxml-0.9/Sun/find_flags +20 -38
- data/share/gccxml-0.9/Sun/find_flags_common +42 -0
- data/share/gccxml-0.9/gccxml_config +1 -1
- data/share/gccxml-0.9/gccxml_identify_compiler.cc +13 -0
- data/share/man/man1/gccxml.1 +1 -1
- metadata +27 -37
- data/share/gccxml-0.9/GCC/find_flags +0 -105
- data/share/gccxml-0.9/Sun/adapt_headers.sh +0 -24
- data/share/gccxml-0.9/gccxml_find_flags +0 -93
@@ -0,0 +1,182 @@
|
|
1
|
+
#define __builtin_apply(x,y,z) ((void*)0)
|
2
|
+
#define __builtin_nan(x) (0.0)
|
3
|
+
#define __builtin_nanf(x) (0.0f)
|
4
|
+
#define __builtin_nanl(x) (0.0l)
|
5
|
+
#define __builtin_huge_val(x) (0.0)
|
6
|
+
#define __builtin_huge_valf(x) (0.0f)
|
7
|
+
#define __builtin_huge_vall(x) (0.0l)
|
8
|
+
#define __builtin_apply_args(x) ((void*)0)
|
9
|
+
#define __builtin_types_compatible_p(x,y) 0
|
10
|
+
#define __builtin_choose_expr(x,y,z) int
|
11
|
+
#define __builtin_constant_p(x) 0
|
12
|
+
void* __builtin_memchr(void const*, int, unsigned int);
|
13
|
+
void __builtin_return (void *RESULT);
|
14
|
+
void * __builtin_return_address (unsigned int LEVEL);
|
15
|
+
void * __builtin_frame_address (unsigned int LEVEL);
|
16
|
+
long __builtin_expect (long EXP, long C);
|
17
|
+
void __builtin_prefetch (const void *ADDR, ...);
|
18
|
+
double __builtin_inf (void);
|
19
|
+
float __builtin_inff (void);
|
20
|
+
long double __builtin_infl (void);
|
21
|
+
double __builtin_nans (const char *str);
|
22
|
+
float __builtin_nansf (const char *str);
|
23
|
+
long double __builtin_nansl (const char *str);
|
24
|
+
double __builtin_acos(double);
|
25
|
+
float __builtin_acosf(float);
|
26
|
+
long double __builtin_acosl(long double);
|
27
|
+
double __builtin_asin(double);
|
28
|
+
float __builtin_asinf(float);
|
29
|
+
long double __builtin_asinl(long double);
|
30
|
+
double __builtin_atan(double);
|
31
|
+
double __builtin_atan2(double, double);
|
32
|
+
float __builtin_atan2f(float, float);
|
33
|
+
long double __builtin_atan2l(long double, long double);
|
34
|
+
float __builtin_atanf(float);
|
35
|
+
long double __builtin_atanl(long double);
|
36
|
+
double __builtin_ceil(double);
|
37
|
+
float __builtin_ceilf(float);
|
38
|
+
long double __builtin_ceill(long double);
|
39
|
+
double __builtin_cos(double);
|
40
|
+
float __builtin_cosf(float);
|
41
|
+
double __builtin_cosh(double);
|
42
|
+
float __builtin_coshf(float);
|
43
|
+
long double __builtin_coshl(long double);
|
44
|
+
long double __builtin_cosl(long double);
|
45
|
+
double __builtin_exp(double);
|
46
|
+
float __builtin_expf(float);
|
47
|
+
long double __builtin_expl(long double);
|
48
|
+
double __builtin_fabs(double);
|
49
|
+
float __builtin_fabsf(float);
|
50
|
+
long double __builtin_fabsl(long double);
|
51
|
+
double __builtin_floor(double);
|
52
|
+
float __builtin_floorf(float);
|
53
|
+
long double __builtin_floorl(long double);
|
54
|
+
float __builtin_fmodf(float, float);
|
55
|
+
long double __builtin_fmodl(long double, long double);
|
56
|
+
double __builtin_frexp(double, int*);
|
57
|
+
float __builtin_frexpf(float, int*);
|
58
|
+
long double __builtin_frexpl(long double, int*);
|
59
|
+
double __builtin_ldexp(double, int);
|
60
|
+
float __builtin_ldexpf(float, int);
|
61
|
+
long double __builtin_ldexpl(long double, int);
|
62
|
+
double __builtin_log(double);
|
63
|
+
double __builtin_log10(double);
|
64
|
+
float __builtin_log10f(float);
|
65
|
+
long double __builtin_log10l(long double);
|
66
|
+
float __builtin_logf(float);
|
67
|
+
long double __builtin_logl(long double);
|
68
|
+
float __builtin_modff(float, float*);
|
69
|
+
long double __builtin_modfl(long double, long double*);
|
70
|
+
float __builtin_powf(float, float);
|
71
|
+
long double __builtin_powl(long double, long double);
|
72
|
+
double __builtin_powi(double, int);
|
73
|
+
float __builtin_powif(float, int);
|
74
|
+
long double __builtin_powil(long double, int);
|
75
|
+
double __builtin_sin(double);
|
76
|
+
float __builtin_sinf(float);
|
77
|
+
double __builtin_sinh(double);
|
78
|
+
float __builtin_sinhf(float);
|
79
|
+
long double __builtin_sinhl(long double);
|
80
|
+
long double __builtin_sinl(long double);
|
81
|
+
double __builtin_sqrt(double);
|
82
|
+
float __builtin_sqrtf(float);
|
83
|
+
long double __builtin_sqrtl(long double);
|
84
|
+
double __builtin_tan(double);
|
85
|
+
float __builtin_tanf(float);
|
86
|
+
double __builtin_tanh(double);
|
87
|
+
float __builtin_tanhf(float);
|
88
|
+
long double __builtin_tanhl(long double);
|
89
|
+
long double __builtin_tanl(long double);
|
90
|
+
float __builtin_cabsf(float __complex__);
|
91
|
+
double __builtin_cabs(double __complex__);
|
92
|
+
long double __builtin_cabsl(long double __complex__);
|
93
|
+
float __builtin_cargf(float __complex__);
|
94
|
+
double __builtin_carg(double __complex__);
|
95
|
+
long double __builtin_cargl(long double __complex__);
|
96
|
+
int __builtin_ctz(int);
|
97
|
+
int __builtin_ctzl(long);
|
98
|
+
int __builtin_ctzll(long long);
|
99
|
+
int __builtin_popcount(int);
|
100
|
+
int __builtin_popcountl(long);
|
101
|
+
int __builtin_popcountll(long long);
|
102
|
+
float __complex__ __builtin_ccosf(float __complex__);
|
103
|
+
double __complex__ __builtin_ccos(double __complex__);
|
104
|
+
long double __complex__ __builtin_ccosl(long double __complex__);
|
105
|
+
float __complex__ __builtin_ccoshf(float __complex__);
|
106
|
+
double __complex__ __builtin_ccosh(double __complex__);
|
107
|
+
long double __complex__ __builtin_ccoshl(long double __complex__);
|
108
|
+
float __complex__ __builtin_cexpf(float __complex__);
|
109
|
+
double __complex__ __builtin_cexp(double __complex__);
|
110
|
+
long double __complex__ __builtin_cexpl(long double __complex__);
|
111
|
+
float __complex__ __builtin_clogf(float __complex__);
|
112
|
+
double __complex__ __builtin_clog(double __complex__);
|
113
|
+
long double __complex__ __builtin_clogl(long double __complex__);
|
114
|
+
float __complex__ __builtin_csinf(float __complex__);
|
115
|
+
double __complex__ __builtin_csin(double __complex__);
|
116
|
+
long double __complex__ __builtin_csinl(long double __complex__);
|
117
|
+
float __complex__ __builtin_csinhf(float __complex__);
|
118
|
+
double __complex__ __builtin_csinh(double __complex__);
|
119
|
+
long double __complex__ __builtin_csinhl(long double __complex__);
|
120
|
+
float __complex__ __builtin_csqrtf(float __complex__);
|
121
|
+
double __complex__ __builtin_csqrt(double __complex__);
|
122
|
+
long double __complex__ __builtin_csqrtl(long double __complex__);
|
123
|
+
float __complex__ __builtin_ctanf(float __complex__);
|
124
|
+
double __complex__ __builtin_ctan(double __complex__);
|
125
|
+
long double __complex__ __builtin_ctanl(long double __complex__);
|
126
|
+
float __complex__ __builtin_ctanhf(float __complex__);
|
127
|
+
double __complex__ __builtin_ctanh(double __complex__);
|
128
|
+
long double __complex__ __builtin_ctanhl(long double __complex__);
|
129
|
+
float __complex__ __builtin_cpowf(float __complex__, float __complex__);
|
130
|
+
double __complex__ __builtin_cpow(double __complex__, double __complex__);
|
131
|
+
long double __complex__ __builtin_cpowl(long double __complex__, long double __complex__);
|
132
|
+
|
133
|
+
/* The GCC 4.3 parser hard-codes handling of these, so they do not
|
134
|
+
have real signatures. */
|
135
|
+
bool __builtin_isfinite(...);
|
136
|
+
bool __builtin_isinf(...);
|
137
|
+
bool __builtin_isnan(...);
|
138
|
+
bool __builtin_isnormal(...);
|
139
|
+
bool __builtin_isgreater(...);
|
140
|
+
bool __builtin_isgreaterequal(...);
|
141
|
+
bool __builtin_isless(...);
|
142
|
+
bool __builtin_islessequal(...);
|
143
|
+
bool __builtin_islessgreater(...);
|
144
|
+
bool __builtin_isunordered(...);
|
145
|
+
bool __builtin_va_arg_pack(...);
|
146
|
+
|
147
|
+
/*
|
148
|
+
|
149
|
+
GCC 4.3 has the following additional builtin compile-time constant
|
150
|
+
expressions:
|
151
|
+
|
152
|
+
__builtin_va_arg ( assignment-expression , type-id )
|
153
|
+
__builtin_offsetof ( type-id , offsetof-expression )
|
154
|
+
|
155
|
+
__has_nothrow_assign(T)
|
156
|
+
__has_nothrow_constructor(T)
|
157
|
+
__has_nothrow_copy(T)
|
158
|
+
__has_trivial_assign(T)
|
159
|
+
__has_trivial_constructor(T)
|
160
|
+
__has_trivial_copy(T)
|
161
|
+
__has_trivial_destructor(T)
|
162
|
+
__has_virtual_destructor(T)
|
163
|
+
__is_abstract(T)
|
164
|
+
__is_base_of(Tbase,Tderived)
|
165
|
+
__is_class(T)
|
166
|
+
__is_convertible_to(Tfrom,Tto)
|
167
|
+
__is_empty(T)
|
168
|
+
__is_enum(T)
|
169
|
+
__is_pod(T)
|
170
|
+
__is_polymorphic(T)
|
171
|
+
__is_union(T)
|
172
|
+
|
173
|
+
In order to really support these we would have to update GCC-XML's
|
174
|
+
internal parser to be GCC 4.3. Since this has not yet been done we
|
175
|
+
get most of the way by defining some of these as macros with fake
|
176
|
+
answers. It is enough to get through GCC 4.3's C++98 standard
|
177
|
+
library.
|
178
|
+
*/
|
179
|
+
|
180
|
+
#define __is_pod(x) false
|
181
|
+
#define __is_empty(x) false
|
182
|
+
#define __has_trivial_destructor(x) false
|
@@ -0,0 +1,34 @@
|
|
1
|
+
#!/bin/sh
|
2
|
+
|
3
|
+
cd `dirname $0`
|
4
|
+
|
5
|
+
#########################################
|
6
|
+
# Patch C++ Compiler Includes
|
7
|
+
#########################################
|
8
|
+
|
9
|
+
XLC_INCLUDES=`../find_flags "$@" | perl -ne '($a) = m|-I([/a-zA-Z0-9\._-]+)|o ; print "$a\n" if $a'`
|
10
|
+
|
11
|
+
for f in $XLC_INCLUDES/*
|
12
|
+
do
|
13
|
+
b=`basename $f`
|
14
|
+
|
15
|
+
sed \
|
16
|
+
-e 's/\(extern[[:space:]]\{1,\}\)"builtin"/\1"C"/g' \
|
17
|
+
-e 's/^\([[:space:]]\{1,\}\)??=/\1#/g' \
|
18
|
+
-e 's/__IBMCPP__ < 400/!defined(__GCCXML__)/g' \
|
19
|
+
-e 's/IBM VisualAge C++ v4 and later compilers/GCCXML/g' \
|
20
|
+
-e '/#pragma[[:space:]]\{1,\}implementation/d' \
|
21
|
+
$f > $b.tmp
|
22
|
+
|
23
|
+
if ! cmp -s $f $b.tmp
|
24
|
+
then
|
25
|
+
echo "modifying $b"
|
26
|
+
mv $b.tmp $b
|
27
|
+
else
|
28
|
+
rm $b.tmp
|
29
|
+
fi
|
30
|
+
|
31
|
+
done
|
32
|
+
|
33
|
+
patch -s -i stdlib.h.patch
|
34
|
+
patch -s -i xstring.patch
|
@@ -0,0 +1,27 @@
|
|
1
|
+
*** stdlib.h.orig Mon Jun 8 17:46:16 2009
|
2
|
+
--- stdlib.h Mon Jun 8 17:46:32 2009
|
3
|
+
***************
|
4
|
+
*** 33,43 ****
|
5
|
+
# endif
|
6
|
+
|
7
|
+
# if defined (__MATH__) && defined (_ANSI_C_SOURCE)
|
8
|
+
! inline int abs (int );
|
9
|
+
# if defined (__ABS_LONG__)
|
10
|
+
extern "C++" inline long abs (long );
|
11
|
+
# endif
|
12
|
+
! inline long labs (long );
|
13
|
+
# endif
|
14
|
+
# if defined (__MATH__) && defined(__XLC13__) && defined(_LONG_LONG) && defined(_ALL_SOURCE)
|
15
|
+
inline long long llabs(long long);
|
16
|
+
--- 33,43 ----
|
17
|
+
# endif
|
18
|
+
|
19
|
+
# if defined (__MATH__) && defined (_ANSI_C_SOURCE)
|
20
|
+
! extern "C" inline int abs (int );
|
21
|
+
# if defined (__ABS_LONG__)
|
22
|
+
extern "C++" inline long abs (long );
|
23
|
+
# endif
|
24
|
+
! extern "C" inline long labs (long );
|
25
|
+
# endif
|
26
|
+
# if defined (__MATH__) && defined(__XLC13__) && defined(_LONG_LONG) && defined(_ALL_SOURCE)
|
27
|
+
inline long long llabs(long long);
|
@@ -0,0 +1,19 @@
|
|
1
|
+
*** xstring.orig Mon Jun 8 17:48:44 2009
|
2
|
+
--- xstring Mon Jun 8 17:48:56 2009
|
3
|
+
***************
|
4
|
+
*** 571,577 ****
|
5
|
+
template<class _E, class _Tr, class _A>
|
6
|
+
const typename basic_string<_E, _Tr, _A>::size_type
|
7
|
+
basic_string<_E, _Tr, _A>::npos =
|
8
|
+
! (basic_string<_E, _Tr, _A>::size_type)(-1);
|
9
|
+
|
10
|
+
template<class _E, class _Tr, class _A> inline
|
11
|
+
void swap(basic_string<_E, _Tr, _A>& _X,
|
12
|
+
--- 571,577 ----
|
13
|
+
template<class _E, class _Tr, class _A>
|
14
|
+
const typename basic_string<_E, _Tr, _A>::size_type
|
15
|
+
basic_string<_E, _Tr, _A>::npos =
|
16
|
+
! (typename basic_string<_E, _Tr, _A>::size_type)(-1);
|
17
|
+
|
18
|
+
template<class _E, class _Tr, class _A> inline
|
19
|
+
void swap(basic_string<_E, _Tr, _A>& _X,
|
@@ -0,0 +1,8 @@
|
|
1
|
+
IBM xlC support contributed by Hady Zalek
|
2
|
+
|
3
|
+
This is a small README file regarding gccxml support for AIX and IBM xlC.
|
4
|
+
|
5
|
+
The IBM xlC headers are not suitable for GCC and need to be adapted. The modified files may not be redistributed freely. This forces you to perform the following operations:
|
6
|
+
./<xlC-version>/adapt_headers.sh
|
7
|
+
|
8
|
+
This will produce corrected header files in the corresponding directory.
|
@@ -0,0 +1,51 @@
|
|
1
|
+
#!/bin/sh
|
2
|
+
#=============================================================================
|
3
|
+
#
|
4
|
+
# Program: GCC-XML
|
5
|
+
# Module: $RCSfile: find_flags,v $
|
6
|
+
# Language: C++
|
7
|
+
# Date: $Date: 2009-06-09 18:18:45 $
|
8
|
+
# Version: $Revision: 1.1 $
|
9
|
+
#
|
10
|
+
# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
|
11
|
+
# See Copyright.txt for details.
|
12
|
+
#
|
13
|
+
# This software is distributed WITHOUT ANY WARRANTY; without even
|
14
|
+
# the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
15
|
+
# PURPOSE. See the above copyright notices for more information.
|
16
|
+
#
|
17
|
+
#=============================================================================
|
18
|
+
|
19
|
+
# Find the compiler executable name.
|
20
|
+
if test "x$1" = "x" ; then
|
21
|
+
if test "x${CXX}" = "x" ; then
|
22
|
+
CXX=xlC
|
23
|
+
fi
|
24
|
+
else
|
25
|
+
CXX="$1"
|
26
|
+
shift
|
27
|
+
CXXFLAGS="$@"
|
28
|
+
fi
|
29
|
+
|
30
|
+
# Find the compiler version
|
31
|
+
CXX_VERSION=`${CXX} -qversion 2>&1 | perl -ne 'print m|\WV(\d+\.\d+)|o'`
|
32
|
+
[ -z "${CXX_VERSION}" ] && echo "Could not find compiler version" && exit 1
|
33
|
+
|
34
|
+
# Compute the script dir
|
35
|
+
SCRIPT_DIR=`dirname $0`
|
36
|
+
if test "x$SCRIPT_DIR" = "x" ; then SCRIPT_DIR="." ; fi
|
37
|
+
SCRIPT_DIR=`cd "$SCRIPT_DIR" ; pwd`
|
38
|
+
|
39
|
+
# Compute the version-specific support dir
|
40
|
+
CXX_SUPPORT_DIR="$SCRIPT_DIR/$CXX_VERSION"
|
41
|
+
|
42
|
+
# Use the version-specific find_flags if available
|
43
|
+
if [ -f "$CXX_SUPPORT_DIR/find_flags" ]
|
44
|
+
then
|
45
|
+
. "$CXX_SUPPORT_DIR/find_flags"
|
46
|
+
else
|
47
|
+
. "$SCRIPT_DIR/find_flags_common"
|
48
|
+
fi
|
49
|
+
|
50
|
+
# Print out the options
|
51
|
+
echo $OPTIONS
|
@@ -0,0 +1,48 @@
|
|
1
|
+
#!/bin/sh
|
2
|
+
#=============================================================================
|
3
|
+
#
|
4
|
+
# Program: GCC-XML
|
5
|
+
# Module: $RCSfile: find_flags_common,v $
|
6
|
+
# Language: C++
|
7
|
+
# Date: $Date: 2009-06-09 18:18:45 $
|
8
|
+
# Version: $Revision: 1.1 $
|
9
|
+
#
|
10
|
+
# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
|
11
|
+
# See Copyright.txt for details.
|
12
|
+
#
|
13
|
+
# This software is distributed WITHOUT ANY WARRANTY; without even
|
14
|
+
# the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
15
|
+
# PURPOSE. See the above copyright notices for more information.
|
16
|
+
#
|
17
|
+
#=============================================================================
|
18
|
+
|
19
|
+
# Find the include path directory.
|
20
|
+
CXX_BIN_DIR=$(dirname $(which "${CXX}"))
|
21
|
+
CXX_INC_DIR=$(dirname $CXX_BIN_DIR)/include
|
22
|
+
|
23
|
+
if [ ! -d "$CXX_INC_DIR" ]
|
24
|
+
then
|
25
|
+
echo "Could not find the xlC include directory in $CXX_INC_DIR"
|
26
|
+
exit 1
|
27
|
+
fi
|
28
|
+
|
29
|
+
GCCXML_PID="$$"
|
30
|
+
cat > "/tmp/gccxml_identify_compiler_args$GCCXML_PID.cc" <<!
|
31
|
+
#include <>
|
32
|
+
!
|
33
|
+
|
34
|
+
# Find the macro definition options.
|
35
|
+
MACROS=`${CXX} ${CXXFLAGS} /tmp/gccxml_identify_compiler_args$GCCXML_PID.cc -E -V 2>&1 | perl -ne 'print m|(\W-D[^\s]+\s+)|og'`
|
36
|
+
MACROS="${MACROS} -D_WCHAR_T -D__MATH__ -D__TOS_AIX__ -D__BUILD_RT__"
|
37
|
+
|
38
|
+
# Find the include path options.
|
39
|
+
INCLUDES="-I${CXX_INC_DIR} -I/usr/include"
|
40
|
+
|
41
|
+
# Use hacked headers
|
42
|
+
INCLUDES="-iwrapper\"$CXX_SUPPORT_DIR\" $INCLUDES"
|
43
|
+
|
44
|
+
# Cleanup
|
45
|
+
rm -rf "/tmp/gccxml_identify_compiler_args$GCCXML_PID.cc"
|
46
|
+
|
47
|
+
# Format the options.
|
48
|
+
OPTIONS="$MACROS $INCLUDES $SPECIAL"
|
@@ -4,7 +4,7 @@
|
|
4
4
|
# Program: GCC-XML
|
5
5
|
# Module: $RCSfile: find_flags,v $
|
6
6
|
# Language: C++
|
7
|
-
# Date: $Date: 2005
|
7
|
+
# Date: $Date: 2005-04-07 12:51:07 $
|
8
8
|
# Version: $Revision: 1.5 $
|
9
9
|
#
|
10
10
|
# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
|
@@ -4,8 +4,8 @@
|
|
4
4
|
# Program: GCC-XML
|
5
5
|
# Module: $RCSfile: find_flags,v $
|
6
6
|
# Language: C++
|
7
|
-
# Date: $Date:
|
8
|
-
# Version: $Revision: 1.
|
7
|
+
# Date: $Date: 2009-09-22 13:16:01 $
|
8
|
+
# Version: $Revision: 1.6 $
|
9
9
|
#
|
10
10
|
# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
|
11
11
|
# See Copyright.txt for details.
|
@@ -27,83 +27,18 @@ else
|
|
27
27
|
CXXFLAGS="$@"
|
28
28
|
fi
|
29
29
|
|
30
|
-
|
31
|
-
TESTFILE="find_flags_temp$GCCXML_PID"
|
30
|
+
SELFDIR=`cd "\`dirname \"$0\"\`";pwd`
|
32
31
|
|
33
|
-
#
|
34
|
-
#
|
35
|
-
#
|
36
|
-
#
|
37
|
-
|
38
|
-
#ifdef _BOOL
|
39
|
-
D_BOOL _BOOL
|
40
|
-
#endif
|
41
|
-
#ifdef _EXPLICIT_IS_KEYWORD
|
42
|
-
D_EXPLICIT_IS_KEYWORD _EXPLICIT_IS_KEYWORD
|
43
|
-
#endif
|
44
|
-
#ifdef _LIBC_IN_NAMESPACE_STD_
|
45
|
-
D_LIBC_IN_NAMESPACE_STD_ _LIBC_IN_NAMESPACE_STD_
|
46
|
-
#endif
|
47
|
-
#ifdef _MEMBER_TEMPLATES
|
48
|
-
D_MEMBER_TEMPLATES _MEMBER_TEMPLATES
|
49
|
-
#endif
|
50
|
-
#ifdef _MUTABLE_IS_KEYWORD
|
51
|
-
D_MUTABLE_IS_KEYWORD _MUTABLE_IS_KEYWORD
|
52
|
-
#endif
|
53
|
-
#ifdef _NAMESPACES
|
54
|
-
D_NAMESPACES _NAMESPACES
|
55
|
-
#endif
|
56
|
-
#ifdef _PARTIAL_SPECIALIZATION_OF_CLASS_TEMPLATES
|
57
|
-
D_PARTIAL_SPECIALIZATION_OF_CLASS_TEMPLATES _PARTIAL_SPECIALIZATION_OF_CLASS_TEMPLATES
|
58
|
-
#endif
|
59
|
-
#ifdef _STANDARD_C_PLUS_PLUS
|
60
|
-
D_STANDARD_C_PLUS_PLUS _STANDARD_C_PLUS_PLUS
|
61
|
-
#endif
|
62
|
-
#ifdef _TYPENAME_IS_KEYWORD
|
63
|
-
D_TYPENAME_IS_KEYWORD _TYPENAME_IS_KEYWORD
|
64
|
-
#endif
|
65
|
-
#ifdef _WCHAR_T
|
66
|
-
D_WCHAR_T _WCHAR_T
|
67
|
-
#endif
|
68
|
-
#ifdef _WCHAR_T_IS_KEYWORD
|
69
|
-
D_WCHAR_T_IS_KEYWORD _WCHAR_T_IS_KEYWORD
|
70
|
-
#endif
|
71
|
-
#ifdef __ANSI_CPP__
|
72
|
-
D__ANSI_CPP__ __ANSI_CPP__
|
73
|
-
#endif
|
74
|
-
#ifdef __ARRAY_OPERATORS
|
75
|
-
D__ARRAY_OPERATORS __ARRAY_OPERATORS
|
76
|
-
#endif
|
77
|
-
#ifdef __EDG_ABI_COMPATIBILITY_VERSION
|
78
|
-
D__EDG_ABI_COMPATIBILITY_VERSION __EDG_ABI_COMPATIBILITY_VERSION
|
79
|
-
#endif
|
80
|
-
#ifdef __EDG_RUNTIME_USES_NAMESPACES
|
81
|
-
D__EDG_RUNTIME_USES_NAMESPACES __EDG_RUNTIME_USES_NAMESPACES
|
82
|
-
#endif
|
83
|
-
#ifdef __EDG_VERSION__
|
84
|
-
D__EDG_VERSION__ __EDG_VERSION__
|
85
|
-
#endif
|
86
|
-
#ifdef __EDG__
|
87
|
-
D__EDG__ __EDG__
|
88
|
-
#endif
|
89
|
-
#ifdef __EXCEPTIONS
|
90
|
-
D__EXCEPTIONS __EXCEPTIONS
|
91
|
-
#endif
|
92
|
-
#ifdef __LIBC_MATH_OVERLOAD__
|
93
|
-
D__LIBC_MATH_OVERLOAD__ __LIBC_MATH_OVERLOAD__
|
94
|
-
#endif
|
95
|
-
#ifdef __RTTI
|
96
|
-
D__RTTI __RTTI
|
97
|
-
#endif
|
98
|
-
#ifdef __STDC__
|
99
|
-
D__STDC__ __STDC__
|
100
|
-
#endif
|
101
|
-
" > /tmp/$TESTFILE.cxx
|
32
|
+
# This test input file checks for some builtin definitions in the
|
33
|
+
# compiler that are not displayed by the -v option. Its list was
|
34
|
+
# obtained by running "strings /usr/lib32/cmplrs/fecc" and testing for
|
35
|
+
# definitions with a giant version of the string below.
|
36
|
+
DEFS_FILE="${SELFDIR}/mipspro_defs.cxx"
|
102
37
|
|
103
38
|
# Find the macro definition options.
|
104
39
|
MACROS=`
|
105
|
-
${CXX} ${CXXFLAGS} -E -v
|
106
|
-
sed -n '/_COMPILER_VERSION/{s
|
40
|
+
${CXX} ${CXXFLAGS} -E -v "${DEFS_FILE}" 2>&1 |
|
41
|
+
sed -n '/_COMPILER_VERSION/{s| '"${DEFS_FILE}"'.*$||
|
107
42
|
s/ -/\\
|
108
43
|
-/g;p;}' |
|
109
44
|
sed -n '/^-D.*$/{s/-D\([^=]*\)=\([^ ]\{1,\} .*\)/-D\1='\''\2'\''/;p;}' |
|
@@ -111,14 +46,14 @@ sed -n 'H;${g;s/\n/ /g;p;}'`
|
|
111
46
|
|
112
47
|
# Find the internally defined macros.
|
113
48
|
LANGSTD=`
|
114
|
-
${CXX} ${CXXFLAGS} -E -v
|
49
|
+
${CXX} ${CXXFLAGS} -E -v "${DEFS_FILE}" 2>&1 |
|
115
50
|
sed -n '/^D/ {s/^D/-D/;s/ /=/;p;}' |
|
116
51
|
sed -n 'H;${g;s/\n/ /g;p;}'`
|
117
52
|
|
118
53
|
# Find the include path options.
|
119
54
|
INCLUDES=`
|
120
|
-
${CXX} ${CXXFLAGS} -E -v
|
121
|
-
sed -n '/_COMPILER_VERSION/{s
|
55
|
+
${CXX} ${CXXFLAGS} -E -v "${DEFS_FILE}" 2>&1 |
|
56
|
+
sed -n '/_COMPILER_VERSION/{s| '"${DEFS_FILE}"'.*$||
|
122
57
|
s/ -/\\
|
123
58
|
-/g;p;}' |
|
124
59
|
sed -n '/^-I.*$/{p;}' |
|
@@ -130,8 +65,6 @@ if test "x$SELFPATH" = "x" ; then SELFPATH="." ; fi
|
|
130
65
|
SELFPATH=`cd "$SELFPATH" ; pwd`
|
131
66
|
INCLUDES="-iwrapper\"$SELFPATH/7.3\" $INCLUDES"
|
132
67
|
|
133
|
-
rm -f /tmp/$TESTFILE.cxx
|
134
|
-
|
135
68
|
# Format and print out the options.
|
136
69
|
OPTIONS="$MACROS $LANGSTD $INCLUDES"
|
137
70
|
echo $OPTIONS
|
@@ -0,0 +1,63 @@
|
|
1
|
+
#ifdef _BOOL
|
2
|
+
D_BOOL _BOOL
|
3
|
+
#endif
|
4
|
+
#ifdef _EXPLICIT_IS_KEYWORD
|
5
|
+
D_EXPLICIT_IS_KEYWORD _EXPLICIT_IS_KEYWORD
|
6
|
+
#endif
|
7
|
+
#ifdef _LIBC_IN_NAMESPACE_STD_
|
8
|
+
D_LIBC_IN_NAMESPACE_STD_ _LIBC_IN_NAMESPACE_STD_
|
9
|
+
#endif
|
10
|
+
#ifdef _MEMBER_TEMPLATES
|
11
|
+
D_MEMBER_TEMPLATES _MEMBER_TEMPLATES
|
12
|
+
#endif
|
13
|
+
#ifdef _MUTABLE_IS_KEYWORD
|
14
|
+
D_MUTABLE_IS_KEYWORD _MUTABLE_IS_KEYWORD
|
15
|
+
#endif
|
16
|
+
#ifdef _NAMESPACES
|
17
|
+
D_NAMESPACES _NAMESPACES
|
18
|
+
#endif
|
19
|
+
#ifdef _PARTIAL_SPECIALIZATION_OF_CLASS_TEMPLATES
|
20
|
+
D_PARTIAL_SPECIALIZATION_OF_CLASS_TEMPLATES _PARTIAL_SPECIALIZATION_OF_CLASS_TEMPLATES
|
21
|
+
#endif
|
22
|
+
#ifdef _STANDARD_C_PLUS_PLUS
|
23
|
+
D_STANDARD_C_PLUS_PLUS _STANDARD_C_PLUS_PLUS
|
24
|
+
#endif
|
25
|
+
#ifdef _TYPENAME_IS_KEYWORD
|
26
|
+
D_TYPENAME_IS_KEYWORD _TYPENAME_IS_KEYWORD
|
27
|
+
#endif
|
28
|
+
#ifdef _WCHAR_T
|
29
|
+
D_WCHAR_T _WCHAR_T
|
30
|
+
#endif
|
31
|
+
#ifdef _WCHAR_T_IS_KEYWORD
|
32
|
+
D_WCHAR_T_IS_KEYWORD _WCHAR_T_IS_KEYWORD
|
33
|
+
#endif
|
34
|
+
#ifdef __ANSI_CPP__
|
35
|
+
D__ANSI_CPP__ __ANSI_CPP__
|
36
|
+
#endif
|
37
|
+
#ifdef __ARRAY_OPERATORS
|
38
|
+
D__ARRAY_OPERATORS __ARRAY_OPERATORS
|
39
|
+
#endif
|
40
|
+
#ifdef __EDG_ABI_COMPATIBILITY_VERSION
|
41
|
+
D__EDG_ABI_COMPATIBILITY_VERSION __EDG_ABI_COMPATIBILITY_VERSION
|
42
|
+
#endif
|
43
|
+
#ifdef __EDG_RUNTIME_USES_NAMESPACES
|
44
|
+
D__EDG_RUNTIME_USES_NAMESPACES __EDG_RUNTIME_USES_NAMESPACES
|
45
|
+
#endif
|
46
|
+
#ifdef __EDG_VERSION__
|
47
|
+
D__EDG_VERSION__ __EDG_VERSION__
|
48
|
+
#endif
|
49
|
+
#ifdef __EDG__
|
50
|
+
D__EDG__ __EDG__
|
51
|
+
#endif
|
52
|
+
#ifdef __EXCEPTIONS
|
53
|
+
D__EXCEPTIONS __EXCEPTIONS
|
54
|
+
#endif
|
55
|
+
#ifdef __LIBC_MATH_OVERLOAD__
|
56
|
+
D__LIBC_MATH_OVERLOAD__ __LIBC_MATH_OVERLOAD__
|
57
|
+
#endif
|
58
|
+
#ifdef __RTTI
|
59
|
+
D__RTTI __RTTI
|
60
|
+
#endif
|
61
|
+
#ifdef __STDC__
|
62
|
+
D__STDC__ __STDC__
|
63
|
+
#endif
|