# Common parts for widely ported systems.
case ${target} in
+*-*-darwin*)
+ tm_file="${tm_file} darwin.h"
+ tm_p_file="${tm_p_file} darwin-protos.h"
+ tmake_file="t-darwin"
+ target_gtfiles="\$(srcdir)/config/darwin.c"
+ c_target_objs="darwin-c.o"
+ cxx_target_objs="darwin-c.o"
+ extra_parts="crt2.o"
+ extra_objs="darwin.o"
+ case ${enable_threads} in
+ "" | yes | posix) thread_file='posix' ;;
+ esac
+ ;;
+*-*-freebsd[12] | *-*-freebsd[12].* | *-*-freebsd*aout*)
+ # This is the place-holder for the generic a.out configuration
+ # of FreeBSD. No actual configuration resides here since
+ # there was only ever a bare-bones ix86 configuration for
+ # a.out and it exists solely in the machine-specific section.
+ # This place-holder must exist to avoid dropping into
+ # the generic ELF configuration of FreeBSD (i.e. it must be
+ # ordered before that section).
+ ;;
+*-*-freebsd*)
+ # This is the generic ELF configuration of FreeBSD. Later
+ # machine-specific sections may refine and add to this
+ # configuration.
+ #
+ # Due to tm_file entry ordering issues that vary between cpu
+ # architectures, we only define fbsd_tm_file to allow the
+ # machine-specific section to dictate the final order of all
+ # entries of tm_file with the minor exception that components
+ # of the tm_file set here will always be of the form:
+ #
+ # freebsd<version_number>.h [freebsd-<conf_option>.h ...] freebsd-spec.h freebsd.h
+ #
+ # The machine-specific section should not tamper with this
+ # ordering but may order all other entries of tm_file as it
+ # pleases around the provided core setting.
+ gas=yes
+ gnu_ld=yes
+ extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
+ case ${target} in
+ *-*-freebsd3 | *-*-freebsd[3].*) fbsd_tm_file="freebsd3.h";;
+ *-*-freebsd4 | *-*-freebsd[4].*) fbsd_tm_file="freebsd4.h";;
+ *-*-freebsd5 | *-*-freebsd[5].*) fbsd_tm_file="freebsd5.h";;
+ *-*-freebsd6 | *-*-freebsd[6].*) fbsd_tm_file="freebsd6.h";;
+ *) echo 'Please update *-*-freebsd* in gcc/config.gcc'; exit 1;;
+ esac
+ tmake_file="t-slibgcc-elf-ver t-freebsd"
+ case ${enable_threads} in
+ no)
+ fbsd_tm_file="${fbsd_tm_file} freebsd-nthr.h"
+ ;;
+ "" | yes | pthreads | posix)
+ thread_file='posix'
+ tmake_file="${tmake_file} t-freebsd-thread"
+ # Before 5.0, FreeBSD can't bind shared libraries to -lc
+ # when "optionally" threaded via weak pthread_* checks.
+ case ${target} in
+ *-*-freebsd[34] | *-*-freebsd[34].*)
+ tmake_file="${tmake_file} t-slibgcc-nolc-override"
+ ;;
+ esac
+ ;;
+ *)
+ echo 'Unknown thread configuration for FreeBSD'
+ exit 1
+ ;;
+ esac
+ fbsd_tm_file="${fbsd_tm_file} freebsd-spec.h freebsd.h"
+ ;;
*-*-linux*libc1* | *-*-linux*aout*)
# Avoid the generic linux case.
;;
*-*-linux*)
+ # Must come before *-*-gnu* (because of *-*-linux-gnu* systems).
extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
gas=yes
gnu_ld=yes
;;
esac
;;
-*-*-openbsd*)
- tmake_file="t-libc-ok t-openbsd t-libgcc-pic"
- case ${enable_threads} in
- yes)
- thread_file='posix'
- tmake_file="${tmake_file} t-openbsd-thread"
- ;;
- esac
- ;;
*-*-netbsd*)
tmake_file="t-slibgcc-elf-ver t-libc-ok t-netbsd t-libgcc-pic"
gas=yes
;;
esac
;;
-*-*-freebsd[12] | *-*-freebsd[12].* | *-*-freebsd*aout*)
- # This is the place-holder for the generic a.out configuration
- # of FreeBSD. No actual configuration resides here since
- # there was only ever a bare-bones ix86 configuration for
- # a.out and it exists solely in the machine-specific section.
- # This place-holder must exist to avoid dropping into
- # the generic ELF configuration of FreeBSD (i.e. it must be
- # ordered before that section).
- ;;
-*-*-freebsd*)
- # This is the generic ELF configuration of FreeBSD. Later
- # machine-specific sections may refine and add to this
- # configuration.
- #
- # Due to tm_file entry ordering issues that vary between cpu
- # architectures, we only define fbsd_tm_file to allow the
- # machine-specific section to dictate the final order of all
- # entries of tm_file with the minor exception that components
- # of the tm_file set here will always be of the form:
- #
- # freebsd<version_number>.h [freebsd-<conf_option>.h ...] freebsd-spec.h freebsd.h
- #
- # The machine-specific section should not tamper with this
- # ordering but may order all other entries of tm_file as it
- # pleases around the provided core setting.
- gas=yes
- gnu_ld=yes
- extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
- case ${target} in
- *-*-freebsd3 | *-*-freebsd[3].*) fbsd_tm_file="freebsd3.h";;
- *-*-freebsd4 | *-*-freebsd[4].*) fbsd_tm_file="freebsd4.h";;
- *-*-freebsd5 | *-*-freebsd[5].*) fbsd_tm_file="freebsd5.h";;
- *-*-freebsd6 | *-*-freebsd[6].*) fbsd_tm_file="freebsd6.h";;
- *) echo 'Please update *-*-freebsd* in gcc/config.gcc'; exit 1;;
- esac
- tmake_file="t-slibgcc-elf-ver t-freebsd"
+*-*-openbsd*)
+ tmake_file="t-libc-ok t-openbsd t-libgcc-pic"
case ${enable_threads} in
- no)
- fbsd_tm_file="${fbsd_tm_file} freebsd-nthr.h"
- ;;
- "" | yes | pthreads | posix)
+ yes)
thread_file='posix'
- tmake_file="${tmake_file} t-freebsd-thread"
- # Before 5.0, FreeBSD can't bind shared libraries to -lc
- # when "optionally" threaded via weak pthread_* checks.
- case ${target} in
- *-*-freebsd[34] | *-*-freebsd[34].*)
- tmake_file="${tmake_file} t-slibgcc-nolc-override"
- ;;
- esac
- ;;
- *)
- echo 'Unknown thread configuration for FreeBSD'
- exit 1
+ tmake_file="${tmake_file} t-openbsd-thread"
;;
esac
- fbsd_tm_file="${fbsd_tm_file} freebsd-spec.h freebsd.h"
- ;;
-*-*-darwin*)
- tm_file="${tm_file} darwin.h"
- tm_p_file="${tm_p_file} darwin-protos.h"
- tmake_file="t-darwin"
- target_gtfiles="\$(srcdir)/config/darwin.c"
- c_target_objs="darwin-c.o"
- cxx_target_objs="darwin-c.o"
- extra_parts="crt2.o"
- extra_objs="darwin.o"
- case ${enable_threads} in
- "" | yes | posix) thread_file='posix' ;;
- esac
;;
*-*-vxworks*)
tmake_file=t-vxworks