1# GCC target-specific configuration file. 2# Copyright (C) 1997-2015 Free Software Foundation, Inc. 3 4#This file is part of GCC. 5 6#GCC is free software; you can redistribute it and/or modify it under 7#the terms of the GNU General Public License as published by the Free 8#Software Foundation; either version 3, or (at your option) any later 9#version. 10 11#GCC is distributed in the hope that it will be useful, but WITHOUT 12#ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13#FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14#for more details. 15 16#You should have received a copy of the GNU General Public License 17#along with GCC; see the file COPYING3. If not see 18#<http://www.gnu.org/licenses/>. 19 20# This is the GCC target-specific configuration file 21# where a configuration type is mapped to different system-specific 22# definitions and files. This is invoked by the autoconf-generated 23# configure script. Putting it in a separate shell file lets us skip 24# running autoconf when modifying target-specific information. 25 26# When you change the cases in the OS or target switches, consider 27# updating ../libgcc/config.host also. 28 29# This file switches on the shell variable ${target}, and also uses the 30# following shell variables: 31# 32# with_* Various variables as set by configure. 33# 34# enable_threads Either the name, yes or no depending on whether 35# threads support was requested. 36# 37# default_use_cxa_atexit 38# The default value for the $enable___cxa_atexit 39# variable. enable___cxa_atexit needs to be set to 40# "yes" for the correct operation of C++ destructors 41# but it relies upon the presence of a non-standard C 42# library function called __cxa_atexit. 43# Since not all C libraries provide __cxa_atexit the 44# default value of $default_use_cxa_atexit is set to 45# "no" except for targets which are known to be OK. 46# 47# default_gnu_indirect_function 48# The default value for the $enable_gnu_indirect_function 49# variable. enable_gnu_indirect_function relies 50# upon the presence of a non-standard gnu ifunc support 51# in the assembler, linker and dynamic linker. 52# Since not all libraries provide the dynamic linking 53# support, the default value of 54# $default_gnu_indirect_function is set to 55# "no" except for targets which are known to be OK. 56# 57# gas_flag Either yes or no depending on whether GNU as was 58# requested. 59# 60# gnu_ld_flag Either yes or no depending on whether GNU ld was 61# requested. 62 63# This file sets the following shell variables for use by the 64# autoconf-generated configure script: 65# 66# cpu_type The name of the cpu, if different from the first 67# chunk of the canonical target name. 68# 69# tm_defines List of target macros to define for all compilations. 70# 71# tm_file A list of target macro files, if different from 72# "$cpu_type/$cpu_type.h". Usually it's constructed 73# per target in a way like this: 74# tm_file="${tm_file} dbxelf.h elfos.h ${cpu_type.h}/elf.h" 75# Note that the preferred order is: 76# - specific target header "${cpu_type}/${cpu_type.h}" 77# - generic headers like dbxelf.h elfos.h, etc. 78# - specializing target headers like ${cpu_type.h}/elf.h 79# This helps to keep OS specific stuff out of the CPU 80# defining header ${cpu_type}/${cpu_type.h}. 81# 82# It is possible to include automatically-generated 83# build-directory files by prefixing them with "./". 84# All other files should relative to $srcdir/config. 85# 86# tm_p_file Location of file with declarations for functions 87# in $out_file. 88# 89# out_file The name of the machine description C support 90# file, if different from "$cpu_type/$cpu_type.c". 91# 92# common_out_file The name of the source file for code shared between 93# the compiler proper and the driver. 94# 95# md_file The name of the machine-description file, if 96# different from "$cpu_type/$cpu_type.md". 97# 98# tmake_file A list of machine-description-specific 99# makefile-fragments, if different from 100# "$cpu_type/t-$cpu_type". 101# 102# extra_modes The name of the file containing a list of extra 103# machine modes, if necessary and different from 104# "$cpu_type/$cpu_type-modes.def". 105# 106# extra_objs List of extra objects that should be linked into 107# the compiler proper (cc1, cc1obj, cc1plus) 108# depending on target. 109# 110# extra_gcc_objs List of extra objects that should be linked into 111# the compiler driver (gcc) depending on target. 112# 113# extra_headers List of used header files from the directory 114# config/${cpu_type}. 115# 116# user_headers_inc_next_pre 117# List of header file names of internal gcc header 118# files, which should be prefixed by an include_next. 119# user_headers_inc_next_post 120# List of header file names of internal gcc header 121# files, which should be postfixed by an include_next. 122# use_gcc_tgmath If set, add tgmath.h to the list of used header 123# files. 124# 125# use_gcc_stdint If "wrap", install a version of stdint.h that 126# wraps the system's copy for hosted compilations; 127# if "provide", provide a version of systems without 128# such a system header; otherwise "none", do not 129# provide such a header at all. 130# 131# extra_programs List of extra executables compiled for this target 132# machine, used when linking. 133# 134# extra_options List of target-dependent .opt files. 135# 136# c_target_objs List of extra target-dependent objects that be 137# linked into the C compiler only. 138# 139# cxx_target_objs List of extra target-dependent objects that be 140# linked into the C++ compiler only. 141# 142# fortran_target_objs List of extra target-dependent objects that be 143# linked into the fortran compiler only. 144# 145# target_gtfiles List of extra source files with type information. 146# 147# xm_defines List of macros to define when compiling for the 148# target machine. 149# 150# xm_file List of files to include when compiling for the 151# target machine. 152# 153# use_collect2 Set to yes or no, depending on whether collect2 154# will be used. 155# 156# target_cpu_default Set to override the default target model. 157# 158# gdb_needs_out_file_path 159# Set to yes if gdb needs a dir command with 160# `dirname $out_file`. 161# 162# thread_file Set to control which thread package to use. 163# 164# gas Set to yes or no depending on whether the target 165# system normally uses GNU as. 166# 167# configure_default_options 168# Set to an initializer for configure_default_options 169# in configargs.h, based on --with-cpu et cetera. 170# 171# native_system_header_dir 172# Where system header files are found for this 173# target. This defaults to /usr/include. If 174# the --with-sysroot configure option or the 175# --sysroot command line option is used this 176# will be relative to the sysroot. 177# target_type_format_char 178# The default character to be used for formatting 179# the attribute in a 180# .type symbol_name, ${t_t_f_c}<property> 181# directive. 182 183# The following variables are used in each case-construct to build up the 184# outgoing variables: 185# 186# gnu_ld Set to yes or no depending on whether the target 187# system normally uses GNU ld. 188# 189# target_has_targetcm Set to yes or no depending on whether the target 190# has its own definition of targetcm. 191# 192# target_has_targetm_common Set to yes or no depending on whether the 193# target has its own definition of targetm_common. 194 195out_file= 196common_out_file= 197tmake_file= 198extra_headers= 199user_headers_inc_next_pre= 200user_headers_inc_next_post= 201use_gcc_tgmath=yes 202use_gcc_stdint=none 203extra_programs= 204extra_objs= 205extra_gcc_objs= 206extra_options= 207c_target_objs= 208cxx_target_objs= 209fortran_target_objs= 210target_has_targetcm=no 211target_has_targetm_common=yes 212tm_defines= 213xm_defines= 214# Set this to force installation and use of collect2. 215use_collect2= 216# Set this to override the default target model. 217target_cpu_default= 218# Set this if gdb needs a dir command with `dirname $out_file` 219gdb_needs_out_file_path= 220# Set this to control which thread package will be used. 221thread_file= 222# Reinitialize these from the flag values every loop pass, since some 223# configure entries modify them. 224gas="$gas_flag" 225gnu_ld="$gnu_ld_flag" 226default_use_cxa_atexit=no 227default_gnu_indirect_function=no 228target_gtfiles= 229need_64bit_isa= 230native_system_header_dir=/usr/include 231target_type_format_char='@' 232 233# Don't carry these over build->host->target. Please. 234xm_file= 235md_file= 236 237# Obsolete configurations. 238case ${target} in 239# Currently there are no obsolete targets. 240 nothing \ 241 ) 242 if test "x$enable_obsolete" != xyes; then 243 echo "*** Configuration ${target} is obsolete." >&2 244 echo "*** Specify --enable-obsolete to build it anyway." >&2 245 echo "*** Support will be REMOVED in the next major release of GCC," >&2 246 echo "*** unless a maintainer comes forward." >&2 247 exit 1 248 fi;; 249esac 250 251# Unsupported targets list. Do not put an entry in this list unless 252# it would otherwise be caught by a more permissive pattern. The list 253# should be in alphabetical order. 254case ${target} in 255 # Avoid special cases that are not obsolete 256 arm*-*-*eabi* \ 257 ) 258 ;; 259 arm*-wince-pe* \ 260 | arm*-*-ecos-elf \ 261 | arm*-*-elf \ 262 | arm*-*-linux* \ 263 | arm*-*-uclinux* \ 264 | i[34567]86-go32-* \ 265 | i[34567]86-*-go32* \ 266 | m68k-*-uclinuxoldabi* \ 267 | mips64orion*-*-rtems* \ 268 | pdp11-*-bsd \ 269 | sparc-hal-solaris2* \ 270 | thumb-*-* \ 271 | *-*-freebsd[12] | *-*-freebsd[12].* \ 272 | *-*-freebsd*aout* \ 273 | *-*-linux*aout* \ 274 | *-*-linux*coff* \ 275 | *-*-linux*libc1* \ 276 | *-*-linux*oldld* \ 277 | *-*-rtemsaout* \ 278 | *-*-rtemscoff* \ 279 | *-*-solaris2 \ 280 | *-*-solaris2.[0-9] \ 281 | *-*-solaris2.[0-9].* \ 282 | *-*-sysv* \ 283 | vax-*-vms* \ 284 ) 285 echo "*** Configuration ${target} not supported" 1>&2 286 exit 1 287 ;; 288esac 289 290# Set default cpu_type, tm_file, tm_p_file and xm_file so it can be 291# updated in each machine entry. Also set default extra_headers for some 292# machines. 293tm_p_file= 294cpu_type=`echo ${target} | sed 's/-.*$//'` 295cpu_is_64bit= 296case ${target} in 297m32c*-*-*) 298 cpu_type=m32c 299 tmake_file=m32c/t-m32c 300 target_has_targetm_common=no 301 ;; 302aarch64*-*-*) 303 cpu_type=aarch64 304 extra_headers="arm_neon.h arm_acle.h" 305 extra_objs="aarch64-builtins.o aarch-common.o" 306 target_gtfiles="\$(srcdir)/config/aarch64/aarch64-builtins.c" 307 target_has_targetm_common=yes 308 ;; 309alpha*-*-*) 310 cpu_type=alpha 311 extra_options="${extra_options} g.opt" 312 ;; 313am33_2.0-*-linux*) 314 cpu_type=mn10300 315 ;; 316arc*-*-*) 317 cpu_type=arc 318 ;; 319arm*-*-*) 320 cpu_type=arm 321 extra_objs="arm-builtins.o aarch-common.o" 322 extra_headers="mmintrin.h arm_neon.h arm_acle.h" 323 target_type_format_char='%' 324 c_target_objs="arm-c.o" 325 cxx_target_objs="arm-c.o" 326 extra_options="${extra_options} arm/arm-tables.opt" 327 target_gtfiles="\$(srcdir)/config/arm/arm-builtins.c" 328 ;; 329avr-*-*) 330 cpu_type=avr 331 c_target_objs="avr-c.o" 332 cxx_target_objs="avr-c.o" 333 ;; 334bfin*-*) 335 cpu_type=bfin 336 ;; 337crisv32-*) 338 cpu_type=cris 339 ;; 340frv*) cpu_type=frv 341 extra_options="${extra_options} g.opt" 342 ;; 343moxie*) cpu_type=moxie 344 target_has_targetm_common=no 345 ;; 346fido-*-*) 347 cpu_type=m68k 348 extra_headers=math-68881.h 349 extra_options="${extra_options} m68k/m68k-tables.opt" 350 ;; 351i[34567]86-*-*) 352 cpu_type=i386 353 c_target_objs="i386-c.o" 354 cxx_target_objs="i386-c.o" 355 extra_options="${extra_options} fused-madd.opt" 356 extra_headers="cpuid.h mmintrin.h mm3dnow.h xmmintrin.h emmintrin.h 357 pmmintrin.h tmmintrin.h ammintrin.h smmintrin.h 358 nmmintrin.h bmmintrin.h fma4intrin.h wmmintrin.h 359 immintrin.h x86intrin.h avxintrin.h xopintrin.h 360 ia32intrin.h cross-stdarg.h lwpintrin.h popcntintrin.h 361 lzcntintrin.h bmiintrin.h bmi2intrin.h tbmintrin.h 362 avx2intrin.h avx512fintrin.h fmaintrin.h f16cintrin.h 363 rtmintrin.h xtestintrin.h rdseedintrin.h prfchwintrin.h 364 adxintrin.h fxsrintrin.h xsaveintrin.h xsaveoptintrin.h 365 avx512cdintrin.h avx512erintrin.h avx512pfintrin.h 366 shaintrin.h clflushoptintrin.h xsavecintrin.h 367 xsavesintrin.h avx512dqintrin.h avx512bwintrin.h 368 avx512vlintrin.h avx512vlbwintrin.h avx512vldqintrin.h 369 avx512ifmaintrin.h avx512ifmavlintrin.h avx512vbmiintrin.h 370 avx512vbmivlintrin.h clwbintrin.h pcommitintrin.h mwaitxintrin.h" 371 ;; 372x86_64-*-*) 373 cpu_type=i386 374 c_target_objs="i386-c.o" 375 cxx_target_objs="i386-c.o" 376 extra_options="${extra_options} fused-madd.opt" 377 extra_headers="cpuid.h mmintrin.h mm3dnow.h xmmintrin.h emmintrin.h 378 pmmintrin.h tmmintrin.h ammintrin.h smmintrin.h 379 nmmintrin.h bmmintrin.h fma4intrin.h wmmintrin.h 380 immintrin.h x86intrin.h avxintrin.h xopintrin.h 381 ia32intrin.h cross-stdarg.h lwpintrin.h popcntintrin.h 382 lzcntintrin.h bmiintrin.h tbmintrin.h bmi2intrin.h 383 avx2intrin.h avx512fintrin.h fmaintrin.h f16cintrin.h 384 rtmintrin.h xtestintrin.h rdseedintrin.h prfchwintrin.h 385 adxintrin.h fxsrintrin.h xsaveintrin.h xsaveoptintrin.h 386 avx512cdintrin.h avx512erintrin.h avx512pfintrin.h 387 shaintrin.h clflushoptintrin.h xsavecintrin.h 388 xsavesintrin.h avx512dqintrin.h avx512bwintrin.h 389 avx512vlintrin.h avx512vlbwintrin.h avx512vldqintrin.h 390 avx512ifmaintrin.h avx512ifmavlintrin.h avx512vbmiintrin.h 391 avx512vbmivlintrin.h clwbintrin.h pcommitintrin.h mwaitxintrin.h" 392 ;; 393ia64-*-*) 394 extra_headers=ia64intrin.h 395 extra_options="${extra_options} g.opt fused-madd.opt" 396 ;; 397hppa*-*-*) 398 cpu_type=pa 399 ;; 400lm32*) 401 extra_options="${extra_options} g.opt" 402 ;; 403m32r*-*-*) 404 cpu_type=m32r 405 extra_options="${extra_options} g.opt" 406 ;; 407m68k-*-*) 408 extra_headers=math-68881.h 409 extra_options="${extra_options} m68k/m68k-tables.opt" 410 ;; 411microblaze*-*-*) 412 cpu_type=microblaze 413 extra_options="${extra_options} g.opt" 414 ;; 415mips*-*-*) 416 cpu_type=mips 417 extra_headers="loongson.h" 418 extra_options="${extra_options} g.opt mips/mips-tables.opt" 419 ;; 420nds32*) 421 cpu_type=nds32 422 extra_headers="nds32_intrinsic.h" 423 extra_objs="nds32-cost.o nds32-intrinsic.o nds32-isr.o nds32-md-auxiliary.o nds32-pipelines-auxiliary.o nds32-predicates.o nds32-memory-manipulation.o nds32-fp-as-gp.o" 424 ;; 425nios2-*-*) 426 cpu_type=nios2 427 extra_options="${extra_options} g.opt" 428 ;; 429nvptx-*-*) 430 cpu_type=nvptx 431 ;; 432powerpc*-*-*) 433 cpu_type=rs6000 434 extra_headers="ppc-asm.h altivec.h spe.h ppu_intrinsics.h paired.h spu2vmx.h vec_types.h si2vmx.h htmintrin.h htmxlintrin.h" 435 case x$with_cpu in 436 xpowerpc64|xdefault64|x6[23]0|x970|xG5|xpower[345678]|xpower6x|xrs64a|xcell|xa2|xe500mc64|xe5500|Xe6500) 437 cpu_is_64bit=yes 438 ;; 439 esac 440 extra_options="${extra_options} g.opt fused-madd.opt rs6000/rs6000-tables.opt" 441 ;; 442rs6000*-*-*) 443 extra_options="${extra_options} g.opt fused-madd.opt rs6000/rs6000-tables.opt" 444 ;; 445sparc*-*-*) 446 cpu_type=sparc 447 c_target_objs="sparc-c.o" 448 cxx_target_objs="sparc-c.o" 449 extra_headers="visintrin.h" 450 ;; 451spu*-*-*) 452 cpu_type=spu 453 ;; 454s390*-*-*) 455 cpu_type=s390 456 extra_options="${extra_options} fused-madd.opt" 457 extra_headers="s390intrin.h htmintrin.h htmxlintrin.h vecintrin.h" 458 ;; 459# Note the 'l'; we need to be able to match e.g. "shle" or "shl". 460sh[123456789lbe]*-*-* | sh-*-*) 461 cpu_type=sh 462 extra_options="${extra_options} fused-madd.opt" 463 extra_objs="${extra_objs} sh_treg_combine.o sh-mem.o sh_optimize_sett_clrt.o" 464 ;; 465v850*-*-*) 466 cpu_type=v850 467 ;; 468tic6x-*-*) 469 cpu_type=c6x 470 extra_headers="c6x_intrinsics.h" 471 extra_options="${extra_options} c6x/c6x-tables.opt" 472 ;; 473xtensa*-*-*) 474 extra_options="${extra_options} fused-madd.opt" 475 ;; 476tilegx*-*-*) 477 cpu_type=tilegx 478 ;; 479tilepro*-*-*) 480 cpu_type=tilepro 481 ;; 482esac 483 484tm_file=${cpu_type}/${cpu_type}.h 485if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-protos.h 486then 487 tm_p_file=${cpu_type}/${cpu_type}-protos.h 488fi 489extra_modes= 490if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-modes.def 491then 492 extra_modes=${cpu_type}/${cpu_type}-modes.def 493fi 494if test -f ${srcdir}/config/${cpu_type}/${cpu_type}.opt 495then 496 extra_options="${extra_options} ${cpu_type}/${cpu_type}.opt" 497fi 498 499case ${target} in 500aarch64*-*-*) 501 tm_p_file="${tm_p_file} arm/aarch-common-protos.h" 502 case ${with_abi} in 503 "") 504 if test "x$with_multilib_list" = xilp32; then 505 tm_file="aarch64/biarchilp32.h ${tm_file}" 506 else 507 tm_file="aarch64/biarchlp64.h ${tm_file}" 508 fi 509 ;; 510 ilp32) 511 tm_file="aarch64/biarchilp32.h ${tm_file}" 512 ;; 513 lp64) 514 tm_file="aarch64/biarchlp64.h ${tm_file}" 515 ;; 516 *) 517 echo "Unknown ABI used in --with-abi=$with_abi" 518 exit 1 519 esac 520 ;; 521i[34567]86-*-*) 522 if test "x$with_abi" != x; then 523 echo "This target does not support --with-abi." 524 exit 1 525 fi 526 if test "x$enable_cld" = xyes; then 527 tm_defines="${tm_defines} USE_IX86_CLD=1" 528 fi 529 if test "x$enable_frame_pointer" = xyes; then 530 tm_defines="${tm_defines} USE_IX86_FRAME_POINTER=1" 531 fi 532 tm_file="vxworks-dummy.h ${tm_file}" 533 ;; 534x86_64-*-*) 535 case ${with_abi} in 536 "") 537 if test "x$with_multilib_list" = xmx32; then 538 tm_file="i386/biarchx32.h ${tm_file}" 539 else 540 tm_file="i386/biarch64.h ${tm_file}" 541 fi 542 ;; 543 64 | m64) 544 tm_file="i386/biarch64.h ${tm_file}" 545 ;; 546 x32 | mx32) 547 tm_file="i386/biarchx32.h ${tm_file}" 548 ;; 549 *) 550 echo "Unknown ABI used in --with-abi=$with_abi" 551 exit 1 552 esac 553 if test "x$enable_cld" = xyes; then 554 tm_defines="${tm_defines} USE_IX86_CLD=1" 555 fi 556 if test "x$enable_frame_pointer" = xyes; then 557 tm_defines="${tm_defines} USE_IX86_FRAME_POINTER=1" 558 fi 559 tm_file="vxworks-dummy.h ${tm_file}" 560 ;; 561arm*-*-*) 562 tm_p_file="${tm_p_file} arm/aarch-common-protos.h" 563 tm_file="vxworks-dummy.h ${tm_file}" 564 ;; 565mips*-*-* | sh*-*-* | sparc*-*-*) 566 tm_file="vxworks-dummy.h ${tm_file}" 567 ;; 568esac 569 570# On a.out targets, we need to use collect2. 571case ${target} in 572*-*-*aout*) 573 use_collect2=yes 574 ;; 575esac 576 577# Common C libraries. 578tm_defines="$tm_defines LIBC_GLIBC=1 LIBC_UCLIBC=2 LIBC_BIONIC=3" 579 580# 32-bit x86 processors supported by --with-arch=. Each processor 581# MUST be separated by exactly one space. 582x86_archs="athlon athlon-4 athlon-fx athlon-mp athlon-tbird \ 583athlon-xp k6 k6-2 k6-3 geode c3 c3-2 winchip-c6 winchip2 i386 i486 \ 584i586 i686 pentium pentium-m pentium-mmx pentium2 pentium3 pentium3m \ 585pentium4 pentium4m pentiumpro prescott" 586 587# 64-bit x86 processors supported by --with-arch=. Each processor 588# MUST be separated by exactly one space. 589x86_64_archs="amdfam10 athlon64 athlon64-sse3 barcelona bdver1 bdver2 \ 590bdver3 bdver4 btver1 btver2 k8 k8-sse3 opteron opteron-sse3 nocona \ 591core2 corei7 corei7-avx core-avx-i core-avx2 atom slm nehalem westmere \ 592sandybridge ivybridge haswell broadwell bonnell silvermont knl x86-64 \ 593native" 594 595# Additional x86 processors supported by --with-cpu=. Each processor 596# MUST be separated by exactly one space. 597x86_cpus="generic intel" 598 599# Common parts for widely ported systems. 600case ${target} in 601*-*-darwin*) 602 tmake_file="t-darwin ${cpu_type}/t-darwin" 603 tm_file="${tm_file} darwin.h" 604 case ${target} in 605 *-*-darwin9*) 606 tm_file="${tm_file} darwin9.h" 607 ;; 608 *-*-darwin[12][0-9]*) 609 tm_file="${tm_file} darwin9.h darwin10.h" 610 ;; 611 esac 612 tm_file="${tm_file} ${cpu_type}/darwin.h" 613 tm_p_file="${tm_p_file} darwin-protos.h" 614 target_gtfiles="\$(srcdir)/config/darwin.c" 615 extra_options="${extra_options} darwin.opt" 616 c_target_objs="${c_target_objs} darwin-c.o" 617 cxx_target_objs="${cxx_target_objs} darwin-c.o" 618 fortran_target_objs="darwin-f.o" 619 target_has_targetcm=yes 620 extra_objs="darwin.o" 621 extra_gcc_objs="darwin-driver.o" 622 default_use_cxa_atexit=yes 623 use_gcc_stdint=wrap 624 case ${enable_threads} in 625 "" | yes | posix) thread_file='posix' ;; 626 esac 627 ;; 628*-*-dragonfly*) 629 gas=yes 630 gnu_ld=yes 631 tmake_file="t-slibgcc" 632 case ${enable_threads} in 633 "" | yes | posix) 634 thread_file='posix' 635 ;; 636 no | single) 637 # Let these non-posix thread selections fall through if requested 638 ;; 639 *) 640 echo 'Unknown thread configuration for DragonFly BSD' 641 exit 1 642 ;; 643 esac 644 extra_options="$extra_options rpath.opt dragonfly.opt" 645 default_use_cxa_atexit=yes 646 use_gcc_stdint=wrap 647 ;; 648*-*-freebsd*) 649 # This is the generic ELF configuration of FreeBSD. Later 650 # machine-specific sections may refine and add to this 651 # configuration. 652 # 653 # Due to tm_file entry ordering issues that vary between cpu 654 # architectures, we only define fbsd_tm_file to allow the 655 # machine-specific section to dictate the final order of all 656 # entries of tm_file with the minor exception that components 657 # of the tm_file set here will always be of the form: 658 # 659 # freebsd<version_number>.h [freebsd-<conf_option>.h ...] freebsd-spec.h freebsd.h 660 # 661 # The machine-specific section should not tamper with this 662 # ordering but may order all other entries of tm_file as it 663 # pleases around the provided core setting. 664 gas=yes 665 gnu_ld=yes 666 fbsd_major=`echo ${target} | sed -e 's/.*freebsd//g' | sed -e 's/\..*//g'` 667 tm_defines="${tm_defines} FBSD_MAJOR=${fbsd_major}" 668 tmake_file="t-slibgcc" 669 case ${enable_threads} in 670 no) 671 fbsd_tm_file="${fbsd_tm_file} freebsd-nthr.h" 672 ;; 673 "" | yes | posix) 674 thread_file='posix' 675 ;; 676 *) 677 echo 'Unknown thread configuration for FreeBSD' 678 exit 1 679 ;; 680 esac 681 fbsd_tm_file="${fbsd_tm_file} freebsd-spec.h freebsd.h freebsd-stdint.h" 682 extra_options="$extra_options rpath.opt freebsd.opt" 683 case ${target} in 684 *-*-freebsd[345].*) 685 :;; 686 *) 687 default_use_cxa_atexit=yes;; 688 esac 689 use_gcc_stdint=wrap 690 ;; 691*-*-haiku*) 692 # This is the generic ELF configuration of Haiku. Later 693 # machine-specific sections may refine and add to this 694 # configuration. 695 # 696 gas=yes 697 gnu_ld=yes 698 tmake_file="t-slibgcc" 699 case ${enable_threads} in 700 "" | yes | posix) thread_file='posix' ;; 701 esac 702 default_use_cxa_atexit=yes 703 ;; 704*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu | *-*-gnu* | *-*-kopensolaris*-gnu) 705 extra_options="$extra_options gnu-user.opt" 706 gas=yes 707 gnu_ld=yes 708 case ${enable_threads} in 709 "" | yes | posix) thread_file='posix' ;; 710 esac 711 tmake_file="t-slibgcc" 712 case $target in 713 *-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu | *-*-kopensolaris*-gnu) 714 :;; 715 *-*-gnu*) 716 native_system_header_dir=/include 717 ;; 718 esac 719 # Linux C libraries selection switch: glibc / uclibc / bionic. 720 # uclibc and bionic aren't usable for GNU/Hurd and neither for GNU/k*BSD. 721 case $target in 722 *linux*) 723 tm_p_file="${tm_p_file} linux-protos.h" 724 tmake_file="${tmake_file} t-linux" 725 extra_objs="${extra_objs} linux.o" 726 extra_options="${extra_options} linux.opt" 727 ;; 728 esac 729 case $target in 730 *-*-*android*) 731 tm_defines="$tm_defines DEFAULT_LIBC=LIBC_BIONIC" 732 ;; 733 *-*-*uclibc*) 734 tm_defines="$tm_defines DEFAULT_LIBC=LIBC_UCLIBC" 735 ;; 736 *) 737 tm_defines="$tm_defines DEFAULT_LIBC=LIBC_GLIBC" 738 ;; 739 esac 740 # Assume that glibc or uClibc or Bionic are being used and so __cxa_atexit 741 # is provided. 742 default_use_cxa_atexit=yes 743 use_gcc_tgmath=no 744 use_gcc_stdint=wrap 745 # Enable compilation for Android by default for *android* targets. 746 case $target in 747 *-*-*android*) 748 tm_defines="$tm_defines ANDROID_DEFAULT=1" 749 ;; 750 *) 751 tm_defines="$tm_defines ANDROID_DEFAULT=0" 752 ;; 753 esac 754 c_target_objs="${c_target_objs} glibc-c.o" 755 cxx_target_objs="${cxx_target_objs} glibc-c.o" 756 tmake_file="${tmake_file} t-glibc" 757 target_has_targetcm=yes 758 ;; 759*-*-netbsd*) 760 tmake_file="t-slibgcc" 761 gas=yes 762 gnu_ld=yes 763 764 # NetBSD 2.0 and later get POSIX threads enabled by default. 765 # Allow them to be explicitly enabled on any other version. 766 case ${enable_threads} in 767 "") 768 case ${target} in 769 *-*-netbsd[2-9]* | *-*-netbsdelf[2-9]*) 770 thread_file='posix' 771 tm_defines="${tm_defines} NETBSD_ENABLE_PTHREADS" 772 ;; 773 esac 774 ;; 775 yes | posix) 776 thread_file='posix' 777 tm_defines="${tm_defines} NETBSD_ENABLE_PTHREADS" 778 ;; 779 esac 780 781 # NetBSD 2.0 and later provide __cxa_atexit(), which we use by 782 # default (unless overridden by --disable-__cxa_atexit). 783 case ${target} in 784 *-*-netbsd[2-9]* | *-*-netbsdelf[2-9]*) 785 default_use_cxa_atexit=yes 786 ;; 787 esac 788 ;; 789*-*-openbsd*) 790 tmake_file="t-openbsd" 791 case ${enable_threads} in 792 yes) 793 thread_file='posix' 794 ;; 795 esac 796 case ${target} in 797 *-*-openbsd2.*|*-*-openbsd3.[012]) 798 tm_defines="${tm_defines} HAS_LIBC_R=1" ;; 799 esac 800 case ${target} in 801 *-*-openbsd4.[3-9]|*-*-openbsd[5-9]*) 802 default_use_cxa_atexit=yes 803 ;; 804 esac 805 ;; 806*-*-rtems*) 807 case ${enable_threads} in 808 "" | yes | rtems) thread_file='rtems' ;; 809 posix) thread_file='posix' ;; 810 no) ;; 811 *) 812 echo 'Unknown thread configuration for RTEMS' 813 exit 1 814 ;; 815 esac 816 tmake_file="${tmake_file} t-rtems" 817 extra_options="${extra_options} rtems.opt" 818 default_use_cxa_atexit=yes 819 use_gcc_stdint=wrap 820 ;; 821*-*-uclinux*) 822 extra_options="$extra_options gnu-user.opt" 823 use_gcc_stdint=wrap 824 tm_defines="$tm_defines DEFAULT_LIBC=LIBC_UCLIBC SINGLE_LIBC" 825 ;; 826*-*-rdos*) 827 use_gcc_stdint=wrap 828 ;; 829*-*-solaris2*) 830 # i?86-*-solaris2* needs to insert headers between cpu default and 831 # Solaris 2 specific ones. 832 sol2_tm_file_head="dbxelf.h elfos.h ${cpu_type}/sysv4.h" 833 sol2_tm_file_tail="${cpu_type}/sol2.h sol2.h" 834 sol2_tm_file="${sol2_tm_file_head} ${sol2_tm_file_tail}" 835 case ${target} in 836 *-*-solaris2.1[2-9]*) 837 # __cxa_atexit was introduced in Solaris 12. 838 default_use_cxa_atexit=yes 839 ;; 840 esac 841 use_gcc_stdint=wrap 842 if test x$gnu_ld = xyes; then 843 tm_file="usegld.h ${tm_file}" 844 fi 845 if test x$gas = xyes; then 846 tm_file="usegas.h ${tm_file}" 847 fi 848 tm_p_file="${tm_p_file} sol2-protos.h" 849 tmake_file="${tmake_file} t-sol2 t-slibgcc" 850 c_target_objs="${c_target_objs} sol2-c.o" 851 cxx_target_objs="${cxx_target_objs} sol2-c.o sol2-cxx.o" 852 extra_objs="sol2.o sol2-stubs.o" 853 extra_options="${extra_options} sol2.opt" 854 case ${enable_threads}:${have_pthread_h}:${have_thread_h} in 855 "":yes:* | yes:yes:* ) 856 thread_file=posix 857 ;; 858 esac 859 ;; 860*-*-*vms*) 861 extra_options="${extra_options} vms/vms.opt" 862 xmake_file=vms/x-vms 863 tmake_file="vms/t-vms t-slibgcc" 864 extra_objs="vms.o" 865 target_gtfiles="$target_gtfiles \$(srcdir)/config/vms/vms.c" 866 tm_p_file="${tm_p_file} vms/vms-protos.h" 867 xm_file="vms/xm-vms.h" 868 c_target_objs="vms-c.o" 869 cxx_target_objs="vms-c.o" 870 fortran_target_objs="vms-f.o" 871 use_gcc_stdint=provide 872 tm_file="${tm_file} vms/vms-stdint.h" 873 if test x$gnu_ld != xyes; then 874 # Build wrappers for native case. 875 extra_programs="ld\$(exeext) ar\$(exeext)" 876 tmake_file="$tmake_file vms/t-vmsnative" 877 fi 878 ;; 879*-*-vxworks*) 880 tmake_file=t-vxworks 881 xm_defines=POSIX 882 extra_options="${extra_options} vxworks.opt" 883 extra_objs="$extra_objs vxworks.o" 884 case ${enable_threads} in 885 no) ;; 886 "" | yes | vxworks) thread_file='vxworks' ;; 887 *) echo 'Unknown thread configuration for VxWorks'; exit 1 ;; 888 esac 889 ;; 890*-*-elf|arc*-*-elf*) 891 # Assume that newlib is being used and so __cxa_atexit is provided. 892 default_use_cxa_atexit=yes 893 use_gcc_stdint=wrap 894 ;; 895esac 896 897case ${target} in 898aarch64*-*-elf) 899 tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h" 900 tm_file="${tm_file} aarch64/aarch64-elf.h aarch64/aarch64-elf-raw.h" 901 tmake_file="${tmake_file} aarch64/t-aarch64" 902 use_gcc_stdint=wrap 903 case $target in 904 aarch64_be-*) 905 tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1" 906 ;; 907 esac 908 aarch64_multilibs="${with_multilib_list}" 909 if test "$aarch64_multilibs" = "default"; then 910 aarch64_multilibs="lp64,ilp32" 911 fi 912 aarch64_multilibs=`echo $aarch64_multilibs | sed -e 's/,/ /g'` 913 for aarch64_multilib in ${aarch64_multilibs}; do 914 case ${aarch64_multilib} in 915 ilp32 | lp64 ) 916 TM_MULTILIB_CONFIG="${TM_MULTILIB_CONFIG},${aarch64_multilib}" 917 ;; 918 *) 919 echo "--with-multilib-list=${aarch64_multilib} not supported." 920 exit 1 921 esac 922 done 923 TM_MULTILIB_CONFIG=`echo $TM_MULTILIB_CONFIG | sed 's/^,//'` 924 ;; 925aarch64*-*-linux*) 926 tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h" 927 tm_file="${tm_file} aarch64/aarch64-elf.h aarch64/aarch64-linux.h" 928 tmake_file="${tmake_file} aarch64/t-aarch64 aarch64/t-aarch64-linux" 929 case $target in 930 aarch64_be-*) 931 tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1" 932 ;; 933 esac 934 aarch64_multilibs="${with_multilib_list}" 935 if test "$aarch64_multilibs" = "default"; then 936 # TODO: turn on ILP32 multilib build after its support is mature. 937 # aarch64_multilibs="lp64,ilp32" 938 aarch64_multilibs="lp64" 939 fi 940 aarch64_multilibs=`echo $aarch64_multilibs | sed -e 's/,/ /g'` 941 for aarch64_multilib in ${aarch64_multilibs}; do 942 case ${aarch64_multilib} in 943 ilp32 | lp64 ) 944 TM_MULTILIB_CONFIG="${TM_MULTILIB_CONFIG},${aarch64_multilib}" 945 ;; 946 *) 947 echo "--with-multilib-list=${aarch64_multilib} not supported." 948 exit 1 949 esac 950 done 951 TM_MULTILIB_CONFIG=`echo $TM_MULTILIB_CONFIG | sed 's/^,//'` 952 ;; 953alpha*-*-linux*) 954 tm_file="elfos.h ${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h glibc-stdint.h" 955 tmake_file="${tmake_file} alpha/t-linux" 956 extra_options="${extra_options} alpha/elf.opt" 957 ;; 958alpha*-*-freebsd*) 959 tm_file="elfos.h ${tm_file} ${fbsd_tm_file} alpha/elf.h alpha/freebsd.h" 960 extra_options="${extra_options} alpha/elf.opt" 961 ;; 962alpha*-*-netbsd*) 963 tm_file="elfos.h ${tm_file} netbsd.h alpha/elf.h netbsd-elf.h alpha/netbsd.h" 964 extra_options="${extra_options} netbsd.opt netbsd-elf.opt \ 965 alpha/elf.opt" 966 ;; 967alpha*-*-openbsd*) 968 tm_defines="${tm_defines} OBSD_HAS_DECLARE_FUNCTION_NAME OBSD_HAS_DECLARE_FUNCTION_SIZE OBSD_HAS_DECLARE_OBJECT" 969 tm_file="elfos.h alpha/alpha.h alpha/elf.h openbsd.h openbsd-stdint.h alpha/openbsd.h openbsd-libpthread.h" 970 extra_options="${extra_options} openbsd.opt alpha/elf.opt" 971 # default x-alpha is only appropriate for dec-osf. 972 ;; 973alpha*-dec-*vms*) 974 tm_file="${tm_file} vms/vms.h alpha/vms.h" 975 tmake_file="${tmake_file} alpha/t-vms" 976 ;; 977arc*-*-elf*) 978 extra_headers="arc-simd.h" 979 tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" 980 tmake_file="arc/t-arc-newlib arc/t-arc" 981 case x"${with_cpu}" in 982 xarc600|xarc601|xarc700) 983 target_cpu_default="TARGET_CPU_$with_cpu" 984 ;; 985 esac 986 if test x${with_endian} = x; then 987 case ${target} in 988 arc*be-*-* | arc*eb-*-*) with_endian=big ;; 989 *) with_endian=little ;; 990 esac 991 fi 992 case ${with_endian} in 993 big|little) ;; 994 *) echo "with_endian=${with_endian} not supported."; exit 1 ;; 995 esac 996 case ${with_endian} in 997 big*) tm_defines="DRIVER_ENDIAN_SELF_SPECS=\\\"%{!EL:%{!mlittle-endian:-mbig-endian}}\\\" ${tm_defines}" 998 esac 999 ;; 1000arc*-*-linux-uclibc*) 1001 extra_headers="arc-simd.h" 1002 tm_file="dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h ${tm_file}" 1003 tmake_file="${tmake_file} arc/t-arc-uClibc arc/t-arc" 1004 tm_defines="${tm_defines} TARGET_SDATA_DEFAULT=0" 1005 tm_defines="${tm_defines} TARGET_MMEDIUM_CALLS_DEFAULT=1" 1006 case x"${with_cpu}" in 1007 xarc600|xarc601|xarc700) 1008 target_cpu_default="TARGET_CPU_$with_cpu" 1009 ;; 1010 esac 1011 if test x${with_endian} = x; then 1012 case ${target} in 1013 arc*be-*-* | arc*eb-*-*) with_endian=big ;; 1014 *) with_endian=little ;; 1015 esac 1016 fi 1017 case ${with_endian} in 1018 big|little) ;; 1019 *) echo "with_endian=${with_endian} not supported."; exit 1 ;; 1020 esac 1021 case ${with_endian} in 1022 big*) tm_defines="DRIVER_ENDIAN_SELF_SPECS=\\\"%{!EL:%{!mlittle-endian:-mbig-endian}}\\\" ${tm_defines}" 1023 esac 1024 ;; 1025arm-wrs-vxworks) 1026 tm_file="elfos.h arm/elf.h arm/aout.h ${tm_file} vx-common.h vxworks.h arm/vxworks.h" 1027 extra_options="${extra_options} arm/vxworks.opt" 1028 tmake_file="${tmake_file} arm/t-arm arm/t-vxworks" 1029 ;; 1030arm*-*-freebsd*) # ARM FreeBSD EABI 1031 tm_file="dbxelf.h elfos.h ${fbsd_tm_file} arm/elf.h" 1032 case $target in 1033 arm*b-*-freebsd*) 1034 tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1" 1035 ;; 1036 esac 1037 tmake_file="${tmake_file} arm/t-arm arm/t-bpabi" 1038 tm_file="${tm_file} arm/bpabi.h arm/freebsd.h arm/aout.h arm/arm.h" 1039 case $target in 1040 armv6*-*-freebsd*) 1041 tm_defines="${tm_defines} TARGET_FREEBSD_ARMv6=1" 1042 ;; 1043 esac 1044 case $target in 1045 arm*hf-*-freebsd*) 1046 tm_defines="${tm_defines} TARGET_FREEBSD_ARM_HARD_FLOAT=1" 1047 ;; 1048 esac 1049 with_tls=${with_tls:-gnu} 1050 ;; 1051arm*-*-netbsdelf*) 1052 tm_file="dbxelf.h elfos.h netbsd.h netbsd-elf.h arm/elf.h arm/aout.h ${tm_file} arm/netbsd-elf.h" 1053 extra_options="${extra_options} netbsd.opt netbsd-elf.opt" 1054 tmake_file="${tmake_file} arm/t-arm" 1055 ;; 1056arm*-*-haiku*) 1057 tmake_file="${tmake_file} t-haiku arm/t-arm arm/t-arm-elf arm/t-bpabi arm/t-haiku" 1058 tm_file="dbxelf.h elfos.h haiku.h arm/elf.h arm/bpabi.h arm/haiku.h haiku-stdint.h" 1059 # The BPABI long long divmod functions return a 128-bit value in 1060 # registers r0-r3. Correctly modeling that requires the use of 1061 # TImode. 1062 need_64bit_hwint=yes 1063 default_use_cxa_atexit=yes 1064 tm_file="${tm_file} arm/aout.h arm/arm.h" 1065 ;; 1066arm*-*-linux-*) # ARM GNU/Linux with ELF 1067 tm_file="dbxelf.h elfos.h gnu-user.h linux.h linux-android.h glibc-stdint.h arm/elf.h arm/linux-gas.h arm/linux-elf.h" 1068 extra_options="${extra_options} linux-android.opt" 1069 case $target in 1070 arm*b-*-linux*) 1071 tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1" 1072 ;; 1073 esac 1074 tmake_file="${tmake_file} arm/t-arm arm/t-arm-elf arm/t-bpabi arm/t-linux-eabi" 1075 tm_file="$tm_file arm/bpabi.h arm/linux-eabi.h arm/aout.h vxworks-dummy.h arm/arm.h" 1076 # Define multilib configuration for arm-linux-androideabi. 1077 case ${target} in 1078 *-androideabi) 1079 tmake_file="$tmake_file arm/t-linux-androideabi" 1080 ;; 1081 esac 1082 # The EABI requires the use of __cxa_atexit. 1083 default_use_cxa_atexit=yes 1084 with_tls=${with_tls:-gnu} 1085 ;; 1086arm*-*-uclinux*eabi*) # ARM ucLinux 1087 tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/linux-gas.h arm/uclinux-elf.h glibc-stdint.h" 1088 tmake_file="${tmake_file} arm/t-arm arm/t-arm-elf arm/t-bpabi" 1089 tm_file="$tm_file arm/bpabi.h arm/uclinux-eabi.h arm/aout.h vxworks-dummy.h arm/arm.h" 1090 # The EABI requires the use of __cxa_atexit. 1091 default_use_cxa_atexit=yes 1092 ;; 1093arm*-*-eabi* | arm*-*-symbianelf* | arm*-*-rtems*) 1094 case ${target} in 1095 arm*eb-*-eabi*) 1096 tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1" 1097 esac 1098 default_use_cxa_atexit=yes 1099 tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/bpabi.h" 1100 tmake_file="${tmake_file} arm/t-arm arm/t-arm-elf" 1101 case ${target} in 1102 arm*-*-eabi*) 1103 tm_file="$tm_file newlib-stdint.h" 1104 tmake_file="${tmake_file} arm/t-bpabi" 1105 use_gcc_stdint=wrap 1106 ;; 1107 arm*-*-rtems*) 1108 tm_file="${tm_file} rtems.h arm/rtems.h newlib-stdint.h" 1109 tmake_file="${tmake_file} arm/t-bpabi arm/t-rtems" 1110 ;; 1111 arm*-*-symbianelf*) 1112 tm_file="${tm_file} arm/symbian.h" 1113 # We do not include t-bpabi for Symbian OS because the system 1114 # provides its own implementation of the BPABI functions. 1115 tmake_file="${tmake_file} arm/t-symbian" 1116 ;; 1117 esac 1118 tm_file="${tm_file} arm/aout.h vxworks-dummy.h arm/arm.h" 1119 ;; 1120avr-*-rtems*) 1121 tm_file="elfos.h avr/elf.h avr/avr-arch.h avr/avr.h avr/specs.h dbxelf.h avr/rtems.h rtems.h newlib-stdint.h" 1122 tm_defines="${tm_defines} WITH_RTEMS" 1123 tmake_file="${tmake_file} avr/t-avr avr/t-multilib avr/t-rtems" 1124 extra_gcc_objs="driver-avr.o avr-devices.o" 1125 extra_objs="avr-devices.o avr-log.o" 1126 ;; 1127avr-*-*) 1128 tm_file="elfos.h avr/elf.h avr/avr-arch.h avr/avr.h avr/specs.h dbxelf.h avr/avr-stdint.h" 1129 if test x${with_avrlibc} != xno; then 1130 tm_file="${tm_file} ${cpu_type}/avrlibc.h" 1131 tm_defines="${tm_defines} WITH_AVRLIBC" 1132 fi 1133 tmake_file="${tmake_file} avr/t-avr avr/t-multilib" 1134 use_gcc_stdint=wrap 1135 extra_gcc_objs="driver-avr.o avr-devices.o" 1136 extra_objs="avr-devices.o avr-log.o" 1137 ;; 1138bfin*-elf*) 1139 tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h bfin/elf.h" 1140 tmake_file=bfin/t-bfin-elf 1141 use_collect2=no 1142 ;; 1143bfin*-uclinux*) 1144 tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h gnu-user.h linux.h glibc-stdint.h bfin/uclinux.h" 1145 tmake_file=bfin/t-bfin-uclinux 1146 use_collect2=no 1147 ;; 1148bfin*-linux-uclibc*) 1149 tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h gnu-user.h linux.h glibc-stdint.h bfin/linux.h ./linux-sysroot-suffix.h" 1150 tmake_file="bfin/t-bfin-linux t-slibgcc t-linux" 1151 use_collect2=no 1152 ;; 1153bfin*-rtems*) 1154 tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h bfin/rtems.h rtems.h newlib-stdint.h" 1155 tmake_file="${tmake_file} bfin/t-rtems" 1156 ;; 1157bfin*-*) 1158 tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h bfin/elf.h" 1159 use_collect2=no 1160 use_gcc_stdint=wrap 1161 ;; 1162cr16-*-elf) 1163 tm_file="elfos.h ${tm_file}" 1164 tmake_file="${tmake_file} cr16/t-cr16 " 1165 use_collect2=no 1166 ;; 1167crisv32-*-elf | crisv32-*-none) 1168 tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" 1169 tmake_file="cris/t-cris" 1170 target_cpu_default=32 1171 gas=yes 1172 extra_options="${extra_options} cris/elf.opt" 1173 use_gcc_stdint=wrap 1174 ;; 1175cris-*-elf | cris-*-none) 1176 tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" 1177 tmake_file="cris/t-cris cris/t-elfmulti" 1178 gas=yes 1179 extra_options="${extra_options} cris/elf.opt" 1180 use_gcc_stdint=wrap 1181 ;; 1182crisv32-*-linux* | cris-*-linux*) 1183 tm_file="dbxelf.h elfos.h ${tm_file} gnu-user.h linux.h glibc-stdint.h cris/linux.h" 1184 tmake_file="${tmake_file} cris/t-cris cris/t-linux" 1185 extra_options="${extra_options} cris/linux.opt" 1186 case $target in 1187 cris-*-*) 1188 target_cpu_default=10 1189 ;; 1190 crisv32-*-*) 1191 target_cpu_default=32 1192 ;; 1193 esac 1194 ;; 1195epiphany-*-elf ) 1196 tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" 1197 tmake_file="epiphany/t-epiphany" 1198 extra_options="${extra_options} fused-madd.opt" 1199 extra_objs="$extra_objs mode-switch-use.o resolve-sw-modes.o" 1200 tm_defines="${tm_defines} EPIPHANY_STACK_OFFSET=${with_stack_offset:-8}" 1201 extra_headers="epiphany_intrinsics.h" 1202 ;; 1203fr30-*-elf) 1204 tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" 1205 ;; 1206frv-*-elf) 1207 tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" 1208 tmake_file=frv/t-frv 1209 ;; 1210frv-*-*linux*) 1211 tm_file="dbxelf.h elfos.h ${tm_file} \ 1212 gnu-user.h linux.h glibc-stdint.h frv/linux.h" 1213 tmake_file="${tmake_file} frv/t-frv frv/t-linux" 1214 ;; 1215moxie-*-elf) 1216 gas=yes 1217 gnu_ld=yes 1218 tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" 1219 tmake_file="${tmake_file} moxie/t-moxie" 1220 ;; 1221moxie-*-uclinux*) 1222 gas=yes 1223 gnu_ld=yes 1224 tm_file="dbxelf.h elfos.h ${tm_file} gnu-user.h linux.h glibc-stdint.h moxie/uclinux.h" 1225 tmake_file="${tmake_file} moxie/t-moxie" 1226 ;; 1227moxie-*-rtems*) 1228 tmake_file="${tmake_file} moxie/t-moxie" 1229 tm_file="moxie/moxie.h dbxelf.h elfos.h moxie/rtems.h rtems.h newlib-stdint.h" 1230 ;; 1231moxie-*-moxiebox*) 1232 gas=yes 1233 gnu_ld=yes 1234 tm_file="${tm_file} dbxelf.h elfos.h moxie/moxiebox.h newlib-stdint.h" 1235 tmake_file="${tmake_file} moxie/t-moxiebox" 1236 ;; 1237h8300-*-rtems*) 1238 tmake_file="${tmake_file} h8300/t-h8300 h8300/t-rtems" 1239 tm_file="h8300/h8300.h dbxelf.h elfos.h h8300/elf.h h8300/rtems.h rtems.h newlib-stdint.h" 1240 ;; 1241h8300-*-elf*) 1242 tmake_file="h8300/t-h8300" 1243 tm_file="h8300/h8300.h dbxelf.h elfos.h newlib-stdint.h h8300/elf.h" 1244 ;; 1245hppa*64*-*-linux*) 1246 target_cpu_default="MASK_PA_11|MASK_PA_20" 1247 tm_file="pa/pa64-start.h ${tm_file} dbxelf.h elfos.h gnu-user.h linux.h \ 1248 glibc-stdint.h pa/pa-linux.h pa/pa64-regs.h pa/pa-64.h \ 1249 pa/pa64-linux.h" 1250 gas=yes gnu_ld=yes 1251 ;; 1252hppa*-*-linux*) 1253 target_cpu_default="MASK_PA_11|MASK_NO_SPACE_REGS" 1254 tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h pa/pa-linux.h \ 1255 pa/pa32-regs.h pa/pa32-linux.h" 1256 tmake_file="${tmake_file} pa/t-linux" 1257 ;; 1258hppa*-*-openbsd*) 1259 target_cpu_default="MASK_PA_11" 1260 tm_file="${tm_file} dbxelf.h elfos.h openbsd.h openbsd-stdint.h openbsd-libpthread.h \ 1261 pa/pa-openbsd.h pa/pa32-regs.h pa/pa32-openbsd.h" 1262 extra_options="${extra_options} openbsd.opt" 1263 gas=yes 1264 gnu_ld=yes 1265 ;; 1266hppa[12]*-*-hpux10*) 1267 case ${target} in 1268 hppa1.1-*-* | hppa2*-*-*) 1269 target_cpu_default="MASK_PA_11" 1270 ;; 1271 esac 1272 tm_file="${tm_file} pa/pa32-regs.h dbxelf.h pa/som.h \ 1273 pa/pa-hpux.h pa/pa-hpux10.h" 1274 extra_options="${extra_options} pa/pa-hpux.opt pa/pa-hpux10.opt" 1275 case ${target} in 1276 *-*-hpux10.[1-9]*) 1277 tm_file="${tm_file} pa/pa-hpux1010.h" 1278 extra_options="${extra_options} pa/pa-hpux1010.opt" 1279 ;; 1280 esac 1281 use_gcc_stdint=provide 1282 tm_file="${tm_file} hpux-stdint.h" 1283 tmake_file="t-slibgcc" 1284 case ${enable_threads} in 1285 "") 1286 if test x$have_pthread_h = xyes ; then 1287 tmake_file="${tmake_file} pa/t-dce-thr" 1288 fi 1289 ;; 1290 yes | dce) 1291 tmake_file="${tmake_file} pa/t-dce-thr" 1292 ;; 1293 esac 1294 use_collect2=yes 1295 gas=yes 1296 if test "x$with_dwarf2" != x; then 1297 echo "Warning: dwarf2 debug format is not supported for this target, --with-dwarf2 ignored" 1>&2 1298 dwarf2=no 1299 fi 1300 ;; 1301hppa*64*-*-hpux11*) 1302 target_cpu_default="MASK_PA_11|MASK_PA_20" 1303 if test x$gnu_ld = xyes 1304 then 1305 target_cpu_default="${target_cpu_default}|MASK_GNU_LD" 1306 fi 1307 tm_file="pa/pa64-start.h ${tm_file} dbxelf.h elfos.h \ 1308 pa/pa64-regs.h pa/pa-hpux.h pa/pa-hpux1010.h \ 1309 pa/pa-hpux11.h" 1310 case ${target} in 1311 *-*-hpux11.[12]*) 1312 tm_file="${tm_file} pa/pa-hpux1111.h pa/pa-64.h pa/pa64-hpux.h" 1313 extra_options="${extra_options} pa/pa-hpux1111.opt" 1314 ;; 1315 *-*-hpux11.[3-9]*) 1316 tm_file="${tm_file} pa/pa-hpux1131.h pa/pa-64.h pa/pa64-hpux.h" 1317 extra_options="${extra_options} pa/pa-hpux1131.opt" 1318 ;; 1319 *) 1320 tm_file="${tm_file} pa/pa-64.h pa/pa64-hpux.h" 1321 ;; 1322 esac 1323 extra_options="${extra_options} pa/pa-hpux.opt \ 1324 pa/pa-hpux1010.opt pa/pa64-hpux.opt hpux11.opt" 1325 tmake_file="t-slibgcc" 1326 case x${enable_threads} in 1327 x | xyes | xposix ) 1328 thread_file=posix 1329 ;; 1330 esac 1331 gas=yes 1332 case ${target} in 1333 *-*-hpux11.[01]*) 1334 use_gcc_stdint=provide 1335 tm_file="${tm_file} hpux-stdint.h" 1336 ;; 1337 *-*-hpux11.[23]*) 1338 use_gcc_stdint=wrap 1339 tm_file="${tm_file} hpux-stdint.h" 1340 ;; 1341 esac 1342 ;; 1343hppa[12]*-*-hpux11*) 1344 case ${target} in 1345 hppa1.1-*-* | hppa2*-*-*) 1346 target_cpu_default="MASK_PA_11" 1347 ;; 1348 esac 1349 tm_file="${tm_file} pa/pa32-regs.h dbxelf.h pa/som.h \ 1350 pa/pa-hpux.h pa/pa-hpux1010.h pa/pa-hpux11.h" 1351 extra_options="${extra_options} pa/pa-hpux.opt pa/pa-hpux1010.opt \ 1352 hpux11.opt" 1353 case ${target} in 1354 *-*-hpux11.[12]*) 1355 tm_file="${tm_file} pa/pa-hpux1111.h" 1356 extra_options="${extra_options} pa/pa-hpux1111.opt" 1357 ;; 1358 *-*-hpux11.[3-9]*) 1359 tm_file="${tm_file} pa/pa-hpux1131.h" 1360 extra_options="${extra_options} pa/pa-hpux1131.opt" 1361 ;; 1362 esac 1363 tmake_file="t-slibgcc" 1364 case x${enable_threads} in 1365 x | xyes | xposix ) 1366 thread_file=posix 1367 ;; 1368 esac 1369 use_collect2=yes 1370 gas=yes 1371 case ${target} in 1372 *-*-hpux11.[01]*) 1373 use_gcc_stdint=provide 1374 tm_file="${tm_file} hpux-stdint.h" 1375 ;; 1376 *-*-hpux11.[23]*) 1377 use_gcc_stdint=wrap 1378 tm_file="${tm_file} hpux-stdint.h" 1379 ;; 1380 esac 1381 if test "x$with_dwarf2" != x; then 1382 echo "Warning: dwarf2 debug format is not supported for this target, --with-dwarf2 ignored" 1>&2 1383 dwarf2=no 1384 fi 1385 ;; 1386i[34567]86-*-darwin*) 1387 need_64bit_isa=yes 1388 # Baseline choice for a machine that allows m64 support. 1389 with_cpu=${with_cpu:-core2} 1390 tmake_file="${tmake_file} t-slibgcc" 1391 ;; 1392x86_64-*-darwin*) 1393 with_cpu=${with_cpu:-core2} 1394 tmake_file="${tmake_file} ${cpu_type}/t-darwin64 t-slibgcc" 1395 tm_file="${tm_file} ${cpu_type}/darwin64.h" 1396 ;; 1397i[34567]86-*-elf*) 1398 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h newlib-stdint.h i386/i386elf.h" 1399 ;; 1400x86_64-*-elf*) 1401 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h newlib-stdint.h i386/i386elf.h i386/x86-64.h" 1402 ;; 1403i[34567]86-*-rdos*) 1404 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h newlib-stdint.h i386/i386elf.h i386/rdos.h" 1405 ;; 1406x86_64-*-rdos*) 1407 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h newlib-stdint.h i386/i386elf.h i386/x86-64.h i386/rdos.h i386/rdos64.h" 1408 tmake_file="i386/t-i386elf t-svr4" 1409 ;; 1410i[34567]86-*-dragonfly*) 1411 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h dragonfly.h dragonfly-stdint.h i386/dragonfly.h" 1412 tmake_file="${tmake_file} i386/t-crtstuff" 1413 ;; 1414x86_64-*-dragonfly*) 1415 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h dragonfly.h dragonfly-stdint.h i386/x86-64.h i386/dragonfly.h" 1416 tmake_file="${tmake_file} i386/t-crtstuff" 1417 ;; 1418i[34567]86-*-freebsd*) 1419 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/freebsd.h" 1420 ;; 1421x86_64-*-freebsd*) 1422 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" 1423 ;; 1424i[34567]86-*-haiku*) 1425 tmake_file="${tmake_file} t-haiku i386/t-crtpic" 1426 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h haiku.h i386/haiku.h haiku-stdint.h" 1427 ;; 1428x86_64-*-haiku*) 1429 tmake_file="${tmake_file} t-haiku i386/t-haiku64" 1430 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h haiku.h i386/haiku64.h haiku-stdint.h" 1431 ;; 1432i[34567]86-*-netbsdelf*) 1433 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/netbsd-elf.h" 1434 extra_options="${extra_options} netbsd.opt netbsd-elf.opt" 1435 ;; 1436x86_64-*-netbsd*) 1437 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/x86-64.h i386/netbsd64.h" 1438 extra_options="${extra_options} netbsd.opt netbsd-elf.opt" 1439 ;; 1440i[34567]86-*-openbsd2.*|i[34567]86-*openbsd3.[0123]) 1441 tm_file="i386/i386.h i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h openbsd-oldgas.h openbsd.h i386/openbsd.h" 1442 extra_options="${extra_options} openbsd.opt" 1443 # needed to unconfuse gdb 1444 tmake_file="${tmake_file} t-openbsd i386/t-openbsd" 1445 # we need collect2 until our bug is fixed... 1446 use_collect2=yes 1447 ;; 1448i[34567]86-*-openbsd*) 1449 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h" 1450 tm_file="${tm_file} openbsd.h openbsd-stdint.h openbsd-libpthread.h i386/openbsdelf.h" 1451 extra_options="${extra_options} openbsd.opt" 1452 gas=yes 1453 gnu_ld=yes 1454 ;; 1455x86_64-*-openbsd*) 1456 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h" 1457 tm_file="${tm_file} openbsd.h openbsd-stdint.h openbsd-libpthread.h i386/x86-64.h i386/openbsdelf.h" 1458 extra_options="${extra_options} openbsd.opt" 1459 gas=yes 1460 gnu_ld=yes 1461 ;; 1462i[34567]86-*-linux* | i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu | i[34567]86-*-gnu* | i[34567]86-*-kopensolaris*-gnu) 1463 # Intel 80386's running GNU/* 1464 # with ELF format using glibc 2 1465 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h gnu-user.h glibc-stdint.h" 1466 case ${target} in 1467 i[34567]86-*-linux*) 1468 tm_file="${tm_file} linux.h linux-android.h" 1469 extra_options="${extra_options} linux-android.opt" 1470 # Assume modern glibc if not targeting Android nor uclibc. 1471 case ${target} in 1472 *-*-*android*|*-*-*uclibc*) 1473 ;; 1474 *) 1475 default_gnu_indirect_function=yes 1476 ;; 1477 esac 1478 if test x$enable_targets = xall; then 1479 tm_file="${tm_file} i386/x86-64.h i386/gnu-user-common.h i386/gnu-user64.h i386/linux-common.h i386/linux64.h" 1480 tm_defines="${tm_defines} TARGET_BI_ARCH=1" 1481 tmake_file="${tmake_file} i386/t-linux64" 1482 x86_multilibs="${with_multilib_list}" 1483 if test "$x86_multilibs" = "default"; then 1484 x86_multilibs="m64,m32" 1485 fi 1486 x86_multilibs=`echo $x86_multilibs | sed -e 's/,/ /g'` 1487 for x86_multilib in ${x86_multilibs}; do 1488 case ${x86_multilib} in 1489 m32 | m64 | mx32) 1490 TM_MULTILIB_CONFIG="${TM_MULTILIB_CONFIG},${x86_multilib}" 1491 ;; 1492 *) 1493 echo "--with-multilib-list=${x86_with_multilib} not supported." 1494 exit 1 1495 esac 1496 done 1497 TM_MULTILIB_CONFIG=`echo $TM_MULTILIB_CONFIG | sed 's/^,//'` 1498 need_64bit_isa=yes 1499 if test x$with_cpu = x; then 1500 if test x$with_cpu_64 = x; then 1501 with_cpu_64=generic 1502 fi 1503 else 1504 case " $x86_cpus $x86_archs $x86_64_archs " in 1505 *" $with_cpu "*) 1506 ;; 1507 *) 1508 echo "Unsupported CPU used in --with-cpu=$with_cpu, supported values:" 1>&2 1509 echo "$x86_cpus $x86_archs $x86_64_archs " 1>&2 1510 exit 1 1511 ;; 1512 esac 1513 fi 1514 else 1515 tm_file="${tm_file} i386/gnu-user-common.h i386/gnu-user.h i386/linux-common.h i386/linux.h" 1516 fi 1517 ;; 1518 i[34567]86-*-knetbsd*-gnu) 1519 tm_file="${tm_file} i386/gnu-user-common.h i386/gnu-user.h knetbsd-gnu.h i386/knetbsd-gnu.h" 1520 ;; 1521 i[34567]86-*-kfreebsd*-gnu) 1522 tm_file="${tm_file} i386/gnu-user-common.h i386/gnu-user.h kfreebsd-gnu.h i386/kfreebsd-gnu.h" 1523 ;; 1524 i[34567]86-*-kopensolaris*-gnu) 1525 tm_file="${tm_file} i386/gnu-user-common.h i386/gnu-user.h kopensolaris-gnu.h i386/kopensolaris-gnu.h" 1526 ;; 1527 i[34567]86-*-gnu*) 1528 tm_file="$tm_file i386/gnu-user-common.h i386/gnu-user.h gnu.h i386/gnu.h" 1529 ;; 1530 esac 1531 ;; 1532x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu) 1533 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h gnu-user.h glibc-stdint.h \ 1534 i386/x86-64.h i386/gnu-user-common.h i386/gnu-user64.h" 1535 case ${target} in 1536 x86_64-*-linux*) 1537 tm_file="${tm_file} linux.h linux-android.h i386/linux-common.h i386/linux64.h" 1538 extra_options="${extra_options} linux-android.opt" 1539 # Assume modern glibc if not targeting Android nor uclibc. 1540 case ${target} in 1541 *-*-*android*|*-*-*uclibc*) 1542 ;; 1543 *) 1544 default_gnu_indirect_function=yes 1545 ;; 1546 esac 1547 ;; 1548 x86_64-*-kfreebsd*-gnu) 1549 tm_file="${tm_file} kfreebsd-gnu.h i386/kfreebsd-gnu64.h" 1550 ;; 1551 x86_64-*-knetbsd*-gnu) 1552 tm_file="${tm_file} knetbsd-gnu.h" 1553 ;; 1554 esac 1555 tmake_file="${tmake_file} i386/t-linux64" 1556 x86_multilibs="${with_multilib_list}" 1557 if test "$x86_multilibs" = "default"; then 1558 case ${with_abi} in 1559 x32 | mx32) 1560 x86_multilibs="mx32" 1561 ;; 1562 *) 1563 x86_multilibs="m64,m32" 1564 ;; 1565 esac 1566 fi 1567 x86_multilibs=`echo $x86_multilibs | sed -e 's/,/ /g'` 1568 for x86_multilib in ${x86_multilibs}; do 1569 case ${x86_multilib} in 1570 m32 | m64 | mx32) 1571 TM_MULTILIB_CONFIG="${TM_MULTILIB_CONFIG},${x86_multilib}" 1572 ;; 1573 *) 1574 echo "--with-multilib-list=${x86_with_multilib} not supported." 1575 exit 1 1576 esac 1577 done 1578 TM_MULTILIB_CONFIG=`echo $TM_MULTILIB_CONFIG | sed 's/^,//'` 1579 ;; 1580i[34567]86-pc-msdosdjgpp*) 1581 xm_file=i386/xm-djgpp.h 1582 tm_file="dbxcoff.h ${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/djgpp.h i386/djgpp-stdint.h" 1583 native_system_header_dir=/dev/env/DJDIR/include 1584 extra_options="${extra_options} i386/djgpp.opt" 1585 gnu_ld=yes 1586 gas=yes 1587 use_gcc_stdint=wrap 1588 ;; 1589i[34567]86-*-lynxos*) 1590 xm_defines=POSIX 1591 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/lynx.h lynx.h" 1592 tmake_file="${tmake_file} t-lynx" 1593 extra_options="${extra_options} lynx.opt" 1594 thread_file=lynx 1595 gnu_ld=yes 1596 gas=yes 1597 ;; 1598i[34567]86-*-nto-qnx*) 1599 tm_file="${tm_file} i386/att.h dbxelf.h tm-dwarf2.h elfos.h i386/unix.h i386/nto.h" 1600 extra_options="${extra_options} i386/nto.opt" 1601 gnu_ld=yes 1602 gas=yes 1603 ;; 1604i[34567]86-*-rtems*) 1605 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h i386/rtemself.h rtems.h newlib-stdint.h" 1606 tmake_file="${tmake_file} i386/t-rtems" 1607 ;; 1608i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*) 1609 # Set default arch_32 to pentium4, tune_32 to generic like the other 1610 # i386 targets, although config.guess defaults to i386-pc-solaris2*. 1611 with_arch_32=${with_arch_32:-pentium4} 1612 with_tune_32=${with_tune_32:-generic} 1613 tm_file="${tm_file} i386/unix.h i386/att.h ${sol2_tm_file_head} i386/x86-64.h ${sol2_tm_file_tail}" 1614 tm_defines="${tm_defines} TARGET_BI_ARCH=1" 1615 tmake_file="$tmake_file i386/t-sol2" 1616 need_64bit_isa=yes 1617 if test x$with_cpu = x; then 1618 if test x$with_cpu_64 = x; then 1619 with_cpu_64=generic 1620 fi 1621 else 1622 case " $x86_cpus $x86_archs $x86_64_archs " in 1623 *" $with_cpu "*) 1624 ;; 1625 *) 1626 echo "Unsupported CPU used in --with-cpu=$with_cpu, supported values:" 1>&2 1627 echo "$x86_cpus $x86_archs $x86_64_archs" 1>&2 1628 exit 1 1629 ;; 1630 esac 1631 fi 1632 ;; 1633i[4567]86-wrs-vxworks|i[4567]86-wrs-vxworksae) 1634 tm_file="${tm_file} i386/unix.h i386/att.h elfos.h vx-common.h" 1635 case ${target} in 1636 *-vxworksae*) 1637 tm_file="${tm_file} vxworksae.h i386/vxworks.h i386/vxworksae.h" 1638 tmake_file="${tmake_file} i386/t-vxworks i386/t-vxworksae" 1639 ;; 1640 *) 1641 tm_file="${tm_file} vxworks.h i386/vxworks.h" 1642 tmake_file="${tmake_file} i386/t-vxworks" 1643 ;; 1644 esac 1645 ;; 1646i[34567]86-*-cygwin*) 1647 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/cygming.h i386/cygwin.h i386/cygwin-stdint.h" 1648 xm_file=i386/xm-cygwin.h 1649 tmake_file="${tmake_file} i386/t-cygming t-slibgcc" 1650 target_gtfiles="\$(srcdir)/config/i386/winnt.c" 1651 extra_options="${extra_options} i386/cygming.opt i386/cygwin.opt" 1652 extra_objs="winnt.o winnt-stubs.o" 1653 c_target_objs="${c_target_objs} msformat-c.o" 1654 cxx_target_objs="${cxx_target_objs} winnt-cxx.o msformat-c.o" 1655 if test x$enable_threads = xyes; then 1656 thread_file='posix' 1657 fi 1658 default_use_cxa_atexit=yes 1659 use_gcc_stdint=wrap 1660 ;; 1661x86_64-*-cygwin*) 1662 need_64bit_isa=yes 1663 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/cygming.h i386/cygwin.h i386/cygwin-w64.h i386/cygwin-stdint.h" 1664 xm_file=i386/xm-cygwin.h 1665 tmake_file="${tmake_file} i386/t-cygming t-slibgcc i386/t-cygwin-w64" 1666 target_gtfiles="\$(srcdir)/config/i386/winnt.c" 1667 extra_options="${extra_options} i386/cygming.opt i386/cygwin.opt" 1668 extra_objs="winnt.o winnt-stubs.o" 1669 c_target_objs="${c_target_objs} msformat-c.o" 1670 cxx_target_objs="${cxx_target_objs} winnt-cxx.o msformat-c.o" 1671 if test x$enable_threads = xyes; then 1672 thread_file='posix' 1673 fi 1674 default_use_cxa_atexit=yes 1675 use_gcc_stdint=wrap 1676 tm_defines="${tm_defines} TARGET_CYGWIN64=1" 1677 ;; 1678i[34567]86-*-mingw* | x86_64-*-mingw*) 1679 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/cygming.h" 1680 xm_file=i386/xm-mingw32.h 1681 c_target_objs="${c_target_objs} winnt-c.o" 1682 cxx_target_objs="${cxx_target_objs} winnt-c.o" 1683 target_has_targetcm="yes" 1684 case ${target} in 1685 x86_64-*-* | *-w64-*) 1686 need_64bit_isa=yes 1687 ;; 1688 *) 1689 ;; 1690 esac 1691 if test x$enable_threads = xposix ; then 1692 tm_file="${tm_file} i386/mingw-pthread.h" 1693 fi 1694 tm_file="${tm_file} i386/mingw32.h" 1695 # This makes the logic if mingw's or the w64 feature set has to be used 1696 case ${target} in 1697 *-w64-*) 1698 user_headers_inc_next_post="${user_headers_inc_next_post} float.h" 1699 user_headers_inc_next_pre="${user_headers_inc_next_pre} stddef.h stdarg.h" 1700 tm_file="${tm_file} i386/mingw-w64.h" 1701 if test x$enable_targets = xall; then 1702 tm_defines="${tm_defines} TARGET_BI_ARCH=1" 1703 if test x$with_cpu = x; then 1704 if test x$with_cpu_64 = x; then 1705 with_cpu_64=generic 1706 fi 1707 else 1708 case " $x86_cpus $x86_archs $x86_64_archs " in 1709 *" $with_cpu "*) 1710 ;; 1711 *) 1712 echo "Unsupported CPU used in --with-cpu=$with_cpu, supported values:" 1>&2 1713 echo "$x86_cpus $x86_archs $x86_64_archs" 1>&2 1714 exit 1 1715 ;; 1716 esac 1717 fi 1718 fi 1719 ;; 1720 *) 1721 ;; 1722 esac 1723 tm_file="${tm_file} i386/mingw-stdint.h" 1724 tmake_file="${tmake_file} t-winnt i386/t-cygming t-slibgcc" 1725 case ${target} in 1726 x86_64-w64-*) 1727 tmake_file="${tmake_file} i386/t-mingw-w64" 1728 ;; 1729 i[34567]86-w64-*) 1730 tmake_file="${tmake_file} i386/t-mingw-w32" 1731 ;; 1732 esac 1733 native_system_header_dir=/mingw/include 1734 target_gtfiles="\$(srcdir)/config/i386/winnt.c" 1735 extra_options="${extra_options} i386/cygming.opt i386/mingw.opt" 1736 case ${target} in 1737 *-w64-*) 1738 extra_options="${extra_options} i386/mingw-w64.opt" 1739 ;; 1740 *) 1741 ;; 1742 esac 1743 extra_objs="winnt.o winnt-stubs.o" 1744 c_target_objs="${c_target_objs} msformat-c.o" 1745 cxx_target_objs="${cxx_target_objs} winnt-cxx.o msformat-c.o" 1746 gas=yes 1747 gnu_ld=yes 1748 default_use_cxa_atexit=yes 1749 use_gcc_stdint=wrap 1750 case ${enable_threads} in 1751 "" | yes | win32) 1752 thread_file='win32' 1753 ;; 1754 posix) 1755 thread_file='posix' 1756 ;; 1757 esac 1758 case ${target} in 1759 *mingw32crt*) 1760 tm_file="${tm_file} i386/crtdll.h" 1761 ;; 1762 *mingw32msv* | *mingw*) 1763 ;; 1764 esac 1765 ;; 1766i[34567]86-*-interix[3-9]*) 1767 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/i386-interix.h" 1768 tmake_file="${tmake_file} i386/t-interix" 1769 extra_options="${extra_options} rpath.opt i386/interix.opt" 1770 extra_objs="winnt.o winnt-stubs.o" 1771 target_gtfiles="\$(srcdir)/config/i386/winnt.c" 1772 if test x$enable_threads = xyes ; then 1773 thread_file='posix' 1774 fi 1775 if test x$stabs = xyes ; then 1776 tm_file="${tm_file} dbxcoff.h" 1777 fi 1778 ;; 1779ia64*-*-elf*) 1780 tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h ia64/sysv4.h ia64/elf.h" 1781 tmake_file="ia64/t-ia64" 1782 target_cpu_default="0" 1783 if test x$gas = xyes 1784 then 1785 target_cpu_default="${target_cpu_default}|MASK_GNU_AS" 1786 fi 1787 if test x$gnu_ld = xyes 1788 then 1789 target_cpu_default="${target_cpu_default}|MASK_GNU_LD" 1790 fi 1791 ;; 1792ia64*-*-freebsd*) 1793 tm_file="${tm_file} dbxelf.h elfos.h ${fbsd_tm_file} ia64/sysv4.h ia64/freebsd.h" 1794 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD" 1795 tmake_file="${tmake_file} ia64/t-ia64" 1796 ;; 1797ia64*-*-linux*) 1798 tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h ia64/sysv4.h ia64/linux.h" 1799 tmake_file="${tmake_file} ia64/t-ia64 ia64/t-linux t-libunwind" 1800 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD" 1801 ;; 1802ia64*-*-hpux*) 1803 tm_file="${tm_file} dbxelf.h elfos.h ia64/sysv4.h ia64/hpux.h" 1804 tmake_file="ia64/t-ia64 ia64/t-hpux t-slibgcc" 1805 target_cpu_default="MASK_GNU_AS" 1806 case x$enable_threads in 1807 x | xyes | xposix ) 1808 thread_file=posix 1809 ;; 1810 esac 1811 use_collect2=no 1812 c_target_objs="ia64-c.o" 1813 cxx_target_objs="ia64-c.o" 1814 extra_options="${extra_options} ia64/ilp32.opt hpux11.opt" 1815 use_gcc_stdint=wrap 1816 tm_file="${tm_file} hpux-stdint.h" 1817 case ${target} in 1818 *-*-hpux11.3*) 1819 tm_file="${tm_file} ia64/hpux-unix2003.h" 1820 ;; 1821 esac 1822 ;; 1823ia64-hp-*vms*) 1824 tm_file="${tm_file} elfos.h ia64/sysv4.h vms/vms.h ia64/vms.h" 1825 tmake_file="${tmake_file} ia64/t-ia64" 1826 target_cpu_default="0" 1827 if test x$gas = xyes 1828 then 1829 target_cpu_default="${target_cpu_default}|MASK_GNU_AS" 1830 fi 1831 extra_options="${extra_options} ia64/vms.opt" 1832 ;; 1833iq2000*-*-elf*) 1834 tm_file="elfos.h newlib-stdint.h iq2000/iq2000.h" 1835 out_file=iq2000/iq2000.c 1836 md_file=iq2000/iq2000.md 1837 ;; 1838lm32-*-elf*) 1839 tm_file="dbxelf.h elfos.h ${tm_file}" 1840 tmake_file="${tmake_file} lm32/t-lm32" 1841 ;; 1842lm32-*-rtems*) 1843 tm_file="dbxelf.h elfos.h ${tm_file} lm32/rtems.h rtems.h newlib-stdint.h" 1844 tmake_file="${tmake_file} lm32/t-lm32" 1845 tmake_file="${tmake_file} lm32/t-rtems" 1846 ;; 1847lm32-*-uclinux*) 1848 tm_file="dbxelf.h elfos.h ${tm_file} gnu-user.h linux.h lm32/uclinux-elf.h" 1849 tmake_file="${tmake_file} lm32/t-lm32" 1850 ;; 1851m32r-*-elf*) 1852 tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" 1853 ;; 1854m32rle-*-elf*) 1855 tm_file="dbxelf.h elfos.h newlib-stdint.h m32r/little.h ${tm_file}" 1856 ;; 1857m32r-*-rtems*) 1858 tm_file="dbxelf.h elfos.h ${tm_file} m32r/rtems.h rtems.h newlib-stdint.h" 1859 tmake_file="${tmake_file} m32r/t-m32r" 1860 ;; 1861m32r-*-linux*) 1862 tm_file="dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h ${tm_file} m32r/linux.h" 1863 tmake_file="${tmake_file} m32r/t-linux t-slibgcc" 1864 gnu_ld=yes 1865 if test x$enable_threads = xyes; then 1866 thread_file='posix' 1867 fi 1868 ;; 1869m32rle-*-linux*) 1870 tm_file="dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h m32r/little.h ${tm_file} m32r/linux.h" 1871 tmake_file="${tmake_file} m32r/t-linux t-slibgcc" 1872 gnu_ld=yes 1873 if test x$enable_threads = xyes; then 1874 thread_file='posix' 1875 fi 1876 ;; 1877m68k-*-elf* | fido-*-elf*) 1878 case ${target} in 1879 fido-*-elf*) 1880 # Check that $with_cpu makes sense. 1881 case $with_cpu in 1882 "" | "fidoa") 1883 ;; 1884 *) 1885 echo "Cannot accept --with-cpu=$with_cpu" 1886 exit 1 1887 ;; 1888 esac 1889 with_cpu=fidoa 1890 ;; 1891 *) 1892 default_m68k_cpu=68020 1893 default_cf_cpu=5206 1894 ;; 1895 esac 1896 tm_file="${tm_file} m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h newlib-stdint.h m68k/m68kemb.h m68k/m68020-elf.h" 1897 tm_defines="${tm_defines} MOTOROLA=1" 1898 tmake_file="m68k/t-floatlib m68k/t-m68kbare m68k/t-m68kelf" 1899 # Add multilibs for targets other than fido. 1900 case ${target} in 1901 fido-*-elf*) 1902 ;; 1903 *) 1904 tmake_file="$tmake_file m68k/t-mlibs" 1905 ;; 1906 esac 1907 ;; 1908m68k*-*-netbsdelf*) 1909 default_m68k_cpu=68020 1910 default_cf_cpu=5475 1911 tm_file="${tm_file} dbxelf.h elfos.h netbsd.h netbsd-elf.h m68k/netbsd-elf.h" 1912 extra_options="${extra_options} netbsd.opt netbsd-elf.opt" 1913 tm_defines="${tm_defines} MOTOROLA=1" 1914 ;; 1915m68k*-*-openbsd*) 1916 default_m68k_cpu=68020 1917 default_cf_cpu=5475 1918 # needed to unconfuse gdb 1919 tm_defines="${tm_defines} OBSD_OLD_GAS" 1920 tm_file="${tm_file} openbsd.h openbsd-stdint.h openbsd-libpthread.h m68k/openbsd.h" 1921 extra_options="${extra_options} openbsd.opt" 1922 tmake_file="t-openbsd m68k/t-openbsd" 1923 # we need collect2 until our bug is fixed... 1924 use_collect2=yes 1925 ;; 1926m68k-*-uclinux*) # Motorola m68k/ColdFire running uClinux 1927 # with uClibc, using the new GNU/Linux-style 1928 # ABI. 1929 default_m68k_cpu=68020 1930 default_cf_cpu=5206 1931 tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h flat.h m68k/linux.h m68k/uclinux.h ./sysroot-suffix.h" 1932 extra_options="${extra_options} m68k/uclinux.opt" 1933 tm_defines="${tm_defines} MOTOROLA=1" 1934 tmake_file="m68k/t-floatlib m68k/t-uclinux m68k/t-mlibs" 1935 ;; 1936m68k-*-linux*) # Motorola m68k's running GNU/Linux 1937 # with ELF format using glibc 2 1938 # aka the GNU/Linux C library 6. 1939 default_m68k_cpu=68020 1940 default_cf_cpu=5475 1941 with_arch=${with_arch:-m68k} 1942 tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h m68k/linux.h ./sysroot-suffix.h" 1943 extra_options="${extra_options} m68k/ieee.opt" 1944 tm_defines="${tm_defines} MOTOROLA=1" 1945 tmake_file="${tmake_file} m68k/t-floatlib m68k/t-linux m68k/t-mlibs" 1946 ;; 1947m68k-*-rtems*) 1948 default_m68k_cpu=68020 1949 default_cf_cpu=5206 1950 tmake_file="${tmake_file} m68k/t-floatlib m68k/t-m68kbare m68k/t-crtstuff m68k/t-rtems m68k/t-mlibs" 1951 tm_file="${tm_file} m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/m68kemb.h m68k/m68020-elf.h m68k/rtemself.h rtems.h newlib-stdint.h" 1952 tm_defines="${tm_defines} MOTOROLA=1" 1953 ;; 1954m68k-*-haiku*) 1955 default_m68k_cpu=68020 1956 default_cf_cpu=5206 1957 tmake_file="${tmake_file} m68k/t-m68kbare m68k/t-crtstuff t-haiku" #?? 1958 tm_file="${tm_file} dbxelf.h elfos.h haiku.h m68k/haiku.h" 1959 tm_defines="${tm_defines} MOTOROLA=1" 1960 ;; 1961mcore-*-elf) 1962 tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file} mcore/mcore-elf.h" 1963 tmake_file=mcore/t-mcore 1964 inhibit_libc=true 1965 ;; 1966mep-*-*) 1967 tm_file="dbxelf.h elfos.h ${tm_file}" 1968 tmake_file=mep/t-mep 1969 c_target_objs="mep-pragma.o" 1970 cxx_target_objs="mep-pragma.o" 1971 if test -d "${srcdir}/../newlib/libc/include" && 1972 test "x$with_headers" = x; then 1973 with_headers=yes 1974 fi 1975 use_gcc_stdint=wrap 1976 ;; 1977microblaze*-linux*) 1978 case $target in 1979 microblazeel-*) 1980 tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=0" 1981 ;; 1982 microblaze-*) 1983 tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=4321" 1984 ;; 1985 esac 1986 tm_file="${tm_file} dbxelf.h gnu-user.h linux.h microblaze/linux.h" 1987 tm_file="${tm_file} glibc-stdint.h" 1988 c_target_objs="${c_target_objs} microblaze-c.o" 1989 cxx_target_objs="${cxx_target_objs} microblaze-c.o" 1990 tmake_file="${tmake_file} microblaze/t-microblaze" 1991 tmake_file="${tmake_file} microblaze/t-microblaze-linux" 1992 ;; 1993microblaze*-*-rtems*) 1994 case $target in 1995 microblazeel-*) 1996 tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=0" 1997 ;; 1998 microblaze-*) 1999 tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=4321" 2000 ;; 2001 esac 2002 tm_file="${tm_file} dbxelf.h" 2003 tm_file="${tm_file} microblaze/rtems.h rtems.h newlib-stdint.h" 2004 c_target_objs="${c_target_objs} microblaze-c.o" 2005 cxx_target_objs="${cxx_target_objs} microblaze-c.o" 2006 tmake_file="${tmake_file} microblaze/t-microblaze" 2007 tmake_file="${tmake_file} microblaze/t-rtems" 2008 ;; 2009microblaze*-*-elf) 2010 case $target in 2011 microblazeel-*) 2012 tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=0" 2013 ;; 2014 microblaze-*) 2015 tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=4321" 2016 ;; 2017 esac 2018 tm_file="${tm_file} dbxelf.h newlib-stdint.h" 2019 c_target_objs="${c_target_objs} microblaze-c.o" 2020 cxx_target_objs="${cxx_target_objs} microblaze-c.o" 2021 tmake_file="${tmake_file} microblaze/t-microblaze" 2022 ;; 2023mips*-*-netbsd*) # NetBSD/mips, either endian. 2024 target_cpu_default="MASK_ABICALLS" 2025 tm_file="elfos.h ${tm_file} mips/elf.h netbsd.h netbsd-elf.h mips/netbsd.h" 2026 extra_options="${extra_options} netbsd.opt netbsd-elf.opt" 2027 ;; 2028mips*-img-linux*) 2029 tm_file="dbxelf.h elfos.h gnu-user.h linux.h linux-android.h glibc-stdint.h ${tm_file} mips/gnu-user.h mips/linux.h mips/linux-common.h mips/mti-linux.h" 2030 extra_options="${extra_options} linux-android.opt" 2031 tmake_file="${tmake_file} mips/t-img-linux" 2032 tm_defines="${tm_defines} MIPS_ISA_DEFAULT=37 MIPS_ABI_DEFAULT=ABI_32" 2033 gnu_ld=yes 2034 gas=yes 2035 ;; 2036mips*-mti-linux*) 2037 tm_file="dbxelf.h elfos.h gnu-user.h linux.h linux-android.h glibc-stdint.h ${tm_file} mips/gnu-user.h mips/linux.h mips/linux-common.h mips/mti-linux.h" 2038 extra_options="${extra_options} linux-android.opt" 2039 tmake_file="${tmake_file} mips/t-mti-linux" 2040 tm_defines="${tm_defines} MIPS_ISA_DEFAULT=33 MIPS_ABI_DEFAULT=ABI_32" 2041 gnu_ld=yes 2042 gas=yes 2043 ;; 2044mipsel-*-haiku*) 2045 target_cpu_default="MASK_ABICALLS" 2046 tm_file="elfos.h ${tm_file} haiku.h mips/haiku.h" 2047 tmake_file="${tmake_file} mips/t-elf t-haiku" 2048 ;; 2049mips*-*-linux*) # Linux MIPS, either endian. 2050 tm_file="dbxelf.h elfos.h gnu-user.h linux.h linux-android.h glibc-stdint.h ${tm_file} mips/gnu-user.h mips/linux.h mips/linux-common.h" 2051 extra_options="${extra_options} linux-android.opt" 2052 case ${target} in 2053 mipsisa32r6*) 2054 default_mips_arch=mips32r6 2055 ;; 2056 mipsisa32r2*) 2057 default_mips_arch=mips32r2 2058 ;; 2059 mipsisa32*) 2060 default_mips_arch=mips32 2061 ;; 2062 mips64el-st-linux-gnu) 2063 default_mips_abi=n32 2064 tm_file="${tm_file} mips/st.h" 2065 tmake_file="${tmake_file} mips/t-st" 2066 enable_mips_multilibs="yes" 2067 ;; 2068 mips64octeon*-*-linux*) 2069 default_mips_abi=n32 2070 tm_defines="${tm_defines} MIPS_CPU_STRING_DEFAULT=\\\"octeon\\\"" 2071 target_cpu_default=MASK_SOFT_FLOAT_ABI 2072 enable_mips_multilibs="yes" 2073 ;; 2074 mipsisa64r6*-*-linux*) 2075 default_mips_abi=n32 2076 default_mips_arch=mips64r6 2077 enable_mips_multilibs="yes" 2078 ;; 2079 mipsisa64r2*-*-linux*) 2080 default_mips_abi=n32 2081 default_mips_arch=mips64r2 2082 enable_mips_multilibs="yes" 2083 ;; 2084 mips64*-*-linux* | mipsisa64*-*-linux*) 2085 default_mips_abi=n32 2086 enable_mips_multilibs="yes" 2087 ;; 2088 esac 2089 if test x$enable_targets = xall; then 2090 enable_mips_multilibs="yes" 2091 fi 2092 if test x$enable_mips_multilibs = xyes; then 2093 tmake_file="${tmake_file} mips/t-linux64" 2094 fi 2095 ;; 2096mips*-mti-elf*) 2097 tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h mips/n32-elf.h mips/sde.h mips/mti-elf.h" 2098 tmake_file="mips/t-mti-elf" 2099 tm_defines="${tm_defines} MIPS_ISA_DEFAULT=33 MIPS_ABI_DEFAULT=ABI_32" 2100 ;; 2101mips*-img-elf*) 2102 tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h mips/n32-elf.h mips/sde.h mips/mti-elf.h" 2103 tmake_file="mips/t-img-elf" 2104 tm_defines="${tm_defines} MIPS_ISA_DEFAULT=37 MIPS_ABI_DEFAULT=ABI_32" 2105 ;; 2106mips*-sde-elf*) 2107 tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h mips/n32-elf.h mips/sde.h" 2108 tmake_file="mips/t-sde" 2109 extra_options="${extra_options} mips/sde.opt" 2110 case "${with_newlib}" in 2111 yes) 2112 # newlib / libgloss. 2113 ;; 2114 *) 2115 # MIPS toolkit libraries. 2116 tm_file="$tm_file mips/sdemtk.h" 2117 tmake_file="$tmake_file mips/t-sdemtk" 2118 case ${enable_threads} in 2119 "" | yes | mipssde) 2120 thread_file='mipssde' 2121 ;; 2122 esac 2123 ;; 2124 esac 2125 case ${target} in 2126 mipsisa32r6*) 2127 tm_defines="MIPS_ISA_DEFAULT=37 MIPS_ABI_DEFAULT=ABI_32" 2128 ;; 2129 mipsisa32r2*) 2130 tm_defines="MIPS_ISA_DEFAULT=33 MIPS_ABI_DEFAULT=ABI_32" 2131 ;; 2132 mipsisa32*) 2133 tm_defines="MIPS_ISA_DEFAULT=32 MIPS_ABI_DEFAULT=ABI_32" 2134 ;; 2135 mipsisa64r6*) 2136 tm_defines="MIPS_ISA_DEFAULT=69 MIPS_ABI_DEFAULT=ABI_N32" 2137 ;; 2138 mipsisa64r2*) 2139 tm_defines="MIPS_ISA_DEFAULT=65 MIPS_ABI_DEFAULT=ABI_N32" 2140 ;; 2141 mipsisa64*) 2142 tm_defines="MIPS_ISA_DEFAULT=64 MIPS_ABI_DEFAULT=ABI_N32" 2143 ;; 2144 esac 2145 ;; 2146mipsisa32-*-elf* | mipsisa32el-*-elf* | \ 2147mipsisa32r2-*-elf* | mipsisa32r2el-*-elf* | \ 2148mipsisa32r6-*-elf* | mipsisa32r6el-*-elf* | \ 2149mipsisa64-*-elf* | mipsisa64el-*-elf* | \ 2150mipsisa64r2-*-elf* | mipsisa64r2el-*-elf* | \ 2151mipsisa64r6-*-elf* | mipsisa64r6el-*-elf*) 2152 tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h" 2153 tmake_file="mips/t-isa3264" 2154 case ${target} in 2155 mipsisa32r6*) 2156 tm_defines="${tm_defines} MIPS_ISA_DEFAULT=37" 2157 ;; 2158 mipsisa32r2*) 2159 tm_defines="${tm_defines} MIPS_ISA_DEFAULT=33" 2160 ;; 2161 mipsisa32*) 2162 tm_defines="${tm_defines} MIPS_ISA_DEFAULT=32" 2163 ;; 2164 mipsisa64r6*) 2165 tm_defines="${tm_defines} MIPS_ISA_DEFAULT=69" 2166 ;; 2167 mipsisa64r2*) 2168 tm_defines="${tm_defines} MIPS_ISA_DEFAULT=65" 2169 ;; 2170 mipsisa64*) 2171 tm_defines="${tm_defines} MIPS_ISA_DEFAULT=64" 2172 ;; 2173 esac 2174 case ${target} in 2175 mipsisa32*-*-elfoabi*) 2176 tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_32" 2177 tm_file="${tm_file} mips/elfoabi.h" 2178 ;; 2179 mipsisa64*-*-elfoabi*) 2180 tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_O64" 2181 tm_file="${tm_file} mips/elfoabi.h" 2182 ;; 2183 *-*-elf*) 2184 tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_EABI" 2185 ;; 2186 esac 2187 ;; 2188mipsisa64sr71k-*-elf*) 2189 tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h" 2190 tmake_file=mips/t-sr71k 2191 tm_defines="${tm_defines} MIPS_ISA_DEFAULT=64 MIPS_CPU_STRING_DEFAULT=\\\"sr71000\\\" MIPS_ABI_DEFAULT=ABI_EABI" 2192 ;; 2193mipsisa64sb1-*-elf* | mipsisa64sb1el-*-elf*) 2194 tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h" 2195 tmake_file="mips/t-elf mips/t-sb1" 2196 tm_defines="${tm_defines} MIPS_ISA_DEFAULT=64 MIPS_CPU_STRING_DEFAULT=\\\"sb1\\\" MIPS_ABI_DEFAULT=ABI_O64" 2197 ;; 2198mips-*-elf* | mipsel-*-elf* | mipsr5900-*-elf* | mipsr5900el-*-elf*) 2199 tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h" 2200 tmake_file="mips/t-elf" 2201 ;; 2202mips64r5900-*-elf* | mips64r5900el-*-elf*) 2203 tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h mips/n32-elf.h" 2204 tmake_file="mips/t-elf" 2205 tm_defines="${tm_defines} MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_N32" 2206 ;; 2207mips64-*-elf* | mips64el-*-elf*) 2208 tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h" 2209 tmake_file="mips/t-elf" 2210 tm_defines="${tm_defines} MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64" 2211 ;; 2212mips64vr-*-elf* | mips64vrel-*-elf*) 2213 tm_file="elfos.h newlib-stdint.h ${tm_file} mips/vr.h mips/elf.h" 2214 tmake_file=mips/t-vr 2215 tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_EABI" 2216 ;; 2217mips64orion-*-elf* | mips64orionel-*-elf*) 2218 tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elforion.h mips/elf.h" 2219 tmake_file="mips/t-elf" 2220 tm_defines="${tm_defines} MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64" 2221 ;; 2222mips*-*-rtems*) 2223 tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h mips/rtems.h rtems.h" 2224 tmake_file="${tmake_file} mips/t-elf mips/t-rtems" 2225 ;; 2226mips-wrs-vxworks) 2227 tm_file="elfos.h ${tm_file} mips/elf.h vx-common.h vxworks.h mips/vxworks.h" 2228 tmake_file="${tmake_file} mips/t-vxworks" 2229 ;; 2230mipstx39-*-elf* | mipstx39el-*-elf*) 2231 tm_file="elfos.h newlib-stdint.h ${tm_file} mips/r3900.h mips/elf.h" 2232 tmake_file="mips/t-r3900" 2233 ;; 2234mmix-knuth-mmixware) 2235 tm_file="${tm_file} newlib-stdint.h" 2236 use_gcc_stdint=wrap 2237 ;; 2238mn10300-*-*) 2239 tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" 2240 if test x$stabs = xyes 2241 then 2242 tm_file="${tm_file} dbx.h" 2243 fi 2244 use_collect2=no 2245 use_gcc_stdint=wrap 2246 ;; 2247msp430*-*-*) 2248 tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" 2249 c_target_objs="msp430-c.o" 2250 cxx_target_objs="msp430-c.o" 2251 tmake_file="${tmake_file} msp430/t-msp430" 2252 ;; 2253nds32le-*-*) 2254 target_cpu_default="0" 2255 tm_defines="${tm_defines}" 2256 tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" 2257 tmake_file="nds32/t-nds32 nds32/t-mlibs" 2258 ;; 2259nds32be-*-*) 2260 target_cpu_default="0|MASK_BIG_ENDIAN" 2261 tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1" 2262 tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" 2263 tmake_file="nds32/t-nds32 nds32/t-mlibs" 2264 ;; 2265nios2-*-*) 2266 tm_file="elfos.h ${tm_file}" 2267 tmake_file="${tmake_file} nios2/t-nios2" 2268 case ${target} in 2269 nios2-*-linux*) 2270 tm_file="${tm_file} gnu-user.h linux.h glibc-stdint.h nios2/linux.h " 2271 ;; 2272 nios2-*-elf*) 2273 tm_file="${tm_file} newlib-stdint.h nios2/elf.h" 2274 extra_options="${extra_options} nios2/elf.opt" 2275 ;; 2276 nios2-*-rtems*) 2277 tm_file="${tm_file} newlib-stdint.h nios2/rtems.h rtems.h" 2278 tmake_file="${tmake_file} t-rtems nios2/t-rtems" 2279 ;; 2280 esac 2281 ;; 2282nvptx-*) 2283 tm_file="${tm_file} newlib-stdint.h" 2284 tmake_file="nvptx/t-nvptx" 2285 if test x$enable_as_accelerator = xyes; then 2286 extra_programs="${extra_programs} mkoffload\$(exeext)" 2287 tm_file="${tm_file} nvptx/offload.h" 2288 fi 2289 ;; 2290pdp11-*-*) 2291 tm_file="${tm_file} newlib-stdint.h" 2292 use_gcc_stdint=wrap 2293 ;; 2294# port not yet contributed 2295#powerpc-*-openbsd*) 2296# tmake_file="${tmake_file} rs6000/t-fprules" 2297# extra_headers= 2298# ;; 2299powerpc-*-darwin*) 2300 extra_options="${extra_options} rs6000/darwin.opt" 2301 case ${target} in 2302 *-darwin1[0-9]* | *-darwin[8-9]*) 2303 tmake_file="${tmake_file} rs6000/t-darwin8" 2304 tm_file="${tm_file} rs6000/darwin8.h" 2305 ;; 2306 *-darwin7*) 2307 tm_file="${tm_file} rs6000/darwin7.h" 2308 ;; 2309 *-darwin[0-6]*) 2310 ;; 2311 esac 2312 tmake_file="${tmake_file} t-slibgcc" 2313 extra_headers=altivec.h 2314 ;; 2315powerpc64-*-darwin*) 2316 extra_options="${extra_options} ${cpu_type}/darwin.opt" 2317 tmake_file="${tmake_file} ${cpu_type}/t-darwin64 t-slibgcc" 2318 tm_file="${tm_file} ${cpu_type}/darwin8.h ${cpu_type}/darwin64.h" 2319 extra_headers=altivec.h 2320 ;; 2321powerpc*-*-freebsd*) 2322 tm_file="${tm_file} dbxelf.h elfos.h ${fbsd_tm_file} rs6000/sysv4.h" 2323 extra_options="${extra_options} rs6000/sysv4.opt" 2324 tmake_file="rs6000/t-fprules rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm" 2325 case ${target} in 2326 powerpc64*) 2327 tm_file="${tm_file} rs6000/default64.h rs6000/freebsd64.h" 2328 tmake_file="${tmake_file} rs6000/t-freebsd64" 2329 extra_options="${extra_options} rs6000/linux64.opt" 2330 ;; 2331 *) 2332 tm_file="${tm_file} rs6000/freebsd.h" 2333 ;; 2334 esac 2335 ;; 2336powerpc-*-netbsd*) 2337 tm_file="${tm_file} dbxelf.h elfos.h netbsd.h netbsd-elf.h freebsd-spec.h rs6000/sysv4.h rs6000/netbsd.h" 2338 extra_options="${extra_options} netbsd.opt netbsd-elf.opt" 2339 tmake_file="${tmake_file} rs6000/t-netbsd" 2340 extra_options="${extra_options} rs6000/sysv4.opt" 2341 ;; 2342powerpc-*-eabispe*) 2343 tm_file="${tm_file} dbxelf.h elfos.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h rs6000/eabispe.h" 2344 extra_options="${extra_options} rs6000/sysv4.opt" 2345 tmake_file="rs6000/t-spe rs6000/t-ppccomm" 2346 use_gcc_stdint=wrap 2347 ;; 2348powerpc-*-eabisimaltivec*) 2349 tm_file="${tm_file} dbxelf.h elfos.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h rs6000/eabisim.h rs6000/eabialtivec.h" 2350 extra_options="${extra_options} rs6000/sysv4.opt" 2351 tmake_file="rs6000/t-fprules rs6000/t-ppcendian rs6000/t-ppccomm" 2352 use_gcc_stdint=wrap 2353 ;; 2354powerpc-*-eabisim*) 2355 tm_file="${tm_file} dbxelf.h elfos.h usegas.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h rs6000/eabisim.h" 2356 extra_options="${extra_options} rs6000/sysv4.opt" 2357 tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm" 2358 use_gcc_stdint=wrap 2359 ;; 2360powerpc-*-elf*) 2361 tm_file="${tm_file} dbxelf.h elfos.h usegas.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h" 2362 extra_options="${extra_options} rs6000/sysv4.opt" 2363 tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm" 2364 ;; 2365powerpc-*-eabialtivec*) 2366 tm_file="${tm_file} dbxelf.h elfos.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h rs6000/eabialtivec.h" 2367 extra_options="${extra_options} rs6000/sysv4.opt" 2368 tmake_file="rs6000/t-fprules rs6000/t-ppcendian rs6000/t-ppccomm" 2369 use_gcc_stdint=wrap 2370 ;; 2371powerpc-xilinx-eabi*) 2372 tm_file="${tm_file} dbxelf.h elfos.h usegas.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/singlefp.h rs6000/xfpu.h rs6000/xilinx.h" 2373 extra_options="${extra_options} rs6000/sysv4.opt rs6000/xilinx.opt" 2374 tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm rs6000/t-xilinx" 2375 use_gcc_stdint=wrap 2376 ;; 2377powerpc-*-eabi*) 2378 tm_file="${tm_file} dbxelf.h elfos.h usegas.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h" 2379 extra_options="${extra_options} rs6000/sysv4.opt" 2380 tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm" 2381 use_gcc_stdint=wrap 2382 ;; 2383powerpc-*-haiku*) 2384 tmake_file="${tmake_file} rs6000/t-fprules rs6000/t-ppcos rs6000/t-ppccomm t-haiku" 2385 tm_file="${tm_file} dbxelf.h elfos.h freebsd-spec.h rs6000/sysv4.h haiku.h rs6000/haiku.h" 2386 extra_options="${extra_options} rs6000/sysv4.opt" 2387 ;; 2388powerpc-*-rtems*) 2389 tm_file="${tm_file} dbxelf.h elfos.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h rs6000/rtems.h rtems.h" 2390 extra_options="${extra_options} rs6000/sysv4.opt" 2391 tmake_file="${tmake_file} rs6000/t-fprules rs6000/t-rtems rs6000/t-ppccomm" 2392 ;; 2393powerpc*-*-linux*) 2394 tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h freebsd-spec.h rs6000/sysv4.h" 2395 extra_options="${extra_options} rs6000/sysv4.opt" 2396 tmake_file="${tmake_file} rs6000/t-fprules rs6000/t-ppccomm" 2397 extra_objs="$extra_objs rs6000-linux.o" 2398 case ${target} in 2399 powerpc*le-*-*) 2400 tm_file="${tm_file} rs6000/sysv4le.h" ;; 2401 esac 2402 case ${target}:${with_cpu} in 2403 powerpc64*: | powerpc64*:native) cpu_is_64bit=yes ;; 2404 esac 2405 maybe_biarch=${cpu_is_64bit} 2406 case ${enable_targets} in 2407 *powerpc64*) maybe_biarch=yes ;; 2408 all) maybe_biarch=yes ;; 2409 esac 2410 case ${target} in 2411 powerpc64*-*-linux*spe* | powerpc64*-*-linux*paired*) 2412 echo "*** Configuration ${target} not supported" 1>&2 2413 exit 1 2414 ;; 2415 powerpc*-*-linux*spe* | powerpc*-*-linux*paired*) 2416 maybe_biarch= 2417 ;; 2418 esac 2419 case ${target}:${enable_targets}:${maybe_biarch} in 2420 powerpc64-* | powerpc-*:*:yes | *:*powerpc64-*:yes | *:all:yes \ 2421 | powerpc64le*:*powerpcle* | powerpc64le*:*powerpc-* \ 2422 | powerpcle-*:*powerpc64le*:yes) 2423 if test x$cpu_is_64bit = xyes; then 2424 tm_file="${tm_file} rs6000/default64.h" 2425 fi 2426 tm_file="rs6000/biarch64.h ${tm_file} rs6000/linux64.h glibc-stdint.h" 2427 tmake_file="$tmake_file rs6000/t-linux64" 2428 case ${target} in 2429 powerpc*le-*-*) 2430 tmake_file="$tmake_file rs6000/t-linux64le" 2431 case ${enable_targets} in 2432 all | *powerpc64-* | *powerpc-*) 2433 tmake_file="$tmake_file rs6000/t-linux64lebe" ;; 2434 esac ;; 2435 *) 2436 case ${enable_targets} in 2437 all | *powerpc64le-* | *powerpcle-*) 2438 tmake_file="$tmake_file rs6000/t-linux64bele" ;; 2439 esac ;; 2440 esac 2441 extra_options="${extra_options} rs6000/linux64.opt" 2442 ;; 2443 powerpc64*) 2444 tm_file="${tm_file} rs6000/default64.h rs6000/linux64.h glibc-stdint.h" 2445 extra_options="${extra_options} rs6000/linux64.opt" 2446 tmake_file="${tmake_file} rs6000/t-linux" 2447 ;; 2448 *) 2449 tm_file="${tm_file} rs6000/linux.h glibc-stdint.h" 2450 tmake_file="${tmake_file} rs6000/t-ppcos rs6000/t-linux" 2451 ;; 2452 esac 2453 case ${target} in 2454 powerpc*-*-linux*ppc476*) 2455 tm_file="${tm_file} rs6000/476.h" 2456 extra_options="${extra_options} rs6000/476.opt" ;; 2457 powerpc*-*-linux*altivec*) 2458 tm_file="${tm_file} rs6000/linuxaltivec.h" ;; 2459 powerpc*-*-linux*spe*) 2460 tm_file="${tm_file} rs6000/linuxspe.h rs6000/e500.h" ;; 2461 powerpc*-*-linux*paired*) 2462 tm_file="${tm_file} rs6000/750cl.h" ;; 2463 esac 2464 if test x${enable_secureplt} = xyes; then 2465 tm_file="rs6000/secureplt.h ${tm_file}" 2466 fi 2467 ;; 2468powerpc-wrs-vxworks|powerpc-wrs-vxworksae|powerpc-wrs-vxworksmils) 2469 tm_file="${tm_file} elfos.h freebsd-spec.h rs6000/sysv4.h" 2470 tmake_file="${tmake_file} rs6000/t-fprules rs6000/t-ppccomm rs6000/t-vxworks" 2471 extra_options="${extra_options} rs6000/sysv4.opt" 2472 extra_headers=ppc-asm.h 2473 case ${target} in 2474 *-vxworksmils*) 2475 tm_file="${tm_file} vx-common.h vxworksae.h rs6000/vxworks.h rs6000/e500.h rs6000/vxworksmils.h" 2476 tmake_file="${tmake_file} rs6000/t-vxworksmils" 2477 ;; 2478 *-vxworksae*) 2479 tm_file="${tm_file} vx-common.h vxworksae.h rs6000/vxworks.h rs6000/e500.h rs6000/vxworksae.h" 2480 tmake_file="${tmake_file} rs6000/t-vxworksae" 2481 ;; 2482 *-vxworks*) 2483 tm_file="${tm_file} vx-common.h vxworks.h rs6000/vxworks.h rs6000/e500.h" 2484 ;; 2485 esac 2486 ;; 2487powerpc-*-lynxos*) 2488 xm_defines=POSIX 2489 tm_file="${tm_file} dbxelf.h elfos.h rs6000/sysv4.h rs6000/lynx.h lynx.h" 2490 tmake_file="t-lynx rs6000/t-lynx" 2491 extra_options="${extra_options} rs6000/sysv4.opt lynx.opt" 2492 thread_file=lynx 2493 gnu_ld=yes 2494 gas=yes 2495 ;; 2496powerpcle-*-elf*) 2497 tm_file="${tm_file} dbxelf.h elfos.h usegas.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/sysv4le.h" 2498 tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm" 2499 extra_options="${extra_options} rs6000/sysv4.opt" 2500 ;; 2501powerpcle-*-eabisim*) 2502 tm_file="${tm_file} dbxelf.h elfos.h usegas.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h rs6000/e500.h rs6000/eabisim.h" 2503 tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm" 2504 extra_options="${extra_options} rs6000/sysv4.opt" 2505 use_gcc_stdint=wrap 2506 ;; 2507powerpcle-*-eabi*) 2508 tm_file="${tm_file} dbxelf.h elfos.h usegas.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h rs6000/e500.h" 2509 tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm" 2510 extra_options="${extra_options} rs6000/sysv4.opt" 2511 use_gcc_stdint=wrap 2512 ;; 2513rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*) 2514 tm_file="rs6000/biarch64.h ${tm_file} rs6000/aix.h rs6000/aix43.h rs6000/xcoff.h rs6000/aix-stdint.h" 2515 tmake_file="rs6000/t-aix43 t-slibgcc" 2516 extra_options="${extra_options} rs6000/aix64.opt" 2517 use_collect2=yes 2518 thread_file='aix' 2519 use_gcc_stdint=provide 2520 extra_headers= 2521 ;; 2522rs6000-ibm-aix5.1.* | powerpc-ibm-aix5.1.*) 2523 tm_file="rs6000/biarch64.h ${tm_file} rs6000/aix.h rs6000/aix51.h rs6000/xcoff.h rs6000/aix-stdint.h" 2524 extra_options="${extra_options} rs6000/aix64.opt" 2525 tmake_file="rs6000/t-aix43 t-slibgcc" 2526 use_collect2=yes 2527 thread_file='aix' 2528 use_gcc_stdint=wrap 2529 extra_headers= 2530 ;; 2531rs6000-ibm-aix5.2.* | powerpc-ibm-aix5.2.*) 2532 tm_file="${tm_file} rs6000/aix.h rs6000/aix52.h rs6000/xcoff.h rs6000/aix-stdint.h" 2533 tmake_file="rs6000/t-aix52 t-slibgcc" 2534 extra_options="${extra_options} rs6000/aix64.opt" 2535 use_collect2=yes 2536 thread_file='aix' 2537 use_gcc_stdint=wrap 2538 extra_headers= 2539 ;; 2540rs6000-ibm-aix5.3.* | powerpc-ibm-aix5.3.*) 2541 tm_file="${tm_file} rs6000/aix.h rs6000/aix53.h rs6000/xcoff.h rs6000/aix-stdint.h" 2542 tmake_file="rs6000/t-aix52 t-slibgcc" 2543 extra_options="${extra_options} rs6000/aix64.opt" 2544 use_collect2=yes 2545 thread_file='aix' 2546 use_gcc_stdint=wrap 2547 extra_headers=altivec.h 2548 ;; 2549rs6000-ibm-aix[6789].* | powerpc-ibm-aix[6789].*) 2550 tm_file="${tm_file} rs6000/aix.h rs6000/aix61.h rs6000/xcoff.h rs6000/aix-stdint.h" 2551 tmake_file="rs6000/t-aix52 t-slibgcc" 2552 extra_options="${extra_options} rs6000/aix64.opt" 2553 use_collect2=yes 2554 thread_file='aix' 2555 use_gcc_stdint=wrap 2556 extra_headers=altivec.h 2557 ;; 2558rl78-*-elf*) 2559 tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" 2560 target_has_targetm_common=no 2561 c_target_objs="rl78-c.o" 2562 cxx_target_objs="rl78-c.o" 2563 tmake_file="${tmake_file} rl78/t-rl78" 2564 ;; 2565rx-*-elf*) 2566 tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" 2567 tmake_file="${tmake_file} rx/t-rx" 2568 ;; 2569s390-*-linux*) 2570 default_gnu_indirect_function=yes 2571 tm_file="s390/s390.h dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h s390/linux.h" 2572 c_target_objs="${c_target_objs} s390-c.o" 2573 cxx_target_objs="${cxx_target_objs} s390-c.o" 2574 if test x$enable_targets = xall; then 2575 tmake_file="${tmake_file} s390/t-linux64" 2576 fi 2577 tmake_file="${tmake_file} s390/t-s390" 2578 ;; 2579s390x-*-linux*) 2580 default_gnu_indirect_function=yes 2581 tm_file="s390/s390x.h s390/s390.h dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h s390/linux.h" 2582 tm_p_file="linux-protos.h s390/s390-protos.h" 2583 c_target_objs="${c_target_objs} s390-c.o" 2584 cxx_target_objs="${cxx_target_objs} s390-c.o" 2585 md_file=s390/s390.md 2586 extra_modes=s390/s390-modes.def 2587 out_file=s390/s390.c 2588 tmake_file="${tmake_file} s390/t-linux64 s390/t-s390" 2589 ;; 2590s390x-ibm-tpf*) 2591 tm_file="s390/s390x.h s390/s390.h dbxelf.h elfos.h s390/tpf.h" 2592 tm_p_file=s390/s390-protos.h 2593 c_target_objs="${c_target_objs} s390-c.o" 2594 cxx_target_objs="${cxx_target_objs} s390-c.o" 2595 md_file=s390/s390.md 2596 extra_modes=s390/s390-modes.def 2597 out_file=s390/s390.c 2598 thread_file='tpf' 2599 extra_options="${extra_options} s390/tpf.opt" 2600 tmake_file="${tmake_file} s390/t-s390" 2601 ;; 2602sh-*-elf* | sh[12346l]*-*-elf* | \ 2603 sh-*-linux* | sh[2346lbe]*-*-linux* | \ 2604 sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \ 2605 sh64-*-netbsd* | sh64l*-*-netbsd*) 2606 tmake_file="${tmake_file} sh/t-sh sh/t-elf" 2607 if test x${with_endian} = x; then 2608 case ${target} in 2609 sh[1234]*be-*-* | sh[1234]*eb-*-*) with_endian=big ;; 2610 shbe-*-* | sheb-*-*) with_endian=big,little ;; 2611 sh[1234]l* | sh[34]*-*-linux*) with_endian=little ;; 2612 shl* | sh64l* | sh*-*-linux* | \ 2613 sh5l* | sh-superh-elf) with_endian=little,big ;; 2614 sh[1234]*-*-*) with_endian=big ;; 2615 *) with_endian=big,little ;; 2616 esac 2617 fi 2618 # TM_ENDIAN_CONFIG is used by t-sh to determine multilibs. 2619 # First word : the default endian. 2620 # Second word: the secondary endian (optional). 2621 case ${with_endian} in 2622 big) TM_ENDIAN_CONFIG=mb ;; 2623 little) TM_ENDIAN_CONFIG=ml ;; 2624 big,little) TM_ENDIAN_CONFIG="mb ml" ;; 2625 little,big) TM_ENDIAN_CONFIG="ml mb" ;; 2626 *) echo "with_endian=${with_endian} not supported."; exit 1 ;; 2627 esac 2628 case ${with_endian} in 2629 little*) tm_file="sh/little.h ${tm_file}" ;; 2630 esac 2631 tm_file="${tm_file} dbxelf.h elfos.h sh/elf.h" 2632 case ${target} in 2633 sh*-*-linux*) tmake_file="${tmake_file} sh/t-linux" 2634 tm_file="${tm_file} gnu-user.h linux.h glibc-stdint.h sh/linux.h" ;; 2635 sh*-*-netbsd*) 2636 tm_file="${tm_file} netbsd.h netbsd-elf.h sh/netbsd-elf.h" 2637 extra_options="${extra_options} netbsd.opt netbsd-elf.opt" 2638 2639 ;; 2640 sh*-superh-elf) if test x$with_libgloss != xno; then 2641 with_libgloss=yes 2642 tm_file="${tm_file} sh/newlib.h" 2643 fi 2644 tm_file="${tm_file} sh/embed-elf.h" 2645 tm_file="${tm_file} sh/superh.h" 2646 extra_options="${extra_options} sh/superh.opt" ;; 2647 *) if test x$with_newlib = xyes \ 2648 && test x$with_libgloss = xyes; then 2649 tm_file="${tm_file} sh/newlib.h" 2650 fi 2651 tm_file="${tm_file} sh/embed-elf.h" ;; 2652 esac 2653 case ${target} in 2654 sh5*-*-netbsd*) 2655 # SHmedia, 32-bit ABI 2656 tmake_file="${tmake_file} sh/t-sh64" 2657 ;; 2658 sh64*-netbsd*) 2659 # SHmedia, 64-bit ABI 2660 tmake_file="${tmake_file} sh/t-sh64 sh/t-netbsd-sh5-64" 2661 ;; 2662 *-*-netbsd) 2663 ;; 2664 sh64*-*-linux*) 2665 tmake_file="${tmake_file} sh/t-sh64" 2666 tm_file="${tm_file} sh/sh64.h" 2667 extra_headers="shmedia.h ushmedia.h sshmedia.h" 2668 ;; 2669 sh64*) 2670 tmake_file="${tmake_file} sh/t-sh64" 2671 tm_file="${tm_file} sh/sh64.h" 2672 if test x$with_newlib = xyes; then 2673 tm_file="${tm_file} newlib-stdint.h" 2674 fi 2675 extra_headers="shmedia.h ushmedia.h sshmedia.h" 2676 ;; 2677 *-*-elf*) 2678 tm_file="${tm_file} newlib-stdint.h" 2679 ;; 2680 esac 2681 # sed el/eb endian suffixes away to avoid confusion with sh[23]e 2682 case `echo ${target} | sed 's/e[lb]-/-/'` in 2683 sh64*-*-netbsd*) sh_cpu_target=sh5-64media ;; 2684 sh64* | sh5*-*-netbsd*) sh_cpu_target=sh5-32media ;; 2685 sh4a_single_only*) sh_cpu_target=sh4a-single-only ;; 2686 sh4a_single*) sh_cpu_target=sh4a-single ;; 2687 sh4a_nofpu*) sh_cpu_target=sh4a-nofpu ;; 2688 sh4al) sh_cpu_target=sh4al ;; 2689 sh4a*) sh_cpu_target=sh4a ;; 2690 sh4_single_only*) sh_cpu_target=sh4-single-only ;; 2691 sh4_single*) sh_cpu_target=sh4-single ;; 2692 sh4_nofpu*) sh_cpu_target=sh4-nofpu ;; 2693 sh4* | sh-superh-*) sh_cpu_target=sh4 ;; 2694 sh3e*) sh_cpu_target=sh3e ;; 2695 sh*-*-netbsd* | sh3*) sh_cpu_target=sh3 ;; 2696 sh2a_single_only*) sh_cpu_target=sh2a-single-only ;; 2697 sh2a_single*) sh_cpu_target=sh2a-single ;; 2698 sh2a_nofpu*) sh_cpu_target=sh2a-nofpu ;; 2699 sh2a*) sh_cpu_target=sh2a ;; 2700 sh2e*) sh_cpu_target=sh2e ;; 2701 sh2*) sh_cpu_target=sh2 ;; 2702 *) sh_cpu_target=sh1 ;; 2703 esac 2704 # did the user say --without-fp ? 2705 if test x$with_fp = xno; then 2706 case ${sh_cpu_target} in 2707 sh5-*media) sh_cpu_target=${sh_cpu_target}-nofpu ;; 2708 sh4al | sh1) ;; 2709 sh4a* ) sh_cpu_target=sh4a-nofpu ;; 2710 sh4*) sh_cpu_target=sh4-nofpu ;; 2711 sh3*) sh_cpu_target=sh3 ;; 2712 sh2a*) sh_cpu_target=sh2a-nofpu ;; 2713 sh2*) sh_cpu_target=sh2 ;; 2714 *) echo --without-fp not available for $target: ignored 2715 esac 2716 tm_defines="$tm_defines STRICT_NOFPU=1" 2717 fi 2718 sh_cpu_default="`echo $with_cpu|sed s/^m/sh/|tr A-Z_ a-z-`" 2719 case $sh_cpu_default in 2720 sh5-64media-nofpu | sh5-64media | \ 2721 sh5-32media-nofpu | sh5-32media | sh5-compact-nofpu | sh5-compact | \ 2722 sh2a-single-only | sh2a-single | sh2a-nofpu | sh2a | \ 2723 sh4a-single-only | sh4a-single | sh4a-nofpu | sh4a | sh4al | \ 2724 sh4-single-only | sh4-single | sh4-nofpu | sh4 | sh4-300 | \ 2725 sh3e | sh3 | sh2e | sh2 | sh1) ;; 2726 "") sh_cpu_default=${sh_cpu_target} ;; 2727 *) echo "with_cpu=$with_cpu not supported"; exit 1 ;; 2728 esac 2729 sh_multilibs=${with_multilib_list} 2730 if test "$sh_multilibs" = "default" ; then 2731 case ${target} in 2732 sh64-superh-linux* | \ 2733 sh[1234]*) sh_multilibs=${sh_cpu_target} ;; 2734 sh64* | sh5*) sh_multilibs=m5-32media,m5-32media-nofpu,m5-compact,m5-compact-nofpu,m5-64media,m5-64media-nofpu ;; 2735 sh-superh-*) sh_multilibs=m4,m4-single,m4-single-only,m4-nofpu ;; 2736 sh*-*-linux*) sh_multilibs=m1,m2,m2a,m3e,m4 ;; 2737 sh*-*-netbsd*) sh_multilibs=m3,m3e,m4 ;; 2738 *) sh_multilibs=m1,m2,m2e,m4,m4-single,m4-single-only,m2a,m2a-single ;; 2739 esac 2740 if test x$with_fp = xno; then 2741 sh_multilibs="`echo $sh_multilibs|sed -e s/m4/sh4-nofpu/ -e s/,m4-[^,]*//g -e s/,m[23]e// -e s/m2a,m2a-single/m2a-nofpu/ -e s/m5-..m....,//g`" 2742 fi 2743 fi 2744 target_cpu_default=SELECT_`echo ${sh_cpu_default}|tr abcdefghijklmnopqrstuvwxyz- ABCDEFGHIJKLMNOPQRSTUVWXYZ_` 2745 tm_defines=${tm_defines}' SH_MULTILIB_CPU_DEFAULT=\"'`echo $sh_cpu_default|sed s/sh/m/`'\"' 2746 tm_defines="$tm_defines SUPPORT_`echo $sh_cpu_default | sed 's/^m/sh/' | tr abcdefghijklmnopqrstuvwxyz- ABCDEFGHIJKLMNOPQRSTUVWXYZ_`=1" 2747 sh_multilibs=`echo $sh_multilibs | sed -e 's/,/ /g' -e 's/^[Ss][Hh]/m/' -e 's/ [Ss][Hh]/ m/g' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ_ abcdefghijklmnopqrstuvwxyz-` 2748 for sh_multilib in ${sh_multilibs}; do 2749 case ${sh_multilib} in 2750 m1 | m2 | m2e | m3 | m3e | \ 2751 m4 | m4-single | m4-single-only | m4-nofpu | m4-300 |\ 2752 m4a | m4a-single | m4a-single-only | m4a-nofpu | m4al | \ 2753 m2a | m2a-single | m2a-single-only | m2a-nofpu | \ 2754 m5-64media | m5-64media-nofpu | \ 2755 m5-32media | m5-32media-nofpu | \ 2756 m5-compact | m5-compact-nofpu) 2757 # TM_MULTILIB_CONFIG is used by t-sh for the non-endian multilib definition 2758 # It is passed to MULTIILIB_OPTIONS verbatim. 2759 TM_MULTILIB_CONFIG="${TM_MULTILIB_CONFIG}/${sh_multilib}" 2760 tm_defines="$tm_defines SUPPORT_`echo $sh_multilib | sed 's/^m/sh/' | tr abcdefghijklmnopqrstuvwxyz- ABCDEFGHIJKLMNOPQRSTUVWXYZ_`=1" 2761 ;; 2762 \!*) # TM_MULTILIB_EXCEPTIONS_CONFIG is used by t-sh 2763 # It is passed the MULTILIB_EXCEPTIONS verbatim. 2764 TM_MULTILIB_EXCEPTIONS_CONFIG="${TM_MULTILIB_EXCEPTIONS_CONFIG} `echo $sh_multilib | sed 's/^!//'`" ;; 2765 *) 2766 echo "with_multilib_list=${sh_multilib} not supported." 2767 exit 1 2768 ;; 2769 esac 2770 done 2771 TM_MULTILIB_CONFIG=`echo $TM_MULTILIB_CONFIG | sed 's:^/::'` 2772 if test x${enable_incomplete_targets} = xyes ; then 2773 tm_defines="$tm_defines SUPPORT_SH1=1 SUPPORT_SH2E=1 SUPPORT_SH4=1 SUPPORT_SH4_SINGLE=1 SUPPORT_SH2A=1 SUPPORT_SH2A_SINGLE=1 SUPPORT_SH5_32MEDIA=1 SUPPORT_SH5_32MEDIA_NOFPU=1 SUPPORT_SH5_64MEDIA=1 SUPPORT_SH5_64MEDIA_NOFPU=1" 2774 fi 2775 tm_file="$tm_file ./sysroot-suffix.h" 2776 tmake_file="$tmake_file t-sysroot-suffix" 2777 ;; 2778sh-*-rtems*) 2779 tmake_file="${tmake_file} sh/t-sh sh/t-rtems" 2780 tm_file="${tm_file} dbxelf.h elfos.h sh/elf.h sh/embed-elf.h sh/rtemself.h rtems.h newlib-stdint.h" 2781 ;; 2782sh-wrs-vxworks) 2783 tmake_file="$tmake_file sh/t-sh sh/t-vxworks" 2784 tm_file="${tm_file} elfos.h sh/elf.h sh/embed-elf.h vx-common.h vxworks.h sh/vxworks.h" 2785 ;; 2786sparc-*-elf*) 2787 tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h sparc/sysv4.h sparc/sp-elf.h" 2788 case ${target} in 2789 *-leon-*) 2790 tmake_file="sparc/t-sparc sparc/t-leon" 2791 ;; 2792 *-leon[3-9]*) 2793 tmake_file="sparc/t-sparc sparc/t-leon3" 2794 ;; 2795 *) 2796 tmake_file="sparc/t-sparc sparc/t-elf" 2797 ;; 2798 esac 2799 ;; 2800sparc-*-rtems*) 2801 tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h sparc/sp-elf.h sparc/rtemself.h rtems.h newlib-stdint.h" 2802 tmake_file="${tmake_file} sparc/t-sparc sparc/t-rtems" 2803 ;; 2804sparc-*-linux*) 2805 tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h gnu-user.h linux.h glibc-stdint.h sparc/tso.h" 2806 extra_options="${extra_options} sparc/long-double-switch.opt" 2807 case ${target} in 2808 *-leon-*) 2809 tmake_file="${tmake_file} sparc/t-sparc sparc/t-leon" 2810 ;; 2811 *-leon[3-9]*) 2812 tmake_file="${tmake_file} sparc/t-sparc sparc/t-leon3" 2813 ;; 2814 *) 2815 tmake_file="${tmake_file} sparc/t-sparc" 2816 ;; 2817 esac 2818 if test x$enable_targets = xall; then 2819 tm_file="sparc/biarch64.h ${tm_file} sparc/linux64.h" 2820 tmake_file="${tmake_file} sparc/t-linux64" 2821 else 2822 tm_file="${tm_file} sparc/linux.h" 2823 tmake_file="${tmake_file} sparc/t-linux" 2824 fi 2825 ;; 2826sparc-*-netbsdelf*) 2827 tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h netbsd.h netbsd-elf.h sparc/netbsd-elf.h" 2828 extra_options="${extra_options} netbsd.opt netbsd-elf.opt" 2829 extra_options="${extra_options} sparc/long-double-switch.opt" 2830 tmake_file="${tmake_file} sparc/t-sparc" 2831 ;; 2832sparc*-*-solaris2*) 2833 tm_file="sparc/biarch64.h ${tm_file} ${sol2_tm_file} sparc/tso.h" 2834 case ${target} in 2835 sparc64-*-* | sparcv9-*-*) 2836 tm_file="sparc/default-64.h ${tm_file}" 2837 ;; 2838 *) 2839 test x$with_cpu != x || with_cpu=v9 2840 ;; 2841 esac 2842 tmake_file="${tmake_file} sparc/t-sparc sparc/t-sol2" 2843 ;; 2844sparc-wrs-vxworks) 2845 tm_file="${tm_file} elfos.h sparc/sysv4.h vx-common.h vxworks.h sparc/vxworks.h" 2846 tmake_file="${tmake_file} sparc/t-sparc sparc/t-vxworks" 2847 ;; 2848sparc64-*-elf*) 2849 tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h sparc/sysv4.h sparc/sp64-elf.h" 2850 extra_options="${extra_options}" 2851 tmake_file="${tmake_file} sparc/t-sparc" 2852 ;; 2853sparc64-*-rtems*) 2854 tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h sparc/sysv4.h sparc/sp64-elf.h sparc/rtemself.h rtems.h" 2855 extra_options="${extra_options}" 2856 tmake_file="${tmake_file} sparc/t-sparc sparc/t-rtems-64" 2857 ;; 2858sparc64-*-linux*) 2859 tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h sparc/sysv4.h gnu-user.h linux.h glibc-stdint.h sparc/default-64.h sparc/linux64.h sparc/tso.h" 2860 extra_options="${extra_options} sparc/long-double-switch.opt" 2861 tmake_file="${tmake_file} sparc/t-sparc sparc/t-linux64" 2862 ;; 2863sparc64-*-freebsd*|ultrasparc-*-freebsd*) 2864 tm_file="${tm_file} ${fbsd_tm_file} dbxelf.h elfos.h sparc/sysv4.h sparc/freebsd.h" 2865 extra_options="${extra_options} sparc/long-double-switch.opt" 2866 case "x$with_cpu" in 2867 xultrasparc) ;; 2868 x) with_cpu=ultrasparc ;; 2869 *) echo "$with_cpu not supported for freebsd target"; exit 1 ;; 2870 esac 2871 tmake_file="${tmake_file} sparc/t-sparc" 2872 ;; 2873sparc64-*-netbsd*) 2874 tm_file="sparc/biarch64.h ${tm_file}" 2875 tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h netbsd.h netbsd-elf.h sparc/netbsd-elf.h" 2876 extra_options="${extra_options} netbsd.opt netbsd-elf.opt" 2877 extra_options="${extra_options} sparc/long-double-switch.opt" 2878 tmake_file="${tmake_file} sparc/t-sparc sparc/t-netbsd64" 2879 ;; 2880sparc64-*-openbsd*) 2881 tm_file="sparc/openbsd1-64.h ${tm_file} dbxelf.h elfos.h sparc/sysv4.h sparc/sp64-elf.h" 2882 tm_file="${tm_file} openbsd.h openbsd-stdint.h openbsd-libpthread.h sparc/openbsd64.h" 2883 extra_options="${extra_options} openbsd.opt" 2884 extra_options="${extra_options}" 2885 gas=yes gnu_ld=yes 2886 with_cpu=ultrasparc 2887 tmake_file="${tmake_file} sparc/t-sparc" 2888 ;; 2889spu-*-elf*) 2890 tm_file="dbxelf.h elfos.h spu/spu-elf.h spu/spu.h newlib-stdint.h" 2891 tmake_file="spu/t-spu-elf" 2892 native_system_header_dir=/include 2893 extra_headers="spu_intrinsics.h spu_internals.h vmx2spu.h spu_mfcio.h vec_types.h spu_cache.h" 2894 extra_modes=spu/spu-modes.def 2895 c_target_objs="${c_target_objs} spu-c.o" 2896 cxx_target_objs="${cxx_target_objs} spu-c.o" 2897 ;; 2898tic6x-*-elf) 2899 tm_file="elfos.h ${tm_file} c6x/elf-common.h c6x/elf.h" 2900 tm_file="${tm_file} dbxelf.h tm-dwarf2.h newlib-stdint.h" 2901 tmake_file="c6x/t-c6x c6x/t-c6x-elf" 2902 use_collect2=no 2903 ;; 2904tic6x-*-uclinux) 2905 tm_file="elfos.h ${tm_file} gnu-user.h linux.h c6x/elf-common.h c6x/uclinux-elf.h" 2906 tm_file="${tm_file} dbxelf.h tm-dwarf2.h glibc-stdint.h" 2907 tm_file="${tm_file} ./sysroot-suffix.h" 2908 tmake_file="t-sysroot-suffix t-slibgcc" 2909 tmake_file="${tmake_file} c6x/t-c6x c6x/t-c6x-elf c6x/t-c6x-uclinux" 2910 use_collect2=no 2911 ;; 2912tilegx*-*-linux*) 2913 tm_file="elfos.h gnu-user.h linux.h glibc-stdint.h tilegx/linux.h ${tm_file}" 2914 tmake_file="${tmake_file} tilegx/t-tilegx" 2915 extra_objs="${extra_objs} mul-tables.o" 2916 c_target_objs="${c_target_objs} tilegx-c.o" 2917 cxx_target_objs="${cxx_target_objs} tilegx-c.o" 2918 extra_headers="feedback.h" 2919 case $target in 2920 tilegxbe-*) 2921 tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1" 2922 ;; 2923 esac 2924 ;; 2925tilepro*-*-linux*) 2926 tm_file="elfos.h gnu-user.h linux.h glibc-stdint.h tilepro/linux.h ${tm_file}" 2927 tmake_file="${tmake_file} tilepro/t-tilepro" 2928 extra_objs="${extra_objs} mul-tables.o" 2929 c_target_objs="${c_target_objs} tilepro-c.o" 2930 cxx_target_objs="${cxx_target_objs} tilepro-c.o" 2931 extra_headers="feedback.h" 2932 ;; 2933v850-*-rtems*) 2934 target_cpu_default="TARGET_CPU_generic" 2935 tm_file="dbxelf.h elfos.h v850/v850.h" 2936 tm_file="${tm_file} rtems.h v850/rtems.h newlib-stdint.h" 2937 tmake_file="${tmake_file} v850/t-v850" 2938 tmake_file="${tmake_file} v850/t-rtems" 2939 use_collect2=no 2940 c_target_objs="v850-c.o" 2941 cxx_target_objs="v850-c.o" 2942 ;; 2943v850*-*-*) 2944 case ${target} in 2945 v850e3v5-*-*) 2946 target_cpu_default="TARGET_CPU_v850e3v5" 2947 ;; 2948 v850e2v3-*-*) 2949 target_cpu_default="TARGET_CPU_v850e2v3" 2950 ;; 2951 v850e2-*-*) 2952 target_cpu_default="TARGET_CPU_v850e2" 2953 ;; 2954 v850e1-*-* | v850es-*-*) 2955 target_cpu_default="TARGET_CPU_v850e1" 2956 ;; 2957 v850e-*-*) 2958 target_cpu_default="TARGET_CPU_v850e" 2959 ;; 2960 v850-*-*) 2961 target_cpu_default="TARGET_CPU_generic" 2962 ;; 2963 esac 2964 tm_file="dbxelf.h elfos.h newlib-stdint.h v850/v850.h" 2965 if test x$stabs = xyes 2966 then 2967 tm_file="${tm_file} dbx.h" 2968 fi 2969 use_collect2=no 2970 c_target_objs="v850-c.o" 2971 cxx_target_objs="v850-c.o" 2972 use_gcc_stdint=wrap 2973 ;; 2974vax-*-linux*) 2975 tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h linux.h vax/elf.h vax/linux.h" 2976 extra_options="${extra_options} vax/elf.opt" 2977 ;; 2978vax-*-netbsdelf*) 2979 tm_file="${tm_file} elfos.h netbsd.h netbsd-elf.h vax/elf.h vax/netbsd-elf.h" 2980 extra_options="${extra_options} netbsd.opt netbsd-elf.opt vax/elf.opt" 2981 ;; 2982vax-*-openbsd*) 2983 tm_file="vax/vax.h vax/openbsd1.h openbsd.h openbsd-stdint.h openbsd-pthread.h vax/openbsd.h" 2984 extra_options="${extra_options} openbsd.opt" 2985 use_collect2=yes 2986 ;; 2987visium-*-elf*) 2988 tm_file="dbxelf.h elfos.h ${tm_file} visium/elf.h newlib-stdint.h" 2989 tmake_file="visium/t-visium visium/t-crtstuff" 2990 ;; 2991xstormy16-*-elf) 2992 # For historical reasons, the target files omit the 'x'. 2993 tm_file="dbxelf.h elfos.h newlib-stdint.h stormy16/stormy16.h" 2994 tm_p_file=stormy16/stormy16-protos.h 2995 md_file=stormy16/stormy16.md 2996 out_file=stormy16/stormy16.c 2997 extra_options=stormy16/stormy16.opt 2998 tmake_file="stormy16/t-stormy16" 2999 ;; 3000xtensa*-*-elf*) 3001 tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h xtensa/elf.h" 3002 extra_options="${extra_options} xtensa/elf.opt" 3003 ;; 3004xtensa*-*-linux*) 3005 tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h xtensa/linux.h" 3006 tmake_file="${tmake_file} xtensa/t-xtensa" 3007 ;; 3008am33_2.0-*-linux*) 3009 tm_file="mn10300/mn10300.h dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h mn10300/linux.h" 3010 gas=yes gnu_ld=yes 3011 use_collect2=no 3012 ;; 3013m32c-*-rtems*) 3014 tm_file="dbxelf.h elfos.h ${tm_file} m32c/rtems.h rtems.h newlib-stdint.h" 3015 c_target_objs="m32c-pragma.o" 3016 cxx_target_objs="m32c-pragma.o" 3017 ;; 3018m32c-*-elf*) 3019 tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" 3020 c_target_objs="m32c-pragma.o" 3021 cxx_target_objs="m32c-pragma.o" 3022 ;; 3023*) 3024 echo "*** Configuration ${target} not supported" 1>&2 3025 exit 1 3026 ;; 3027esac 3028 3029case ${target} in 3030i[34567]86-*-linux* | x86_64-*-linux*) 3031 tmake_file="${tmake_file} i386/t-pmm_malloc i386/t-i386" 3032 ;; 3033i[34567]86-*-* | x86_64-*-*) 3034 tmake_file="${tmake_file} i386/t-gmm_malloc i386/t-i386" 3035 ;; 3036powerpc*-*-* | rs6000-*-*) 3037 tm_file="${tm_file} rs6000/option-defaults.h" 3038esac 3039 3040# Build mkoffload tool 3041case ${target} in 3042*-intelmic-* | *-intelmicemul-*) 3043 tmake_file="${tmake_file} i386/t-intelmic" 3044 tm_file="${tm_file} i386/intelmic-offload.h" 3045 ;; 3046esac 3047 3048if [ "$target_has_targetcm" = "no" ]; then 3049 c_target_objs="$c_target_objs default-c.o" 3050 cxx_target_objs="$cxx_target_objs default-c.o" 3051fi 3052 3053if [ "$common_out_file" = "" ]; then 3054 if [ "$target_has_targetm_common" = "yes" ]; then 3055 common_out_file="$cpu_type/$cpu_type-common.c" 3056 else 3057 common_out_file="default-common.c" 3058 fi 3059fi 3060 3061# Support for --with-cpu and related options (and a few unrelated options, 3062# too). 3063case ${with_cpu} in 3064 yes | no) 3065 echo "--with-cpu must be passed a value" 1>&2 3066 exit 1 3067 ;; 3068esac 3069 3070# Set arch and cpu from ${target} and ${target_noncanonical}. Set cpu 3071# to generic if there is no processor scheduler model for the target. 3072arch= 3073cpu= 3074arch_without_sse2=no 3075arch_without_64bit=no 3076case ${target} in 3077 i386-*-freebsd*) 3078 if test $fbsd_major -ge 6; then 3079 arch=i486 3080 else 3081 arch=i386 3082 fi 3083 cpu=generic 3084 arch_without_sse2=yes 3085 arch_without_64bit=yes 3086 ;; 3087 i386-*-*) 3088 arch=i386 3089 cpu=i386 3090 arch_without_sse2=yes 3091 arch_without_64bit=yes 3092 ;; 3093 i486-*-*) 3094 arch=i486 3095 cpu=i486 3096 arch_without_sse2=yes 3097 arch_without_64bit=yes 3098 ;; 3099 i586-*-*) 3100 arch_without_sse2=yes 3101 arch_without_64bit=yes 3102 case ${target_noncanonical} in 3103 k6_2-*) 3104 arch=k6-2 3105 cpu=k6-2 3106 ;; 3107 k6_3-*) 3108 arch=k6-3 3109 cpu=k6-3 3110 ;; 3111 k6-*) 3112 arch=k6 3113 cpu=k6 3114 ;; 3115 pentium_mmx-*|winchip_c6-*|winchip2-*|c3-*) 3116 arch=pentium-mmx 3117 cpu=pentium-mmx 3118 ;; 3119 *) 3120 arch=pentium 3121 cpu=pentium 3122 ;; 3123 esac 3124 ;; 3125 i686-*-* | i786-*-*) 3126 case ${target_noncanonical} in 3127 bdver4-*) 3128 arch=bdver4 3129 cpu=bdver4 3130 ;; 3131 bdver3-*) 3132 arch=bdver3 3133 cpu=bdver3 3134 ;; 3135 bdver2-*) 3136 arch=bdver2 3137 cpu=bdver2 3138 ;; 3139 bdver1-*) 3140 arch=bdver1 3141 cpu=bdver1 3142 ;; 3143 btver1-*) 3144 arch=btver1 3145 cpu=btver1 3146 ;; 3147 btver2-*) 3148 arch=btver2 3149 cpu=btver2 3150 ;; 3151 amdfam10-*|barcelona-*) 3152 arch=amdfam10 3153 cpu=amdfam10 3154 ;; 3155 k8_sse3-*|opteron_sse3-*|athlon64_sse3-*) 3156 arch=k8-sse3 3157 cpu=k8-sse3 3158 ;; 3159 k8-*|opteron-*|athlon64-*|athlon_fx-*) 3160 arch=k8 3161 cpu=k8 3162 ;; 3163 athlon_xp-*|athlon_mp-*|athlon_4-*) 3164 arch=athlon-4 3165 cpu=athlon-4 3166 arch_without_sse2=yes 3167 arch_without_64bit=yes 3168 ;; 3169 athlon_tbird-*|athlon-*) 3170 arch=athlon 3171 cpu=athlon 3172 arch_without_sse2=yes 3173 ;; 3174 geode-*) 3175 arch=geode 3176 cpu=geode 3177 arch_without_sse2=yes 3178 ;; 3179 pentium2-*) 3180 arch=pentium2 3181 cpu=pentium2 3182 arch_without_sse2=yes 3183 ;; 3184 pentium3-*|pentium3m-*) 3185 arch=pentium3 3186 cpu=pentium3 3187 arch_without_sse2=yes 3188 ;; 3189 pentium4-*|pentium4m-*) 3190 arch=pentium4 3191 cpu=pentium4 3192 ;; 3193 prescott-*) 3194 arch=prescott 3195 cpu=prescott 3196 ;; 3197 nocona-*) 3198 arch=nocona 3199 cpu=nocona 3200 ;; 3201 atom-*) 3202 arch=atom 3203 cpu=atom 3204 ;; 3205 slm-*) 3206 arch=slm 3207 cpu=slm 3208 ;; 3209 core2-*) 3210 arch=core2 3211 cpu=core2 3212 ;; 3213 corei7-*) 3214 arch=corei7 3215 cpu=corei7 3216 ;; 3217 corei7_avx-*) 3218 arch=corei7-avx 3219 cpu=corei7-avx 3220 ;; 3221 pentium_m-*) 3222 arch=pentium-m 3223 cpu=pentium-m 3224 ;; 3225 pentiumpro-*) 3226 arch=pentiumpro 3227 cpu=pentiumpro 3228 arch_without_sse2=yes 3229 ;; 3230 *) 3231 arch=pentiumpro 3232 cpu=generic 3233 arch_without_sse2=yes 3234 arch_without_64bit=yes 3235 ;; 3236 esac 3237 ;; 3238 x86_64-*-*) 3239 case ${target_noncanonical} in 3240 bdver4-*) 3241 arch=bdver4 3242 cpu=bdver4 3243 ;; 3244 bdver3-*) 3245 arch=bdver3 3246 cpu=bdver3 3247 ;; 3248 bdver2-*) 3249 arch=bdver2 3250 cpu=bdver2 3251 ;; 3252 bdver1-*) 3253 arch=bdver1 3254 cpu=bdver1 3255 ;; 3256 btver1-*) 3257 arch=btver1 3258 cpu=btver1 3259 ;; 3260 btver2-*) 3261 arch=btver2 3262 cpu=btver2 3263 ;; 3264 amdfam10-*|barcelona-*) 3265 arch=amdfam10 3266 cpu=amdfam10 3267 ;; 3268 k8_sse3-*|opteron_sse3-*|athlon64_sse3-*) 3269 arch=k8-sse3 3270 cpu=k8-sse3 3271 ;; 3272 k8-*|opteron-*|athlon_64-*) 3273 arch=k8 3274 cpu=k8 3275 ;; 3276 nocona-*) 3277 arch=nocona 3278 cpu=nocona 3279 ;; 3280 atom-*) 3281 arch=atom 3282 cpu=atom 3283 ;; 3284 slm-*) 3285 arch=slm 3286 cpu=slm 3287 ;; 3288 core2-*) 3289 arch=core2 3290 cpu=core2 3291 ;; 3292 corei7-*) 3293 arch=corei7 3294 cpu=corei7 3295 ;; 3296 *) 3297 arch=x86-64 3298 cpu=generic 3299 ;; 3300 esac 3301 ;; 3302esac 3303 3304# If there is no $with_cpu option, try to infer one from ${target}. 3305# This block sets nothing except for with_cpu. 3306if test x$with_cpu = x ; then 3307 case ${target} in 3308 i[34567]86-*-*|x86_64-*-*) 3309 with_cpu=$cpu 3310 ;; 3311 alphaev6[78]*-*-*) 3312 with_cpu=ev67 3313 ;; 3314 alphaev6*-*-*) 3315 with_cpu=ev6 3316 ;; 3317 alphapca56*-*-*) 3318 with_cpu=pca56 3319 ;; 3320 alphaev56*-*-*) 3321 with_cpu=ev56 3322 ;; 3323 alphaev5*-*-*) 3324 with_cpu=ev5 3325 ;; 3326 frv-*-*linux* | frv400-*-*linux*) 3327 with_cpu=fr400 3328 ;; 3329 frv550-*-*linux*) 3330 with_cpu=fr550 3331 ;; 3332 m68k*-*-*) 3333 case "$with_arch" in 3334 "cf") 3335 with_cpu=${default_cf_cpu} 3336 ;; 3337 "" | "m68k") 3338 with_cpu=m${default_m68k_cpu} 3339 ;; 3340 esac 3341 ;; 3342 powerpc*-*-*spe*) 3343 if test x$enable_e500_double = xyes; then 3344 with_cpu=8548 3345 else 3346 with_cpu=8540 3347 fi 3348 ;; 3349 sparc*-*-*) 3350 case ${target} in 3351 *-leon-*) 3352 with_cpu=leon 3353 ;; 3354 *-leon[3-9]*) 3355 with_cpu=leon3 3356 ;; 3357 *-leon[3-9]v7*) 3358 with_cpu=leon3v7 3359 ;; 3360 *) 3361 with_cpu="`echo ${target} | sed 's/-.*$//'`" 3362 ;; 3363 esac 3364 ;; 3365 esac 3366 3367 # Avoid overriding --with-cpu-32 and --with-cpu-64 values. 3368 case ${target} in 3369 i[34567]86-*-*|x86_64-*-*) 3370 if test x$with_cpu_32 != x || test x$with_cpu_64 != x; then 3371 if test x$with_cpu_32 = x; then 3372 with_cpu_32=$with_cpu 3373 fi 3374 if test x$with_cpu_64 = x; then 3375 with_cpu_64=$with_cpu 3376 fi 3377 with_cpu= 3378 fi 3379 ;; 3380 esac 3381fi 3382 3383# Support for --with-arch and related options (and a few unrelated options, 3384# too). 3385case ${with_arch} in 3386 yes | no) 3387 echo "--with-arch must be passed a value" 1>&2 3388 exit 1 3389 ;; 3390esac 3391 3392# If there is no $with_arch option, try to infer one from ${target}. 3393# This block sets nothing except for with_arch. 3394if test x$with_arch = x ; then 3395 case ${target} in 3396 i[34567]86-*-darwin*|x86_64-*-darwin*) 3397 # Default arch is set via TARGET_SUBTARGET32_ISA_DEFAULT 3398 # and TARGET_SUBTARGET64_ISA_DEFAULT in config/i386/darwin.h. 3399 ;; 3400 i[34567]86-*-*) 3401 # --with-fpmath sets the default ISA to SSE2, which is the same 3402 # ISA supported by Pentium 4. 3403 if test x$with_fpmath = x || test $arch_without_sse2 = no; then 3404 with_arch=$arch 3405 else 3406 with_arch=pentium4 3407 fi 3408 ;; 3409 x86_64-*-*) 3410 with_arch=$arch 3411 ;; 3412 mips64r5900-*-* | mips64r5900el-*-* | mipsr5900-*-* | mipsr5900el-*-*) 3413 with_arch=r5900 3414 ;; 3415 mips*-*-vxworks) 3416 with_arch=mips2 3417 ;; 3418 esac 3419 3420 # Avoid overriding --with-arch-32 and --with-arch-64 values. 3421 case ${target} in 3422 i[34567]86-*-darwin*|x86_64-*-darwin*) 3423 # Default arch is set via TARGET_SUBTARGET32_ISA_DEFAULT 3424 # and TARGET_SUBTARGET64_ISA_DEFAULT in config/i386/darwin.h. 3425 ;; 3426 i[34567]86-*-*|x86_64-*-*) 3427 if test x$with_arch_32 != x || test x$with_arch_64 != x; then 3428 if test x$with_arch_32 = x; then 3429 with_arch_32=$with_arch 3430 fi 3431 if test x$with_arch_64 = x; then 3432 if test $arch_without_64bit = yes; then 3433 # Set the default 64bit arch to x86-64 if the default arch 3434 # doesn't support 64bit. 3435 with_arch_64=x86-64 3436 else 3437 with_arch_64=$with_arch 3438 fi 3439 fi 3440 with_arch= 3441 elif test $arch_without_64bit$need_64bit_isa = yesyes; then 3442 # Set the default 64bit arch to x86-64 if the default arch 3443 # doesn't support 64bit and we need 64bit ISA. 3444 with_arch_32=$with_arch 3445 with_arch_64=x86-64 3446 with_arch= 3447 fi 3448 ;; 3449 esac 3450fi 3451 3452# Infer a default setting for --with-float. 3453if test x$with_float = x; then 3454 case ${target} in 3455 mips64r5900-*-* | mips64r5900el-*-* | mipsr5900-*-* | mipsr5900el-*-*) 3456 # The R5900 doesn't support 64-bit float. 32-bit float doesn't 3457 # comply with IEEE 754. 3458 with_float=soft 3459 ;; 3460 esac 3461fi 3462 3463# Infer a default setting for --with-fpu. 3464if test x$with_fpu = x; then 3465 case ${target} in 3466 mips64r5900-*-* | mips64r5900el-*-* | mipsr5900-*-* | mipsr5900el-*-*) 3467 # The R5900 FPU only supports single precision. 3468 with_fpu=single 3469 ;; 3470 esac 3471fi 3472 3473# Support --with-fpmath. 3474if test x$with_fpmath != x; then 3475 case ${target} in 3476 i[34567]86-*-* | x86_64-*-*) 3477 case ${with_fpmath} in 3478 avx) 3479 tm_file="${tm_file} i386/avxmath.h" 3480 ;; 3481 sse) 3482 tm_file="${tm_file} i386/ssemath.h" 3483 ;; 3484 *) 3485 echo "Invalid --with-fpmath=$with_fpmath" 1>&2 3486 exit 1 3487 ;; 3488 esac 3489 ;; 3490 *) 3491 echo "--with-fpmath isn't supported for $target." 1>&2 3492 exit 1 3493 ;; 3494 esac 3495fi 3496 3497# Similarly for --with-schedule. 3498if test x$with_schedule = x; then 3499 case ${target} in 3500 hppa1*) 3501 # Override default PA8000 scheduling model. 3502 with_schedule=7100LC 3503 ;; 3504 esac 3505fi 3506 3507# Infer a default setting for --with-llsc. 3508if test x$with_llsc = x; then 3509 case ${target} in 3510 mips64r5900-*-* | mips64r5900el-*-* | mipsr5900-*-* | mipsr5900el-*-*) 3511 # The R5900 doesn't support LL(D) and SC(D). 3512 with_llsc=no 3513 ;; 3514 mips*-*-linux*) 3515 # The kernel emulates LL and SC where necessary. 3516 with_llsc=yes 3517 ;; 3518 esac 3519fi 3520 3521# Validate and mark as valid any --with options supported 3522# by this target. In order to use a particular --with option 3523# you must list it in supported_defaults; validating the value 3524# is optional. This case statement should set nothing besides 3525# supported_defaults. 3526 3527supported_defaults= 3528case "${target}" in 3529 aarch64*-*-*) 3530 supported_defaults="abi cpu arch" 3531 for which in cpu arch; do 3532 3533 eval "val=\$with_$which" 3534 base_val=`echo $val | sed -e 's/\+.*//'` 3535 ext_val=`echo $val | sed -e 's/[a-z0-9\-]\+//'` 3536 3537 if [ $which = arch ]; then 3538 def=aarch64-arches.def 3539 pattern=AARCH64_ARCH 3540 else 3541 def=aarch64-cores.def 3542 pattern=AARCH64_CORE 3543 fi 3544 3545 ext_mask=AARCH64_CPU_DEFAULT_FLAGS 3546 3547 # Find the base CPU or ARCH id in aarch64-cores.def or 3548 # aarch64-arches.def 3549 if [ x"$base_val" = x ] \ 3550 || grep "^$pattern(\"$base_val\"," \ 3551 ${srcdir}/config/aarch64/$def \ 3552 > /dev/null; then 3553 3554 if [ $which = arch ]; then 3555 base_id=`grep "^$pattern(\"$base_val\"," \ 3556 ${srcdir}/config/aarch64/$def | \ 3557 sed -e 's/^[^,]*,[ ]*//' | \ 3558 sed -e 's/,.*$//'` 3559 # Extract the architecture flags from aarch64-arches.def 3560 ext_mask=`grep "^$pattern(\"$base_val\"," \ 3561 ${srcdir}/config/aarch64/$def | \ 3562 sed -e 's/)$//' | \ 3563 sed -e 's/^.*,//'` 3564 else 3565 base_id=`grep "^$pattern(\"$base_val\"," \ 3566 ${srcdir}/config/aarch64/$def | \ 3567 sed -e 's/^[^,]*,[ ]*//' | \ 3568 sed -e 's/,.*$//'` 3569 fi 3570 3571 while [ x"$ext_val" != x ] 3572 do 3573 ext_val=`echo $ext_val | sed -e 's/\+//'` 3574 ext=`echo $ext_val | sed -e 's/\+.*//'` 3575 base_ext=`echo $ext | sed -e 's/^no//'` 3576 3577 if [ x"$base_ext" = x ] \ 3578 || grep "^AARCH64_OPT_EXTENSION(\"$base_ext\"," \ 3579 ${srcdir}/config/aarch64/aarch64-option-extensions.def \ 3580 > /dev/null; then 3581 3582 ext_on=`grep "^AARCH64_OPT_EXTENSION(\"$base_ext\"," \ 3583 ${srcdir}/config/aarch64/aarch64-option-extensions.def | \ 3584 sed -e 's/^[^,]*,[ ]*//' | \ 3585 sed -e 's/,.*$//'` 3586 ext_off=`grep "^AARCH64_OPT_EXTENSION(\"$base_ext\"," \ 3587 ${srcdir}/config/aarch64/aarch64-option-extensions.def | \ 3588 sed -e 's/^[^,]*,[ ]*[^,]*,[ ]*//' | \ 3589 sed -e 's/,.*$//' | \ 3590 sed -e 's/).*$//'` 3591 3592 if [ $ext = $base_ext ]; then 3593 # Adding extension 3594 ext_mask="("$ext_mask") | ("$ext_on")" 3595 else 3596 # Removing extension 3597 ext_mask="("$ext_mask") & ~("$ext_off")" 3598 fi 3599 3600 true 3601 else 3602 echo "Unknown extension used in --with-$which=$val" 1>&2 3603 exit 1 3604 fi 3605 ext_val=`echo $ext_val | sed -e 's/[a-z0-9]\+//'` 3606 done 3607 3608 ext_mask="(("$ext_mask") << 6)" 3609 if [ x"$base_id" != x ]; then 3610 target_cpu_cname="TARGET_CPU_$base_id | $ext_mask" 3611 fi 3612 true 3613 else 3614 echo "Unknown $which used in --with-$which=$val" 1>&2 3615 exit 1 3616 fi 3617 done 3618 ;; 3619 3620 alpha*-*-*) 3621 supported_defaults="cpu tune" 3622 for which in cpu tune; do 3623 eval "val=\$with_$which" 3624 case "$val" in 3625 "" \ 3626 | ev4 | ev45 | 21064 | ev5 | 21164 | ev56 | 21164a \ 3627 | pca56 | 21164PC | 21164pc | ev6 | 21264 | ev67 \ 3628 | 21264a) 3629 ;; 3630 *) 3631 echo "Unknown CPU used in --with-$which=$val" 1>&2 3632 exit 1 3633 ;; 3634 esac 3635 done 3636 ;; 3637 3638 arc*-*-*) # was: arc*-*-linux-uclibc) 3639 supported_defaults="cpu" 3640 case $with_cpu in 3641 arc600|arc601|arc700) 3642 ;; 3643 *) echo "Unknown cpu type" 3644 exit 1 3645 ;; 3646 esac 3647 ;; 3648 3649 arm*-*-*) 3650 supported_defaults="arch cpu float tune fpu abi mode tls" 3651 for which in cpu tune; do 3652 # See if it matches any of the entries in arm-cores.def 3653 eval "val=\$with_$which" 3654 if [ x"$val" = x ] \ 3655 || grep "^ARM_CORE(\"$val\"," \ 3656 ${srcdir}/config/arm/arm-cores.def \ 3657 > /dev/null; then 3658 # Ok 3659 new_val=`grep "^ARM_CORE(\"$val\"," \ 3660 ${srcdir}/config/arm/arm-cores.def | \ 3661 sed -e 's/^[^,]*,[ ]*//' | \ 3662 sed -e 's/,.*$//'` 3663 eval "target_${which}_cname=$new_val" 3664 echo "For $val real value is $new_val" 3665 true 3666 else 3667 echo "Unknown CPU used in --with-$which=$val" 1>&2 3668 exit 1 3669 fi 3670 done 3671 3672 # See if it matches any of the entries in arm-arches.def 3673 if [ x"$with_arch" = x ] \ 3674 || grep "^ARM_ARCH(\"$with_arch\"," \ 3675 ${srcdir}/config/arm/arm-arches.def \ 3676 > /dev/null; then 3677 # OK 3678 true 3679 else 3680 echo "Unknown arch used in --with-arch=$with_arch" 1>&2 3681 exit 1 3682 fi 3683 3684 case "$with_float" in 3685 "" \ 3686 | soft | hard | softfp) 3687 # OK 3688 ;; 3689 *) 3690 echo "Unknown floating point type used in --with-float=$with_float" 1>&2 3691 exit 1 3692 ;; 3693 esac 3694 3695 # see if it matches any of the entries in arm-fpus.def 3696 if [ x"$with_fpu" = x ] \ 3697 || grep "^ARM_FPU(\"$with_fpu\"," \ 3698 ${srcdir}/config/arm/arm-fpus.def \ 3699 > /dev/null; then 3700 # OK 3701 true 3702 else 3703 echo "Unknown fpu used in --with-fpu=$with_fpu" 1>&2 3704 exit 1 3705 fi 3706 3707 case "$with_abi" in 3708 "" \ 3709 | apcs-gnu | atpcs | aapcs | iwmmxt | aapcs-linux ) 3710 #OK 3711 ;; 3712 *) 3713 echo "Unknown ABI used in --with-abi=$with_abi" 3714 exit 1 3715 ;; 3716 esac 3717 3718 case "$with_mode" in 3719 "" \ 3720 | arm | thumb ) 3721 #OK 3722 ;; 3723 *) 3724 echo "Unknown mode used in --with-mode=$with_mode" 3725 exit 1 3726 ;; 3727 esac 3728 3729 case "$with_tls" in 3730 "" \ 3731 | gnu | gnu2) 3732 # OK 3733 ;; 3734 *) 3735 echo "Unknown TLS method used in --with-tls=$with_tls" 1>&2 3736 exit 1 3737 ;; 3738 esac 3739 3740 if test "x$with_arch" != x && test "x$with_cpu" != x; then 3741 echo "Switch \"--with-arch\" may not be used with switch \"--with-cpu\"" 1>&2 3742 exit 1 3743 fi 3744 3745 if test "x$with_cpu" != x && test "x$with_tune" != x; then 3746 echo "Switch \"--with-tune\" may not be used with switch \"--with-cpu\"" 1>&2 3747 exit 1 3748 fi 3749 3750 # Add extra multilibs 3751 if test "x$with_multilib_list" != x; then 3752 arm_multilibs=`echo $with_multilib_list | sed -e 's/,/ /g'` 3753 for arm_multilib in ${arm_multilibs}; do 3754 case ${arm_multilib} in 3755 aprofile) 3756 # Note that arm/t-aprofile is a 3757 # stand-alone make file fragment to be 3758 # used only with itself. We do not 3759 # specifically use the 3760 # TM_MULTILIB_OPTION framework because 3761 # this shorthand is more 3762 # pragmatic. Additionally it is only 3763 # designed to work without any 3764 # with-cpu, with-arch with-mode 3765 # with-fpu or with-float options. 3766 if test "x$with_arch" != x \ 3767 || test "x$with_cpu" != x \ 3768 || test "x$with_float" != x \ 3769 || test "x$with_fpu" != x \ 3770 || test "x$with_mode" != x ; then 3771 echo "Error: You cannot use any of --with-arch/cpu/fpu/float/mode with --with-multilib-list=aprofile" 1>&2 3772 exit 1 3773 fi 3774 tmake_file="${tmake_file} arm/t-aprofile" 3775 break 3776 ;; 3777 default) 3778 ;; 3779 *) 3780 echo "Error: --with-multilib-list=${with_multilib_list} not supported." 1>&2 3781 exit 1 3782 ;; 3783 esac 3784 done 3785 fi 3786 ;; 3787 3788 fr*-*-*linux*) 3789 supported_defaults=cpu 3790 case "$with_cpu" in 3791 fr400) ;; 3792 fr550) ;; 3793 *) 3794 echo "Unknown cpu used in --with-cpu=$with_cpu" 1>&2 3795 exit 1 3796 ;; 3797 esac 3798 ;; 3799 3800 fido-*-* | m68k*-*-*) 3801 supported_defaults="arch cpu" 3802 case "$with_arch" in 3803 "" | "m68k"| "cf") 3804 m68k_arch_family="$with_arch" 3805 ;; 3806 *) 3807 echo "Invalid --with-arch=$with_arch" 1>&2 3808 exit 1 3809 ;; 3810 esac 3811 3812 # We always have a $with_cpu setting here. 3813 case "$with_cpu" in 3814 "m68000" | "m68010" | "m68020" | "m68030" | "m68040" | "m68060") 3815 m68k_cpu_ident=$with_cpu 3816 ;; 3817 "m68020-40") 3818 m68k_cpu_ident=m68020 3819 tm_defines="$tm_defines M68K_DEFAULT_TUNE=u68020_40" 3820 ;; 3821 "m68020-60") 3822 m68k_cpu_ident=m68020 3823 tm_defines="$tm_defines M68K_DEFAULT_TUNE=u68020_60" 3824 ;; 3825 *) 3826 # We need the C identifier rather than the string. 3827 m68k_cpu_ident=`awk -v arg="\"$with_cpu\"" \ 3828 'BEGIN { FS="[ \t]*[,()][ \t]*" }; \ 3829 $1 == "M68K_DEVICE" && $2 == arg { print $3 }' \ 3830 ${srcdir}/config/m68k/m68k-devices.def` 3831 if [ x"$m68k_cpu_ident" = x ] ; then 3832 echo "Unknown CPU used in --with-cpu=$with_cpu" 1>&2 3833 exit 1 3834 fi 3835 with_cpu="mcpu=$with_cpu" 3836 ;; 3837 esac 3838 ;; 3839 3840 hppa*-*-*) 3841 supported_defaults="arch schedule" 3842 3843 case "$with_arch" in 3844 "" | 1.0 | 1.1 | 2.0) 3845 # OK 3846 ;; 3847 *) 3848 echo "Unknown architecture used in --with-arch=$with_arch" 1>&2 3849 exit 1 3850 ;; 3851 esac 3852 3853 case "$with_schedule" in 3854 "" | 700 | 7100 | 7100LC | 7200 | 7300 | 8000) 3855 # OK 3856 ;; 3857 *) 3858 echo "Unknown processor used in --with-schedule=$with_schedule." 1>&2 3859 exit 1 3860 ;; 3861 esac 3862 ;; 3863 3864 i[34567]86-*-* | x86_64-*-*) 3865 supported_defaults="abi arch arch_32 arch_64 cpu cpu_32 cpu_64 tune tune_32 tune_64" 3866 for which in arch arch_32 arch_64 cpu cpu_32 cpu_64 tune tune_32 tune_64; do 3867 eval "val=\$with_$which" 3868 case " $x86_archs " in 3869 *" ${val} "*) 3870 case "${target}" in 3871 x86_64-*-*) 3872 case "x$which" in 3873 *_32) 3874 ;; 3875 *) 3876 echo "CPU given in --with-$which=$val doesn't support 64bit mode." 1>&2 3877 exit 1 3878 ;; 3879 esac 3880 ;; 3881 esac 3882 # OK 3883 ;; 3884 *) 3885 if test x${val} != x; then 3886 case " $x86_64_archs " in 3887 *" ${val} "*) 3888 # OK 3889 ;; 3890 *) 3891 # Allow $x86_cpus --with-cpu=/--with-tune= 3892 case "x$which" in 3893 xcpu*|xtune*) 3894 case " $x86_cpus " in 3895 *" ${val} "*) 3896 # OK 3897 ;; 3898 *) 3899 echo "Unknown CPU given in --with-$which=$val." 1>&2 3900 exit 1 3901 ;; 3902 esac 3903 ;; 3904 *) 3905 echo "Unknown CPU given in --with-$which=$val." 1>&2 3906 exit 1 3907 ;; 3908 esac 3909 ;; 3910 esac 3911 fi 3912 ;; 3913 esac 3914 done 3915 ;; 3916 3917 mips*-*-*) 3918 supported_defaults="abi arch arch_32 arch_64 float fpu nan fp_32 odd_spreg_32 tune tune_32 tune_64 divide llsc mips-plt synci" 3919 3920 case ${with_float} in 3921 "" | soft | hard) 3922 # OK 3923 ;; 3924 *) 3925 echo "Unknown floating point type used in --with-float=$with_float" 1>&2 3926 exit 1 3927 ;; 3928 esac 3929 3930 case ${with_fpu} in 3931 "" | single | double) 3932 # OK 3933 ;; 3934 *) 3935 echo "Unknown fpu type used in --with-fpu=$with_fpu" 1>&2 3936 exit 1 3937 ;; 3938 esac 3939 3940 case ${with_nan} in 3941 "" | 2008 | legacy) 3942 # OK 3943 ;; 3944 *) 3945 echo "Unknown NaN encoding used in --with-nan=$with_nan" 1>&2 3946 exit 1 3947 ;; 3948 esac 3949 3950 case ${with_fp_32} in 3951 "" | 32 | xx | 64) 3952 # OK 3953 ;; 3954 *) 3955 echo "Unknown FP mode used in --with-fp-32=$with_fp_32" 1>&2 3956 exit 1 3957 ;; 3958 esac 3959 3960 case ${with_odd_spreg_32} in 3961 yes) 3962 with_odd_spreg_32="odd-spreg" 3963 ;; 3964 no) 3965 with_odd_spreg_32="no-odd-spreg" 3966 ;; 3967 "") 3968 # OK 3969 ;; 3970 *) 3971 echo "Unknown odd-spreg-32 type used in --with-odd-spreg-32=$with_odd_spreg_32" 1>&2 3972 exit 1 3973 ;; 3974 esac 3975 3976 case ${with_abi} in 3977 "" | 32 | o64 | n32 | 64 | eabi) 3978 # OK 3979 ;; 3980 *) 3981 echo "Unknown ABI used in --with-abi=$with_abi" 1>&2 3982 exit 1 3983 ;; 3984 esac 3985 3986 case ${with_divide} in 3987 "" | breaks | traps) 3988 # OK 3989 ;; 3990 *) 3991 echo "Unknown division check type use in --with-divide=$with_divide" 1>&2 3992 exit 1 3993 ;; 3994 esac 3995 3996 case ${with_llsc} in 3997 yes) 3998 with_llsc=llsc 3999 ;; 4000 no) 4001 with_llsc="no-llsc" 4002 ;; 4003 "") 4004 # OK 4005 ;; 4006 *) 4007 echo "Unknown llsc type used in --with-llsc" 1>&2 4008 exit 1 4009 ;; 4010 esac 4011 4012 case ${with_mips_plt} in 4013 yes) 4014 with_mips_plt=plt 4015 ;; 4016 no) 4017 with_mips_plt=no-plt 4018 ;; 4019 "") 4020 ;; 4021 *) 4022 echo "Unknown --with-mips-plt argument: $with_mips_plt" 1>&2 4023 exit 1 4024 ;; 4025 esac 4026 4027 case ${with_synci} in 4028 yes) 4029 with_synci=synci 4030 ;; 4031 no) 4032 with_synci=no-synci 4033 ;; 4034 "") 4035 ;; 4036 *) 4037 echo "Unknown synci type used in --with-synci" 1>&2 4038 exit 1 4039 ;; 4040 esac 4041 ;; 4042 4043 nds32*-*-*) 4044 supported_defaults="arch nds32_lib" 4045 4046 # process --with-arch 4047 case "${with_arch}" in 4048 "" | v2 | v3 | v3m) 4049 # OK 4050 ;; 4051 *) 4052 echo "Cannot accept --with-arch=$with_arch, available values are: v2 v3 v3m" 1>&2 4053 exit 1 4054 ;; 4055 esac 4056 4057 # process --with-nds32-lib 4058 case "${with_nds32_lib}" in 4059 "") 4060 # the default library is newlib 4061 with_nds32_lib=newlib 4062 ;; 4063 newlib) 4064 # OK 4065 ;; 4066 mculib) 4067 # OK 4068 ;; 4069 *) 4070 echo "Cannot accept --with-nds32-lib=$with_nds32_lib, available values are: newlib mculib" 1>&2 4071 exit 1 4072 ;; 4073 esac 4074 ;; 4075 4076 powerpc*-*-* | rs6000-*-*) 4077 supported_defaults="abi cpu cpu_32 cpu_64 float tune tune_32 tune_64" 4078 4079 for which in cpu cpu_32 cpu_64 tune tune_32 tune_64; do 4080 eval "val=\$with_$which" 4081 case ${val} in 4082 default32 | default64) 4083 case $which in 4084 cpu | tune) 4085 ;; 4086 *) 4087 echo "$val only valid for --with-cpu and --with-tune." 1>&2 4088 exit 1 4089 ;; 4090 esac 4091 with_which="with_$which" 4092 eval $with_which= 4093 ;; 4094 405cr) 4095 tm_defines="${tm_defines} CONFIG_PPC405CR" 4096 eval "with_$which=405" 4097 ;; 4098 "" | common | native \ 4099 | power | power[2345678] | power6x | powerpc | powerpc64 \ 4100 | rios | rios1 | rios2 | rsc | rsc1 | rs64a \ 4101 | 401 | 403 | 405 | 405fp | 440 | 440fp | 464 | 464fp \ 4102 | 476 | 476fp | 505 | 601 | 602 | 603 | 603e | ec603e \ 4103 | 604 | 604e | 620 | 630 | 740 | 750 | 7400 | 7450 \ 4104 | a2 | e300c[23] | 854[08] | e500mc | e500mc64 | e5500 | e6500 \ 4105 | titan | 801 | 821 | 823 | 860 | 970 | G3 | G4 | G5 | cell) 4106 # OK 4107 ;; 4108 *) 4109 echo "Unknown cpu used in --with-$which=$val." 1>&2 4110 exit 1 4111 ;; 4112 esac 4113 done 4114 4115 case "$with_abi" in 4116 "" | elfv1 | elfv2 ) 4117 #OK 4118 ;; 4119 *) 4120 echo "Unknown ABI used in --with-abi=$with_abi" 4121 exit 1 4122 ;; 4123 esac 4124 ;; 4125 4126 s390*-*-*) 4127 supported_defaults="arch mode tune" 4128 4129 for which in arch tune; do 4130 eval "val=\$with_$which" 4131 case ${val} in 4132 "" | g5 | g6 | z900 | z990 | z9-109 | z9-ec | z10 | z196 | zEC12 | z13) 4133 # OK 4134 ;; 4135 *) 4136 echo "Unknown cpu used in --with-$which=$val." 1>&2 4137 exit 1 4138 ;; 4139 esac 4140 done 4141 4142 case ${with_mode} in 4143 "" | esa | zarch) 4144 # OK 4145 ;; 4146 *) 4147 echo "Unknown architecture mode used in --with-mode=$with_mode." 1>&2 4148 exit 1 4149 ;; 4150 esac 4151 ;; 4152 4153 sh[123456ble]-*-* | sh-*-*) 4154 supported_defaults="cpu" 4155 case "`echo $with_cpu | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ_ abcdefghijklmnopqrstuvwxyz- | sed s/sh/m/`" in 4156 "" | m1 | m2 | m2e | m3 | m3e | m4 | m4-single | m4-single-only | m4-nofpu ) 4157 # OK 4158 ;; 4159 m2a | m2a-single | m2a-single-only | m2a-nofpu) 4160 ;; 4161 m4a | m4a-single | m4a-single-only | m4a-nofpu | m4al) 4162 ;; 4163 *) 4164 echo "Unknown CPU used in --with-cpu=$with_cpu, known values:" 1>&2 4165 echo "m1 m2 m2e m3 m3e m4 m4-single m4-single-only m4-nofpu" 1>&2 4166 echo "m4a m4a-single m4a-single-only m4a-nofpu m4al" 1>&2 4167 echo "m2a m2a-single m2a-single-only m2a-nofpu" 1>&2 4168 exit 1 4169 ;; 4170 esac 4171 ;; 4172 sparc*-*-*) 4173 supported_defaults="cpu float tune" 4174 4175 for which in cpu tune; do 4176 eval "val=\$with_$which" 4177 case ${val} in 4178 "" | sparc | sparcv9 | sparc64 \ 4179 | v7 | cypress \ 4180 | v8 | supersparc | hypersparc | leon | leon3 | leon3v7 \ 4181 | sparclite | f930 | f934 | sparclite86x \ 4182 | sparclet | tsc701 \ 4183 | v9 | ultrasparc | ultrasparc3 | niagara | niagara2 \ 4184 | niagara3 | niagara4) 4185 # OK 4186 ;; 4187 *) 4188 echo "Unknown cpu used in --with-$which=$val" 1>&2 4189 exit 1 4190 ;; 4191 esac 4192 done 4193 4194 case ${with_float} in 4195 "" | soft | hard) 4196 # OK 4197 ;; 4198 *) 4199 echo "Unknown floating point type used in --with-float=$with_float" 1>&2 4200 exit 1 4201 ;; 4202 esac 4203 ;; 4204 4205 spu-*-*) 4206 supported_defaults="arch tune" 4207 4208 for which in arch tune; do 4209 eval "val=\$with_$which" 4210 case ${val} in 4211 "" | cell | celledp) 4212 # OK 4213 ;; 4214 *) 4215 echo "Unknown cpu used in --with-$which=$val." 1>&2 4216 exit 1 4217 ;; 4218 esac 4219 done 4220 ;; 4221 4222 tic6x-*-*) 4223 supported_defaults="arch" 4224 4225 case ${with_arch} in 4226 "" | c62x | c64x | c64x+ | c67x | c67x+ | c674x) 4227 # OK 4228 ;; 4229 *) 4230 echo "Unknown arch used in --with-arch=$with_arch." 1>&2 4231 exit 1 4232 ;; 4233 esac 4234 ;; 4235 4236 v850*-*-*) 4237 supported_defaults=cpu 4238 case ${with_cpu} in 4239 "" | v850e | v850e1 | v850e2 | v850es | v850e2v3 | v850e3v5) 4240 # OK 4241 ;; 4242 *) 4243 echo "Unknown cpu used in --with-cpu=$with_cpu" 1>&2 4244 exit 1 4245 ;; 4246 esac 4247 ;; 4248esac 4249 4250# Set some miscellaneous flags for particular targets. 4251target_cpu_default2= 4252case ${target} in 4253 aarch64*-*-*) 4254 if test x"$target_cpu_cname" != x 4255 then 4256 target_cpu_default2=$target_cpu_cname 4257 fi 4258 ;; 4259 4260 arm*-*-*) 4261 if test x$target_cpu_cname = x 4262 then 4263 target_cpu_default2=TARGET_CPU_generic 4264 else 4265 target_cpu_default2=TARGET_CPU_$target_cpu_cname 4266 fi 4267 ;; 4268 4269 hppa*-*-*) 4270 if test x$gas = xyes 4271 then 4272 target_cpu_default2="MASK_GAS" 4273 fi 4274 ;; 4275 4276 fido*-*-* | m68k*-*-*) 4277 target_cpu_default2=$m68k_cpu_ident 4278 tmake_file="m68k/t-opts $tmake_file" 4279 if [ x"$m68k_arch_family" != x ]; then 4280 tmake_file="m68k/t-$m68k_arch_family $tmake_file" 4281 fi 4282 ;; 4283 4284 i[34567]86-*-darwin* | x86_64-*-darwin*) 4285 ;; 4286 i[34567]86-*-linux* | x86_64-*-linux*) 4287 tmake_file="$tmake_file i386/t-linux" 4288 ;; 4289 i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu) 4290 tmake_file="$tmake_file i386/t-kfreebsd" 4291 ;; 4292 i[34567]86-*-gnu*) 4293 tmake_file="$tmake_file i386/t-gnu" 4294 ;; 4295 i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*) 4296 ;; 4297 i[34567]86-*-cygwin* | x86_64-*-cygwin*) 4298 ;; 4299 i[34567]86-*-mingw* | x86_64-*-mingw*) 4300 ;; 4301 i[34567]86-*-dragonfly* | x86_64-*-dragonfly*) 4302 ;; 4303 i[34567]86-*-freebsd* | x86_64-*-freebsd*) 4304 ;; 4305 ia64*-*-linux*) 4306 ;; 4307 4308 mips*-*-*) 4309 if test x$gnu_ld = xyes 4310 then 4311 target_cpu_default2="MASK_SPLIT_ADDRESSES" 4312 fi 4313 case ${target} in 4314 mips*el-*-*) 4315 tm_defines="TARGET_ENDIAN_DEFAULT=0 $tm_defines" 4316 ;; 4317 esac 4318 if test x$with_arch != x; then 4319 default_mips_arch=$with_arch 4320 fi 4321 if test x$with_abi != x; then 4322 default_mips_abi=$with_abi 4323 fi 4324 case ${default_mips_arch} in 4325 mips1) tm_defines="$tm_defines MIPS_ISA_DEFAULT=1" ;; 4326 mips2) tm_defines="$tm_defines MIPS_ISA_DEFAULT=2" ;; 4327 mips3) tm_defines="$tm_defines MIPS_ISA_DEFAULT=3" ;; 4328 mips4) tm_defines="$tm_defines MIPS_ISA_DEFAULT=4" ;; 4329 mips32) tm_defines="$tm_defines MIPS_ISA_DEFAULT=32" ;; 4330 mips32r2) tm_defines="$tm_defines MIPS_ISA_DEFAULT=33" ;; 4331 mips32r6) tm_defines="$tm_defines MIPS_ISA_DEFAULT=37" ;; 4332 mips64) tm_defines="$tm_defines MIPS_ISA_DEFAULT=64" ;; 4333 mips64r2) tm_defines="$tm_defines MIPS_ISA_DEFAULT=65" ;; 4334 mips64r6) tm_defines="$tm_defines MIPS_ISA_DEFAULT=69" ;; 4335 esac 4336 case ${default_mips_abi} in 4337 32) tm_defines="$tm_defines MIPS_ABI_DEFAULT=ABI_32" ;; 4338 o64) tm_defines="$tm_defines MIPS_ABI_DEFAULT=ABI_O64" ;; 4339 n32) tm_defines="$tm_defines MIPS_ABI_DEFAULT=ABI_N32" ;; 4340 64) tm_defines="$tm_defines MIPS_ABI_DEFAULT=ABI_64" ;; 4341 eabi) tm_defines="$tm_defines MIPS_ABI_DEFAULT=ABI_EABI" ;; 4342 esac 4343 tmake_file="mips/t-mips $tmake_file" 4344 ;; 4345 4346 powerpc*-*-* | rs6000-*-*) 4347 # FIXME: The PowerPC port uses the value set at compile time, 4348 # although it's only cosmetic. 4349 if test "x$with_cpu" != x 4350 then 4351 target_cpu_default2="\\\"$with_cpu\\\"" 4352 fi 4353 out_file=rs6000/rs6000.c 4354 c_target_objs="${c_target_objs} rs6000-c.o" 4355 cxx_target_objs="${cxx_target_objs} rs6000-c.o" 4356 tmake_file="rs6000/t-rs6000 ${tmake_file}" 4357 ;; 4358 4359 sh[123456ble]*-*-* | sh-*-*) 4360 c_target_objs="${c_target_objs} sh-c.o" 4361 cxx_target_objs="${cxx_target_objs} sh-c.o" 4362 ;; 4363 4364 sparc*-*-*) 4365 # Some standard aliases. 4366 case x$with_cpu in 4367 xsparc) 4368 with_cpu=v7 4369 ;; 4370 xsparcv9 | xsparc64) 4371 with_cpu=v9 4372 ;; 4373 esac 4374 4375 if test x$with_tune = x ; then 4376 case ${target} in 4377 *-leon-*) 4378 with_tune=leon 4379 ;; 4380 *-leon[3-9]*) 4381 with_tune=leon3 4382 ;; 4383 esac 4384 fi 4385 4386 # The SPARC port checks this value at compile-time. 4387 target_cpu_default2="TARGET_CPU_$with_cpu" 4388 ;; 4389 4390 v850*-*-*) 4391 case "x$with_cpu" in 4392 x) 4393 ;; 4394 xv850e | xv850e1 | xv850e2 | xv850e2v3 | xv850e3v5) 4395 target_cpu_default2="TARGET_CPU_$with_cpu" 4396 ;; 4397 xv850es) 4398 target_cpu_default2="TARGET_CPU_v850e1" 4399 ;; 4400 esac 4401 ;; 4402esac 4403 4404t= 4405all_defaults="abi cpu cpu_32 cpu_64 arch arch_32 arch_64 tune tune_32 tune_64 schedule float mode fpu nan fp_32 odd_spreg_32 divide llsc mips-plt synci tls" 4406for option in $all_defaults 4407do 4408 eval "val=\$with_"`echo $option | sed s/-/_/g` 4409 if test -n "$val"; then 4410 case " $supported_defaults " in 4411 *" $option "*) 4412 ;; 4413 *) 4414 echo "This target does not support --with-$option." 2>&1 4415 echo "Valid --with options are: $supported_defaults" 2>&1 4416 exit 1 4417 ;; 4418 esac 4419 4420 if test "x$t" = x 4421 then 4422 t="{ \"$option\", \"$val\" }" 4423 else 4424 t="${t}, { \"$option\", \"$val\" }" 4425 fi 4426 fi 4427done 4428 4429if test "x$t" = x 4430then 4431 configure_default_options="{ { NULL, NULL} }" 4432else 4433 configure_default_options="{ ${t} }" 4434fi 4435 4436if test "$target_cpu_default2" != "" 4437then 4438 if test "$target_cpu_default" != "" 4439 then 4440 target_cpu_default="(${target_cpu_default}|${target_cpu_default2})" 4441 else 4442 target_cpu_default=$target_cpu_default2 4443 fi 4444fi 4445 4446case ${target} in 4447i[34567]86-*-* | x86_64-*-*) 4448 if test x$enable_as_accelerator = xyes; then 4449 extra_programs="mkoffload\$(exeext)" 4450 fi 4451 ;; 4452esac 4453