diff options
-rw-r--r-- | Misc/NEWS | 4 | ||||
-rw-r--r-- | PC/pyconfig.h | 13 | ||||
-rw-r--r-- | PC/readme.txt | 20 | ||||
-rw-r--r-- | PCbuild/build.bat | 7 | ||||
-rw-r--r-- | PCbuild/pyd.vsprops | 1 | ||||
-rw-r--r-- | PCbuild/pyd_d.vsprops | 1 | ||||
-rw-r--r-- | PCbuild/readme.txt | 9 |
7 files changed, 35 insertions, 20 deletions
@@ -1562,6 +1562,10 @@ C API Windows ------- +- Patch #1706: Drop support for Win9x, WinME and NT4. Python now requires + Windows 2000 or greater. The _WINVER and NTDDI_VERSION macros are set to + Win2k for x86/32bit builds and WinXP for AMD64 builds. + - Conditionalize definition of _CRT_SECURE_NO_DEPRECATE and _CRT_NONSTDC_NO_DEPRECATE. diff --git a/PC/pyconfig.h b/PC/pyconfig.h index 560818f..1892cf1 100644 --- a/PC/pyconfig.h +++ b/PC/pyconfig.h @@ -158,10 +158,12 @@ WIN32 is still required for the locale module. /* set the version macros for the windows headers */ #ifdef MS_WINX64 /* 64 bit only runs on XP or greater */ -#define Py_WINVER 0x0501 +#define Py_WINVER _WIN32_WINNT_WINXP +#define Py_NTDDI NTDDI_WINXP #else -/* NT 4.0 or greater required otherwise */ -#define Py_WINVER 0x0400 +/* Python 2.6+ requires Windows 2000 or greater */ +#define Py_WINVER _WIN32_WINNT_WIN2K +#define Py_NTDDI NTDDI_WIN2KSP4 #endif /* We only set these values when building Python - we don't want to force @@ -171,7 +173,10 @@ WIN32 is still required for the locale module. structures etc so it can optionally use new Windows features if it determines at runtime they are available. */ -#ifdef Py_BUILD_CORE +#if defined(Py_BUILD_CORE) || defined(Py_BUILD_CORE_MODULE) +#ifndef NTDDI_VERSION +#define NTDDI_VERSION Py_NTDDI +#endif #ifndef WINVER #define WINVER Py_WINVER #endif diff --git a/PC/readme.txt b/PC/readme.txt index f1db9d3..b5a5a87 100644 --- a/PC/readme.txt +++ b/PC/readme.txt @@ -1,11 +1,6 @@ Welcome to the "PC" subdirectory of the Python distribution *********************************************************** -*** Note: the project files for MS VC++ 7.1 are now in the -*** PCbuild directory. See the file readme.txt there for build -*** instructions. There is some information below that might -*** still be relevant. - This "PC" subdirectory contains complete project files to make several older PC ports of Python, as well as all the PC-specific Python source files. It should be located in the root of the @@ -79,18 +74,23 @@ dllbase_nt.txt A (manually maintained) list of base addresses for example_nt A subdirectory showing how to build an extension as a DLL. -Visual Studio 6.0 -================= -The subdirectory VC6 contains Visual Studio 6 project files. These -were originally located in the PCBuild directory, but are no longer -maintained. +Legacy support for older versions of Visual Studio +================================================== +The subdirectories VC6, VS7.1 and VS8.0 contain legacy support older +versions of Microsoft Visual Studio. See PCbuild/readme.txt. + +EMX development tools for OS/2 +============================== +See os2emx/readme.txt. This platform is maintained by Andrew MacIntyre. IBM VisualAge C/C++ for OS/2 ============================ See os2vacpp/readme.txt. This platform is supported by Jeff Rush. +NOTE: Support for os2vacpp may be dropped in the near future. Please move + to EMX. Note for Windows 3.x and DOS users ================================== diff --git a/PCbuild/build.bat b/PCbuild/build.bat index d181daf..a73560e 100644 --- a/PCbuild/build.bat +++ b/PCbuild/build.bat @@ -5,12 +5,13 @@ rem just for convenience. setlocal set platf=Win32 set conf=Release -set build=/build +set build= :CheckOpts -if "%1"=="-c" (set conf=%2) & shift & shift & goto CheckOpts +if "%1"=="-c" (set conf=%2) & shift & shift & goto CheckOpts if "%1"=="-p" (set platf=%2) & shift & shift & goto CheckOpts -if "%1"=="-r" (set build=/rebuild) & shift & goto CheckOpts +if "%1"=="-r" (set build=/rebuild) & shift & goto CheckOpts +if "%1"=="-d" (set conf=Debug) & shift & goto CheckOpts set cmd=vcbuild /useenv pcbuild.sln %build% "%conf%|%platf%" echo %cmd% diff --git a/PCbuild/pyd.vsprops b/PCbuild/pyd.vsprops index 2e21a80..726cebd 100644 --- a/PCbuild/pyd.vsprops +++ b/PCbuild/pyd.vsprops @@ -7,6 +7,7 @@ > <Tool Name="VCCLCompilerTool" + PreprocessorDefinitions="Py_BUILD_CORE_MODULE" RuntimeLibrary="2" /> <Tool diff --git a/PCbuild/pyd_d.vsprops b/PCbuild/pyd_d.vsprops index b8f98f6..f838b67 100644 --- a/PCbuild/pyd_d.vsprops +++ b/PCbuild/pyd_d.vsprops @@ -10,6 +10,7 @@ Optimization="0" InlineFunctionExpansion="0" EnableIntrinsicFunctions="false" + PreprocessorDefinitions="Py_BUILD_CORE_MODULE" RuntimeLibrary="3" /> <Tool diff --git a/PCbuild/readme.txt b/PCbuild/readme.txt index 2b2d1f8..f8b3f65 100644 --- a/PCbuild/readme.txt +++ b/PCbuild/readme.txt @@ -19,7 +19,7 @@ folders or profile guided optimization (PGO). The missing bits and pieces won't stop you from building Python. The solution is configured to build the projects in the correct order. "Build -Solution" or F6 takes care of dependencies except for x64 builds. To make +Solution" or F7 takes care of dependencies except for x64 builds. To make cross compiling x64 builds on a 32bit OS possible the x64 builds require a 32bit version of Python. @@ -30,7 +30,8 @@ NOTE: running a Python core buildbot test slave; see SUBPROJECTS below) When using the Debug setting, the output files have a _d added to -their name: python30_d.dll, python_d.exe, parser_d.pyd, and so on. +their name: python30_d.dll, python_d.exe, parser_d.pyd, and so on. Both +the build and rt batch files accept a -d option for debug builds. The 32bit builds end up in the solution folder PCbuild while the x64 builds land in the amd64 subfolder. The PGI and PGO builds for profile guided @@ -122,6 +123,8 @@ _tkinter Use x64 instead of Win32 for the x64 platform. + NOTE: Tcl/Tk 8.4 doesn't compile for x64. + Build Tcl first --------------- Use "Start -> All Programs -> Microsoft Visual Studio 2008 @@ -285,7 +288,7 @@ Building for Itanium NOTE: Official support for Itanium builds have been dropped from the build. Please -contact as and provide patches if you are interested in Itanium builds. +contact us and provide patches if you are interested in Itanium builds. The project files support a ReleaseItanium configuration which creates Win64/Itanium binaries. For this to work, you need to install the Platform |