diff options
Diffstat (limited to 'arch/x86/configfrag.ac')
-rw-r--r-- | arch/x86/configfrag.ac | 56 |
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]) |