diff --git a/PC/config.h b/PC/config.h
index 6a1e4c1..dfe5118 100644
--- a/PC/config.h
+++ b/PC/config.h
@@ -241,23 +241,45 @@
 
 /* End of compilers - finish up */
 
+/* define the ANSI intptr_t type for portable use of a pointer sized
+   integer */
+#include <basetsd.h>
+#if defined(MS_WINDOWS) && !defined(MS_WIN64)
+typedef long intptr_t;
+#endif
+
 #if defined(MS_WIN64)
 /* maintain "win32" sys.platform for backward compatibility of Python code,
    the Win64 API should be close enough to the Win32 API to make this
    preferable */
-#define PLATFORM "win32"
-#define SIZEOF_VOID_P 8
+#	define PLATFORM "win32"
+#	define SIZEOF_VOID_P 8
+#	define SIZEOF_TIME_T 8
+#	define SIZEOF_OFF_T 4
+#	define SIZEOF_FPOS_T 8
+#	define SIZEOF_HKEY 8
+/* configure.in defines HAVE_LARGEFILE_SUPPORT iff HAVE_LONG_LONG,
+   sizeof(off_t) > sizeof(long), and sizeof(LONG_LONG) >= sizeof(off_t).
+   On Win64 the second condition is not true, but if fpos_t replaces off_t
+   then this is true. The uses of HAVE_LARGEFILE_SUPPORT imply that Win64
+   should define this. */
+#	define HAVE_LARGEFILE_SUPPORT
 #elif defined(MS_WIN32)
-#define PLATFORM "win32"
-#ifdef _M_ALPHA
-#define SIZEOF_VOID_P 8
-#else
-#define SIZEOF_VOID_P 4
-#endif
+#	define PLATFORM "win32"
+#	ifdef _M_ALPHA
+#		define SIZEOF_VOID_P 8
+#		define SIZEOF_TIME_T 8
+#	else
+#		define SIZEOF_VOID_P 4
+#		define SIZEOF_TIME_T 4
+#		define SIZEOF_OFF_T 4
+#		define SIZEOF_FPOS_T 8
+#		define SIZEOF_HKEY 4
+#	endif
 #elif defined(MS_WIN16)
-#define PLATFORM "win16"
+#	define PLATFORM "win16"
 #else
-#define PLATFORM "dos"
+#	define PLATFORM "dos"
 #endif
 
 
diff --git a/acconfig.h b/acconfig.h
index 8192aef..3c07ebc 100644
--- a/acconfig.h
+++ b/acconfig.h
@@ -151,6 +151,9 @@
 /* The number of bytes in an off_t. */
 #undef SIZEOF_OFF_T
 
+/* The number of bytes in a time_t. */
+#undef SIZEOF_TIME_T
+
 /* Defined to enable large file support when an off_t is bigger than a long
    and long long is available and at least as big as an off_t. You may need
    to add some flags for configuration and compilation to enable this mode.
diff --git a/config.h.in b/config.h.in
index 704f50a..89e52a2 100644
--- a/config.h.in
+++ b/config.h.in
@@ -213,6 +213,9 @@
 /* The number of bytes in an off_t. */
 #undef SIZEOF_OFF_T
 
+/* The number of bytes in a time_t. */
+#undef SIZEOF_TIME_T
+
 /* Defined to enable large file support when an off_t is bigger than a long
    and long long is available and at least as big as an off_t. You may need
    to add some flags for configuration and compilation to enable this mode.
@@ -234,6 +237,9 @@
 /* The number of bytes in a float.  */
 #undef SIZEOF_FLOAT
 
+/* The number of bytes in a fpos_t.  */
+#undef SIZEOF_FPOS_T
+
 /* The number of bytes in a int.  */
 #undef SIZEOF_INT
 
@@ -546,6 +552,9 @@
 /* Define if you have the <sys/socket.h> header file.  */
 #undef HAVE_SYS_SOCKET_H
 
+/* Define if you have the <sys/socket.h> header file.  */
+#undef HAVE_SYS_SOCKET_H
+
 /* Define if you have the <sys/time.h> header file.  */
 #undef HAVE_SYS_TIME_H
 
diff --git a/configure.in b/configure.in
index fd5f368..5790801 100644
--- a/configure.in
+++ b/configure.in
@@ -389,6 +389,7 @@
 AC_CHECK_SIZEOF(short)
 AC_CHECK_SIZEOF(float)
 AC_CHECK_SIZEOF(double)
+AC_CHECK_SIZEOF(fpos_t)
 
 AC_MSG_CHECKING(for long long support)
 have_long_long=no
@@ -424,6 +425,22 @@
   AC_MSG_RESULT(no)
 fi
 
+# AC_CHECK_SIZEOF() doesn't include <time.h>.
+AC_MSG_CHECKING(size of time_t)
+AC_CACHE_VAL(ac_cv_sizeof_time_t,
+[AC_TRY_RUN([#include <stdio.h>
+#include <time.h>
+main()
+{
+  FILE *f=fopen("conftestval", "w");
+  if (!f) exit(1);
+  fprintf(f, "%d\n", sizeof(time_t));
+  exit(0);
+}], ac_cv_sizeof_time_t=`cat conftestval`, ac_cv_sizeof_time_t=0)
+])
+AC_MSG_RESULT($ac_cv_sizeof_time_t)
+AC_DEFINE_UNQUOTED(SIZEOF_TIME_T, $ac_cv_sizeof_time_t)
+
 
 # Minor variations in building a framework between NextStep versions 4 and 5
 AC_SUBST(LIBTOOL_CRUFT)
