diff --git a/Misc/NEWS b/Misc/NEWS
index 4cabe95..2bdbbc4 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -104,6 +104,9 @@
 Build
 -----
 
+- Bug #1578513: Cross compilation was broken by a change to configure.
+  Repair so that it's back to how it was in 2.4.3.
+
 - Patch #1576954: Update VC6 build directory; remove redundant
   files in VC7.
 
diff --git a/configure b/configure
index 55f278c..c17dbd7 100755
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
 #! /bin/sh
-# From configure.in Revision: 52087 .
+# From configure.in Revision: 52090 .
 # Guess values for system-dependent variables and create Makefiles.
 # Generated by GNU Autoconf 2.59 for python 2.5.
 #
@@ -22051,55 +22051,38 @@
 
 echo "$as_me:$LINENO: checking for /dev/ptmx" >&5
 echo $ECHO_N "checking for /dev/ptmx... $ECHO_C" >&6
-if test "${ac_cv_file__dev_ptmx+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  test "$cross_compiling" = yes &&
-  { { echo "$as_me:$LINENO: error: cannot check for file existence when cross compiling" >&5
-echo "$as_me: error: cannot check for file existence when cross compiling" >&2;}
-   { (exit 1); exit 1; }; }
-if test -r "/dev/ptmx"; then
-  ac_cv_file__dev_ptmx=yes
-else
-  ac_cv_file__dev_ptmx=no
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_file__dev_ptmx" >&5
-echo "${ECHO_T}$ac_cv_file__dev_ptmx" >&6
-if test $ac_cv_file__dev_ptmx = yes; then
+
+if test -r /dev/ptmx
+then
+  echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
 
 cat >>confdefs.h <<\_ACEOF
 #define HAVE_DEV_PTMX 1
 _ACEOF
 
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
 echo "$as_me:$LINENO: checking for /dev/ptc" >&5
 echo $ECHO_N "checking for /dev/ptc... $ECHO_C" >&6
-if test "${ac_cv_file__dev_ptc+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  test "$cross_compiling" = yes &&
-  { { echo "$as_me:$LINENO: error: cannot check for file existence when cross compiling" >&5
-echo "$as_me: error: cannot check for file existence when cross compiling" >&2;}
-   { (exit 1); exit 1; }; }
-if test -r "/dev/ptc"; then
-  ac_cv_file__dev_ptc=yes
-else
-  ac_cv_file__dev_ptc=no
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_file__dev_ptc" >&5
-echo "${ECHO_T}$ac_cv_file__dev_ptc" >&6
-if test $ac_cv_file__dev_ptc = yes; then
+
+if test -r /dev/ptc
+then
+  echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
 
 cat >>confdefs.h <<\_ACEOF
 #define HAVE_DEV_PTC 1
 _ACEOF
 
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
-
 echo "$as_me:$LINENO: checking for %zd printf() format support" >&5
 echo $ECHO_N "checking for %zd printf() format support... $ECHO_C" >&6
 if test "$cross_compiling" = yes; then
diff --git a/configure.in b/configure.in
index ba3f445..cd9161b 100644
--- a/configure.in
+++ b/configure.in
@@ -3338,8 +3338,27 @@
   AC_MSG_RESULT(no)
 )
 
-AC_CHECK_FILE(/dev/ptmx, AC_DEFINE(HAVE_DEV_PTMX, 1, [Define if we have /dev/ptmx.]))
-AC_CHECK_FILE(/dev/ptc, AC_DEFINE(HAVE_DEV_PTC, 1, [Define if we have /dev/ptc.]))
+AC_MSG_CHECKING(for /dev/ptmx)
+
+if test -r /dev/ptmx
+then
+  AC_MSG_RESULT(yes)
+  AC_DEFINE(HAVE_DEV_PTMX, 1,
+  [Define if we have /dev/ptmx.])
+else
+  AC_MSG_RESULT(no)
+fi
+
+AC_MSG_CHECKING(for /dev/ptc)
+
+if test -r /dev/ptc
+then
+  AC_MSG_RESULT(yes)
+  AC_DEFINE(HAVE_DEV_PTC, 1,
+  [Define if we have /dev/ptc.])
+else
+  AC_MSG_RESULT(no)
+fi
 
 AC_MSG_CHECKING(for %zd printf() format support)
 AC_TRY_RUN([#include <stdio.h>
