diff --git a/configure b/configure
index 4a176fe..b7ad64a 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 
-# From configure.in Revision: 1.206 
+# From configure.in Revision: 1.207 
 
 # Guess values for system-dependent variables and create Makefiles.
 # Generated automatically using autoconf version 2.13 
@@ -3419,7 +3419,7 @@
 #define C_THREADS 1
 EOF
 
-    LIBOBJS="$LIBOBJS Python/thread.o"
+    LIBOBJS="$LIBOBJS thread.o"
 else
   echo "$ac_t""no" 1>&6
 
@@ -3439,7 +3439,7 @@
 EOF
 
     LIBS="-lpth $LIBS"
-    LIBOBJS="$LIBOBJS Python/thread.o"
+    LIBOBJS="$LIBOBJS thread.o"
 else
   
     echo "$ac_t""no" 1>&6
@@ -3487,7 +3487,7 @@
 EOF
 
     LIBS="-lpthread $LIBS"
-    LIBOBJS="$LIBOBJS Python/thread.o"
+    LIBOBJS="$LIBOBJS thread.o"
 else
   echo "$ac_t""no" 1>&6
 
@@ -3545,7 +3545,7 @@
 EOF
 ;;
     esac
-    LIBOBJS="$LIBOBJS Python/thread.o"
+    LIBOBJS="$LIBOBJS thread.o"
 else
   echo "$ac_t""no" 1>&6
 
@@ -3585,7 +3585,7 @@
 #define BEOS_THREADS 1
 EOF
 
-    LIBOBJS="$LIBOBJS Python/thread.o"
+    LIBOBJS="$LIBOBJS thread.o"
 else
   echo "$ac_t""no" 1>&6
 
@@ -3633,7 +3633,7 @@
 EOF
 
     LIBS="$LIBS -lpthreads"
-    LIBOBJS="$LIBOBJS Python/thread.o"
+    LIBOBJS="$LIBOBJS thread.o"
 else
   echo "$ac_t""no" 1>&6
 
@@ -3681,7 +3681,7 @@
 EOF
 
     LIBS="$LIBS -lc_r"
-    LIBOBJS="$LIBOBJS Python/thread.o"
+    LIBOBJS="$LIBOBJS thread.o"
 else
   echo "$ac_t""no" 1>&6
 
@@ -3729,7 +3729,7 @@
 EOF
 
     LIBS="$LIBS -lthread"
-    LIBOBJS="$LIBOBJS Python/thread.o"
+    LIBOBJS="$LIBOBJS thread.o"
 else
   echo "$ac_t""no" 1>&6
 
@@ -3777,7 +3777,7 @@
 EOF
 
     LIBS="$LIBS -lpthread"
-    LIBOBJS="$LIBOBJS Python/thread.o"
+    LIBOBJS="$LIBOBJS thread.o"
 else
   echo "$ac_t""no" 1>&6
 
@@ -3825,7 +3825,7 @@
 EOF
 
     LIBS="$LIBS -lcma"
-    LIBOBJS="$LIBOBJS Python/thread.o"
+    LIBOBJS="$LIBOBJS thread.o"
 else
   echo "$ac_t""no" 1>&6
 
@@ -3892,7 +3892,7 @@
 EOF
 
     LIBS="$LIBS -lmpc"
-    LIBOBJS="$LIBOBJS Python/thread.o"
+    LIBOBJS="$LIBOBJS thread.o"
     USE_THREAD_MODULE=""
 else
   echo "$ac_t""no" 1>&6
@@ -3938,7 +3938,7 @@
 EOF
 
     LIBS="$LIBS -lthread"
-    LIBOBJS="$LIBOBJS Python/thread.o"
+    LIBOBJS="$LIBOBJS thread.o"
     USE_THREAD_MODULE=""
 else
   echo "$ac_t""no" 1>&6
@@ -6156,6 +6156,13 @@
 fi
 
 
+# Add Python/ prefix to LIBOBJS
+libobjs=$LIBOBJS
+LIBOBJS=
+for obj in $libobjs; do
+    LIBOBJS="$LIBOBJS Python/$obj"
+done
+
 #AC_MSG_CHECKING(for Modules/Setup)
 #if test ! -f Modules/Setup ; then
 #    if test ! -d Modules ; then
@@ -6170,7 +6177,7 @@
 
 SRCDIRS="Parser Grammar Objects Python Modules"
 echo $ac_n "checking for build directories""... $ac_c" 1>&6
-echo "configure:6174: checking for build directories" >&5
+echo "configure:6181: checking for build directories" >&5
 for dir in $SRCDIRS; do
     if test ! -d $dir; then
         mkdir $dir
diff --git a/configure.in b/configure.in
index 16a578a..bb439c7 100644
--- a/configure.in
+++ b/configure.in
@@ -773,7 +773,7 @@
     AC_DEFINE(_REENTRANT)
     AC_CHECK_HEADER(mach/cthreads.h, [AC_DEFINE(WITH_THREAD)
     AC_DEFINE(C_THREADS)
-    LIBOBJS="$LIBOBJS Python/thread.o"],[
+    LIBOBJS="$LIBOBJS thread.o"],[
     AC_MSG_CHECKING(for --with-pth)
     AC_ARG_WITH(pth,
     [  --with-pth                      use GNU pth threading libraries], [
@@ -781,51 +781,51 @@
     AC_DEFINE(WITH_THREAD)
     AC_DEFINE(HAVE_PTH)
     LIBS="-lpth $LIBS"
-    LIBOBJS="$LIBOBJS Python/thread.o"],[
+    LIBOBJS="$LIBOBJS thread.o"],[
     AC_MSG_RESULT(no)
     AC_CHECK_LIB(pthread, pthread_create, [AC_DEFINE(WITH_THREAD)
     AC_DEFINE(_POSIX_THREADS)
     LIBS="-lpthread $LIBS"
-    LIBOBJS="$LIBOBJS Python/thread.o"],[
+    LIBOBJS="$LIBOBJS thread.o"],[
     AC_CHECK_FUNC(pthread_detach, [AC_DEFINE(WITH_THREAD)
     case $ac_sys_system in
       Darwin*) ;;
       *) AC_DEFINE(_POSIX_THREADS);;
     esac
-    LIBOBJS="$LIBOBJS Python/thread.o"],[
+    LIBOBJS="$LIBOBJS thread.o"],[
     AC_CHECK_HEADER(kernel/OS.h, [AC_DEFINE(WITH_THREAD)
     AC_DEFINE(BEOS_THREADS)
-    LIBOBJS="$LIBOBJS Python/thread.o"],[
+    LIBOBJS="$LIBOBJS thread.o"],[
     AC_CHECK_LIB(pthreads, pthread_create, [AC_DEFINE(WITH_THREAD)
     AC_DEFINE(_POSIX_THREADS)
     LIBS="$LIBS -lpthreads"
-    LIBOBJS="$LIBOBJS Python/thread.o"], [
+    LIBOBJS="$LIBOBJS thread.o"], [
     AC_CHECK_LIB(c_r, pthread_create, [AC_DEFINE(WITH_THREAD)
     AC_DEFINE(_POSIX_THREADS)
     LIBS="$LIBS -lc_r"
-    LIBOBJS="$LIBOBJS Python/thread.o"], [
+    LIBOBJS="$LIBOBJS thread.o"], [
     AC_CHECK_LIB(thread, __d6_pthread_create, [AC_DEFINE(WITH_THREAD)
     AC_DEFINE(_POSIX_THREADS)
     LIBS="$LIBS -lthread"
-    LIBOBJS="$LIBOBJS Python/thread.o"], [
+    LIBOBJS="$LIBOBJS thread.o"], [
     AC_CHECK_LIB(pthread, __pthread_create_system, [AC_DEFINE(WITH_THREAD)
     AC_DEFINE(_POSIX_THREADS)
     LIBS="$LIBS -lpthread"
-    LIBOBJS="$LIBOBJS Python/thread.o"], [
+    LIBOBJS="$LIBOBJS thread.o"], [
     AC_CHECK_LIB(cma, pthread_create, [AC_DEFINE(WITH_THREAD)
     AC_DEFINE(_POSIX_THREADS)
     LIBS="$LIBS -lcma"
-    LIBOBJS="$LIBOBJS Python/thread.o"],[
+    LIBOBJS="$LIBOBJS thread.o"],[
     USE_THREAD_MODULE="#"])
     ])])])])])])])])])
 
     AC_CHECK_LIB(mpc, usconfig, [AC_DEFINE(WITH_THREAD)
     LIBS="$LIBS -lmpc"
-    LIBOBJS="$LIBOBJS Python/thread.o"
+    LIBOBJS="$LIBOBJS thread.o"
     USE_THREAD_MODULE=""])
     AC_CHECK_LIB(thread, thr_create, [AC_DEFINE(WITH_THREAD)
     LIBS="$LIBS -lthread"
-    LIBOBJS="$LIBOBJS Python/thread.o"
+    LIBOBJS="$LIBOBJS thread.o"
     USE_THREAD_MODULE=""])
 
     if test "$USE_THREAD_MODULE" != "#"
@@ -1293,6 +1293,13 @@
 EOF
 AC_CHECK_TYPE(socklen_t, int)
 
+# Add Python/ prefix to LIBOBJS
+libobjs=$LIBOBJS
+LIBOBJS=
+for obj in $libobjs; do
+    LIBOBJS="$LIBOBJS Python/$obj"
+done
+
 #AC_MSG_CHECKING(for Modules/Setup)
 #if test ! -f Modules/Setup ; then
 #    if test ! -d Modules ; then
