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.
This commit is contained in:
Christian Heimes 2007-12-05 21:57:25 +00:00
parent 749fddc093
commit 18679948c4
10 changed files with 48 additions and 22 deletions

View File

@ -402,7 +402,7 @@
<Configuration <Configuration
Name="PGUpdate|Win32" Name="PGUpdate|Win32"
ConfigurationType="2" ConfigurationType="2"
InheritedPropertySheets=".\pyd.vsprops;.\pgupdate.vsprops;.\pginstrument.vsprops" InheritedPropertySheets=".\pyd.vsprops;.\pgupdate.vsprops"
CharacterSet="0" CharacterSet="0"
WholeProgramOptimization="1" WholeProgramOptimization="1"
> >
@ -465,7 +465,7 @@
<Configuration <Configuration
Name="PGUpdate|x64" Name="PGUpdate|x64"
ConfigurationType="2" ConfigurationType="2"
InheritedPropertySheets=".\pyd.vsprops;.\x64.vsprops;.\pgupdate.vsprops;.\pginstrument.vsprops" InheritedPropertySheets=".\pyd.vsprops;.\x64.vsprops;.\pgupdate.vsprops"
CharacterSet="0" CharacterSet="0"
WholeProgramOptimization="1" WholeProgramOptimization="1"
> >

View File

@ -2,7 +2,7 @@
<VisualStudioPropertySheet <VisualStudioPropertySheet
ProjectType="Visual C++" ProjectType="Visual C++"
Version="8.00" Version="8.00"
Name="pgoptimize" Name="pgupdate"
OutputDirectory="$(SolutionDir)$(PlatformName)-pgo\" OutputDirectory="$(SolutionDir)$(PlatformName)-pgo\"
InheritedPropertySheets="$(SolutionDir)\pginstrument.vsprops" InheritedPropertySheets="$(SolutionDir)\pginstrument.vsprops"
> >

View File

@ -390,7 +390,7 @@
<Configuration <Configuration
Name="PGUpdate|Win32" Name="PGUpdate|Win32"
ConfigurationType="2" ConfigurationType="2"
InheritedPropertySheets=".\pyd.vsprops;.\pgupdate.vsprops;.\pginstrument.vsprops" InheritedPropertySheets=".\pyd.vsprops;.\pgupdate.vsprops"
CharacterSet="0" CharacterSet="0"
WholeProgramOptimization="1" WholeProgramOptimization="1"
> >
@ -451,7 +451,7 @@
<Configuration <Configuration
Name="PGUpdate|x64" Name="PGUpdate|x64"
ConfigurationType="2" ConfigurationType="2"
InheritedPropertySheets=".\pyd.vsprops;.\x64.vsprops;.\pgupdate.vsprops;.\pginstrument.vsprops" InheritedPropertySheets=".\pyd.vsprops;.\x64.vsprops;.\pgupdate.vsprops"
CharacterSet="0" CharacterSet="0"
WholeProgramOptimization="1" WholeProgramOptimization="1"
> >

View File

@ -12,7 +12,7 @@
InlineFunctionExpansion="1" InlineFunctionExpansion="1"
EnableIntrinsicFunctions="true" EnableIntrinsicFunctions="true"
AdditionalIncludeDirectories="..\Include; ..\PC" AdditionalIncludeDirectories="..\Include; ..\PC"
PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE" PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE;_WIN32"
StringPooling="true" StringPooling="true"
ExceptionHandling="0" ExceptionHandling="0"
RuntimeLibrary="0" RuntimeLibrary="0"

View File

@ -318,7 +318,7 @@
<Configuration <Configuration
Name="PGInstrument|Win32" Name="PGInstrument|Win32"
ConfigurationType="1" ConfigurationType="1"
InheritedPropertySheets=".\pyproject.vsprops;.\pginstrument.vsprops;.\release.vsprops" InheritedPropertySheets=".\pyproject.vsprops;.\release.vsprops;.\pginstrument.vsprops"
UseOfMFC="0" UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false" ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2" CharacterSet="2"
@ -392,7 +392,7 @@
<Configuration <Configuration
Name="PGInstrument|x64" Name="PGInstrument|x64"
ConfigurationType="1" ConfigurationType="1"
InheritedPropertySheets=".\pyproject.vsprops;.\x64.vsprops;.\pginstrument.vsprops;.\release.vsprops" InheritedPropertySheets=".\pyproject.vsprops;.\x64.vsprops;.\release.vsprops;.\pginstrument.vsprops"
UseOfMFC="0" UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false" ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2" CharacterSet="2"
@ -468,7 +468,7 @@
<Configuration <Configuration
Name="PGUpdate|Win32" Name="PGUpdate|Win32"
ConfigurationType="1" ConfigurationType="1"
InheritedPropertySheets=".\pyproject.vsprops;.\pgupdate.vsprops;.\release.vsprops" InheritedPropertySheets=".\pyproject.vsprops;.\release.vsprops;.\pgupdate.vsprops"
UseOfMFC="0" UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false" ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2" CharacterSet="2"
@ -542,7 +542,7 @@
<Configuration <Configuration
Name="PGUpdate|x64" Name="PGUpdate|x64"
ConfigurationType="1" ConfigurationType="1"
InheritedPropertySheets=".\pyproject.vsprops;.\x64.vsprops;.\pgupdate.vsprops;.\release.vsprops" InheritedPropertySheets=".\pyproject.vsprops;.\x64.vsprops;.\release.vsprops;.\pgupdate.vsprops"
UseOfMFC="0" UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false" ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2" CharacterSet="2"

View File

@ -326,7 +326,7 @@
<Configuration <Configuration
Name="PGInstrument|Win32" Name="PGInstrument|Win32"
ConfigurationType="2" ConfigurationType="2"
InheritedPropertySheets=".\pyproject.vsprops;.\pginstrument.vsprops;.\release.vsprops" InheritedPropertySheets=".\pyproject.vsprops;.\release.vsprops;.\pginstrument.vsprops"
UseOfMFC="0" UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false" ATLMinimizesCRunTimeLibraryUsage="false"
> >
@ -400,7 +400,7 @@
<Configuration <Configuration
Name="PGInstrument|x64" Name="PGInstrument|x64"
ConfigurationType="2" ConfigurationType="2"
InheritedPropertySheets=".\pyproject.vsprops;.\x64.vsprops;.\pginstrument.vsprops;.\release.vsprops" InheritedPropertySheets=".\pyproject.vsprops;.\x64.vsprops;.\release.vsprops;.\pginstrument.vsprops"
UseOfMFC="0" UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false" ATLMinimizesCRunTimeLibraryUsage="false"
> >
@ -476,7 +476,7 @@
<Configuration <Configuration
Name="PGUpdate|Win32" Name="PGUpdate|Win32"
ConfigurationType="2" ConfigurationType="2"
InheritedPropertySheets=".\pyproject.vsprops;.\pgupdate.vsprops;.\release.vsprops" InheritedPropertySheets=".\pyproject.vsprops;.\release.vsprops;.\pgupdate.vsprops"
UseOfMFC="0" UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false" ATLMinimizesCRunTimeLibraryUsage="false"
> >
@ -550,7 +550,7 @@
<Configuration <Configuration
Name="PGUpdate|x64" Name="PGUpdate|x64"
ConfigurationType="2" ConfigurationType="2"
InheritedPropertySheets=".\pyproject.vsprops;.\x64.vsprops;.\pgupdate.vsprops;.\release.vsprops" InheritedPropertySheets=".\pyproject.vsprops;.\x64.vsprops;.\release.vsprops;.\pgupdate.vsprops"
UseOfMFC="0" UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false" ATLMinimizesCRunTimeLibraryUsage="false"
> >

View File

@ -305,7 +305,7 @@
<Configuration <Configuration
Name="PGInstrument|Win32" Name="PGInstrument|Win32"
ConfigurationType="1" ConfigurationType="1"
InheritedPropertySheets=".\pyproject.vsprops;.\pginstrument.vsprops;.\release.vsprops" InheritedPropertySheets=".\pyproject.vsprops;.\release.vsprops;.\pginstrument.vsprops"
UseOfMFC="0" UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false" ATLMinimizesCRunTimeLibraryUsage="false"
> >
@ -377,7 +377,7 @@
<Configuration <Configuration
Name="PGInstrument|x64" Name="PGInstrument|x64"
ConfigurationType="1" ConfigurationType="1"
InheritedPropertySheets=".\pyproject.vsprops;.\x64.vsprops;.\pginstrument.vsprops;.\release.vsprops" InheritedPropertySheets=".\pyproject.vsprops;.\x64.vsprops;.\release.vsprops;.\pginstrument.vsprops"
UseOfMFC="0" UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false" ATLMinimizesCRunTimeLibraryUsage="false"
> >
@ -450,7 +450,7 @@
<Configuration <Configuration
Name="PGUpdate|Win32" Name="PGUpdate|Win32"
ConfigurationType="1" ConfigurationType="1"
InheritedPropertySheets=".\pyproject.vsprops;.\pgupdate.vsprops;.\release.vsprops" InheritedPropertySheets=".\pyproject.vsprops;.\release.vsprops;.\pgupdate.vsprops"
UseOfMFC="0" UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false" ATLMinimizesCRunTimeLibraryUsage="false"
> >
@ -522,7 +522,7 @@
<Configuration <Configuration
Name="PGUpdate|x64" Name="PGUpdate|x64"
ConfigurationType="1" ConfigurationType="1"
InheritedPropertySheets=".\pyproject.vsprops;.\x64.vsprops;.\pgupdate.vsprops;.\release.vsprops" InheritedPropertySheets=".\pyproject.vsprops;.\x64.vsprops;.\release.vsprops;.\pgupdate.vsprops"
UseOfMFC="0" UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false" ATLMinimizesCRunTimeLibraryUsage="false"
> >

View File

@ -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 change the "Runtime Library" from "Multi-threaded DLL (/MD)" to
"Multi-threaded (/MT)". "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 YOUR OWN EXTENSION DLLs
----------------------- -----------------------
If you want to create your own extension module DLL, there's an example If you want to create your own extension module DLL, there's an example

View File

@ -285,7 +285,7 @@
<Configuration <Configuration
Name="PGInstrument|Win32" Name="PGInstrument|Win32"
ConfigurationType="1" ConfigurationType="1"
InheritedPropertySheets=".\pyproject.vsprops;.\pginstrument.vsprops;.\release.vsprops" InheritedPropertySheets=".\pyproject.vsprops;.\release.vsprops;.\pginstrument.vsprops"
UseOfMFC="0" UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false" ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2" CharacterSet="2"
@ -353,7 +353,7 @@
<Configuration <Configuration
Name="PGInstrument|x64" Name="PGInstrument|x64"
ConfigurationType="1" ConfigurationType="1"
InheritedPropertySheets=".\pyproject.vsprops;.\x64.vsprops;.\pginstrument.vsprops;.\release.vsprops" InheritedPropertySheets=".\pyproject.vsprops;.\x64.vsprops;.\release.vsprops;.\pginstrument.vsprops"
UseOfMFC="0" UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false" ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2" CharacterSet="2"
@ -423,7 +423,7 @@
<Configuration <Configuration
Name="PGUpdate|Win32" Name="PGUpdate|Win32"
ConfigurationType="1" ConfigurationType="1"
InheritedPropertySheets=".\pyproject.vsprops;.\pgupdate.vsprops;.\release.vsprops" InheritedPropertySheets=".\pyproject.vsprops;.\release.vsprops;.\pgupdate.vsprops"
UseOfMFC="0" UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false" ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2" CharacterSet="2"
@ -491,7 +491,7 @@
<Configuration <Configuration
Name="PGUpdate|x64" Name="PGUpdate|x64"
ConfigurationType="1" ConfigurationType="1"
InheritedPropertySheets=".\pyproject.vsprops;.\x64.vsprops;.\pgupdate.vsprops;.\release.vsprops" InheritedPropertySheets=".\pyproject.vsprops;.\x64.vsprops;.\release.vsprops;.\pgupdate.vsprops"
UseOfMFC="0" UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false" ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2" CharacterSet="2"

View File

@ -9,6 +9,7 @@
<Tool <Tool
Name="VCCLCompilerTool" Name="VCCLCompilerTool"
AdditionalOptions="/USECL:MS_OPTERON /GS-" AdditionalOptions="/USECL:MS_OPTERON /GS-"
PreprocessorDefinitions="_WIN64;_M_X64"
/> />
<Tool <Tool
Name="VCLinkerTool" Name="VCLinkerTool"