1# This is the target specific configuration file. This is invoked by the 2# autoconf generated configure script. Putting it in a separate shell file 3# lets us skip running autoconf when modifying target specific information. 4 5# This file switches on the shell variable ${target}, and sets the 6# following shell variables: 7# config_path An ordered list of directories to search for 8# sources and headers. This is relative to the 9# config subdirectory of the source tree. 10# XCFLAGS Add extra compile flags to use. 11# XLDFLAGS Add extra link flags to use. 12 13# Optimize TLS usage by avoiding the overhead of dynamic allocation. 14if test $gcc_cv_have_tls = yes ; then 15 case "${target}" in 16 17 *-*-k*bsd*-gnu*) 18 ;; 19 20 *-*-musl*) 21 ;; 22 23 *-*-linux* | *-*-gnu*) 24 XCFLAGS="${XCFLAGS} -ftls-model=initial-exec -DUSING_INITIAL_EXEC_TLS" 25 ;; 26 27 *-*-rtems*) 28 XCFLAGS="${XCFLAGS} -ftls-model=local-exec" 29 ;; 30 esac 31fi 32 33# Since we require POSIX threads, assume a POSIX system by default. 34config_path="posix" 35 36# Check for futex enabled all at once. 37if test x$enable_linux_futex = xyes; then 38 case "${target}" in 39 40 aarch64*-*-linux*) 41 config_path="linux posix" 42 ;; 43 44 alpha*-*-linux*) 45 config_path="linux/alpha linux posix" 46 ;; 47 48 arm*-*-linux*) 49 config_path="linux posix" 50 ;; 51 52 ia64*-*-linux*) 53 config_path="linux/ia64 linux posix" 54 ;; 55 56 mips*-*-linux*) 57 config_path="linux/mips linux posix" 58 ;; 59 60 powerpc*-*-linux*) 61 config_path="linux/powerpc linux posix" 62 ;; 63 64 s390*-*-linux*) 65 config_path="linux/s390 linux posix" 66 ;; 67 68 tile*-*-linux*) 69 config_path="linux/tile linux posix" 70 ;; 71 72 # Note that bare i386 is not included here. We need cmpxchg. 73 i[456]86-*-linux*) 74 config_path="linux/x86 linux posix" 75 case " ${CC} ${CFLAGS} " in 76 *" -m64 "*|*" -mx32 "*) 77 ;; 78 *) 79 if test -z "$with_arch"; then 80 XCFLAGS="${XCFLAGS} -march=i486 -mtune=${target_cpu}" 81 fi 82 esac 83 ;; 84 85 # Similar jiggery-pokery for x86_64 multilibs, except here we 86 # can't rely on the --with-arch configure option, since that 87 # applies to the 64-bit side. 88 x86_64-*-linux*) 89 config_path="linux/x86 linux posix" 90 case " ${CC} ${CFLAGS} " in 91 *" -m32 "*) 92 XCFLAGS="${XCFLAGS} -march=i486 -mtune=generic" 93 ;; 94 esac 95 ;; 96 97 # Note that sparcv7 and sparcv8 is not included here. We need cas. 98 sparcv9-*-linux* | sparc64-*-linux*) 99 echo "int i;" > conftestx.c 100 if ${CC} ${CFLAGS} -c -o conftestx.o conftestx.c > /dev/null 2>&1; then 101 config_path="linux/sparc linux posix" 102 case "`/usr/bin/file conftestx.o`" in 103 *32-bit*) 104 case " ${CC} ${CFLAGS}" in 105 *" -mcpu=ultrasparc"*) 106 ;; 107 *) 108 XCFLAGS="${XCFLAGS} -mcpu=v9" 109 ;; 110 esac 111 ;; 112 esac 113 fi 114 rm -f conftestx.c conftestx.o 115 ;; 116 esac 117fi 118 119# Other system configury 120case "${target}" in 121 122 *-*-hpux*) 123 config_path="hpux posix" 124 case "${target}" in 125 *-*-hpux11*) 126 # HPUX v11.x requires -lrt to resolve sem_init in libgomp.la 127 XLDFLAGS="${XLDFLAGS} -lrt" 128 ;; 129 esac 130 case "${target}" in 131 hppa[12]*-*-hpux*) 132 # PA 32 HP-UX needs -frandom-seed for bootstrap compare. 133 XCFLAGS="${XCFLAGS} -frandom-seed=fixed-seed" 134 ;; 135 esac 136 ;; 137 138 *-*-mingw32*) 139 config_path="mingw32 posix" 140 ;; 141 142 *-*-darwin*) 143 config_path="bsd darwin posix" 144 ;; 145 146 *-*-freebsd*) 147 # Need to link with -lpthread so libgomp.so is self-contained. 148 XLDFLAGS="${XLDFLAGS} -lpthread" 149 ;; 150 151 *-*-aix*) 152 config_path="posix" 153 # Need to link with -lpthread so libgomp.so is self-contained. 154 XLDFLAGS="${XLDFLAGS} -lpthread" 155 # AIX needs -frandom-seed for bootstrap compare. 156 XCFLAGS="${XCFLAGS} -frandom-seed=\$@" 157 ;; 158 159 nvptx*-*-*) 160 config_path="nvptx accel" 161 ;; 162 163 *-*-rtems*) 164 # Use self-contained synchronization objects if provided by Newlib 165 if test "x$ac_cv_type_struct__Mutex_Control" = xyes ; then 166 config_path="rtems posix" 167 fi 168 ;; 169 170 amdgcn*-*-*) 171 config_path="gcn accel" 172 ;; 173 174 *) 175 ;; 176 177esac 178