1 # 2 # Copyright (C) 2012-2014 Free Software Foundation, Inc. 3 # 4 # This file is free software; you can redistribute it and/or modify 5 # it under the terms of the GNU General Public License as published by 6 # the Free Software Foundation; either version 3 of the License, or 7 # (at your option) any later version. 8 # 9 # This program is distributed in the hope that it will be useful, 10 # but WITHOUT ANY WARRANTY; without even the implied warranty of 11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 # GNU General Public License for more details. 13 # 14 # You should have received a copy of the GNU General Public License 15 # along with this program; see the file COPYING3. If not see 16 # <http://www.gnu.org/licenses/>. 17 # 18 # This file is a shell script that overrides some of the tools and 19 # flags used on a host specific basis. 20 21 # Since the "bfd/hosts" directory is shared by the bfd, opcodes, and 22 # binutils directories (at least), the index to it is also shared. 23 # This is that index. Each configure.ac file should source this file 24 # in its per-host part. 25 26 # This sets the following shell variables: 27 # HDEFINES host specific compiler options 28 # host64 set to true if 64 bit types are as fast as 32 bit 29 # HOST_64BIT_TYPE host 64 bit type 30 # HOST_U_64BIT_TYPE unsigned 64 bit type (not needed if 64BIT_TYPE is long) 31 32 HDEFINES= 33 host64=false 34 HOST_64BIT_TYPE= 35 HOST_U_64BIT_TYPE= 36 37 case "${host}" in 38 39 hppa*64*-*-hpux*) # HP/UX's ftello64 et.al. declarations are only 40 # visible when _LARGEFILE64_SOURCE is defined. 41 # Without those declarations, real_ftell et.al. 42 # get mis-compiled. 43 HDEFINES="-DHOST_HPPAHPUX -D_LARGEFILE64_SOURCE" 44 host64=true;; 45 hppa*-*-hpux*) HDEFINES="-DHOST_HPPAHPUX -D_LARGEFILE64_SOURCE" ;; 46 hppa*-*-hiux*) HDEFINES=-DHOST_HPPAHPUX ;; 47 hppa*-*-mpeix*) HDEFINES=-DHOST_HPPAMPEIX ;; 48 hppa*-*-bsd*) HDEFINES=-DHOST_HPPABSD ;; 49 hppa*-*-osf*) HDEFINES=-DHOST_HPPAOSF ;; 50 51 ia64-*-hpux*) HDEFINES=-D_LARGEFILE64_SOURCE 52 host64=true;; 53 ia64-*-*) host64=true;; 54 55 # Workaround for limitations on win9x where file contents are 56 # not zero'd out if you seek past the end and then write. 57 i[3-7]86-*-mingw32*) HDEFINES=-D__USE_MINGW_FSEEK;; 58 59 i[3-7]86-sequent-bsd*) HDEFINES=-Dshared=genshared ;; 60 i[3-7]86-sequent-sysv4*) ;; 61 i[3-7]86-sequent-sysv*) HDEFINES=-Dshared=genshared ;; 62 63 mips*-*-netbsd*) ;; 64 mips*-*-openbsd*) ;; 65 mips*-dec-*) HDEFINES="-G 4" ;; 66 mips*-sgi-irix3*) HDEFINES="-G 4" ;; 67 mips*-sgi-irix4*) HDEFINES="-G 4" ;; 68 mips*-sgi-irix6*) host64=true;; 69 mips64*-*-linux*) host64=true;; 70 mips64*-*-freebsd* | mips64*-*-kfreebsd*-gnu) host64=true;; 71 mips*-*-sysv4*) ;; 72 mips*-*-sysv*) HDEFINES="-G 4" ;; 73 mips*-*-riscos*) HDEFINES="-G 4" ;; 74 75 m68*-hp-hpux*) HDEFINES=-DHOST_HP300HPUX ;; 76 77 # Some Solaris systems (osol0906 at least) have a libc that doesn't recognise 78 # the "MS-ANSI" code page name, so we define an override for CP_ACP (sets the 79 # default code page used by windres/windmc when not specified by a commandline 80 # option) to select the "WINDOWS-1252" name instead. See PR11280 for details. 81 *-*-solaris2.11) HDEFINES=-DCP_ACP=1 ;; 82 83 *-*-windows*) 84 HOST_64BIT_TYPE=__int64 85 HOST_U_64BIT_TYPE="unsigned __int64" 86 # The following krock is necessary because we can't run the build compiler 87 # (MSVC) on the configure host, so we have to explicitly set the values here. 88 # Note that this file is never run through autoconf, so we can't use any 89 # autoconf macros here. Because of this, we have to muck with autoconf 90 # variables explicitly. 91 ac_cv_func_mmap_fixed_mapped=no 92 ac_cv_header_time=no 93 ac_cv_func_getpagesize=no 94 ac_cv_func_madvise=no 95 ac_cv_func_mprotect=no 96 ac_cv_func_getuid=no 97 ac_cv_func_getgid=no 98 ac_cv_header_sys_file_h=no 99 ac_cv_header_sys_time_h=no 100 ac_cv_header_unistd_h=no 101 ;; 102 esac 103