configure.host revision 107500
1# This is the linker host specific file. This is invoked by the 2# autoconf generated configure script. Putting it in a separate shell 3# file lets us skip running autoconf when modifying host specific 4# information. 5 6# This file sets the following shell variables: 7# HDEFINES host specific compiler flags 8# HOSTING_CRT0 crt0.o file used for bootstrapping 9# HOSTING_LIBS libraries used for bootstrapping 10# NATIVE_LIB_DIRS library directories to search on this host 11 12HDEFINES= 13HOSTING_CRT0=/lib/crt0.o 14HOSTING_LIBS='`if [ -f ../gcc/libgcc.a ]; then libgcc=../gcc/libgcc.a; else libgcc=\`${CC} -print-libgcc-file-name\`; fi; if [ -f ../gcc/libgcc_eh.a ]; then libgcc="$libgcc ../gcc/libgcc_eh.a"; else libgcc_eh=\`${CC} -print-file-name=libgcc_eh.a\`; if [ x"$libgcc_eh" != xlibgcc_eh.a ]; then libgcc="$libgcc $libgcc_eh"; fi; fi; echo $libgcc -lc $libgcc`' 15NATIVE_LIB_DIRS='/usr/local/lib /lib /usr/lib' 16 17# 18# Generic configurations: 19# 20 21case "${host}" in 22 23*-*-freebsd*) 24 NATIVE_LIB_DIRS='/lib /usr/lib /usr/local/lib' 25 # Older versions of gcc do not use a specs file. In those cases, 26 # gcc -print-file-name=specs will simply print specs. We create a 27 # dummy specs files to handle this. 28 echo "-dynamic-linker `${CC} --print-prog-name=ld-elf.so.1`" > specs 29 HOSTING_CRT0='-dynamic-linker `${CC} --print-file-name=ld-elf.so.1` `${CC} --print-file-name=crt1.o` `${CC} --print-file-name=crti.o` `${CC} --print-file-name=crtbegin.o`' 30 HOSTING_LIBS='-L`dirname \`${CC} --print-file-name=libc.so\`` '"$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} --print-file-name=crtend.o; fi` `${CC} --print-file-name=crtn.o`' 31 ;; 32 33*-*-linux*aout* | *-*-linux*oldld) 34 HOSTING_CRT0=/usr/lib/crt0.o 35 ;; 36 37*-*-linux*libc1*) 38 HOSTING_CRT0='-dynamic-linker /lib/ld-linux.so.1 /usr/lib/crt1.o /usr/lib/crti.o `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; elif [ -f /usr/lib/crtbegin.o ]; then echo /usr/lib/crtbegin.o; else ${CC} --print-file-name=crtbegin.o; fi`' 39 HOSTING_LIBS="$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; elif [ -f /usr/lib/crtend.o ]; then echo /usr/lib/crtend.o; else ${CC} --print-file-name=crtend.o; fi` /usr/lib/crtn.o' 40 ;; 41 42*-*-linux*) 43 HOSTING_CRT0='-dynamic-linker `egrep "ld[^ ]*\.so" \`${CC} --print-file-name=specs\` | sed -e "s,.*-dynamic-linker[ ][ ]*\(.*/ld[^ ]*\.so..\).*,\1,"` `${CC} --print-file-name=crt1.o` `${CC} --print-file-name=crti.o` `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; else ${CC} --print-file-name=crtbegin.o; fi`' 44 HOSTING_LIBS='-L`dirname \`${CC} --print-file-name=libc.so\`` '"$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} --print-file-name=crtend.o; fi` `${CC} --print-file-name=crtn.o`' 45 ;; 46 47esac 48 49# 50# Now more specific configurations 51# 52 53case "${host}" in 54 55*-*-linux*aout* | *-*-linux*oldld | *-*-linux*libc1*) 56 # No further tweaking needed 57 ;; 58 59alpha*-*-netbsd*) 60 HOSTING_CRT0=/usr/lib/crt0.o 61 ;; 62 63arm*-*-linux-gnu*) 64 HOSTING_CRT0='-p '`echo "$HOSTING_CRT0" | sed -e "s,ld\[^ \]*\*,ld-linux,g"` 65 ;; 66 67hppa*64*-*-hpux11*) 68 NATIVE_LIB_DIRS=/usr/lib/pa20_64 69 HOSTING_CRT0=/usr/ccs/lib/pa20_64/crt0.o 70 # Even if CC is not gcc, the tests use gcc. 71 HOSTING_LIBS='`if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else if test "$GCC" = yes; then ${CC} --print-libgcc-file-name; else gcc --print-libgcc-file-name; fi fi` -lc /usr/lib/pa20_64/milli.a' 72 ;; 73 74i[3456]86-*-bsd* | i[34567]86-*-freebsd[12] | i[34567]86-*-freebsd[12]\.* | i[34567]86-*-freebsd*aout* | i[3456]86-*-netbsd*) 75 HOSTING_CRT0=/usr/lib/crt0.o 76 ;; 77 78i[3456]86-*-sysv4*) 79 HOSTING_CRT0='/usr/ccs/lib/crt1.o /usr/ccs/lib/crti.o /usr/ccs/lib/values-Xa.o `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; else ${CC} -print-file-name=crtbegin.o; fi`' 80 HOSTING_LIBS="$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} -print-file-name=crtend.o; fi` /usr/ccs/lib/crtn.o' 81 NATIVE_LIB_DIRS='/usr/local/lib /usr/ccs/lib /lib /usr/lib' 82 ;; 83 84i[3456]86-sequent-ptx* | i[3456]86-sequent-sysv*) 85 HOSTING_CRT0='/lib/crt0.o `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; else ${CC} -print-file-name=crtbegin.o; fi`' 86 HOSTING_LIBS="$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} -print-file-name=crtend.o; fi`' 87 ;; 88 89i[3456]86-*-sysv*) 90 HOSTING_CRT0='/lib/crt1.o `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; fi`' 91 HOSTING_LIBS="$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; fi` /lib/crtn.o' 92 ;; 93 94i[3456]86-*-solaris*) 95 HOSTING_CRT0='`if [ -f ../gcc/crt1.o ]; then echo ../gcc/crt1.o; else ${CC} -print-file-name=crt1.o; fi` `if [ -f ../gcc/crti.o ]; then echo ../gcc/crti.o; else ${CC} -print-file-name=crti.o; fi` /usr/ccs/lib/values-Xa.o `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; else ${CC} -print-file-name=crtbegin.o; fi`' 96 HOSTING_LIBS="$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} -print-file-name=crtend.o; fi` `if [ -f ../gcc/crtn.o ]; then echo ../gcc/crtn.o; else ${CC} -print-file-name=crtn.o; fi`' 97 NATIVE_LIB_DIRS='/usr/local/lib /usr/ccs/lib /lib /usr/lib' 98 ;; 99 100i[3456]86-*-sco* | i[3456]86-*-isc*) 101 # In some configurations gcc does not use crtbegin.o and crtend.o. 102 # In that case gcc -print-file-name=crtbegin.o will simply print 103 # crtbegin.o. We create dummy crtbegin.o and crtend.o files to 104 # handle this. 105 echo "int dummy_crtbegin () { return 0; }" > crtbegin.c 106 ${CC} -c crtbegin.c -o crtbegin.o 107 rm -f crtbegin.c 108 echo "int dummy_crteng () { return 0; }" > crtend.c 109 ${CC} -c crtend.c -o crtend.o 110 rm -f crtend.c 111 HOSTING_CRT0='/lib/crt1.o `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; else ${CC} -print-file-name=crtbegin.o; fi`' 112 HOSTING_LIBS="$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} -print-file-name=crtend.o; fi` /lib/crtn.o' 113 ;; 114 115i[3456]86-*-lynxos*) 116 HOSTING_CRT0=/lib/init1.o 117 HOSTING_LIBS="$HOSTING_LIBS"' -lm /lib/initn.o' 118 ;; 119 120i[3456]86-pc-interix*) 121 HOSTING_CRT0='$$INTERIX_ROOT/usr/lib/crt0.o' 122 NATIVE_LIB_DIRS='/usr/local/lib $$INTERIX_ROOT/usr/lib /lib /usr/lib' 123 HOSTING_LIBS='-L $$X/local_bin -L $$INTERIX_ROOT/usr/lib '"$HOSTING_LIBS"' -lcpsx -lc -lcpsx $$INTERIX_ROOT/usr/lib/psxdll.a $$INTERIX_ROOT/usr/lib/psxdll2.a' 124 ;; 125 126i[3456]86-*-cygwin*) 127 HOSTING_LIBS="$HOSTING_LIBS"' -lcygwin -luser32 -lkernel32 -ladvapi32 -lshell32 `if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else ${CC} -print-libgcc-file-name; fi`' 128 ;; 129 130ia64-*-linux-gnu*) 131 HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,ld\[^ \]*\*,ld-linux-ia64,g"` 132 ;; 133 134ia64-*-aix*) 135 HOSTING_CRT0='-dynamic-linker `egrep "libc.so" \`${CC} --print-file-name=specs\` | sed -e "s,.*-dynamic-linker[ ][ ]*\(.*/libc.so..\).*,\1,"` `${CC} --print-file-name=crt1.o` `${CC} --print-file-name=crti.o` `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; else ${CC} --print-file-name=crtbegin.o; fi`' 136 HOSTING_LIBS='-L`dirname \`${CC} --print-file-name=libc.so\`` '"$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} --print-file-name=crtend.o; fi` `${CC} --print-file-name=crtn.o`' 137 NATIVE_LIB_DIRS='/usr/local/lib /usr/lib/ia64l64 /lib /usr/lib' 138 ;; 139 140mips*-dec-bsd*) 141 HOSTING_CRT0=/usr/lib/crt0.o 142 ;; 143 144mips*-sgi-irix4* | mips*-sgi-irix5*) 145 HOSTING_CRT0=/usr/lib/crt1.o 146 HOSTING_LIBS="$HOSTING_LIBS"' /usr/lib/crtn.o' 147 ;; 148 149mips*-sgi-irix6*) 150 HOSTING_CRT0='/usr/lib32/crt1.o `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o ; else ${CC} -print-file-name=crtbegin.o; fi`' 151 HOSTING_LIBS='-L/usr/lib32 '"$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o ; else ${CC} -print-file-name=crtend.o; fi` /usr/lib32/crtn.o -init __do_global_ctors -fini __do_global_dtors' 152 ;; 153 154mips*-*-linux-gnu*) 155 HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`egrep.*\"\\\`,/lib/ld.so.1,"` 156 ;; 157 158m68*-*-linux-gnu*) 159 HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`egrep.*\"\\\`,/lib/ld.so.1,"` 160 ;; 161 162m68*-*-lynxos*) 163 HOSTING_CRT0=/lib/init1.o 164 HOSTING_LIBS="$HOSTING_LIBS"' -lm /lib/initn.o' 165 ;; 166 167m68*-motorola-sysv) 168 HOSTING_CRT0='`if [ -f ../gcc/crt0.o ]; then echo ../gcc/crt0.o; elif [ -f \`${CC} -print-file-name=\`crt0.o ]; then echo \`${CC} -print-file-name=\`crt0.o; else echo /lib/crt0.o; fi`' 169 HOSTING_LIBS=`echo "$HOSTING_LIBS" | sed -e "s,-lc,-lc881,"` 170 ;; 171 172m68*-sun-*) 173 HOSTING_CRT0='/usr/lib/crt0.o /usr/lib/Fcrt1.o -L/usr/lib/fsoft.o' 174 ;; 175 176m88*-*-dgux*) 177 HDEFINES=-D__using_DGUX 178 HOSTING_CRT0='/lib/crt0.o -X' 179 HOSTING_LIBS=/usr/sde/m88kbcs/lib/libc.a 180 ;; 181 182m88*-motorola-sysv3) 183 HOSTING_CRT0='/lib/crt0.o `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; else ${CC} -print-file-name=crtbegin.o; fi`' 184 HOSTING_LIBS="$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} -print-file-name=crtend.o; fi`' 185 ;; 186 187powerpc*-*-linux-gnu*) 188 HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`egrep.*\"\\\`,/lib/ld.so.1,"` 189 ;; 190 191s390x-*-linux-gnu*) 192 HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`egrep.*\"\\\`,/lib/ld64.so.1,"` 193 ;; 194 195s390-*-linux-gnu*) 196 HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`egrep.*\"\\\`,/lib/ld.so.1,"` 197 ;; 198 199sparc*-*-solaris2*) 200 HOSTING_CRT0='`if [ -f ../gcc/crt1.o ]; then echo ../gcc/crt1.o; else ${CC} -print-file-name=crt1.o; fi` `if [ -f ../gcc/crti.o ]; then echo ../gcc/crti.o; else ${CC} -print-file-name=crti.o; fi` /usr/ccs/lib/values-Xa.o `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; else ${CC} -print-file-name=crtbegin.o; fi`' 201 HOSTING_LIBS="$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} -print-file-name=crtend.o; fi` `if [ -f ../gcc/crtn.o ]; then echo ../gcc/crtn.o; else ${CC} -print-file-name=crtn.o; fi`' 202 NATIVE_LIB_DIRS='/usr/local/lib /usr/ccs/lib /lib /usr/lib' 203 ;; 204 205sparc-*-linux-gnu*) 206 HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`egrep.*\"\\\`,/lib/ld-linux.so.2,"` 207 ;; 208 209sparc64-*-linux-gnu*) 210 HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`egrep.*\"\\\`,/lib64/ld-linux.so.2,"` 211 ;; 212 213x86_64-*-linux-gnu*) 214 HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`egrep.*\"\\\`,/lib64/ld-linux-x86-64.so.2,"` 215 ;; 216 217*-*-freebsd*) 218 ;; 219 220*-*-linux*) 221 ;; 222 223*-*-netbsd*) 224 # NetBSD typically does not use the GCC crtstuff, so ignore it. 225 HOSTING_CRT0='-dynamic-linker /usr/libexec/ld.elf_so /usr/lib/crt0.o /usr/lib/crtbegin.o' 226 HOSTING_LIBS='`if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else ${CC} -print-libgcc-file-name; fi` -lc `if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else ${CC} -print-libgcc-file-name; fi` /usr/lib/crtend.o' 227 ;; 228 229alpha*-*-*) 230 HOSTING_CRT0=/usr/ccs/lib/crt0.o 231 NATIVE_LIB_DIRS='/usr/local/lib /usr/ccs/lib /lib /usr/lib' 232 ;; 233 234esac 235