summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteve Dower <steve.dower@microsoft.com>2015-01-15 17:10:43 (GMT)
committerSteve Dower <steve.dower@microsoft.com>2015-01-15 17:10:43 (GMT)
commitab0406475698ceb374be38e5fe54eb884e9ec59d (patch)
treec0ffad66993d6d486e18842e5282fb68f4c02ba4
parent2587952f2fc4abb3adf6a838bf8a1fc3997c81be (diff)
downloadcpython-ab0406475698ceb374be38e5fe54eb884e9ec59d.zip
cpython-ab0406475698ceb374be38e5fe54eb884e9ec59d.tar.gz
cpython-ab0406475698ceb374be38e5fe54eb884e9ec59d.tar.bz2
Issue 23018: Add version info to python[w].exe
-rw-r--r--PC/python.manifest12
-rw-r--r--PC/python_exe.rc50
-rw-r--r--PC/python_nt.rc42
-rw-r--r--PC/python_ver_rc.h35
4 files changed, 106 insertions, 33 deletions
diff --git a/PC/python.manifest b/PC/python.manifest
new file mode 100644
index 0000000..3ac2630
--- /dev/null
+++ b/PC/python.manifest
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
+ <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
+ <application>
+ <supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/>
+ <supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>
+ <supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}"/>
+ <supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}"/>
+ <supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/>
+ </application>
+ </compatibility>
+</assembly> \ No newline at end of file
diff --git a/PC/python_exe.rc b/PC/python_exe.rc
index 14e2574..91785a1 100644
--- a/PC/python_exe.rc
+++ b/PC/python_exe.rc
@@ -1 +1,49 @@
-1 ICON DISCARDABLE "pycon.ico"
+// Resource script for Python console EXEs.
+
+#include "python_ver_rc.h"
+
+// Include the manifest file that indicates we support all
+// current versions of Windows.
+#include <winuser.h>
+1 RT_MANIFEST "python.manifest"
+
+1 ICON DISCARDABLE "pycon.ico"
+
+
+/////////////////////////////////////////////////////////////////////////////
+//
+// Version
+//
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION PYVERSION64
+ PRODUCTVERSION PYVERSION64
+ FILEFLAGSMASK 0x3fL
+#ifdef _DEBUG
+ FILEFLAGS VS_FF_DEBUG
+#else
+ FILEFLAGS 0x0L
+#endif
+ FILEOS VOS__WINDOWS32
+ FILETYPE VFT_APP
+ FILESUBTYPE 0x0L
+BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "000004b0"
+ BEGIN
+ VALUE "CompanyName", PYTHON_COMPANY "\0"
+ VALUE "FileDescription", "Python\0"
+ VALUE "FileVersion", PYTHON_VERSION
+ VALUE "InternalName", "Python Console\0"
+ VALUE "LegalCopyright", PYTHON_COPYRIGHT "\0"
+ VALUE "OriginalFilename", "python" PYTHON_DEBUG_EXT ".exe\0"
+ VALUE "ProductName", "Python\0"
+ VALUE "ProductVersion", PYTHON_VERSION
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x0, 1200
+ END
+END
diff --git a/PC/python_nt.rc b/PC/python_nt.rc
index 3144e86..fac6105 100644
--- a/PC/python_nt.rc
+++ b/PC/python_nt.rc
@@ -1,33 +1,11 @@
// Resource script for Python core DLL.
-// Currently only holds version information.
-//
-#include "winver.h"
-
-#define MS_WINDOWS
-#include "modsupport.h"
-#include "patchlevel.h"
-#ifdef _DEBUG
-# include "pythonnt_rc_d.h"
-#else
-# include "pythonnt_rc.h"
-#endif
-/* e.g., 3.3.0a1
- * PY_VERSION comes from patchlevel.h
- */
-#define PYTHON_VERSION PY_VERSION "\0"
+#include "python_ver_rc.h"
-/* 64-bit version number as comma-separated list of 4 16-bit ints */
-#if PY_MICRO_VERSION > 64
-# error "PY_MICRO_VERSION > 64"
-#endif
-#if PY_RELEASE_LEVEL > 99
-# error "PY_RELEASE_LEVEL > 99"
-#endif
-#if PY_RELEASE_SERIAL > 9
-# error "PY_RELEASE_SERIAL > 9"
-#endif
-#define PYVERSION64 PY_MAJOR_VERSION, PY_MINOR_VERSION, FIELD3, PYTHON_API_VERSION
+// Include the manifest file that indicates we support all
+// current versions of Windows.
+#include <winuser.h>
+2 RT_MANIFEST "python.manifest"
// String Tables
STRINGTABLE DISCARDABLE
@@ -45,23 +23,23 @@ VS_VERSION_INFO VERSIONINFO
PRODUCTVERSION PYVERSION64
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
- FILEFLAGS 0x1L
+ FILEFLAGS VS_FF_DEBUG
#else
FILEFLAGS 0x0L
#endif
- FILEOS 0x40004L
- FILETYPE 0x1L
+ FILEOS VOS__WINDOWS32
+ FILETYPE VFT_DLL
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "000004b0"
BEGIN
- VALUE "CompanyName", "Python Software Foundation\0"
+ VALUE "CompanyName", PYTHON_COMPANY "\0"
VALUE "FileDescription", "Python Core\0"
VALUE "FileVersion", PYTHON_VERSION
VALUE "InternalName", "Python DLL\0"
- VALUE "LegalCopyright", "Copyright © 2001-2015 Python Software Foundation. Copyright © 2000 BeOpen.com. Copyright © 1995-2001 CNRI. Copyright © 1991-1995 SMC.\0"
+ VALUE "LegalCopyright", PYTHON_COPYRIGHT "\0"
VALUE "OriginalFilename", PYTHON_DLL_NAME "\0"
VALUE "ProductName", "Python\0"
VALUE "ProductVersion", PYTHON_VERSION
diff --git a/PC/python_ver_rc.h b/PC/python_ver_rc.h
new file mode 100644
index 0000000..8794cad
--- /dev/null
+++ b/PC/python_ver_rc.h
@@ -0,0 +1,35 @@
+// Resource script for Python core DLL.
+// Currently only holds version information.
+//
+#include "winver.h"
+
+#define PYTHON_COMPANY "Python Software Foundation"
+#define PYTHON_COPYRIGHT "Copyright © 2001-2014 Python Software Foundation. Copyright © 2000 BeOpen.com. Copyright © 1995-2001 CNRI. Copyright © 1991-1995 SMC."
+
+#define MS_WINDOWS
+#include "modsupport.h"
+#include "patchlevel.h"
+#ifdef _DEBUG
+# include "pythonnt_rc_d.h"
+# define PYTHON_DEBUG_EXT "_d"
+#else
+# include "pythonnt_rc.h"
+# define PYTHON_DEBUG_EXT
+#endif
+
+/* e.g., 3.3.0a1
+ * PY_VERSION comes from patchlevel.h
+ */
+#define PYTHON_VERSION PY_VERSION "\0"
+
+/* 64-bit version number as comma-separated list of 4 16-bit ints */
+#if PY_MICRO_VERSION > 64
+# error "PY_MICRO_VERSION > 64"
+#endif
+#if PY_RELEASE_LEVEL > 99
+# error "PY_RELEASE_LEVEL > 99"
+#endif
+#if PY_RELEASE_SERIAL > 9
+# error "PY_RELEASE_SERIAL > 9"
+#endif
+#define PYVERSION64 PY_MAJOR_VERSION, PY_MINOR_VERSION, FIELD3, PYTHON_API_VERSION