Mercurial > emacs
changeset 108145:947dd776616f
Move test for 64-bit kernel with 32-bit userland to configure.
See discussion in bug#5655.
* configure.in (machine, canonical): On amdx86-64, check for a 32-bit
userland and maybe change values to i386 (move test from s/amdx86-64.h).
* src/m/amdx86-64.h [i386]: Move this test to configure.in.
author | Glenn Morris <rgm@gnu.org> |
---|---|
date | Tue, 27 Apr 2010 23:43:38 -0700 |
parents | c46b2d0614cb |
children | b810c933481f |
files | ChangeLog configure.in src/m/amdx86-64.h |
diffstat | 3 files changed, 19 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Tue Apr 27 14:14:16 2010 -0400 +++ b/ChangeLog Tue Apr 27 23:43:38 2010 -0700 @@ -1,3 +1,8 @@ +2010-04-28 Glenn Morris <rgm@gnu.org> + + * configure.in (machine, canonical): On amdx86-64, check for a 32-bit + userland and maybe change values to i386 (move test from s/amdx86-64.h). + 2010-04-27 Glenn Morris <rgm@gnu.org> * configure.in (LIBXTR6): New output variable. Move unixware special
--- a/configure.in Tue Apr 27 14:14:16 2010 -0400 +++ b/configure.in Tue Apr 27 23:43:38 2010 -0700 @@ -761,6 +761,20 @@ if test "x$RANLIB" = x; then AC_PROG_RANLIB fi + +## Although we're running on an amd64 kernel, we're actually compiling for +## the x86 architecture. The user should probably have provided an +## explicit --build to `configure', but if everything else than the kernel +## is running in i386 mode, we can help them out. +if test "$machine" = "amdx86-64"; then + AC_CHECK_DECL([i386]) + if test "$ac_cv_have_decl_i386" = "yes"; then + canonical=`echo "$canonical" | sed -e 's/^amd64/i386/' -e 's/^x86_64/i386/'` + machine=intel386 + machfile="m/${machine}.h" + fi +fi + AC_PATH_PROG(INSTALL_INFO, install-info) AC_PATH_PROG(INSTALL_INFO, install-info,, /usr/sbin) AC_PATH_PROG(INSTALL_INFO, install-info,:, /sbin)
--- a/src/m/amdx86-64.h Tue Apr 27 14:14:16 2010 -0400 +++ b/src/m/amdx86-64.h Tue Apr 27 23:43:38 2010 -0700 @@ -17,15 +17,6 @@ You should have received a copy of the GNU General Public License along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ -#ifdef i386 -/* Although we're running on an amd64 kernel, we're actually compiling for - the x86 architecture. The user should probably have provided an - explicit --build to `configure', but if everything else than the kernel - is running in i386 mode, then the bug is really ours: we should have - guessed better. */ -#include "m/intel386.h" -#else - /* The following line tells the configuration script what sort of operating system this machine is likely to run. USUAL-OPSYS="linux" */ @@ -90,7 +81,6 @@ #define LIB_STANDARD -lgcc -lc -lgcc $(CRT_DIR)/crtn.o #endif /* SOLARIS2 */ -#endif /* !i386 */ /* arch-tag: 8a5e001d-e12e-4692-a3a6-0b15ba271c6e (do not change this comment) */