Adds version info to all signed binaries on Windows

This commit is contained in:
Steve Dower 2016-04-06 12:36:23 -07:00
commit 765c635dc8
34 changed files with 139 additions and 16 deletions

View File

@ -37,7 +37,6 @@
<PropertyGroup Label="Globals">
<ProjectGuid>{EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}</ProjectGuid>
<RootNamespace>wininst</RootNamespace>
<MakeVersionInfoBeforeTarget>ClCompile</MakeVersionInfoBeforeTarget>
<SupportPGO>false</SupportPGO>
</PropertyGroup>
<Import Project="..\..\PCBuild\python.props" />

View File

@ -10,10 +10,10 @@
#include "modsupport.h"
#include "patchlevel.h"
#ifdef _DEBUG
# include "pythonnt_rc_d.h"
# include <pythonnt_rc_d.h>
# define PYTHON_DEBUG_EXT "_d"
#else
# include "pythonnt_rc.h"
# include <pythonnt_rc.h>
# define PYTHON_DEBUG_EXT
#endif

49
PC/sqlite3.rc Normal file
View File

@ -0,0 +1,49 @@
// Resource script for Sqlite DLL.
#include <winver.h>
// Include the manifest file that indicates we support all
// current versions of Windows.
#include <winuser.h>
2 RT_MANIFEST "python.manifest"
/////////////////////////////////////////////////////////////////////////////
//
// Version
//
#define _S(x) #x
#define S(x) _S(x)
VS_VERSION_INFO VERSIONINFO
FILEVERSION SQLITE_MAJOR_VERSION, SQLITE_MINOR_VERSION, SQLITE_MICRO_VERSION, SQLITE_PATCH_VERSION
PRODUCTVERSION SQLITE_MAJOR_VERSION, SQLITE_MINOR_VERSION, SQLITE_MICRO_VERSION, SQLITE_PATCH_VERSION
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS VS_FF_DEBUG
#else
FILEFLAGS 0x0L
#endif
FILEOS VOS__WINDOWS32
FILETYPE VFT_DLL
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "000004b0"
BEGIN
VALUE "CompanyName", "SQLite3\0"
VALUE "FileDescription", "SQLite3\0"
VALUE "FileVersion", S(SQLITE_VERSION) "\0"
VALUE "InternalName", "SQLite3 DLL\0"
VALUE "LegalCopyright", "Unspecified\0"
VALUE "OriginalFilename", "sqlite3.dll\0"
VALUE "ProductName", "SQLite3\0"
VALUE "ProductVersion", S(SQLITE_VERSION) "\0"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x0, 1200
END
END

View File

@ -83,6 +83,9 @@
<ClInclude Include="$(bz2Dir)\bzlib.h" />
<ClInclude Include="$(bz2Dir)\bzlib_private.h" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -96,6 +96,9 @@
<Outputs>$(IntDir)win64.obj;%(Outputs)</Outputs>
</CustomBuild>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -66,6 +66,9 @@
<ItemGroup>
<ClCompile Include="..\Modules\_ctypes\_ctypes_test.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -113,6 +113,9 @@
<Outputs>$(IntDir)vcdiv64.obj;%(Outputs)</Outputs>
</CustomBuild>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -91,6 +91,9 @@
<ClCompile Include="..\Modules\expat\xmlrole.c" />
<ClCompile Include="..\Modules\expat\xmltok.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -70,6 +70,9 @@
<ItemGroup>
<ClCompile Include="..\Modules\_hashopenssl.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -73,6 +73,9 @@
<ItemGroup>
<ClCompile Include="..\Modules\_lzmamodule.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -68,6 +68,9 @@
<ItemGroup>
<ClCompile Include="..\PC\_msi.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -72,6 +72,9 @@
<ClCompile Include="..\Modules\_multiprocessing\multiprocessing.c" />
<ClCompile Include="..\Modules\_multiprocessing\semaphore.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -68,6 +68,9 @@
<ItemGroup>
<ClCompile Include="..\Modules\overlapped.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -71,6 +71,9 @@
<ItemGroup>
<ClCompile Include="..\Modules\socketmodule.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -90,6 +90,9 @@
<ClCompile Include="..\Modules\_sqlite\statement.c" />
<ClCompile Include="..\Modules\_sqlite\util.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -70,6 +70,9 @@
<ItemGroup>
<ClCompile Include="..\Modules\_ssl.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -68,6 +68,9 @@
<ItemGroup>
<ClCompile Include="..\Modules\_testbuffer.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -68,6 +68,9 @@
<ItemGroup>
<ClCompile Include="..\Modules\_testcapimodule.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -65,6 +65,9 @@
<ItemGroup>
<ClCompile Include="..\Programs\_testembed.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -68,6 +68,9 @@
<ItemGroup>
<ClCompile Include="..\Modules\_testimportmultiple.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -68,6 +68,9 @@
<ItemGroup>
<ClCompile Include="..\Modules\_testmultiphase.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -73,6 +73,9 @@
<ClCompile Include="..\Modules\_tkinter.c" />
<ClCompile Include="..\Modules\tkappinit.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -72,6 +72,9 @@
<ClCompile Include="..\Modules\expat\xmlrole.c" />
<ClCompile Include="..\Modules\expat\xmltok.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -38,7 +38,6 @@
<ProjectGuid>{7B2727B5-5A3F-40EE-A866-43A13CD31446}</ProjectGuid>
<RootNamespace>pylauncher</RootNamespace>
<TargetName>py</TargetName>
<MakeVersionInfoBeforeTarget>ClCompile</MakeVersionInfoBeforeTarget>
<SupportPGO>false</SupportPGO>
</PropertyGroup>
<Import Project="python.props" />

View File

@ -75,7 +75,7 @@
<LinkTimeCodeGeneration Condition="$(SupportPGO) and $(Configuration) == 'PGUpdate'">true</LinkTimeCodeGeneration>
</Lib>
<ResourceCompile>
<AdditionalIncludeDirectories>$(PySourcePath)PC;$(PySourcePath)Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>$(PySourcePath)PC;$(PySourcePath)Include;$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>$(_DebugPreprocessorDefinition)%(PreprocessorDefinitions)</PreprocessorDefinitions>
<Culture>0x0409</Culture>
</ResourceCompile>
@ -92,17 +92,17 @@
</ItemDefinitionGroup>
<Target Name="GeneratePythonNtRcH"
BeforeTargets="$(MakeVersionInfoBeforeTarget)"
BeforeTargets="ClCompile"
Inputs="$(PySourcePath)Include\patchlevel.h"
Outputs="$(PySourcePath)PC\pythonnt_rc$(PyDebugExt).h">
<WriteLinesToFile File="$(PySourcePath)PC\pythonnt_rc$(PyDebugExt).h" Overwrite="true" Encoding="ascii"
Lines='/* This file created by python.props /t:GeneratePythonNtRcH */
Outputs="$(IntDir)pythonnt_rc.h">
<WriteLinesToFile File="$(IntDir)pythonnt_rc.h" Overwrite="true" Encoding="ascii"
Lines='/* This file created by pyproject.props /t:GeneratePythonNtRcH */
#define FIELD3 $(Field3Value)
#define MS_DLL_ID "$(SysWinVer)"
#define PYTHON_DLL_NAME "$(PyDllName).dll"
#define PYTHON_DLL_NAME "$(TargetName)$(TargetExt)"
' />
<ItemGroup>
<FileWrites Include="$(PySourcePath)PC\pythonnt_rc$(PyDebugExt).h" />
<FileWrites Include="$(IntDir)pythonnt_rc.h" />
</ItemGroup>
</Target>

View File

@ -36,7 +36,6 @@
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{B11D750F-CD1F-4A96-85CE-E69A5C5259F9}</ProjectGuid>
<MakeVersionInfoBeforeTarget>ClCompile</MakeVersionInfoBeforeTarget>
</PropertyGroup>
<Import Project="python.props" />
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />

View File

@ -39,7 +39,6 @@
<RootNamespace>python3dll</RootNamespace>
<Keyword>Win32Proj</Keyword>
<TargetName>python3</TargetName>
<MakeVersionInfoBeforeTarget>ClCompile</MakeVersionInfoBeforeTarget>
<SupportPGO>false</SupportPGO>
</PropertyGroup>
<Import Project="python.props" />

View File

@ -48,7 +48,6 @@
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<PropertyGroup>
<MakeVersionInfoBeforeTarget>ClCompile</MakeVersionInfoBeforeTarget>
<KillPython>true</KillPython>
</PropertyGroup>
<ImportGroup Label="PropertySheets">

View File

@ -36,7 +36,6 @@
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{F4229CC3-873C-49AE-9729-DD308ED4CD4A}</ProjectGuid>
<MakeVersionInfoBeforeTarget>ClCompile</MakeVersionInfoBeforeTarget>
<SupportPGO>false</SupportPGO>
</PropertyGroup>
<Import Project="python.props" />

View File

@ -38,7 +38,6 @@
<ProjectGuid>{1D4B18D3-7C12-4ECB-9179-8531FF876CE6}</ProjectGuid>
<RootNamespace>pywlauncher</RootNamespace>
<TargetName>pyw</TargetName>
<MakeVersionInfoBeforeTarget>ClCompile</MakeVersionInfoBeforeTarget>
<SupportPGO>false</SupportPGO>
</PropertyGroup>
<Import Project="python.props" />

View File

@ -67,6 +67,9 @@
<ItemGroup>
<ClCompile Include="..\Modules\selectmodule.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -56,6 +56,12 @@
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<_SqliteVersion>$([System.Text.RegularExpressions.Regex]::Match(`$(sqlite3Dir)`, `((\d+)\.(\d+)\.(\d+)\.(\d+))\\?$`).Groups)</_SqliteVersion>
<SqliteVersion>$(_SqliteVersion.Split(`;`)[1])</SqliteVersion>
<SqliteMajorVersion>$(_SqliteVersion.Split(`;`)[2])</SqliteMajorVersion>
<SqliteMinorVersion>$(_SqliteVersion.Split(`;`)[3])</SqliteMinorVersion>
<SqliteMicroVersion>$(_SqliteVersion.Split(`;`)[4])</SqliteMicroVersion>
<SqlitePatchVersion>$(_SqliteVersion.Split(`;`)[5])</SqlitePatchVersion>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
@ -63,6 +69,9 @@
<PreprocessorDefinitions>SQLITE_API=__declspec(dllexport);%(PreprocessorDefinitions)</PreprocessorDefinitions>
<WarningLevel>Level1</WarningLevel>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>SQLITE_VERSION=$(SqliteVersion);SQLITE_MAJOR_VERSION=$(SqliteMajorVersion);SQLITE_MINOR_VERSION=$(SqliteMinorVersion);SQLITE_MICRO_VERSION=$(SqliteMicroVersion);SQLITE_PATCH_VERSION=$(SqlitePatchVersion);%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ResourceCompile>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="$(sqlite3Dir)\sqlite3.h" />
@ -71,6 +80,9 @@
<ItemGroup>
<ClCompile Include="$(sqlite3Dir)\sqlite3.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\sqlite3.rc" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>

View File

@ -71,6 +71,9 @@
<ItemGroup>
<ClCompile Include="..\Modules\unicodedata.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>

View File

@ -67,6 +67,9 @@
<ItemGroup>
<ClCompile Include="..\PC\winsound.c" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>