btrev43024 adds 4 changesets to branch 'master' old head: d534b97c8b46d01c5e21ee21bc6cacf72ff184bb new head: 17b69b54d1cb4b7472efaed659ea272e0d95cf30 ---------------------------------------------------------------------------- 9507ae2: import of gcc 4.5.3 (core and g++ only). 5cceb12: Merge commit '4.5.3' 0a01235: import of gcc 4.6.2 (core and g++ only). 17b69b5: Merge commit '4.6.2' Conflicts: gcc/gcc/configure [ Jérôme Duval <jerome.duval@xxxxxxxxx> ] ---------------------------------------------------------------------------- 4054 files changed, 978002 insertions(+), 573886 deletions(-) gcc/ChangeLog | 877 +- gcc/INSTALL/binaries.html | 28 +- gcc/INSTALL/build.html | 16 +- gcc/INSTALL/configure.html | 115 +- gcc/INSTALL/download.html | 8 +- gcc/INSTALL/finalinstall.html | 14 +- gcc/INSTALL/gfdl.html | 86 +- gcc/INSTALL/index.html | 14 +- gcc/INSTALL/old.html | 8 +- gcc/INSTALL/prerequisites.html | 85 +- gcc/INSTALL/specific.html | 346 +- gcc/INSTALL/test.html | 48 +- gcc/LAST_UPDATED | 2 +- gcc/MAINTAINERS | 68 +- gcc/MD5SUMS |31509 ++++--- gcc/Makefile.def | 43 +- gcc/Makefile.in | 3095 +- gcc/Makefile.tpl | 98 +- gcc/NEWS | 1167 +- gcc/config-ml.in | 18 +- gcc/config.guess | 8 +- gcc/config.rpath | 5 - gcc/config.sub | 10 +- gcc/config/ChangeLog | 158 +- gcc/config/bootstrap-lto.mk | 5 + gcc/config/cloog.m4 | 288 + gcc/config/dfp.m4 | 56 + gcc/config/elf.m4 | 2 +- gcc/config/gc++filt.m4 | 26 + gcc/config/lthostflags.m4 | 33 + gcc/config/mh-cygwin | 6 +- gcc/config/mh-darwin | 7 + gcc/config/mh-mingw | 6 +- gcc/config/mh-ppc-darwin | 5 - gcc/config/override.m4 | 266 +- gcc/config/stdint.m4 | 8 +- gcc/configure | 1982 +- gcc/configure.ac | 812 +- gcc/contrib/ChangeLog | 98 +- gcc/contrib/check_GNU_style.sh | 120 + gcc/contrib/compare-debug | 26 +- gcc/contrib/download_prerequisites | 38 + gcc/contrib/gcc_update | 152 +- gcc/contrib/gccbug.el | 84 - gcc/contrib/gennews | 3 +- gcc/contrib/make_sunver.pl | 350 + gcc/contrib/patch_tester.sh | 17 +- gcc/contrib/reghunt/ChangeLog | 18 +- gcc/contrib/reghunt/bin/gcc-svn-ids | 4 +- gcc/contrib/reghunt/date_based/reg_periodic | 4 +- gcc/contrib/reghunt/date_based/reg_search | 4 +- gcc/contrib/regression/ChangeLog | 16 +- gcc/contrib/test_recheck | 98 + gcc/contrib/texi2pod.pl | 9 +- gcc/fixincludes/ChangeLog | 56 +- gcc/fixincludes/Makefile.in | 7 +- gcc/fixincludes/configure | 19 +- gcc/fixincludes/configure.ac | 3 +- gcc/fixincludes/fixincl.x | 139 +- gcc/fixincludes/inclhack.def | 57 +- gcc/fixincludes/tests/base/complex.h | 10 + gcc/fixincludes/tests/base/sys/feature_tests.h | 18 + gcc/fixincludes/tests/base/wchar.h | 15 - gcc/gcc/BASE-VER | 2 +- gcc/gcc/ChangeLog |13212 ++-- gcc/gcc/ChangeLog-2010 |40863 +++++++++ gcc/gcc/ChangeLog.graphite | 1762 + gcc/gcc/DATESTAMP | 2 +- gcc/gcc/Makefile.in | 2018 +- gcc/gcc/acinclude.m4 | 4 + gcc/gcc/aclocal.m4 | 1 + gcc/gcc/addresses.h | 5 +- gcc/gcc/alias.c | 563 +- gcc/gcc/alias.h | 5 +- gcc/gcc/alloc-pool.c | 20 +- gcc/gcc/attribs.c | 19 +- gcc/gcc/auto-inc-dec.c | 4 +- gcc/gcc/basic-block.h | 148 +- gcc/gcc/bb-reorder.c | 15 +- gcc/gcc/bb-reorder.h | 37 + gcc/gcc/bitmap.c | 129 +- gcc/gcc/bitmap.h | 43 +- gcc/gcc/bt-load.c | 7 +- gcc/gcc/builtin-attrs.def | 37 +- gcc/gcc/builtin-types.def | 4 +- gcc/gcc/builtins.c | 1698 +- gcc/gcc/builtins.def | 459 +- gcc/gcc/builtins.h | 49 + gcc/gcc/c-aux-info.c | 30 +- gcc/gcc/c-common.c | 9362 -- gcc/gcc/c-common.def | 53 - gcc/gcc/c-common.h | 1187 - gcc/gcc/c-config-lang.in | 5 +- gcc/gcc/c-convert.c | 5 +- gcc/gcc/c-cppbuiltin.c | 1092 - gcc/gcc/c-decl.c | 900 +- gcc/gcc/c-dump.c | 61 - gcc/gcc/c-family/ChangeLog | 1046 + gcc/gcc/c-family/c-ada-spec.c | 3330 + [ *** stats truncated: 3955 lines dropped *** ] ############################################################################ Commit: 9507ae27822da1947c2e6563671168bae5936759 URL: http://cgit.haiku-os.org/buildtools/commit/?id=9507ae2 Author: Jérôme Duval <jerome.duval@xxxxxxxxx> Date: Sat Jan 7 15:44:13 2012 UTC import of gcc 4.5.3 (core and g++ only). ---------------------------------------------------------------------------- diff --git a/gcc/Makefile.in b/gcc/Makefile.in index acde9cf..3f7bccd 100644 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -17172,7 +17172,6 @@ configure-mpfr: esac; \ srcdiroption="--srcdir=$${topdir}/mpfr"; \ libsrcdir="$$s/mpfr"; \ - cp $(s)/gmp/gmp-impl.h $(s)/gmp/longlong.h ../gmp/ ; \ $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \ --target=${target_alias} $${srcdiroption} --disable-shared @extra_mpfr_configure_flags@ \ @@ -17206,7 +17205,6 @@ configure-stage1-mpfr: esac; \ srcdiroption="--srcdir=$${topdir}/mpfr"; \ libsrcdir="$$s/mpfr"; \ - cp $(s)/gmp/gmp-impl.h $(s)/gmp/longlong.h ../gmp/ ; \ $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \ --target=${target_alias} $${srcdiroption} \ @@ -17240,7 +17238,6 @@ configure-stage2-mpfr: esac; \ srcdiroption="--srcdir=$${topdir}/mpfr"; \ libsrcdir="$$s/mpfr"; \ - cp $(s)/gmp/gmp-impl.h $(s)/gmp/longlong.h ../gmp/ ; \ $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \ --target=${target_alias} $${srcdiroption} \ @@ -17249,7 +17246,6 @@ configure-stage2-mpfr: --disable-shared @extra_mpfr_configure_flags@ @endif mpfr-bootstrap - .PHONY: configure-stage3-mpfr maybe-configure-stage3-mpfr maybe-configure-stage3-mpfr: @if mpfr-bootstrap @@ -17276,7 +17272,6 @@ configure-stage3-mpfr: esac; \ srcdiroption="--srcdir=$${topdir}/mpfr"; \ libsrcdir="$$s/mpfr"; \ - cp $(s)/gmp/gmp-impl.h $(s)/gmp/longlong.h ../gmp/ ; \ $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \ --target=${target_alias} $${srcdiroption} \ @@ -17311,7 +17306,6 @@ configure-stage4-mpfr: esac; \ srcdiroption="--srcdir=$${topdir}/mpfr"; \ libsrcdir="$$s/mpfr"; \ - cp $(s)/gmp/gmp-impl.h $(s)/gmp/longlong.h ../gmp/ ; \ $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \ --target=${target_alias} $${srcdiroption} \ @@ -17346,7 +17340,6 @@ configure-stageprofile-mpfr: esac; \ srcdiroption="--srcdir=$${topdir}/mpfr"; \ libsrcdir="$$s/mpfr"; \ - cp $(s)/gmp/gmp-impl.h $(s)/gmp/longlong.h ../gmp/ ; \ $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \ --target=${target_alias} $${srcdiroption} \ @@ -17381,7 +17374,6 @@ configure-stagefeedback-mpfr: esac; \ srcdiroption="--srcdir=$${topdir}/mpfr"; \ libsrcdir="$$s/mpfr"; \ - cp $(s)/gmp/gmp-impl.h $(s)/gmp/longlong.h ../gmp/ ; \ $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \ --target=${target_alias} $${srcdiroption} \ diff --git a/gcc/compile b/gcc/compile old mode 100644 new mode 100755 diff --git a/gcc/config.rpath b/gcc/config.rpath index 814f5a7..9316b91 100755 --- a/gcc/config.rpath +++ b/gcc/config.rpath @@ -161,8 +161,6 @@ if test "$with_gnu_ld" = yes; then ;; netbsd*) ;; - haiku*) - ;; solaris* | sysv5*) if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then ld_shlibs=no diff --git a/gcc/config/acx.m4 b/gcc/config/acx.m4 index 969cecc..b559c03 100644 --- a/gcc/config/acx.m4 +++ b/gcc/config/acx.m4 @@ -402,30 +402,24 @@ dnl for the parameter format "cmp file1 file2 skip1 skip2" which is dnl accepted by cmp on some systems. AC_DEFUN([ACX_PROG_CMP_IGNORE_INITIAL], [AC_CACHE_CHECK([how to compare bootstrapped objects], gcc_cv_prog_cmp_skip, -[# comparing object files via cmp doesn't work on haiku (files will seemingly - # always differ), so we disassemble both files and compare the results: - if uname -o | grep -iq haiku; then - gcc_cv_prog_cmp_skip='objdump -Dz $$f1 | tail +6 >tmp-foo1; objdump -Dz $$f2 | tail +6 >tmp-foo2; cmp tmp-foo1 tmp-foo2' - else - gcc_cv_prog_cmp_skip='tail +16c $$f1 > tmp-foo1; tail +16c $$f2 > tmp-foo2; cmp tmp-foo1 tmp-foo2' - echo abfoo >t1 - echo cdfoo >t2 - if cmp t1 t2 2 2 > /dev/null 2>&1; then - if cmp t1 t2 1 1 > /dev/null 2>&1; then - : - else - gcc_cv_prog_cmp_skip='cmp $$f1 $$f2 16 16' - fi +[ echo abfoo >t1 + echo cdfoo >t2 + gcc_cv_prog_cmp_skip='tail +16c $$f1 > tmp-foo1; tail +16c $$f2 > tmp-foo2; cmp tmp-foo1 tmp-foo2' + if cmp t1 t2 2 2 > /dev/null 2>&1; then + if cmp t1 t2 1 1 > /dev/null 2>&1; then + : + else + gcc_cv_prog_cmp_skip='cmp $$f1 $$f2 16 16' fi - if cmp --ignore-initial=2 t1 t2 > /dev/null 2>&1; then - if cmp --ignore-initial=1 t1 t2 > /dev/null 2>&1; then - : - else - gcc_cv_prog_cmp_skip='cmp --ignore-initial=16 $$f1 $$f2' - fi + fi + if cmp --ignore-initial=2 t1 t2 > /dev/null 2>&1; then + if cmp --ignore-initial=1 t1 t2 > /dev/null 2>&1; then + : + else + gcc_cv_prog_cmp_skip='cmp --ignore-initial=16 $$f1 $$f2' fi - rm t1 t2 fi + rm t1 t2 ]) do_compare="$gcc_cv_prog_cmp_skip" AC_SUBST(do_compare) diff --git a/gcc/configure b/gcc/configure index f8427d9..c60f1b3 100755 --- a/gcc/configure +++ b/gcc/configure @@ -3141,9 +3141,6 @@ case "${host}" in *-*-cygwin*) noconfigdirs="$noconfigdirs autoconf automake send-pr rcs guile perl" ;; - *-*-haiku*) - noconfigdirs="$noconfigdirs tk itcl libgui gdb" - ;; *-*-netbsd*) noconfigdirs="$noconfigdirs rcs" ;; @@ -3270,9 +3267,6 @@ case "${target}" in ;; esac ;; - *-*-haiku) - noconfigdirs="$noconfigdirs target-libiberty" - ;; *-*-kaos*) # Remove unsupported stuff on all kaOS configurations. skipdirs="target-libiberty ${libgcj} target-libstdc++-v3 target-librx" @@ -3736,9 +3730,6 @@ case "${target}" in ip2k-*-*) noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 ${libgcj}" ;; - *-*-haiku*) - noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss ${libgcj}" - ;; *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu | *-*-kopensolaris*-gnu) noconfigdirs="$noconfigdirs target-newlib target-libgloss" ;; @@ -5263,30 +5254,25 @@ $as_echo_n "checking how to compare bootstrapped objects... " >&6; } if test "${gcc_cv_prog_cmp_skip+set}" = set; then : $as_echo_n "(cached) " >&6 else - # comparing object files via cmp doesn't work on haiku (files will seemingly - # always differ), so we disassemble both files and compare the results: - if uname -o | grep -iq haiku; then - gcc_cv_prog_cmp_skip='objdump -Dz $$f1 | tail +6 >tmp-foo1; objdump -Dz $$f2 | tail +6 >tmp-foo2; cmp tmp-foo1 tmp-foo2' - else - gcc_cv_prog_cmp_skip='tail +16c $$f1 > tmp-foo1; tail +16c $$f2 > tmp-foo2; cmp tmp-foo1 tmp-foo2' - echo abfoo >t1 - echo cdfoo >t2 - if cmp t1 t2 2 2 > /dev/null 2>&1; then - if cmp t1 t2 1 1 > /dev/null 2>&1; then - : - else - gcc_cv_prog_cmp_skip='cmp $$f1 $$f2 16 16' - fi + echo abfoo >t1 + echo cdfoo >t2 + gcc_cv_prog_cmp_skip='tail +16c $$f1 > tmp-foo1; tail +16c $$f2 > tmp-foo2; cmp tmp-foo1 tmp-foo2' + if cmp t1 t2 2 2 > /dev/null 2>&1; then + if cmp t1 t2 1 1 > /dev/null 2>&1; then + : + else + gcc_cv_prog_cmp_skip='cmp $$f1 $$f2 16 16' fi - if cmp --ignore-initial=2 t1 t2 > /dev/null 2>&1; then - if cmp --ignore-initial=1 t1 t2 > /dev/null 2>&1; then - : - else - gcc_cv_prog_cmp_skip='cmp --ignore-initial=16 $$f1 $$f2' - fi + fi + if cmp --ignore-initial=2 t1 t2 > /dev/null 2>&1; then + if cmp --ignore-initial=1 t1 t2 > /dev/null 2>&1; then + : + else + gcc_cv_prog_cmp_skip='cmp --ignore-initial=16 $$f1 $$f2' fi - rm t1 t2 fi + rm t1 t2 + fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_prog_cmp_skip" >&5 $as_echo "$gcc_cv_prog_cmp_skip" >&6; } diff --git a/gcc/gcc/Makefile.in b/gcc/gcc/Makefile.in index ec3704d..d10c574 100644 --- a/gcc/gcc/Makefile.in +++ b/gcc/gcc/Makefile.in @@ -3744,7 +3744,7 @@ genprogmd = attr attrtab automata codes conditions config constants emit \ $(genprogmd:%=build/gen%$(build_exeext)): $(BUILD_RTL) $(BUILD_ERRORS) # These programs need libs over and above what they get from the above list. -build/genautomata$(build_exeext) : BUILD_LIBS += @math_library@ +build/genautomata$(build_exeext) : BUILD_LIBS += -lm # These programs are not linked with the MD reader. build/gengenrtl$(build_exeext) : $(BUILD_ERRORS) diff --git a/gcc/gcc/config.gcc b/gcc/gcc/config.gcc index fbcd486..0ff189c 100644 --- a/gcc/gcc/config.gcc +++ b/gcc/gcc/config.gcc @@ -727,16 +727,6 @@ arm*-*-netbsd*) extra_parts="" use_collect2=yes ;; -arm*-*-haiku*) - tmake_file="${tmake_file} t-haiku arm/t-arm arm/t-arm-elf arm/t-bpabi arm/t-haiku" - tm_file="dbxelf.h elfos.h haiku.h arm/elf.h arm/bpabi.h arm/haiku.h" - # The BPABI long long divmod functions return a 128-bit value in - # registers r0-r3. Correctly modeling that requires the use of - # TImode. - need_64bit_hwint=yes - default_use_cxa_atexit=yes - tm_file="${tm_file} arm/aout.h arm/arm.h" - ;; arm*-*-linux*) # ARM GNU/Linux with ELF tm_file="dbxelf.h elfos.h linux.h glibc-stdint.h arm/elf.h arm/linux-gas.h arm/linux-elf.h" case $target in @@ -1128,16 +1118,6 @@ x86_64-*-freebsd*) tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/x86-64.h i386/freebsd.h i386/freebsd64.h" tmake_file="${tmake_file} i386/t-crtstuff" ;; -i[34567]86-*-haiku*) - tmake_file='t-haiku i386/t-crtpic' - tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h haiku.h i386/haiku.h" - extra_parts='crtbegin.o crtend.o' - ;; -x86_64-*-haiku*) - tmake_file='t-haiku i386/t-haiku64 i386/t-crtpic' - tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h haiku.h i386/haiku64.h" - extra_parts='crtbegin.o crtend.o' - ;; i[34567]86-*-netbsdelf*) tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/netbsd-elf.h" ;; @@ -1692,13 +1672,6 @@ m68k-*-rtems*) tm_defines="${tm_defines} MOTOROLA=1" extra_parts="crtbegin.o crtend.o" ;; -m68k-*-haiku*) - default_m68k_cpu=68020 - default_cf_cpu=5206 - tmake_file="m68k/t-m68kbare m68k/t-crtstuff t-haiku" #?? - tm_file="${tm_file} dbxelf.h elfos.h haiku.h m68k/haiku.h" - tm_defines="${tm_defines} MOTOROLA=1" - ;; mcore-*-elf) tm_file="dbxelf.h elfos.h svr4.h newlib-stdint.h ${tm_file} mcore/mcore-elf.h" tmake_file=mcore/t-mcore @@ -1891,11 +1864,6 @@ mips-*-elf* | mipsel-*-elf*) tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h" tmake_file="mips/t-elf mips/t-libgcc-mips16" ;; -mipsel-*-haiku*) - tmake_file='mips/t-elf t-haiku' - tm_file="elfos.h ${tm_file} haiku.h mips/haiku.h" - extra_parts='crtbegin.o crtend.o' - ;; mips64-*-elf* | mips64el-*-elf*) tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h" tmake_file="mips/t-elf mips/t-libgcc-mips16" @@ -2027,11 +1995,6 @@ powerpc-*-eabi*) tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcgas rs6000/t-ppccomm" use_gcc_stdint=wrap ;; -powerpc-*-haiku*) - tmake_file="rs6000/t-fprules rs6000/t-ppcos rs6000/t-ppccomm t-haiku" - tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h haiku.h rs6000/haiku.h" - extra_options="${extra_options} rs6000/sysv4.opt" - ;; powerpc-*-rtems*) tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h rs6000/rtems.h rtems.h" extra_options="${extra_options} rs6000/sysv4.opt" diff --git a/gcc/gcc/config/arm/haiku.h b/gcc/gcc/config/arm/haiku.h deleted file mode 100644 index 072f3df..0000000 --- a/gcc/gcc/config/arm/haiku.h +++ /dev/null @@ -1,80 +0,0 @@ -/* Definitions for ARM running Haiku systems using ELF - Copyright (C) 1993, 1994, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, - 2005 Free Software Foundation, Inc. - - This file is part of GCC. - - GCC is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - GCC is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with GCC; see the file COPYING. If not, write to - the Free Software Foundation, 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ - -#undef TARGET_VERSION -#define TARGET_VERSION fprintf (stderr, " (ARM Haiku/ELF)"); -#undef ASM_COMMENT_START -#define ASM_COMMENT_START "@" -/* Unsigned chars produces much better code than signed. */ -#define DEFAULT_SIGNED_CHAR 0 - -#undef TARGET_DEFAULT_FLOAT_ABI -#define TARGET_DEFAULT_FLOAT_ABI ARM_FLOAT_ABI_SOFT - -/* bpabi.h sets FPUTYPE_DEFAULT to VFP */ -/* bpabi.h sets ARM_DEFAULT_ABI */ - -#undef MULTILIB_DEFAULTS -#define MULTILIB_DEFAULTS \ - { "marm", "mlittle-endian", "msoft-float", "mno-thumb-interwork" } - -/* Default is set by bpabi.h */ -/* -#undef TARGET_DEFAULT -*/ - -#undef SUBTARGET_CPU_DEFAULT -#define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm6 - -/* Now we define the strings used to build the spec file. */ -/* interestingly, bpabi defines __GXX_TYPEINFO_EQUALITY_INLINE=0 too as we do. */ - -#undef TARGET_OS_CPP_BUILTINS -#define TARGET_OS_CPP_BUILTINS() \ - do \ - { \ - builtin_define ("__HAIKU__"); \ - builtin_define ("__ARM__"); \ - builtin_define ("__arm__"); \ - builtin_define ("__stdcall=__attribute__((__stdcall__))"); \ - builtin_define ("__cdecl=__attribute__((__cdecl__))"); \ - builtin_define ("__STDC_ISO_10646__=201103L"); \ - 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"); done in bpabi: */\ - TARGET_BPABI_CPP_BUILTINS(); \ - } \ - while (0) - -/* Use the default LIBGCC_SPEC, not the empty version in haiku.h, as we - do not use multilib (needed ??). */ -#undef LIBGCC_SPEC - -/* 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 %{nostart:-e 0} \ - %{mbig-endian:-EB} %{mlittle-endian:-EL} -X" - diff --git a/gcc/gcc/config/arm/t-haiku b/gcc/gcc/config/arm/t-haiku deleted file mode 100644 index 3f7f488..0000000 --- a/gcc/gcc/config/arm/t-haiku +++ /dev/null @@ -1,21 +0,0 @@ -# build multilib for soft float and VFP -# (unsure about how it should be done...) -# mix from t-symbian & t-wince-pe - -#LIB1ASMSRC = arm/lib1funcs.asm -#LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_tls _call_via_rX _interwork_call_via_rX - - -#MULTILIB_OPTIONS += mhard-float -#MULTILIB_DIRNAMES += fpu - -MULTILIB_OPTIONS += msoft-float -MULTILIB_DIRNAMES += fpu soft -MULTILIB_EXCEPTIONS += *mthumb/*mhard-float* - -MULTILIB_OPTIONS += mfloat-abi=softfp -MULTILIB_DIRNAMES += softfp - -#LIBGCC = stmp-multilib -#INSTALL_LIBGCC = install-multilib -#TARGET_LIBGCC2_CFLAGS = diff --git a/gcc/gcc/config/haiku.h b/gcc/gcc/config/haiku.h deleted file mode 100644 index 798e325..0000000 --- a/gcc/gcc/config/haiku.h +++ /dev/null @@ -1,175 +0,0 @@ -/* Definitions of target machine for GCC. - Common Haiku definitions for all architectures. - Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004, 2005 - Free Software Foundation, Inc. - -This file is part of GCC. - -GCC is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GCC is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GCC; see the file COPYING. If not, write to -the Free Software Foundation, 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ - - -/* Change debugging to Dwarf2. */ -#undef PREFERRED_DEBUGGING_TYPE -#define PREFERRED_DEBUGGING_TYPE DWARF2_DEBUG - -#undef ASM_COMMENT_START -#define ASM_COMMENT_START " #" - -#undef MCOUNT_NAME -#define MCOUNT_NAME "_mcount" - -#define TARGET_DECLSPEC 1 - -#undef SIZE_TYPE -#define SIZE_TYPE "long unsigned int" - -#undef PTRDIFF_TYPE -#define PTRDIFF_TYPE "long int" - -#undef WCHAR_TYPE -#define WCHAR_TYPE "int" - -#undef WCHAR_TYPE_SIZE -#define WCHAR_TYPE_SIZE 32 - -/* Haiku 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. */ -#undef CC1_SPEC -#define CC1_SPEC "%{!no-fpic:%{!fno-pic:%{!fno-pie:%{!fpie:%{!fPIC:%{!fPIE:-fpic}}}}}} %{!Wmultichar: -Wno-multichar} %(cc1_cpu) %{profile:-p}" - -#undef CC1PLUS_SPEC -#define CC1PLUS_SPEC "%{!Wctor-dtor-privacy:-Wno-ctor-dtor-privacy}" - -/* LIB_SPEC for Haiku */ -#undef LIB_SPEC -#define LIB_SPEC "-lroot" - -/* gcc runtime lib is built into libroot.so on Haiku */ -/* ??? This is gonna be lovely when the next release of gcc has - some new symbol in, so that links start failing. */ -#undef LIBGCC_SPEC -#define LIBGCC_SPEC "" - - -#undef STARTFILE_SPEC -#define STARTFILE_SPEC "crti.o%s crtbegin.o%s %{!shared:%{!nostart:start_dyn.o%s}} init_term_dyn.o%s" - -#undef ENDFILE_SPEC -#define ENDFILE_SPEC "crtend.o%s crtn.o%s" - -/* For native compiler, use standard Haiku include file search paths - rooted in /boot/develop/headers. For a cross compiler, don't - expect the host to use the Haiku directory scheme, and instead look - for the Haiku include files relative to TOOL_INCLUDE_DIR. Yes, we - use ANSI string concatenation here (FIXME) */ - -#ifndef CROSS_DIRECTORY_STRUCTURE -#undef INCLUDE_DEFAULTS -#define INCLUDE_DEFAULTS \ - { \ - { GPLUSPLUS_INCLUDE_DIR, "G++", 1, 1, 0, 0 }, \ - { GPLUSPLUS_TOOL_INCLUDE_DIR, "G++", 1, 1, 0, 0 }, \ - { GPLUSPLUS_BACKWARD_INCLUDE_DIR, "G++", 1, 1, 0, 0 }, \ - { GCC_INCLUDE_DIR, "GCC", 0, 0, 0, 0 }, \ - { FIXED_INCLUDE_DIR, "GCC", 0, 0, 0, 0 }, \ - { TOOL_INCLUDE_DIR, "BINUTILS", 0, 1, 0, 0 }, \ - { "/boot/common/include", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/app", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/device", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/drivers", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/game", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/interface", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/kernel", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/locale", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/mail", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/media", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/midi", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/midi2", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/net", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/opengl", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/storage", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/support", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/translation", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/add-ons/graphics", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/add-ons/input_server", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/add-ons/screen_saver", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/add-ons/tracker", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/be_apps/Deskbar", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/be_apps/NetPositive", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/os/be_apps/Tracker", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/cpp", 0, 1, 1, 0, 0 }, \ - { "/boot/develop/headers/3rdparty", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/bsd", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/glibc", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers/posix", 0, 0, 0, 0, 0 }, \ - { "/boot/develop/headers", 0, 0, 0, 0, 0 }, \ - { 0, 0, 0, 0, 0, 0 } \ - } -#else /* CROSS_DIRECTORY_STRUCTURE */ -#undef INCLUDE_DEFAULTS -#define INCLUDE_DEFAULTS \ - { \ - { GPLUSPLUS_INCLUDE_DIR, "G++", 1, 1, 1, 0 }, \ - { GPLUSPLUS_TOOL_INCLUDE_DIR, "G++", 1, 1, 1, 0 }, \ - { GPLUSPLUS_BACKWARD_INCLUDE_DIR, "G++", 1, 1, 1, 0 }, \ - { GCC_INCLUDE_DIR, "GCC", 0, 0, 1, 0 }, \ - { FIXED_INCLUDE_DIR, "GCC", 0, 0, 1, 0 }, \ - { TOOL_INCLUDE_DIR, "BINUTILS", 0, 1, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/app", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/device", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/drivers", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/game", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/interface", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/kernel", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/locale", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/mail", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/media", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/midi", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/midi2", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/net", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/opengl", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/storage", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/support", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/translation", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/add-ons/graphics", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/add-ons/input_server", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/add-ons/screen_saver", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/add-ons/tracker", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/be_apps/Deskbar", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/be_apps/NetPositive", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/os/be_apps/Tracker", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/cpp", 0, 1, 1, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/3rdparty", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/bsd", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/glibc", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR "/posix", 0, 0, 0, 1, 0 }, \ - { CROSS_INCLUDE_DIR , 0, 0, 0, 1, 0 }, \ - { 0, 0, 0, 0, 0, 0 } \ - } -#endif /* CROSS_DIRECTORY_STRUCTURE */ - -/* Whee. LIBRARY_PATH is Be's LD_LIBRARY_PATH, which of course will - cause nasty problems if we override it. */ -#define LIBRARY_PATH_ENV "BELIBRARIES" - -/* Haiku doesn't have a separate math library. */ -#define MATH_LIBRARY "" - -/* Haiku headers are C++-aware (and often use C++). */ -#define NO_IMPLICIT_EXTERN_C diff --git a/gcc/gcc/config/i386/haiku.h b/gcc/gcc/config/i386/haiku.h deleted file mode 100644 index 5669a12..0000000 --- a/gcc/gcc/config/i386/haiku.h +++ /dev/null @@ -1,76 +0,0 @@ -/* Definitions for Intel x86 running Haiku - Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004 - Free Software Foundation, Inc. - -This file is part of GCC. - -GCC is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GCC is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GCC; see the file COPYING. If not, write to -the Free Software Foundation, 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ - - -#define TARGET_VERSION fprintf (stderr, " (i386 Haiku/ELF)"); - -/* The SVR4 ABI for the i386 says that records and unions are returned - in memory. */ -#undef DEFAULT_PCC_STRUCT_RETURN -#define DEFAULT_PCC_STRUCT_RETURN 1 - -#undef DBX_REGISTER_NUMBER -#define DBX_REGISTER_NUMBER(n) \ - (TARGET_64BIT ? dbx64_register_map[n] : svr4_dbx_register_map[n]) - -#define TARGET_OS_CPP_BUILTINS() \ - do \ - { \ - builtin_define ("__HAIKU__"); \ - builtin_define ("__INTEL__"); \ - builtin_define ("_X86_"); \ - builtin_define ("__stdcall=__attribute__((__stdcall__))"); \ - builtin_define ("__cdecl=__attribute__((__cdecl__))"); \ - builtin_define ("__STDC_ISO_10646__=201103L"); \ - builtin_assert ("system=haiku"); \ - } \ - while (0) - -/* Provide a LINK_SPEC appropriate for Haiku. Here we provide support - for the special GCC options -static and -shared, which allow us to - link things in one of these three modes by applying the appropriate - combinations of options at link-time. */ - -/* If ELF is the default format, we should not use /lib/elf. */ - -#undef LINK_SPEC -#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 - NAME whose size is SIZE bytes and alignment is ALIGN bytes. - Try to use asm_output_aligned_bss to implement this macro. */ - -#define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \ - asm_output_aligned_bss (FILE, DECL, NAME, SIZE, ALIGN) - -/* A C statement to output to the stdio stream FILE an assembler - command to advance the location counter to a multiple of 1<<LOG - bytes if it is within MAX_SKIP bytes. - - This is used to align code labels according to Intel recommendations. */ - -#ifdef HAVE_GAS_MAX_SKIP_P2ALIGN -#define ASM_OUTPUT_MAX_SKIP_ALIGN(FILE,LOG,MAX_SKIP) \ - if ((LOG)!=0) \ - if ((MAX_SKIP)==0) fprintf ((FILE), "\t.p2align %d\n", (LOG)); \ - else fprintf ((FILE), "\t.p2align %d,,%d\n", (LOG), (MAX_SKIP)) -#endif diff --git a/gcc/gcc/config/i386/haiku64.h b/gcc/gcc/config/i386/haiku64.h deleted file mode 100644 index 6103760..0000000 --- a/gcc/gcc/config/i386/haiku64.h +++ /dev/null @@ -1,130 +0,0 @@ -/* Definitions for AMD x86_64 running Haiku with ELF format. - Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004 - Free Software Foundation, Inc. - -This file is part of GCC. - -GCC is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GCC is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GCC; see the file COPYING. If not, write to -the Free Software Foundation, 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ - - -#if TARGET_64BIT -#define TARGET_VERSION fprintf (stderr, " (x86-64 Haiku/ELF)"); -#else -#define TARGET_VERSION fprintf (stderr, " (i386 Haiku/ELF)"); -#endif - -/* The SVR4 ABI for the i386 says that records and unions are returned - * in memory. - * - * TODO: Linux64 doesn't use pcc_struct_return scheme. Does haiku? - * If not this could be removed. - */ -#undef DEFAULT_PCC_STRUCT_RETURN -#define DEFAULT_PCC_STRUCT_RETURN 1 - -#undef DBX_REGISTER_NUMBER -#define DBX_REGISTER_NUMBER(n) \ - (TARGET_64BIT ? dbx64_register_map[n] : svr4_dbx_register_map[n]) - -#if TARGET_64BIT -#define TARGET_OS_CPP_BUILTINS() \ - do \ - { \ - builtin_define ("__HAIKU__"); \ - builtin_define ("__x86_64__"); \ - builtin_define ("__stdcall=__attribute__((__stdcall__))"); \ - builtin_define ("__cdecl=__attribute__((__cdecl__))"); \ - builtin_define ("__STDC_ISO_10646__=201103L"); \ - builtin_assert ("system=haiku"); \ - } \ - while (0) -#else -#define TARGET_OS_CPP_BUILTINS() \ - do \ - { \ - builtin_define ("__HAIKU__"); \ - builtin_define ("__INTEL__"); \ - builtin_define ("__X86__"); \ - builtin_define ("__stdcall=__attribute__((__stdcall__))"); \ - builtin_define ("__cdecl=__attribute__((__cdecl__))"); \ - builtin_define ("__STDC_ISO_10646__=201103L"); \ - builtin_assert ("system=haiku"); \ - } \ - while (0) -#endif - -/* Provide a LINK_SPEC appropriate for Haiku. Here we provide support - for the special GCC options -static and -shared, which allow us to - link things in one of these three modes by applying the appropriate - combinations of options at link-time. */ - -#undef LINK_SPEC -#if TARGET_64BIT -#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 %{nostart:-e 0} %{shared:-e 0} %{!shared: %{!nostart: -no-undefined}}" -#endif - - -/* A C statement (sans semicolon) to output to the stdio stream - FILE the assembler definition of uninitialized global DECL named - NAME whose size is SIZE bytes and alignment is ALIGN bytes. - Try to use asm_output_aligned_bss to implement this macro. */ - -#define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \ - asm_output_aligned_bss (FILE, DECL, NAME, SIZE, ALIGN) - -/* A C statement to output to the stdio stream FILE an assembler - command to advance the location counter to a multiple of 1<<LOG - bytes if it is within MAX_SKIP bytes. - - This is used to align code labels according to Intel recommendations. */ - -#ifdef HAVE_GAS_MAX_SKIP_P2ALIGN -#define ASM_OUTPUT_MAX_SKIP_ALIGN(FILE,LOG,MAX_SKIP) \ - if ((LOG)!=0) \ - if ((MAX_SKIP)==0) fprintf ((FILE), "\t.p2align %d\n", (LOG)); \ - else fprintf ((FILE), "\t.p2align %d,,%d\n", (LOG), (MAX_SKIP)) -#endif - - -/* Output assembler code to FILE to call the profiler. */ -#define NO_PROFILE_COUNTERS 1 - -#undef ASM_SPEC -#define ASM_SPEC "%{v:-V} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} \ - %{Wa,*:%*} %{m32:--32} %{m64:--64}" - -#undef ASM_OUTPUT_ALIGNED_COMMON -#define ASM_OUTPUT_ALIGNED_COMMON(FILE, NAME, SIZE, ALIGN) \ - x86_elf_aligned_common (FILE, NAME, SIZE, ALIGN); - - -/* i386 System V Release 4 uses DWARF debugging info. - x86-64 ABI specifies DWARF2. */ -#if TARGET_64BIT - #define DWARF2_DEBUGGING_INFO 1 - #define DWARF2_UNWIND_INFO 1 - - #undef PREFERRED_DEBUGGING_TYPE - #define PREFERRED_DEBUGGING_TYPE DWARF2_DEBUG - - #undef TARGET_ASM_SELECT_SECTION - #define TARGET_ASM_SELECT_SECTION x86_64_elf_select_section - - #undef TARGET_ASM_UNIQUE_SECTION - #define TARGET_ASM_UNIQUE_SECTION x86_64_elf_unique_section -#endif diff --git a/gcc/gcc/config/i386/host-cygwin.c b/gcc/gcc/config/i386/host-cygwin.c old mode 100755 new mode 100644 diff --git a/gcc/gcc/config/i386/t-haiku64 b/gcc/gcc/config/i386/t-haiku64 deleted file mode 100644 index f6fbc4b..0000000 --- a/gcc/gcc/config/i386/t-haiku64 +++ /dev/null @@ -1,3 +0,0 @@ -MULTILIB_OPTIONS = m32 -MULTILIB_DIRNAMES = legacy -MULTILIB_OSDIRNAMES = legacy diff --git a/gcc/gcc/config/i386/winnt-cxx.c b/gcc/gcc/config/i386/winnt-cxx.c old mode 100755 new mode 100644 diff --git a/gcc/gcc/config/i386/winnt-stubs.c b/gcc/gcc/config/i386/winnt-stubs.c old mode 100755 new mode 100644 diff --git a/gcc/gcc/config/m68k/haiku.h b/gcc/gcc/config/m68k/haiku.h deleted file mode 100644 index 6fe9f46..0000000 --- a/gcc/gcc/config/m68k/haiku.h +++ /dev/null @@ -1,270 +0,0 @@ -/* Definitions for Motorola 68k running Haiku - Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003, 2004, 2007 - Free Software Foundation, Inc. - -This file is part of GCC. - -GCC is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GCC is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GCC; see the file COPYING. If not, write to -the Free Software Foundation, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -#undef TARGET_VERSION -#define TARGET_VERSION fprintf (stderr, " (68k Haiku/ELF)"); - -/* Default target comes from config.gcc. */ - -#undef TARGET_DEFAULT -#ifdef TARGET_CPU_DEFAULT -#define TARGET_DEFAULT TARGET_CPU_DEFAULT -#else -#define TARGET_DEFAULT (MASK_BITFIELD|MASK_68881|MASK_68020) -#endif - -/* for 68k machines this only needs to be TRUE for the 68000 */ - -#undef STRICT_ALIGNMENT -#define STRICT_ALIGNMENT 0 - -/* Here are four prefixes that are used by asm_fprintf to - facilitate customization for alternate assembler syntaxes. - Machines with no likelihood of an alternate syntax need not - define these and need not use asm_fprintf. */ - -/* The prefix for register names. Note that REGISTER_NAMES - is supposed to include this prefix. Also note that this is NOT an - fprintf format string, it is a literal string */ - -#undef REGISTER_PREFIX -#define REGISTER_PREFIX "%" - -/* The prefix for local (compiler generated) labels. - These labels will not appear in the symbol table. */ - -#undef LOCAL_LABEL_PREFIX -#define LOCAL_LABEL_PREFIX "." - -/* The prefix to add to user-visible assembler symbols. */ - -#undef USER_LABEL_PREFIX -#define USER_LABEL_PREFIX "" - -#undef ASM_COMMENT_START -#define ASM_COMMENT_START "|" - -/* Target OS builtins. */ - -#undef TARGET_OS_CPP_BUILTINS -#define TARGET_OS_CPP_BUILTINS() \ - do \ - { \ - builtin_define ("__HAIKU__"); \ - builtin_define ("__M68K__"); \ - builtin_define_std ("mc68000"); \ - builtin_define_std ("mc68020"); \ - builtin_define ("__stdcall=__attribute__((__stdcall__))"); \ - builtin_define ("__cdecl=__attribute__((__cdecl__))"); \ - builtin_define ("__STDC_ISO_10646__=201103L"); \ - builtin_assert ("system=haiku"); \ - } \ - while (0) - -#define TARGET_OBJFMT_CPP_BUILTINS() \ - do \ - { \ - builtin_define ("__ELF__"); \ - } \ - while (0) - -#undef CPP_SPEC -#if TARGET_DEFAULT & MASK_68881 -#define CPP_SPEC \ - "%{fPIC|fpic|fPIE|fpie:-D__PIC__ -D__pic__} %{!msoft-float:-D__HAVE_68881__} %{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}" -#else -#define CPP_SPEC \ - "%{fPIC|fpic|fPIE|fpie:-D__PIC__ -D__pic__} %{m68881:-D__HAVE_68881__} %{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}" -#endif - -/* We override the ASM_SPEC from svr4.h because we must pass -m68040 down - to the assembler. */ -#undef ASM_SPEC -#define ASM_SPEC \ - "%{v:-V} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} %{Wa,*:%*} \ -%{m68040} %{m68060:-m68040}" - -/* Provide a LINK_SPEC appropriate for Haiku. Here we provide support - for the special GCC options -static and -shared, which allow us to - link things in one of these three modes by applying the appropriate - combinations of options at link-time. */ - -/* 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 %{nostart:-e 0}"*/ -#define LINK_SPEC "%{!o*:-o %b} -m m68kelf -shared -no-undefined %{nostart:-e 0}" - -/* XXX: not sure for the rest there... */ - -/* Currently, JUMP_TABLES_IN_TEXT_SECTION must be defined in order to - keep switch tables in the text section. */ - -#define JUMP_TABLES_IN_TEXT_SECTION 1 - -/* This is how to output an assembler line that says to advance the - location counter to a multiple of 2**LOG bytes. */ - -/* Use the default action for outputting the case label. */ -#undef ASM_OUTPUT_CASE_LABEL -#define ASM_RETURN_CASE_JUMP \ - do { \ - if (TARGET_COLDFIRE) \ - { \ - if (ADDRESS_REG_P (operands[0])) \ - return "jmp %%pc@(2,%0:l)"; \ - else \ - return "ext%.l %0\n\tjmp %%pc@(2,%0:l)"; \ - } \ - else \ - return "jmp %%pc@(2,%0:w)"; \ - } while (0) - -#undef ASM_OUTPUT_ALIGN -#define ASM_OUTPUT_ALIGN(FILE,LOG) \ - if ((LOG) > 0) \ - fprintf ((FILE), "%s%u\n", ALIGN_ASM_OP, 1 << (LOG)); - -/* If defined, a C expression whose value is a string containing the - assembler operation to identify the following data as uninitialized global - data. */ - -#define BSS_SECTION_ASM_OP "\t.section\t.bss" - -/* A C statement (sans semicolon) to output to the stdio stream - FILE the assembler definition of uninitialized global DECL named - NAME whose size is SIZE bytes and alignment is ALIGN bytes. - Try to use asm_output_aligned_bss to implement this macro. */ - -#define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \ - asm_output_aligned_bss (FILE, DECL, NAME, SIZE, ALIGN) - -/* Output assembler code to FILE to increment profiler label # LABELNO - for profiling a function entry. */ - -#undef FUNCTION_PROFILER -#define FUNCTION_PROFILER(FILE, LABELNO) \ -{ \ - asm_fprintf (FILE, "\tlea (%LLP%d,%Rpc),%Ra1\n", (LABELNO)); \ - if (flag_pic) \ - fprintf (FILE, "\tbsr.l _mcount@PLTPC\n"); \ - else \ - fprintf (FILE, "\tjbsr _mcount\n"); \ -} - -/* How to renumber registers for dbx and gdb. - On the Sun-3, the floating point registers have numbers - 18 to 25, not 16 to 23 as they do in the compiler. */ - -#define DBX_REGISTER_NUMBER(REGNO) ((REGNO) < 16 ? (REGNO) : (REGNO) + 2) - -/* Do not break .stabs pseudos into continuations. */ - -#define DBX_CONTIN_LENGTH 0 - -/* 1 if N is a possible register number for a function value. For - m68k/SVR4 allow d0, a0, or fp0 as return registers, for integral, - pointer, or floating types, respectively. Reject fp0 if not using - a 68881 coprocessor. */ - -#undef FUNCTION_VALUE_REGNO_P -#define FUNCTION_VALUE_REGNO_P(N) \ - ((N) == 0 || (N) == 8 || (TARGET_68881 && (N) == 16)) - -/* Define this to be true when FUNCTION_VALUE_REGNO_P is true for - more than one register. */ - -#undef NEEDS_UNTYPED_CALL -#define NEEDS_UNTYPED_CALL 1 - -/* Define how to generate (in the callee) the output value of a - function and how to find (in the caller) the value returned by a - function. VALTYPE is the data type of the value (as a tree). If - the precise function being called is known, FUNC is its - FUNCTION_DECL; otherwise, FUNC is 0. For m68k/SVR4 generate the - result in d0, a0, or fp0 as appropriate. */ - -#undef FUNCTION_VALUE -#define FUNCTION_VALUE(VALTYPE, FUNC) \ - (TREE_CODE (VALTYPE) == REAL_TYPE && TARGET_68881 \ - ? gen_rtx_REG (TYPE_MODE (VALTYPE), 16) \ - : (POINTER_TYPE_P (VALTYPE) \ - ? gen_rtx_REG (TYPE_MODE (VALTYPE), 8) \ - : gen_rtx_REG (TYPE_MODE (VALTYPE), 0))) - -/* For compatibility with the large body of existing code which does - not always properly declare external functions returning pointer - types, the m68k/SVR4 convention is to copy the value returned for - pointer functions from a0 to d0 in the function epilogue, so that - callers that have neglected to properly declare the callee can - still find the correct return value. */ - -#define FUNCTION_EXTRA_EPILOGUE(FILE, SIZE) \ -do { \ - if (current_function_returns_pointer \ - && ! find_equiv_reg (0, get_last_insn (), 0, 0, 0, 8, Pmode)) \ - asm_fprintf (FILE, "\tmove.l %Ra0,%Rd0\n"); \ -} while (0); - -/* Define how to find the value returned by a library function - assuming the value has mode MODE. - For m68k/SVR4 look for integer values in d0, pointer values in d0 - (returned in both d0 and a0), and floating values in fp0. */ - -#undef LIBCALL_VALUE -#define LIBCALL_VALUE(MODE) \ - ((((MODE) == SFmode || (MODE) == DFmode || (MODE) == XFmode) \ - && TARGET_68881) \ - ? gen_rtx_REG ((MODE), 16) \ - : gen_rtx_REG ((MODE), 0)) - -/* For m68k SVR4, structures are returned using the reentrant - technique. */ -#undef PCC_STATIC_STRUCT_RETURN -#define DEFAULT_PCC_STRUCT_RETURN 0 - -/* Finalize the trampoline by flushing the insn cache. */ - -#undef FINALIZE_TRAMPOLINE -#define FINALIZE_TRAMPOLINE(TRAMP) \ - emit_library_call (gen_rtx_SYMBOL_REF (Pmode, "__clear_cache"), \ - 0, VOIDmode, 2, TRAMP, Pmode, \ - plus_constant (TRAMP, TRAMPOLINE_SIZE), Pmode); - -/* Clear the instruction cache from `beg' to `end'. This makes an - inline system call to SYS_cacheflush. The arguments are as - follows: - - cacheflush (addr, scope, cache, len) - - addr - the start address for the flush - scope - the scope of the flush (see the cpush insn) - cache - which cache to flush (see the cpush insn) - len - a factor relating to the number of flushes to perform: - len/16 lines, or len/4096 pages. */ - -#define CLEAR_INSN_CACHE(BEG, END) \ -{ \ -extern void clear_caches(void *address, int length, unsigned long flags); \ - void *ptr = BEG; \ - int len = (END - BEG + 32); \ - clear_caches(ptr, len, 0x0005); \ -} diff --git a/gcc/gcc/config/mips/haiku.h b/gcc/gcc/config/mips/haiku.h deleted file mode 100644 index a832e52..0000000 --- a/gcc/gcc/config/mips/haiku.h +++ /dev/null @@ -1,47 +0,0 @@ -/* Definitions for MIPS running Haiku - Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004 - Free Software Foundation, Inc. - -This file is part of GCC. - -GCC is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GCC is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GCC; see the file COPYING. If not, write to -the Free Software Foundation, 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ - - -#undef TARGET_VERSION -#define TARGET_VERSION fprintf (stderr, " (MIPSEL Haiku/ELF)"); - -#define TARGET_OS_CPP_BUILTINS() \ - do \ - { \ - builtin_define ("__HAIKU__"); \ - builtin_define ("__MIPS__"); \ - builtin_define ("__MIPSEL__"); \ - builtin_define ("_MIPSEL_"); \ - builtin_define ("__stdcall=__attribute__((__stdcall__))"); \ - builtin_define ("__cdecl=__attribute__((__cdecl__))"); \ - builtin_define ("__STDC_ISO_10646__=201103L"); \ - builtin_assert ("system=haiku"); \ - if (flag_pic) \ - { \ - builtin_define ("__PIC__"); \ - builtin_define ("__pic__"); \ - } \ - } \ - while (0) - -#undef LINK_SPEC -#define LINK_SPEC "%{!o*:-o %b} -m elf_mipsel_haiku -shared %{nostart:-e 0}" - diff --git a/gcc/gcc/config/rs6000/haiku.h b/gcc/gcc/config/rs6000/haiku.h deleted file mode 100644 index cc7b77c..0000000 --- a/gcc/gcc/config/rs6000/haiku.h +++ /dev/null @@ -1,59 +0,0 @@ -/* Definitions for PowerPC running Haiku - Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004, 2005 - Free Software Foundation, Inc. - -This file is part of GCC. - -GCC is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GCC is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GCC; see the file COPYING. If not, write to -the Free Software Foundation, 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ - - -#undef TARGET_VERSION -#define TARGET_VERSION fprintf (stderr, " (PowerPC Haiku/ELF)"); - -/* long double is 128 bits wide; the documentation claims - LIBGCC2_LONG_DOUBLE_TYPE_SIZE to default to LONG_DOUBLE_TYPE_SIZE, but - it apparently does not */ -/*#undef LONG_DOUBLE_TYPE_SIZE -#define LONG_DOUBLE_TYPE_SIZE 128 -#undef LIBGCC2_LONG_DOUBLE_TYPE_SIZE -#define LIBGCC2_LONG_DOUBLE_TYPE_SIZE 128*/ - -#undef TARGET_OS_CPP_BUILTINS -#define TARGET_OS_CPP_BUILTINS() \ - do \ - { \ - builtin_define ("__HAIKU__"); \ - builtin_define ("__POWERPC__"); \ - builtin_define ("__powerpc__"); \ - builtin_define ("__stdcall=__attribute__((__stdcall__))"); \ - builtin_define ("__cdecl=__attribute__((__cdecl__))"); \ - builtin_define ("__STDC_ISO_10646__=201103L"); \ - builtin_assert ("system=haiku"); \ - builtin_assert ("cpu=powerpc"); \ - builtin_assert ("machine=powerpc"); \ - TARGET_OS_SYSV_CPP_BUILTINS (); \ - } \ - while (0) - -/* Provide a LINK_SPEC appropriate for Haiku. Here we provide support - for the special GCC options -static and -shared, which allow us to - link things in one of these three modes by applying the appropriate - combinations of options at link-time. */ - -/* 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 %{nostart:-e 0}" diff --git a/gcc/gcc/config/t-haiku b/gcc/gcc/config/t-haiku deleted file mode 100644 index 59fa413..0000000 --- a/gcc/gcc/config/t-haiku +++ /dev/null @@ -1,4 +0,0 @@ -# There are system headers elsewhere, but these are the ones that -# we are most likely to want to apply any fixes to. -NATIVE_SYSTEM_HEADER_DIR = /boot/develop/headers -LIMITS_H_TEST = [ -f $(SYSTEM_HEADER_DIR)/posix/limits.h ] \ No newline at end of file diff --git a/gcc/gcc/configure b/gcc/gcc/configure index 62c9df4..9799bab 100755 --- a/gcc/gcc/configure +++ b/gcc/gcc/configure @@ -599,7 +599,6 @@ ac_includes_default="\ #endif" ac_subst_vars='LTLIBOBJS -math_library LIBOBJS enable_plugin pluginlibs @@ -8202,15 +8201,6 @@ $as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h # -------- -# Configure -lm usage for host tools that need it -math_library="-lm" -case $host in - *-*-haiku*) - # no separate math library needed - math_library= - ;; -esac - # These libraries may be used by collect2. # We may need a special search path to get them linked. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for collect2 libraries" >&5 @@ -10430,7 +10420,7 @@ case ${enable_threads} in # default target_thread_file='single' ;; - aix | dce | gnat | haiku | irix | posix | posix95 | rtems | \ + aix | dce | gnat | irix | posix | posix95 | rtems | \ single | solaris | vxworks | win32 | mipssde) target_thread_file=${enable_threads} ;; @@ -14181,7 +14171,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; } esac ;; - beos* | haiku* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; @@ -14871,8 +14861,8 @@ _LT_EOF ;; haiku*) - allow_undefined_flag=unsupported - archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + link_all_deplibs=yes ;; interix[3-9]*) @@ -16314,9 +16304,16 @@ gnu*) ;; haiku*) - library_names_spec='${libname}${shared_ext}' - dynamic_linker="$host_os ld.so" + version_type=linux + need_lib_prefix=no + need_version=no + dynamic_linker="$host_os runtime_loader" + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LIBRARY_PATH + shlibpath_overrides_runpath=yes + sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/beos/system/lib' + hardcode_into_libs=yes ;; hpux9* | hpux10* | hpux11*) diff --git a/gcc/gcc/configure.ac b/gcc/gcc/configure.ac index 4cdbff8..45d2959 100644 --- a/gcc/gcc/configure.ac +++ b/gcc/gcc/configure.ac @@ -957,15 +957,6 @@ AC_C_BIGENDIAN # -------- -# Configure -lm usage for host tools that need it -math_library="-lm" -case $host in - *-*-haiku*) - # no separate math library needed - math_library= - ;; -esac - # These libraries may be used by collect2. # We may need a special search path to get them linked. AC_CACHE_CHECK(for collect2 libraries, gcc_cv_collect2_libs, @@ -1381,7 +1372,7 @@ case ${enable_threads} in # default target_thread_file='single' ;; - aix | dce | gnat | haiku | irix | posix | posix95 | rtems | \ + aix | dce | gnat | irix | posix | posix95 | rtems | \ single | solaris | vxworks | win32 | mipssde) target_thread_file=${enable_threads} ;; diff --git a/gcc/gcc/crtstuff.c b/gcc/gcc/crtstuff.c index aae3ab0..c44abb5 100644 --- a/gcc/gcc/crtstuff.c +++ b/gcc/gcc/crtstuff.c @@ -93,9 +93,7 @@ call_ ## FUNC (void) \ && defined(HAVE_LD_EH_FRAME_HDR) \ && !defined(inhibit_libc) && !defined(CRTSTUFFT_O) \ && defined(__GLIBC__) && __GLIBC__ >= 2 -#if !(defined(__BEOS__) || defined(__HAIKU__)) #include <link.h> -#endif /* uClibc pretends to be glibc 2.2 and DT_CONFIG is defined in its link.h. But it doesn't use PT_GNU_EH_FRAME ELF segment currently. */ # if !defined(__UCLIBC__) \ @@ -152,9 +150,7 @@ extern void *__deregister_frame_info_bases (const void *) extern void __do_global_ctors_1 (void); /* Likewise for _Jv_RegisterClasses. */ -#ifdef JCR_SECTION_NAME extern void _Jv_RegisterClasses (void *) TARGET_ATTRIBUTE_WEAK; -#endif #ifdef OBJECT_FORMAT_ELF diff --git a/gcc/gcc/defaults.h b/gcc/gcc/defaults.h index f4461c1..26f90ed 100644 --- a/gcc/gcc/defaults.h +++ b/gcc/gcc/defaults.h @@ -379,13 +379,9 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see at program start-up time. */ #if defined (TARGET_ASM_NAMED_SECTION) && SUPPORTS_WEAK #ifndef JCR_SECTION_NAME -/* Hack to remove _Jv crap on BeOS. i know it should be made somehow through - config files, but i don't know how (in which file ;) */ -#if !defined(__BEOS__) && !defined(__HAIKU__) #define JCR_SECTION_NAME ".jcr" #endif #endif -#endif /* This decision to use a .jcr section can be overridden by defining USE_JCR_SECTION to 0 in target file. This is necessary if target diff --git a/gcc/gcc/ginclude/stdarg.h b/gcc/gcc/ginclude/stdarg.h index f07b4a6..54dc2e7 100644 --- a/gcc/gcc/ginclude/stdarg.h +++ b/gcc/gcc/ginclude/stdarg.h @@ -97,7 +97,7 @@ typedef __gnuc_va_list va_list; #ifndef _VA_LIST /* The macro _VA_LIST_T_H is used in the Bull dpx2 */ #ifndef _VA_LIST_T_H -/* The macro __va_list__ is used by BeOS and Haiku. */ +/* The macro __va_list__ is used by BeOS. */ #ifndef __va_list__ typedef __gnuc_va_list va_list; #endif /* not __va_list__ */ diff --git a/gcc/gcc/ginclude/stddef.h b/gcc/gcc/ginclude/stddef.h index 5c4e3fd..89e5b2e 100644 --- a/gcc/gcc/ginclude/stddef.h +++ b/gcc/gcc/ginclude/stddef.h @@ -166,7 +166,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t; /* Define this type if we are doing the whole job, or if we want this type in particular. */ #if defined (_STDDEF_H) || defined (__need_size_t) -#ifndef __size_t__ /* BeOS, Haiku */ +#ifndef __size_t__ /* BeOS */ #ifndef __SIZE_T__ /* Cray Unicos/Mk */ #ifndef _SIZE_T /* in case <sys/types.h> has defined it. */ #ifndef _SYS_SIZE_T_H @@ -183,7 +183,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t; #ifndef _GCC_SIZE_T #ifndef _SIZET_ #ifndef __size_t -#define __size_t__ /* BeOS, Haiku */ +#define __size_t__ /* BeOS */ #define __SIZE_T__ /* Cray Unicos/Mk */ #define _SIZE_T #define _SYS_SIZE_T_H @@ -209,7 +209,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t; #endif #if !(defined (__GNUG__) && defined (size_t)) typedef __SIZE_TYPE__ size_t; -#if defined(__BEOS__) +#ifdef __BEOS__ typedef long ssize_t; #endif /* __BEOS__ */ #endif /* !(defined (__GNUG__) && defined (size_t)) */ @@ -242,7 +242,7 @@ typedef long ssize_t; /* Define this type if we are doing the whole job, or if we want this type in particular. */ #if defined (_STDDEF_H) || defined (__need_wchar_t) -#ifndef __wchar_t__ /* BeOS, Haiku */ +#ifndef __wchar_t__ /* BeOS */ #ifndef __WCHAR_T__ /* Cray Unicos/Mk */ #ifndef _WCHAR_T #ifndef _T_WCHAR_ @@ -259,7 +259,7 @@ typedef long ssize_t; #ifndef ___int_wchar_t_h #ifndef __INT_WCHAR_T_H #ifndef _GCC_WCHAR_T -#define __wchar_t__ /* BeOS, Haiku */ +#define __wchar_t__ /* BeOS */ #define __WCHAR_T__ /* Cray Unicos/Mk */ #define _WCHAR_T #define _T_WCHAR_ diff --git a/gcc/intl/loadmsgcat.c b/gcc/intl/loadmsgcat.c index 8d282ae..536ee12 100644 --- a/gcc/intl/loadmsgcat.c +++ b/gcc/intl/loadmsgcat.c @@ -480,8 +480,8 @@ char *alloca (); # define O_BINARY _O_BINARY # define O_TEXT _O_TEXT #endif -#if defined(__BEOS__) || defined(__HAIKU__) - /* BeOS 5 and Haiku R1 have O_BINARY and O_TEXT, but they have no effect. */ +#ifdef __BEOS__ + /* BeOS 5 has O_BINARY and O_TEXT, but they have no effect. */ # undef O_BINARY # undef O_TEXT #endif diff --git a/gcc/libcpp/configure b/gcc/libcpp/configure index a41a94e..00cbd7a 100755 --- a/gcc/libcpp/configure +++ b/gcc/libcpp/configure @@ -6870,7 +6870,6 @@ fi case $target in alpha*-*-* | \ arm*-*-*eabi* | \ - arm*-*-haiku* | \ arm*-*-symbianelf* | \ x86_64-*-* | \ ia64-*-* | \ diff --git a/gcc/libcpp/configure.ac b/gcc/libcpp/configure.ac index 14e87a7..d520e93 100644 --- a/gcc/libcpp/configure.ac +++ b/gcc/libcpp/configure.ac @@ -140,7 +140,6 @@ m4_changequote(,) case $target in alpha*-*-* | \ arm*-*-*eabi* | \ - arm*-*-haiku* | \ arm*-*-symbianelf* | \ x86_64-*-* | \ ia64-*-* | \ diff --git a/gcc/libgcc/config.host b/gcc/libgcc/config.host index 724b614..c5f3d6e 100644 --- a/gcc/libgcc/config.host +++ b/gcc/libgcc/config.host @@ -207,8 +207,6 @@ arm*-*-netbsdelf*) ;; arm*-*-netbsd*) ;; -arm-*-haiku*) - ;; arm*-*-linux*) # ARM GNU/Linux with ELF ;; arm*-*-uclinux*) # ARM ucLinux @@ -284,10 +282,6 @@ i[34567]86-*-freebsd*) ;; x86_64-*-freebsd*) ;; -i[34567]86-*-haiku*) - ;; -x86_64-*-haiku*) - ;; i[34567]86-*-netbsdelf*) ;; i[34567]86-*-netbsd*) @@ -385,8 +379,6 @@ m68hc11-*-*|m6811-*-*) ;; m68hc12-*-*|m6812-*-*) ;; -m68k-*-haiku*) - ;; m68k-*-elf*) ;; m68k*-*-netbsdelf*) @@ -415,8 +407,6 @@ mips*-*-linux*) # Linux MIPS, either endian. ;; mips*-*-openbsd*) ;; -mips*-*-haiku*) - ;; mipsisa32-*-elf* | mipsisa32el-*-elf*) ;; mipsisa32r2-*-elf* | mipsisa32r2el-*-elf*) @@ -463,8 +453,6 @@ powerpc64-*-darwin*) ;; powerpc*-*-freebsd*) ;; -powerpc-*-haiku*) - ;; powerpc-*-netbsd*) ;; powerpc-*-eabispe*) diff --git a/gcc/libgcc/config/i386/t-cygming b/gcc/libgcc/config/i386/t-cygming old mode 100755 new mode 100644 diff --git a/gcc/libgomp/configure b/gcc/libgomp/configure index c4336c1..37c3d77 100755 --- a/gcc/libgomp/configure +++ b/gcc/libgomp/configure @@ -8145,7 +8145,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; } esac ;; - beos* | haiku* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; @@ -8835,8 +8835,8 @@ _LT_EOF ;; haiku*) - allow_undefined_flag=unsupported - archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + link_all_deplibs=yes ;; interix[3-9]*) @@ -10278,9 +10278,16 @@ gnu*) ;; haiku*) - library_names_spec='${libname}${shared_ext}' - dynamic_linker="$host_os ld.so" + version_type=linux + need_lib_prefix=no + need_version=no + dynamic_linker="$host_os runtime_loader" + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LIBRARY_PATH + shlibpath_overrides_runpath=yes + sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/beos/system/lib' + hardcode_into_libs=yes ;; hpux9* | hpux10* | hpux11*) diff --git a/gcc/libiberty/make-relative-prefix.c b/gcc/libiberty/make-relative-prefix.c index 157c322..c98d287 100644 --- a/gcc/libiberty/make-relative-prefix.c +++ b/gcc/libiberty/make-relative-prefix.c @@ -57,9 +57,6 @@ relative prefix can be found, return @code{NULL}. #ifdef HAVE_UNISTD_H #include <unistd.h> #endif -#ifdef HAVE_SYS_STAT_H -#include <sys/stat.h> -#endif #include <string.h> @@ -257,7 +254,6 @@ make_relative_prefix_1 (const char *progname, const char *bin_prefix, { if (*endp == PATH_SEPARATOR || *endp == 0) { - struct stat st; if (endp == startp) { nstore[0] = '.'; @@ -275,11 +271,10 @@ make_relative_prefix_1 (const char *progname, const char *bin_prefix, else nstore[endp - startp] = 0; } - strcat (nstore, progname); - if ((! stat(nstore, &st) && S_ISREG (st.st_mode) && ! access (nstore, X_OK)) + if (! access (nstore, X_OK) #ifdef HAVE_HOST_EXECUTABLE_SUFFIX - || (! stat (strcat (nstore, HOST_EXECUTABLE_SUFFIX)) && S_ISREG (st.st_mode) && ! access (nstore, X_OK)) + || ! access (strcat (nstore, HOST_EXECUTABLE_SUFFIX), X_OK) #endif ) { diff --git a/gcc/libmudflap/configure b/gcc/libmudflap/configure index 6af7d48..03aec3f 100755 --- a/gcc/libmudflap/configure +++ b/gcc/libmudflap/configure @@ -7654,7 +7654,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; } esac ;; - beos* | haiku* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; @@ -8344,8 +8344,8 @@ _LT_EOF ;; haiku*) - allow_undefined_flag=unsupported - archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + link_all_deplibs=yes ;; interix[3-9]*) @@ -9787,9 +9787,16 @@ gnu*) ;; haiku*) - library_names_spec='${libname}${shared_ext}' - dynamic_linker="$host_os ld.so" + version_type=linux + need_lib_prefix=no + need_version=no + dynamic_linker="$host_os runtime_loader" + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LIBRARY_PATH + shlibpath_overrides_runpath=yes + sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/beos/system/lib' + hardcode_into_libs=yes ;; hpux9* | hpux10* | hpux11*) diff --git a/gcc/libssp/configure b/gcc/libssp/configure index aeafef4..d5e8384 100755 --- a/gcc/libssp/configure +++ b/gcc/libssp/configure @@ -7627,7 +7627,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; } esac ;; - beos* | haiku* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; @@ -8317,8 +8317,8 @@ _LT_EOF ;; haiku*) - allow_undefined_flag=unsupported - archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + link_all_deplibs=yes ;; interix[3-9]*) @@ -9769,9 +9769,16 @@ gnu*) ;; haiku*) - library_names_spec='${libname}${shared_ext}' - dynamic_linker="$host_os ld.so" + version_type=linux + need_lib_prefix=no + need_version=no + dynamic_linker="$host_os runtime_loader" + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LIBRARY_PATH + shlibpath_overrides_runpath=yes + sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/beos/system/lib' + hardcode_into_libs=yes ;; hpux9* | hpux10* | hpux11*) diff --git a/gcc/libstdc++-v3/configure b/gcc/libstdc++-v3/configure index e7db3b7..69f6b5d 100755 --- a/gcc/libstdc++-v3/configure +++ b/gcc/libstdc++-v3/configure @@ -6155,7 +6155,7 @@ aix[4-9]*) lt_cv_deplibs_check_method=pass_all ;; -beos* | haiku*) +beos*) lt_cv_deplibs_check_method=pass_all ;; @@ -8477,7 +8477,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; } esac ;; - beos* | haiku* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; @@ -9167,8 +9167,8 @@ _LT_EOF ;; haiku*) - allow_undefined_flag=unsupported - archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + link_all_deplibs=yes ;; interix[3-9]*) @@ -10465,7 +10465,7 @@ amigaos*) esac ;; -beos* | haiku*) +beos*) library_names_spec='${libname}${shared_ext}' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH @@ -11148,7 +11148,7 @@ else lt_cv_dlopen_libs= case $host_os in - beos* | haiku*) + beos*) lt_cv_dlopen="load_add_on" lt_cv_dlopen_libs= lt_cv_dlopen_self=yes @@ -12499,8 +12499,8 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; haiku*) - allow_undefined_flag=unsupported - archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds_CXX='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + link_all_deplibs_CXX=yes ;; hpux9*) @@ -13367,7 +13367,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; } esac ;; - beos* | haiku* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; mingw* | cygwin* | os2* | pw32* | cegcc*) @@ -14154,7 +14154,7 @@ amigaos*) esac ;; -beos* | haiku*) +beos*) library_names_spec='${libname}${shared_ext}' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH @@ -44162,578 +44162,6 @@ $as_echo "$ac_ld_relro" >&6; } fi ;; - *haiku*) - - - - - - - - - - - - - - - -for ac_header in nan.h ieeefp.h endian.h sys/isa_defs.h \ - machine/endian.h machine/param.h sys/machine.h sys/types.h \ - fp.h float.h endian.h inttypes.h locale.h float.h stdint.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - { echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -ac_res=`eval echo '${'$as_ac_Header'}'` - { echo "$as_me:$LINENO: result: $ac_res" >&5 -echo "${ECHO_T}$ac_res" >&6; } -else - # Is the header compilable? -{ echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_compiler=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6; } - -# Is the header present? -{ echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi - -rm -f conftest.err conftest.$ac_ext -{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6; } - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - - ;; -esac -{ echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -ac_res=`eval echo '${'$as_ac_Header'}'` - { echo "$as_me:$LINENO: result: $ac_res" >&5 -echo "${ECHO_T}$ac_res" >&6; } - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - SECTION_FLAGS='-ffunction-sections -fdata-sections' - - - cat >>confdefs.h <<\_ACEOF -#define HAVE_INT64_T 1 -_ACEOF - - - cat >>confdefs.h <<\_ACEOF -#define HAVE_ACOSF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_ASINF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_ATANF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_ATAN2F 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_CEILF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_COPYSIGN 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_COPYSIGNF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_COSF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_COSHF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_EXPF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_FABSF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_FINITE 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_FINITEF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_FLOORF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_FMODF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_FREXPF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_HYPOT 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_HYPOTF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_ISINF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_ISINFF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_ISNAN 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_ISNANF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_LOGF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_LOG10F 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_MODFF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_SINF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_SINHF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_SQRTF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_TANF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_TANHF 1 -_ACEOF - - ;; - *haiku*) - - - - - - - - - - - - - - - -for ac_header in nan.h ieeefp.h endian.h sys/isa_defs.h \ - machine/endian.h machine/param.h sys/machine.h sys/types.h \ - fp.h float.h endian.h inttypes.h locale.h float.h stdint.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - { echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -ac_res=`eval echo '${'$as_ac_Header'}'` - { echo "$as_me:$LINENO: result: $ac_res" >&5 -echo "${ECHO_T}$ac_res" >&6; } -else - # Is the header compilable? -{ echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_compiler=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6; } - -# Is the header present? -{ echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi - -rm -f conftest.err conftest.$ac_ext -{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6; } - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - - ;; -esac -{ echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -ac_res=`eval echo '${'$as_ac_Header'}'` - { echo "$as_me:$LINENO: result: $ac_res" >&5 -echo "${ECHO_T}$ac_res" >&6; } - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - SECTION_FLAGS='-ffunction-sections -fdata-sections' - - - cat >>confdefs.h <<\_ACEOF -#define HAVE_INT64_T 1 -_ACEOF - - - cat >>confdefs.h <<\_ACEOF -#define HAVE_ACOSF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_ASINF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_ATANF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_ATAN2F 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_CEILF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_COPYSIGN 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_COPYSIGNF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_COSF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_COSHF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_EXPF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_FABSF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_FINITE 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_FINITEF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_FLOORF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_FMODF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_FREXPF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_HYPOT 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_HYPOTF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_ISINF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_ISINFF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_ISNAN 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_ISNANF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_LOGF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_LOG10F 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_MODFF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_SINF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_SINHF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_SQRTF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_TANF 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_TANHF 1 -_ACEOF - - ;; *-hpux*) SECTION_FLAGS='-ffunction-sections -fdata-sections' diff --git a/gcc/libstdc++-v3/crossconfig.m4 b/gcc/libstdc++-v3/crossconfig.m4 index cb93c5e..fdaa9d6 100644 --- a/gcc/libstdc++-v3/crossconfig.m4 +++ b/gcc/libstdc++-v3/crossconfig.m4 @@ -99,48 +99,6 @@ case "${host}" in AC_DEFINE(HAVE_ISNANL) fi ;; - - *-haiku*) - AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \ - machine/endian.h machine/param.h sys/machine.h sys/types.h \ - fp.h float.h endian.h inttypes.h locale.h float.h stdint.h]) - SECTION_FLAGS='-ffunction-sections -fdata-sections' - AC_SUBST(SECTION_FLAGS) - - AC_DEFINE(HAVE_INT64_T) - - AC_DEFINE(HAVE_ACOSF) - AC_DEFINE(HAVE_ASINF) - AC_DEFINE(HAVE_ATANF) - AC_DEFINE(HAVE_ATAN2F) - AC_DEFINE(HAVE_CEILF) - AC_DEFINE(HAVE_COPYSIGN) - AC_DEFINE(HAVE_COPYSIGNF) - AC_DEFINE(HAVE_COSF) - AC_DEFINE(HAVE_COSHF) - AC_DEFINE(HAVE_EXPF) - AC_DEFINE(HAVE_FABSF) - AC_DEFINE(HAVE_FINITE) - AC_DEFINE(HAVE_FINITEF) - AC_DEFINE(HAVE_FLOORF) - AC_DEFINE(HAVE_FMODF) - AC_DEFINE(HAVE_FREXPF) - AC_DEFINE(HAVE_HYPOT) - AC_DEFINE(HAVE_HYPOTF) - AC_DEFINE(HAVE_ISINF) - AC_DEFINE(HAVE_ISINFF) - AC_DEFINE(HAVE_ISNAN) - AC_DEFINE(HAVE_ISNANF) - AC_DEFINE(HAVE_LOGF) - AC_DEFINE(HAVE_LOG10F) - AC_DEFINE(HAVE_MODFF) - AC_DEFINE(HAVE_SINF) - AC_DEFINE(HAVE_SINHF) - AC_DEFINE(HAVE_SQRTF) - AC_DEFINE(HAVE_TANF) - AC_DEFINE(HAVE_TANHF) - ;; - *-hpux*) SECTION_FLAGS='-ffunction-sections -fdata-sections' AC_SUBST(SECTION_FLAGS) diff --git a/gcc/libstdc++-v3/libsupc++/tinfo.cc b/gcc/libstdc++-v3/libsupc++/tinfo.cc index 4210a93..d939a3f 100644 --- a/gcc/libstdc++-v3/libsupc++/tinfo.cc +++ b/gcc/libstdc++-v3/libsupc++/tinfo.cc @@ -32,15 +32,6 @@ std::type_info:: ~type_info () { } -#ifdef __HAIKU__ -#ifndef __GXX_MERGED_TYPEINFO_NAMES -#define __GXX_MERGED_TYPEINFO_NAMES 0 -#endif -#ifndef __GXX_TYPEINFO_EQUALITY_INLINE -#define __GXX_TYPEINFO_EQUALITY_INLINE 0 -#endif -#endif - #if !__GXX_TYPEINFO_EQUALITY_INLINE // We can't rely on common symbols being shared between shared objects. diff --git a/gcc/libtool.m4 b/gcc/libtool.m4 index 5ac81d1..9abd147 100644 --- a/gcc/libtool.m4 +++ b/gcc/libtool.m4 @@ -1709,7 +1709,7 @@ else lt_cv_dlopen_libs= case $host_os in - beos* | haiku* ) + beos*) lt_cv_dlopen="load_add_on" lt_cv_dlopen_libs= lt_cv_dlopen_self=yes @@ -2171,7 +2171,7 @@ amigaos*) esac ;; -beos* | haiku*) +beos*) library_names_spec='${libname}${shared_ext}' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH @@ -2982,7 +2982,7 @@ aix[[4-9]]*) lt_cv_deplibs_check_method=pass_all ;; -beos* | haiku*) +beos*) lt_cv_deplibs_check_method=pass_all ;; @@ -3593,7 +3593,8 @@ m4_if([$1], [CXX], [ ;; esac ;; - beos* | haiku* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; mingw* | cygwin* | os2* | pw32* | cegcc*) @@ -3904,7 +3905,7 @@ m4_if([$1], [CXX], [ esac ;; - beos* | haiku* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; @@ -4418,8 +4419,8 @@ _LT_EOF ;; haiku*) - _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(link_all_deplibs, $1)=yes ;; interix[[3-9]]*) @@ -5778,8 +5779,8 @@ if test "$_lt_caught_CXX_error" != yes; then [ *** diff truncated: 10 lines dropped *** ] ############################################################################ Commit: 5cceb123aad7efbcbc58280acba17b81f9afaddb URL: http://cgit.haiku-os.org/buildtools/commit/?id=5cceb12 Author: Jérôme Duval <jerome.duval@xxxxxxxxx> Date: Sat Jan 7 15:45:05 2012 UTC Merge commit '4.5.3' ---------------------------------------------------------------------------- ############################################################################ Commit: 0a012359711bc4d73545fc882c46bbe1b97ebd54 URL: http://cgit.haiku-os.org/buildtools/commit/?id=0a01235 Author: Jérôme Duval <jerome.duval@xxxxxxxxx> Date: Sat Jan 7 15:48:31 2012 UTC import of gcc 4.6.2 (core and g++ only). ---------------------------------------------------------------------------- ############################################################################ Revision: btrev43024 Commit: 17b69b54d1cb4b7472efaed659ea272e0d95cf30 URL: http://cgit.haiku-os.org/buildtools/commit/?id=17b69b5 Author: Jérôme Duval <jerome.duval@xxxxxxxxx> Date: Sat Jan 7 15:59:47 2012 UTC Merge commit '4.6.2' Conflicts: gcc/gcc/configure ----------------------------------------------------------------------------