Patch from Marcin's gcc 3.4.3 package (gcc-3.4.3-BeOS-beos-elf.diff probably originally by Oliver). We additionally let gcc define __GXX_MERGED_TYPEINFO_NAMES, which solves RTTI problems due to the fact that a type_info for a class can exist in multiple times.
git-svn-id: file:///srv/svn/repos/haiku/buildtools/trunk@14993 a95241bf-73f2-0310-859d-f6bbb57e9c96
Diff
gcc4/gcc/config/i386/beos-elf.h | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
@@ -72,9 +72,14 @@
builtin_define ("__PIC__"); \
builtin_define ("__pic__"); \
} \
/* BeOS apparently doesn't support merging of symbols across shared \
object boundaries. Hence we need to explicitly specify that \
type_infos are not merged, so that they get compared by name \
instead of by pointer. */ \
builtin_define ("__GXX_MERGED_TYPEINFO_NAMES=0"); \
} \
while (0)
/* BeOS uses lots of multichars, so don't warn about them unless the
user explicitly asks for the warnings with -Wmultichar. Note that
CC1_SPEC is used for both cc1 and cc1plus. */
@@ -99,7 +104,7 @@
#undef LIB_SPEC
#define LIB_SPEC "-lnet -lroot"
#define LIB_SPEC "-lroot"
/* ??? This is gonna be lovely when the next release of gcc has
@@ -238,3 +243,6 @@
#define MULTIPLE_SYMBOL_SPACES 1
#undef EXTRA_SECTIONS
#define EXTRA_SECTIONS in_const, in_ctors, in_dtors, in_drectve