From 18679948c4a06613763ae351160dd072567067a1 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Wed, 5 Dec 2007 21:57:25 +0000 Subject: [PATCH] The macros _WIN32, _WIN64 and _M_X64 are defined by the compiler. The VS 2008 IDE doesn't know about (some) of the macros and can display wrong information. In my case a section #ifdef _WIN64 was grayed out although the platform was x64. I've added the macros to pyproject.vsprops and x64.vsprops. I've also added a paragraph about the property files to the readme and fixed the order of pyupdate > pyinstrument. --- PCbuild9/bz2.vcproj | 4 ++-- PCbuild9/pgupdate.vsprops | 2 +- PCbuild9/pyexpat.vcproj | 4 ++-- PCbuild9/pyproject.vsprops | 2 +- PCbuild9/python.vcproj | 8 ++++---- PCbuild9/pythoncore.vcproj | 8 ++++---- PCbuild9/pythonw.vcproj | 8 ++++---- PCbuild9/readme.txt | 25 +++++++++++++++++++++++++ PCbuild9/w9xpopen.vcproj | 8 ++++---- PCbuild9/x64.vsprops | 1 + 10 files changed, 48 insertions(+), 22 deletions(-) diff --git a/PCbuild9/bz2.vcproj b/PCbuild9/bz2.vcproj index fc7d76f124a..2c16eb0cbb5 100644 --- a/PCbuild9/bz2.vcproj +++ b/PCbuild9/bz2.vcproj @@ -402,7 +402,7 @@ @@ -465,7 +465,7 @@ diff --git a/PCbuild9/pgupdate.vsprops b/PCbuild9/pgupdate.vsprops index 30ab891f223..7ce4a3a10ba 100644 --- a/PCbuild9/pgupdate.vsprops +++ b/PCbuild9/pgupdate.vsprops @@ -2,7 +2,7 @@ diff --git a/PCbuild9/pyexpat.vcproj b/PCbuild9/pyexpat.vcproj index 43d11462ca2..2d2cd9d1eaf 100644 --- a/PCbuild9/pyexpat.vcproj +++ b/PCbuild9/pyexpat.vcproj @@ -390,7 +390,7 @@ @@ -451,7 +451,7 @@ diff --git a/PCbuild9/pyproject.vsprops b/PCbuild9/pyproject.vsprops index c0d7548431f..2e5c0f01fb8 100644 --- a/PCbuild9/pyproject.vsprops +++ b/PCbuild9/pyproject.vsprops @@ -12,7 +12,7 @@ InlineFunctionExpansion="1" EnableIntrinsicFunctions="true" AdditionalIncludeDirectories="..\Include; ..\PC" - PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE" + PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE;_WIN32" StringPooling="true" ExceptionHandling="0" RuntimeLibrary="0" diff --git a/PCbuild9/python.vcproj b/PCbuild9/python.vcproj index 7efa98dabe2..17b29a20788 100644 --- a/PCbuild9/python.vcproj +++ b/PCbuild9/python.vcproj @@ -318,7 +318,7 @@ @@ -400,7 +400,7 @@ @@ -476,7 +476,7 @@ @@ -550,7 +550,7 @@ diff --git a/PCbuild9/pythonw.vcproj b/PCbuild9/pythonw.vcproj index 0013e9cbe92..add46842074 100644 --- a/PCbuild9/pythonw.vcproj +++ b/PCbuild9/pythonw.vcproj @@ -305,7 +305,7 @@ @@ -377,7 +377,7 @@ @@ -450,7 +450,7 @@ @@ -522,7 +522,7 @@ diff --git a/PCbuild9/readme.txt b/PCbuild9/readme.txt index 791edb2a0aa..fd3967af3a1 100644 --- a/PCbuild9/readme.txt +++ b/PCbuild9/readme.txt @@ -293,6 +293,31 @@ macro "Py_ENABLE_SHARED" to "Py_NO_ENABLE_SHARED". You may also have to change the "Runtime Library" from "Multi-threaded DLL (/MD)" to "Multi-threaded (/MT)". +Visual Studio properties +------------------------ + +The PCbuild9 solution makes heavy use of Visual Studio property files +(*.vsprops). The properties can be viewed and altered in the Property +Manager (View -> Other Windows -> Property Manager). + + * debug (debug macros) + * pginstrument (PGO) + * pgupdate (PGO) + +-- pginstrument + * pyd (python extension, release build) + +-- release + +-- pyproject + * pyd_d (python extension, debug build) + +-- debug + +-- pyproject + * pyproject (base settings for all projects) + * release (release macros) + * x64 (AMD64 / x64 platform specific settings) + +The pyproject propertyfile defines _WIN32 and x64 defines _WIN64 and _M_X64 +although the macros are set by the compiler, too. The GUI doesn't always know +about the macros and confuse the user with false information. + YOUR OWN EXTENSION DLLs ----------------------- If you want to create your own extension module DLL, there's an example diff --git a/PCbuild9/w9xpopen.vcproj b/PCbuild9/w9xpopen.vcproj index 2397366b792..9fcff7b6464 100644 --- a/PCbuild9/w9xpopen.vcproj +++ b/PCbuild9/w9xpopen.vcproj @@ -285,7 +285,7 @@