1# This file is a shell script that overrides some of the tools and
2# flags used on a host specific basis.
3
4# Since the "bfd/hosts" directory is shared by the bfd, opcodes, and
5# binutils directories (at least), the index to it is also shared.
6# This is that index.  Each configure.in file should source this file
7# in its per-host part.
8
9# This sets the following shell variables:
10#  HDEFINES		host specific compiler options
11#  host64		set to true if 64 bit types are as fast as 32 bit
12#  HOST_64BIT_TYPE	host 64 bit type
13#  HOST_U_64BIT_TYPE	unsigned 64 bit type (not needed if 64BIT_TYPE is long)
14
15HDEFINES=
16host64=false
17HOST_64BIT_TYPE=
18HOST_U_64BIT_TYPE=
19
20case "${host}" in
21
22hppa*64*-*-hpux*)	# HP/UX's ftello64 et.al. declarations are only
23			# visible when _LARGEFILE64_SOURCE is defined.
24			# Without those declarations, real_ftell et.al.
25			# get mis-compiled.
26			HDEFINES="-DHOST_HPPAHPUX -D_LARGEFILE64_SOURCE"
27			host64=true;;
28hppa*-*-hpux*)		HDEFINES="-DHOST_HPPAHPUX -D_LARGEFILE64_SOURCE" ;;
29hppa*-*-hiux*)		HDEFINES=-DHOST_HPPAHPUX ;;
30hppa*-*-mpeix*)		HDEFINES=-DHOST_HPPAMPEIX ;;
31hppa*-*-bsd*)		HDEFINES=-DHOST_HPPABSD ;;
32hppa*-*-osf*)		HDEFINES=-DHOST_HPPAOSF ;;
33
34ia64-*-hpux*)		HDEFINES=-D_LARGEFILE64_SOURCE
35			host64=true;;
36ia64-*-*)		host64=true;;
37
38# Workaround for limitations on win9x where file contents are
39# not zero'd out if you seek past the end and then write.
40i[3-7]86-*-mingw32*)	HDEFINES=-D__USE_MINGW_FSEEK;;
41
42i[3-7]86-sequent-bsd*)	HDEFINES=-Dshared=genshared ;;
43i[3-7]86-sequent-sysv4*) ;;
44i[3-7]86-sequent-sysv*)	HDEFINES=-Dshared=genshared ;;
45
46mips*-*-netbsd*)	;;
47mips*-*-openbsd*)	;;
48mips*-dec-*)		HDEFINES="-G 4"	;;
49mips*-sgi-irix3*)	HDEFINES="-G 4" ;;
50mips*-sgi-irix4*)	HDEFINES="-G 4" ;;
51mips*-sgi-irix6*)	host64=true;;
52mips64*-*-linux*)	host64=true;;
53mips*-*-sysv4*)		;;
54mips*-*-sysv*)		HDEFINES="-G 4" ;;
55mips*-*-riscos*)	HDEFINES="-G 4" ;;
56
57m68*-hp-hpux*)		HDEFINES=-DHOST_HP300HPUX ;;
58
59sparc64*-*-netbsd*)	host64=true; HOST_64BIT_TYPE=long ;;
60
61x86_64*-*-netbsd*)	host64=true; HOST_64BIT_TYPE=long ;;
62
63*-*-aix*)		HOST_64BIT_TYPE="long long"
64			HOST_U_64BIT_TYPE="unsigned long long"
65			;;
66
67*-*-solaris*)		HOST_64BIT_TYPE="long long"
68			HOST_U_64BIT_TYPE="unsigned long long"
69			;;
70
71*-*-windows*)
72			HOST_64BIT_TYPE=__int64
73			HOST_U_64BIT_TYPE="unsigned __int64"
74# The following krock is necessary because we can't run the build compiler
75# (MSVC) on the configure host, so we have to explicitly set the values here.
76# Note that this file is never run through autoconf, so we can't use any
77# autoconf macros here.  Because of this, we have to muck with autoconf
78# variables explicitly.
79			ac_cv_func_mmap_fixed_mapped=no
80			ac_cv_header_time=no
81			ac_cv_func_getpagesize=no
82			ac_cv_func_madvise=no
83			ac_cv_func_mprotect=no
84			ac_cv_func_getuid=no
85			ac_cv_func_getgid=no
86			ac_cv_header_sys_file_h=no
87			ac_cv_header_sys_time_h=no
88			ac_cv_header_unistd_h=no
89			;;
90esac
91