From a56fbad85ea655631bce68d4c0f47f1a8b500abd Mon Sep 17 00:00:00 2001 From: Steve Dower Date: Tue, 9 Nov 2021 20:12:53 +0000 Subject: [PATCH] bpo-45220: Ensure RT_MANIFEST is defined when compiling Windows resource files (GH-29501) --- PC/pylauncher.rc | 5 +++++ PC/pyshellext.rc | 6 ++++++ PC/python_exe.rc | 6 ++++++ PC/python_nt.rc | 6 ++++++ PC/pythonw_exe.rc | 6 ++++++ PC/sqlite3.rc | 6 ++++++ 6 files changed, 35 insertions(+) diff --git a/PC/pylauncher.rc b/PC/pylauncher.rc index d21f9b6e9d2..ff7e71e0fdb 100644 --- a/PC/pylauncher.rc +++ b/PC/pylauncher.rc @@ -2,6 +2,11 @@ #include "python_ver_rc.h" +#ifndef RT_MANIFEST +// bpo-45220: Cannot reliably #include RT_MANIFEST from +// anywhere, so we hardcode it +#define RT_MANIFEST 24 +#endif // Include the manifest file that indicates we support all // current versions of Windows. 1 RT_MANIFEST "python.manifest" diff --git a/PC/pyshellext.rc b/PC/pyshellext.rc index fc607e97840..af797ce95d5 100644 --- a/PC/pyshellext.rc +++ b/PC/pyshellext.rc @@ -2,6 +2,12 @@ #include "python_ver_rc.h" +#ifndef RT_MANIFEST +// bpo-45220: Cannot reliably #include RT_MANIFEST from +// anywhere, so we hardcode it +#define RT_MANIFEST 24 +#endif + // Include the manifest file that indicates we support all // current versions of Windows. 1 RT_MANIFEST "python.manifest" diff --git a/PC/python_exe.rc b/PC/python_exe.rc index 5eba89962b4..c3d3bff0198 100644 --- a/PC/python_exe.rc +++ b/PC/python_exe.rc @@ -2,6 +2,12 @@ #include "python_ver_rc.h" +#ifndef RT_MANIFEST +// bpo-45220: Cannot reliably #include RT_MANIFEST from +// anywhere, so we hardcode it +#define RT_MANIFEST 24 +#endif + // Include the manifest file that indicates we support all // current versions of Windows. 1 RT_MANIFEST "python.manifest" diff --git a/PC/python_nt.rc b/PC/python_nt.rc index 6fd872c1a03..ae64fbd217a 100644 --- a/PC/python_nt.rc +++ b/PC/python_nt.rc @@ -2,6 +2,12 @@ #include "python_ver_rc.h" +#ifndef RT_MANIFEST +// bpo-45220: Cannot reliably #include RT_MANIFEST from +// anywhere, so we hardcode it +#define RT_MANIFEST 24 +#endif + // Include the manifest file that indicates we support all // current versions of Windows. 2 RT_MANIFEST "python.manifest" diff --git a/PC/pythonw_exe.rc b/PC/pythonw_exe.rc index 562652be184..38570b74fa3 100644 --- a/PC/pythonw_exe.rc +++ b/PC/pythonw_exe.rc @@ -2,6 +2,12 @@ #include "python_ver_rc.h" +#ifndef RT_MANIFEST +// bpo-45220: Cannot reliably #include RT_MANIFEST from +// anywhere, so we hardcode it +#define RT_MANIFEST 24 +#endif + // Include the manifest file that indicates we support all // current versions of Windows. 1 RT_MANIFEST "python.manifest" diff --git a/PC/sqlite3.rc b/PC/sqlite3.rc index d2c18f8add8..9ae2aa0f6f2 100644 --- a/PC/sqlite3.rc +++ b/PC/sqlite3.rc @@ -2,6 +2,12 @@ #include +#ifndef RT_MANIFEST +// bpo-45220: Cannot reliably #include RT_MANIFEST from +// anywhere, so we hardcode it +#define RT_MANIFEST 24 +#endif + // Include the manifest file that indicates we support all // current versions of Windows. 2 RT_MANIFEST "python.manifest"