Author: bonefish Date: 2010-11-22 14:03:49 +0100 (Mon, 22 Nov 2010) New Revision: 39570 Changeset: http://dev.haiku-os.org/changeset/39570 Modified: buildtools/trunk/gcc/ buildtools/trunk/gcc/gcc/config/arm/haiku.h buildtools/trunk/gcc/gcc/config/i386/haiku.h buildtools/trunk/gcc/gcc/config/i386/haiku64.h buildtools/trunk/gcc/gcc/config/m68k/haiku.h buildtools/trunk/gcc/gcc/config/mips/haiku.h buildtools/trunk/gcc/gcc/config/rs6000/haiku.h Log: Merged gcc4-weak-symbols branch. Property changes on: buildtools/trunk/gcc ___________________________________________________________________ Modified: svn:mergeinfo - /buildtools/vendor/gcc/4.4.4:37368 /buildtools/vendor/gcc/current:29031-37367 + /buildtools/branches/gcc4-weak-symbols:39316-39568 /buildtools/vendor/gcc/4.4.4:37368 /buildtools/vendor/gcc/current:29031-37367 Modified: buildtools/trunk/gcc/gcc/config/arm/haiku.h =================================================================== --- buildtools/trunk/gcc/gcc/config/arm/haiku.h 2010-11-22 12:56:23 UTC (rev 39569) +++ buildtools/trunk/gcc/gcc/config/arm/haiku.h 2010-11-22 13:03:49 UTC (rev 39570) @@ -74,6 +74,6 @@ /* If ELF is the default format, we should not use /lib/elf. */ #undef LINK_SPEC -#define LINK_SPEC "%{!o*:-o %b} -m armelf -shared -no-undefined -Bsymbolic %{nostart:-e 0} \ - %{mbig-endian:-EB} %{mlittle-endian:-EL} -X" +#define LINK_SPEC "%{!o*:-o %b} -m armelf -shared -no-undefined %{nostart:-e 0} \ + %{mbig-endian:-EB} %{mlittle-endian:-EL} -X" Modified: buildtools/trunk/gcc/gcc/config/i386/haiku.h =================================================================== --- buildtools/trunk/gcc/gcc/config/i386/haiku.h 2010-11-22 12:56:23 UTC (rev 39569) +++ buildtools/trunk/gcc/gcc/config/i386/haiku.h 2010-11-22 13:03:49 UTC (rev 39570) @@ -40,12 +40,6 @@ builtin_define ("__stdcall=__attribute__((__stdcall__))"); \ builtin_define ("__cdecl=__attribute__((__cdecl__))"); \ builtin_assert ("system=haiku"); \ - /* Haiku 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"); \ - builtin_define ("__GXX_TYPEINFO_EQUALITY_INLINE=0"); \ } \ while (0) @@ -57,7 +51,7 @@ /* If ELF is the default format, we should not use /lib/elf. */ #undef LINK_SPEC -#define LINK_SPEC "-m elf_i386_haiku -shared -Bsymbolic %{nostart:-e 0} %{shared:-e 0} %{!shared: %{!nostart: -no-undefined}}" +#define LINK_SPEC "-m elf_i386_haiku -shared %{nostart:-e 0} %{shared:-e 0} %{!shared: %{!nostart: -no-undefined}}" /* A C statement (sans semicolon) to output to the stdio stream FILE the assembler definition of uninitialized global DECL named Modified: buildtools/trunk/gcc/gcc/config/i386/haiku64.h =================================================================== --- buildtools/trunk/gcc/gcc/config/i386/haiku64.h 2010-11-22 12:56:23 UTC (rev 39569) +++ buildtools/trunk/gcc/gcc/config/i386/haiku64.h 2010-11-22 13:03:49 UTC (rev 39570) @@ -27,9 +27,9 @@ #endif /* The SVR4 ABI for the i386 says that records and unions are returned - * in memory. + * in memory. * - * TODO: Linux64 doesn't use pcc_struct_return scheme. Does haiku? + * TODO: Linux64 doesn't use pcc_struct_return scheme. Does haiku? * If not this could be removed. */ #undef DEFAULT_PCC_STRUCT_RETURN @@ -48,12 +48,6 @@ builtin_define ("__stdcall=__attribute__((__stdcall__))"); \ builtin_define ("__cdecl=__attribute__((__cdecl__))"); \ builtin_assert ("system=haiku"); \ - /* Haiku 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"); \ - builtin_define ("__GXX_TYPEINFO_EQUALITY_INLINE=0"); \ } \ while (0) #else @@ -66,12 +60,6 @@ builtin_define ("__stdcall=__attribute__((__stdcall__))"); \ builtin_define ("__cdecl=__attribute__((__cdecl__))"); \ builtin_assert ("system=haiku"); \ - /* Haiku 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"); \ - builtin_define ("__GXX_TYPEINFO_EQUALITY_INLINE=0"); \ } \ while (0) #endif @@ -83,9 +71,9 @@ #undef LINK_SPEC #if TARGET_64BIT -#define LINK_SPEC "-m elf_x86_64 -z max-page-size=0x1000 -shared -Bsymbolic %{nostart:-e 0} %{shared:-e 0} %{!shared: %{!nostart: -no-undefined}}" +#define LINK_SPEC "-m elf_x86_64 -z max-page-size=0x1000 -shared %{nostart:-e 0} %{shared:-e 0} %{!shared: %{!nostart: -no-undefined}}" #else -#define LINK_SPEC "-m elf_i386_haiku -shared -Bsymbolic %{nostart:-e 0} %{shared:-e 0} %{!shared: %{!nostart: -no-undefined}}" +#define LINK_SPEC "-m elf_i386_haiku -shared %{nostart:-e 0} %{shared:-e 0} %{!shared: %{!nostart: -no-undefined}}" #endif Modified: buildtools/trunk/gcc/gcc/config/m68k/haiku.h =================================================================== --- buildtools/trunk/gcc/gcc/config/m68k/haiku.h 2010-11-22 12:56:23 UTC (rev 39569) +++ buildtools/trunk/gcc/gcc/config/m68k/haiku.h 2010-11-22 13:03:49 UTC (rev 39570) @@ -75,12 +75,6 @@ builtin_define ("__stdcall=__attribute__((__stdcall__))"); \ builtin_define ("__cdecl=__attribute__((__cdecl__))"); \ builtin_assert ("system=haiku"); \ - /* Haiku 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"); \ - builtin_define ("__GXX_TYPEINFO_EQUALITY_INLINE=0"); \ } \ while (0) @@ -115,8 +109,8 @@ /* If ELF is the default format, we should not use /lib/elf. */ #undef LINK_SPEC -/*#define LINK_SPEC "%{!o*:-o %b} -m elf_m68k_haiku -shared -no-undefined -Bsymbolic %{nostart:-e 0}"*/ -#define LINK_SPEC "%{!o*:-o %b} -m m68kelf -shared -no-undefined -Bsymbolic %{nostart:-e 0}" +/*#define LINK_SPEC "%{!o*:-o %b} -m elf_m68k_haiku -shared -no-undefined %{nostart:-e 0}"*/ +#define LINK_SPEC "%{!o*:-o %b} -m m68kelf -shared -no-undefined %{nostart:-e 0}" /* XXX: not sure for the rest there... */ Modified: buildtools/trunk/gcc/gcc/config/mips/haiku.h =================================================================== --- buildtools/trunk/gcc/gcc/config/mips/haiku.h 2010-11-22 12:56:23 UTC (rev 39569) +++ buildtools/trunk/gcc/gcc/config/mips/haiku.h 2010-11-22 13:03:49 UTC (rev 39570) @@ -38,15 +38,9 @@ builtin_define ("__PIC__"); \ builtin_define ("__pic__"); \ } \ - /* Haiku 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"); \ - builtin_define ("__GXX_TYPEINFO_EQUALITY_INLINE=0"); \ } \ while (0) #undef LINK_SPEC -#define LINK_SPEC "%{!o*:-o %b} -m elf_mipsel_haiku -shared -Bsymbolic %{nostart:-e 0}" +#define LINK_SPEC "%{!o*:-o %b} -m elf_mipsel_haiku -shared %{nostart:-e 0}" Modified: buildtools/trunk/gcc/gcc/config/rs6000/haiku.h =================================================================== --- buildtools/trunk/gcc/gcc/config/rs6000/haiku.h 2010-11-22 12:56:23 UTC (rev 39569) +++ buildtools/trunk/gcc/gcc/config/rs6000/haiku.h 2010-11-22 13:03:49 UTC (rev 39570) @@ -44,12 +44,6 @@ builtin_assert ("cpu=powerpc"); \ builtin_assert ("machine=powerpc"); \ TARGET_OS_SYSV_CPP_BUILTINS (); \ - /* Haiku 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"); \ - builtin_define ("__GXX_TYPEINFO_EQUALITY_INLINE=0"); \ } \ while (0) @@ -61,4 +55,4 @@ /* If ELF is the default format, we should not use /lib/elf. */ #undef LINK_SPEC -#define LINK_SPEC "%{!o*:-o %b} -m elf_ppc_haiku -shared -no-undefined -Bsymbolic %{nostart:-e 0}" +#define LINK_SPEC "%{!o*:-o %b} -m elf_ppc_haiku -shared -no-undefined %{nostart:-e 0}"