summaryrefslogtreecommitdiff
path: root/arch/x86/configfrag.ac
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/configfrag.ac')
-rw-r--r--arch/x86/configfrag.ac56
1 files changed, 21 insertions, 35 deletions
diff --git a/arch/x86/configfrag.ac b/arch/x86/configfrag.ac
index 1d37a0e7..0857368a 100644
--- a/arch/x86/configfrag.ac
+++ b/arch/x86/configfrag.ac
@@ -2,43 +2,28 @@ m4_define([x86_ENABLE_PAE],
[AC_DEFINE([X15_X86_PAE], [1], [use PAE page translation])])
m4_define([x86_SELECT_I386],
- [machine=i386
- AS_IF([test x"$enable_pae" = xyes], [x86_ENABLE_PAE])])
+ [subarch=i386
+ AS_IF([test x"$enable_x86_pae" = xyes], [x86_ENABLE_PAE])])
m4_define([x86_SELECT_AMD64],
- [machine=amd64
- AS_IF([test x"$enable_pae" = xyes],
- [AC_MSG_WARN([pae option available for i386 only, ignoring])])])
+ [subarch=amd64
+ AS_IF([test x"$enable_x86_pae" = xyes],
+ [AC_MSG_WARN([pae option available for 32-bits builds only, ignoring])])])
m4_define([x86_SELECT],
[arch=x86
- AC_ARG_WITH([i386],
- [AS_HELP_STRING([--with-i386],
- [build for a 32-bit IA-32 machine])],
- [opt_i386=$withval],
- [opt_i386=no])
-
- AC_ARG_WITH([amd64],
- [AS_HELP_STRING([--with-amd64],
- [build for a 64-bit AMD64 machine])],
- [opt_amd64=$withval],
- [opt_amd64=no])
-
- AC_ARG_ENABLE([pae],
- [AS_HELP_STRING([--enable-pae],
- [enable physical address extension (i386 only)])],
+ AC_ARG_ENABLE([x86-pae],
+ [AS_HELP_STRING([--enable-x86-pae],
+ [enable physical address extension (32-bits only)])],
[],
- [enable_pae=no])
+ [enable_x86_pae=no])
- AS_IF([test x"$opt_i386$opt_amd64" = xyesyes],
- [AC_MSG_ERROR([select only one of i386 or amd64])],
- [test x"$opt_i386$opt_amd64" = xnono],
+ AS_IF([test -z "$enable_64bits"],
[AS_CASE(["$host_cpu"],
- [i?86], [opt_i386=yes],
- [x86_64], [opt_amd64=yes])])
+ [i?86], [enable_64bits=no],
+ [x86_64], [enable_64bits=yes])])
- AS_IF([test x"$opt_i386" = xyes], [x86_SELECT_I386],
- [test x"$opt_amd64" = xyes], [x86_SELECT_AMD64])
+ AS_IF([test x"$enable_64bits" = xyes], [x86_SELECT_AMD64], [x86_SELECT_I386])
# Never generate instructions that are unhandled in kernel mode
AX_APPEND_COMPILE_FLAGS([ \
@@ -48,14 +33,15 @@ m4_define([x86_SELECT],
-mno-sse2 \
-mno-avx])
- AC_DEFINE_UNQUOTED([X15_X86_MACHINE], [$machine], [machine])
- AC_MSG_NOTICE([machine type: $arch ($machine)])
- AS_IF([test x"$machine" = xi386],
- [AC_MSG_NOTICE([physical address extension: $enable_pae])])])
+ AC_DEFINE_UNQUOTED([X15_X86_SUBARCH], [$subarch], [subarch])
+
+ AS_ECHO
+ AC_MSG_NOTICE([target: $arch ($subarch)])
+ AS_IF([test x"$subarch" = xi386],
+ [AC_MSG_NOTICE([x86: physical address extension: $enable_x86_pae])])])
AS_CASE(["$host_cpu"],
[i?86|x86_64], [x86_SELECT])
-AM_CONDITIONAL([X86], [test "$arch" = x86])
-AM_CONDITIONAL([I386], [test x"$opt_i386" = xyes])
-AM_CONDITIONAL([AMD64], [test x"$opt_amd64" = xyes])
+AM_CONDITIONAL([X86], [test x"$arch" = xx86])
+AM_CONDITIONAL([X86_64], [test x"$arch" = xx86 -a x"$enable_64bits" = xyes])