1 # configure.tgt -- target configuration for gold -*- sh -*-
3 # Copyright (C) 2006-2022 Free Software Foundation, Inc.
4 # Written by Ian Lance Taylor <iant@google.com>.
6 # This file is part of gold.
8 # This program is free software; you can redistribute it and/or modify
9 # it under the terms of the GNU General Public License as published by
10 # the Free Software Foundation; either version 3 of the License, or
11 # (at your option) any later version.
13 # This program is distributed in the hope that it will be useful,
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 # GNU General Public License for more details.
18 # You should have received a copy of the GNU General Public License
19 # along with this program; if not, write to the Free Software
20 # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
23 # This script handles target configuration for gold. This is shell
24 # code invoked by the autoconf generated configure script. Putting
25 # this in a separate file lets us skip running autoconf when modifying
26 # target specific information.
28 # This file switches on the shell variable ${targ}, which is a
29 # canonicalized GNU configuration triplet. It sets the following
32 # targ_obj object file to include in the link, with no extension
33 # targ_extra_obj extra object file to include
34 # targ_machine ELF machine code for this target
35 # targ_size size of this target--32 or 64
36 # targ_extra_size extra targ_size setting for the target
37 # targ_big_endian whether the target is big-endian--true or false
38 # targ_extra_big_endian extra targ_big_endian setting for the target
39 # targ_osabi EI_OSABI value
41 # If the target is not recognized targ_obj is set to "UNKNOWN".
48 targ_extra_big_endian=
49 targ_osabi=ELFOSABI_NONE
58 targ_osabi=ELFOSABI_FREEBSD
65 targ_machine=EM_X86_64
71 targ_osabi=ELFOSABI_FREEBSD
77 targ_machine=EM_TILEGX
81 targ_extra_big_endian=true
89 targ_extra_big_endian=false
93 targ_machine=EM_SPARCV9
97 targ_extra_big_endian=false
105 targ_extra_big_endian=false
112 targ_big_endian=false
113 targ_extra_big_endian=true
117 targ_machine=EM_PPC64
121 targ_extra_big_endian=false
125 targ_machine=EM_PPC64
128 targ_big_endian=false
129 targ_extra_big_endian=true
131 armeb*-*-*|armbe*-*-*)
133 targ_extra_obj=arm-reloc-property
137 targ_extra_big_endian=false
141 targ_extra_obj=arm-reloc-property
144 targ_big_endian=false
145 targ_extra_big_endian=true
149 targ_extra_obj=aarch64-reloc-property
150 targ_machine=EM_AARCH64
153 targ_big_endian=false
154 targ_extra_big_endian=true
156 mips*el*-*-*|mips*le*-*-*)
158 targ_machine=EM_MIPS_RS3_LE
160 targ_big_endian=false
161 targ_extra_big_endian=true
168 targ_extra_big_endian=false
175 targ_extra_big_endian=false
182 targ_extra_big_endian=false