[Python-checkins] cpython: Issue #22592: Drop support of the Borland C compiler to build Python

victor.stinner python-checkins at python.org
Wed Oct 22 12:33:43 CEST 2014


https://hg.python.org/cpython/rev/f2ce9603346c
changeset:   93155:f2ce9603346c
user:        Victor Stinner <victor.stinner at gmail.com>
date:        Wed Oct 22 12:33:23 2014 +0200
summary:
  Issue #22592: Drop support of the Borland C compiler to build Python

The distutils module still supports it to build extensions.

files:
  Misc/NEWS             |   6 ++++++
  Modules/posixmodule.c |  14 +-------------
  Modules/timemodule.c  |  11 ++---------
  PC/pyconfig.h         |  29 -----------------------------
  4 files changed, 9 insertions(+), 51 deletions(-)


diff --git a/Misc/NEWS b/Misc/NEWS
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -1113,6 +1113,12 @@
 Build
 -----
 
+- Issue #22592: Drop support of the Borland C compiler to build Python. The
+  distutils module still supports it to build extensions.
+
+- Issue #22591: Drop support of MS-DOS, especially of the DJGPP compiler
+  (MS-DOS port of GCC).
+
 - Issue #16537: Check whether self.extensions is empty in setup.py. Patch by
   Jonathan Hosmer.
 
diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -6,7 +6,7 @@
    functions are either unimplemented or implemented differently.  The source
    assumes that for Windows NT, the macro 'MS_WINDOWS' is defined independent
    of the compiler used.  Different compilers define their own feature
-   test macro, e.g. '__BORLANDC__' or '_MSC_VER'. */
+   test macro, e.g. '_MSC_VER'. */
 
 
 
@@ -143,13 +143,6 @@
 #define HAVE_SYSTEM     1
 #include <process.h>
 #else
-#ifdef __BORLANDC__             /* Borland compiler */
-#define HAVE_EXECV      1
-#define HAVE_OPENDIR    1
-#define HAVE_PIPE       1
-#define HAVE_SYSTEM     1
-#define HAVE_WAIT       1
-#else
 #ifdef _MSC_VER         /* Microsoft compiler */
 #define HAVE_GETPPID    1
 #define HAVE_GETLOGIN   1
@@ -179,7 +172,6 @@
 #define HAVE_WAIT       1
 #define HAVE_TTYNAME    1
 #endif  /* _MSC_VER */
-#endif  /* __BORLANDC__ */
 #endif  /* ! __WATCOMC__ || __QNX__ */
 
 
@@ -214,11 +206,7 @@
 extern int chdir(const char *);
 extern int rmdir(const char *);
 #endif
-#ifdef __BORLANDC__
-extern int chmod(const char *, int);
-#else
 extern int chmod(const char *, mode_t);
-#endif
 /*#ifdef HAVE_FCHMOD
 extern int fchmod(int, mode_t);
 #endif*/
diff --git a/Modules/timemodule.c b/Modules/timemodule.c
--- a/Modules/timemodule.c
+++ b/Modules/timemodule.c
@@ -27,13 +27,6 @@
 #define WIN32_LEAN_AND_MEAN
 #include <windows.h>
 #include "pythread.h"
-
-#if defined(__BORLANDC__)
-/* These overrides not needed for Win32 */
-#define timezone _timezone
-#define tzname _tzname
-#define daylight _daylight
-#endif /* __BORLANDC__ */
 #endif /* MS_WINDOWS */
 #endif /* !__WATCOMC__ || __QNX__ */
 
@@ -88,7 +81,7 @@
 }
 #endif /* HAVE_CLOCK */
 
-#if defined(MS_WINDOWS) && !defined(__BORLANDC__)
+#ifdef MS_WINDOWS
 #define WIN32_PERF_COUNTER
 /* Win32 has better clock replacement; we have our own version, due to Mark
    Hammond and Tim Peters */
@@ -120,7 +113,7 @@
     }
     return PyFloat_FromDouble(diff / (double)cpu_frequency);
 }
-#endif
+#endif   /* MS_WINDOWS */
 
 #if defined(WIN32_PERF_COUNTER) || defined(HAVE_CLOCK)
 #define PYCLOCK
diff --git a/PC/pyconfig.h b/PC/pyconfig.h
--- a/PC/pyconfig.h
+++ b/PC/pyconfig.h
@@ -227,35 +227,6 @@
 #endif /* _MSC_VER */
 
 /* ------------------------------------------------------------------------*/
-/* The Borland compiler defines __BORLANDC__ */
-/* XXX These defines are likely incomplete, but should be easy to fix. */
-#ifdef __BORLANDC__
-#define COMPILER "[Borland]"
-
-#ifdef _WIN32
-/* tested with BCC 5.5 (__BORLANDC__ >= 0x0550)
- */
-
-typedef int pid_t;
-/* BCC55 seems to understand __declspec(dllimport), it is used in its
-   own header files (winnt.h, ...) - so we can do nothing and get the default*/
-
-#undef HAVE_SYS_UTIME_H
-#define HAVE_UTIME_H
-#define HAVE_DIRENT_H
-
-/* rename a few functions for the Borland compiler */
-#include <io.h>
-#define _chsize chsize
-#define _setmode setmode
-
-#else /* !_WIN32 */
-#error "Only Win32 and later are supported"
-#endif /* !_WIN32 */
-
-#endif /* BORLANDC */
-
-/* ------------------------------------------------------------------------*/
 /* egcs/gnu-win32 defines __GNUC__ and _WIN32 */
 #if defined(__GNUC__) && defined(_WIN32)
 /* XXX These defines are likely incomplete, but should be easy to fix.

-- 
Repository URL: https://hg.python.org/cpython


More information about the Python-checkins mailing list