aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/mips/preconfigure
blob: fb572d752ffc6344bf587d941f033191c9fef87c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
abiflag=`$CC $CFLAGS $CPPFLAGS -E -dM -xc /dev/null | sed -n 's/^#define _MIPS_SIM \(.*\)/\1/p'`
mips16flag=`$CC $CFLAGS $CPPFLAGS -E -dM -xc /dev/null | sed -n 's/^#define __mips16 \(.*\)/\1/p'`

base_machine=mips
if test "$abiflag" = "_ABIO32" ; then
	if test "$mips16flag" = "1" ; then
		machine=mips/mips32/mips16
	else
		machine=mips/mips32
	fi
elif test "$abiflag" = "_ABIN32" ; then
	machine=mips/mips64/n32
elif test "$abiflag" = "_ABI64" ; then
	machine=mips/mips64/n64
else
	as_fn_error $? "Unable to determine ABI." "$LINENO" 5
fi
# $config_machine is not really needed here but the slash after $machine is
# needed by the case statement in sysdeps/unix/sysv/linux/mips/configure.ac.
machine=$machine/$config_machine

if test "$abiflag" != "_ABIO32" -a "$mips16flag" = "1"; then
	as_fn_error $? "mips16 is only supported with the O32 ABI." "$LINENO" 5
fi