From 77d892612640a23c17debdac579c4afcbb2b4afd Mon Sep 17 00:00:00 2001 From: PB Date: Fri, 17 Dec 2021 16:57:45 +0100 Subject: [PATCH] Simplify Windows application manifests In section "dependency" use "*" in processorArchitecture instead of specifying the concrete architecture such as "amd64" or "x86". This allows to have just one manifest for all architectures instead of having them for all supported architectures individually differing in just processorArchitecture. --- build/bakefiles/common.bkl | 66 ++++---------------- build/bakefiles/files.bkl | 4 +- build/cmake/files.cmake | 4 +- build/cmake/functions.cmake | 8 +-- build/files | 4 +- docs/msw/winxp.md | 2 +- include/wx/msw/amd64.manifest | 22 ------- include/wx/msw/amd64_dpi_aware.manifest | 34 ---------- include/wx/msw/amd64_dpi_aware_pmv2.manifest | 35 ----------- include/wx/msw/arm.manifest | 22 ------- include/wx/msw/arm64.manifest | 22 ------- include/wx/msw/ia64.manifest | 22 ------- include/wx/msw/wx.manifest | 2 +- include/wx/msw/wx.rc | 29 +-------- include/wx/msw/wx_dpi_aware.manifest | 2 +- include/wx/msw/wx_dpi_aware_pmv2.manifest | 2 +- 16 files changed, 26 insertions(+), 254 deletions(-) delete mode 100644 include/wx/msw/amd64.manifest delete mode 100644 include/wx/msw/amd64_dpi_aware.manifest delete mode 100644 include/wx/msw/amd64_dpi_aware_pmv2.manifest delete mode 100644 include/wx/msw/arm.manifest delete mode 100644 include/wx/msw/arm64.manifest delete mode 100644 include/wx/msw/ia64.manifest diff --git a/build/bakefiles/common.bkl b/build/bakefiles/common.bkl index d0907c6c20..153d70ef4a 100644 --- a/build/bakefiles/common.bkl +++ b/build/bakefiles/common.bkl @@ -335,64 +335,22 @@ - - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/wx_dpi_aware.manifest - - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware.manifest - - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/wx_dpi_aware_pmv2.manifest - - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware_pmv2.manifest + + /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/wx_dpi_aware.manifest + + /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/wx_dpi_aware_pmv2.manifest - - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/wx_dpi_aware.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/wx_dpi_aware.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/wx_dpi_aware.manifest - - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware.manifest - - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/wx_dpi_aware_pmv2.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/wx_dpi_aware_pmv2.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/wx_dpi_aware_pmv2.manifest - - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware_pmv2.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware_pmv2.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware_pmv2.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware_pmv2.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware_pmv2.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware_pmv2.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware_pmv2.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware_pmv2.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware_pmv2.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware_pmv2.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware_pmv2.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware_pmv2.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware_pmv2.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware_pmv2.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware_pmv2.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware_pmv2.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware_pmv2.manifest - /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/amd64_dpi_aware_pmv2.manifest + + /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/wx_dpi_aware.manifest + /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/wx_dpi_aware.manifest + /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/wx_dpi_aware.manifest + + /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/wx_dpi_aware_pmv2.manifest + /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/wx_dpi_aware_pmv2.manifest + /MANIFEST:EMBED /MANIFESTINPUT:$(TOP_SRCDIR)include/wx/msw/wx_dpi_aware_pmv2.manifest diff --git a/build/bakefiles/files.bkl b/build/bakefiles/files.bkl index bfc3249842..e2bbcb8bf9 100644 --- a/build/bakefiles/files.bkl +++ b/build/bakefiles/files.bkl @@ -2285,8 +2285,8 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! wx/msw/wx.manifest - wx/msw/amd64.manifest - wx/msw/ia64.manifest + wx/msw/wx_dpi_aware.manifest + wx/msw/wx_dpi_aware_pmv2.manifest wx/msw/wx.rc wx/msw/colours.bmp diff --git a/build/cmake/files.cmake b/build/cmake/files.cmake index 6d99745f37..7b8f9ff261 100644 --- a/build/cmake/files.cmake +++ b/build/cmake/files.cmake @@ -2174,8 +2174,8 @@ set(MSW_HDR set(MSW_RSC # Resources must be installed together with headers: wx/msw/wx.manifest - wx/msw/amd64.manifest - wx/msw/ia64.manifest + wx/msw/wx_dpi_aware.manifest + wx/msw/wx_dpi_aware_pmv2.manifest wx/msw/wx.rc # bitmaps wx/msw/colours.bmp diff --git a/build/cmake/functions.cmake b/build/cmake/functions.cmake index d4494fa4db..9e6aafa900 100644 --- a/build/cmake/functions.cmake +++ b/build/cmake/functions.cmake @@ -795,17 +795,13 @@ function(wx_add name group) endif() if (WXMSW AND DEFINED wxUSE_DPI_AWARE_MANIFEST) - set(wxDPI_MANIFEST_PRFIX "wx") - if (wxARCH_SUFFIX) - set(wxDPI_MANIFEST_PRFIX "amd64") - endif() set(wxUSE_DPI_AWARE_MANIFEST_VALUE 0) if (${wxUSE_DPI_AWARE_MANIFEST} MATCHES "system") set(wxUSE_DPI_AWARE_MANIFEST_VALUE 1) - list(APPEND src_files "${wxSOURCE_DIR}/include/wx/msw/${wxDPI_MANIFEST_PRFIX}_dpi_aware.manifest") + list(APPEND src_files "${wxSOURCE_DIR}/include/wx/msw/wx_dpi_aware.manifest") elseif(${wxUSE_DPI_AWARE_MANIFEST} MATCHES "per-monitor") set(wxUSE_DPI_AWARE_MANIFEST_VALUE 2) - list(APPEND src_files "${wxSOURCE_DIR}/include/wx/msw/${wxDPI_MANIFEST_PRFIX}_dpi_aware_pmv2.manifest") + list(APPEND src_files "${wxSOURCE_DIR}/include/wx/msw/wx_dpi_aware_pmv2.manifest") endif() endif() diff --git a/build/files b/build/files index 2f76cac6ab..6b4f31ef2d 100644 --- a/build/files +++ b/build/files @@ -2161,8 +2161,8 @@ MSW_HDR = MSW_RSC = # Resources must be installed together with headers: wx/msw/wx.manifest - wx/msw/amd64.manifest - wx/msw/ia64.manifest + wx/msw/wx_dpi_aware.manifest + wx/msw/wx_dpi_aware_pmv2.manifest wx/msw/wx.rc # bitmaps wx/msw/colours.bmp diff --git a/docs/msw/winxp.md b/docs/msw/winxp.md index a690ced463..78f9ed3f0f 100644 --- a/docs/msw/winxp.md +++ b/docs/msw/winxp.md @@ -45,7 +45,7 @@ file to test theme support using the controls sample: type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" - processorArchitecture="X86" + processorArchitecture="*" publicKeyToken="6595b64144ccf1df" language="*" /> diff --git a/include/wx/msw/amd64.manifest b/include/wx/msw/amd64.manifest deleted file mode 100644 index 0b9111409a..0000000000 --- a/include/wx/msw/amd64.manifest +++ /dev/null @@ -1,22 +0,0 @@ - - - -wxWidgets application - - - - - - diff --git a/include/wx/msw/amd64_dpi_aware.manifest b/include/wx/msw/amd64_dpi_aware.manifest deleted file mode 100644 index c2170185ac..0000000000 --- a/include/wx/msw/amd64_dpi_aware.manifest +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - - - - - - - true - - - - - - - - - - - - - - - - - diff --git a/include/wx/msw/amd64_dpi_aware_pmv2.manifest b/include/wx/msw/amd64_dpi_aware_pmv2.manifest deleted file mode 100644 index 09588bff37..0000000000 --- a/include/wx/msw/amd64_dpi_aware_pmv2.manifest +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - PerMonitorV2, system - true - - - - - - - - - - - - - - - - - diff --git a/include/wx/msw/arm.manifest b/include/wx/msw/arm.manifest deleted file mode 100644 index 65ef4ba15b..0000000000 --- a/include/wx/msw/arm.manifest +++ /dev/null @@ -1,22 +0,0 @@ - - - -wxWidgets application - - - - - - diff --git a/include/wx/msw/arm64.manifest b/include/wx/msw/arm64.manifest deleted file mode 100644 index c2e00e04eb..0000000000 --- a/include/wx/msw/arm64.manifest +++ /dev/null @@ -1,22 +0,0 @@ - - - -wxWidgets application - - - - - - diff --git a/include/wx/msw/ia64.manifest b/include/wx/msw/ia64.manifest deleted file mode 100644 index 90530fd5db..0000000000 --- a/include/wx/msw/ia64.manifest +++ /dev/null @@ -1,22 +0,0 @@ - - - -wxWidgets application - - - - - - diff --git a/include/wx/msw/wx.manifest b/include/wx/msw/wx.manifest index b26ab51ecb..45bfff90dd 100644 --- a/include/wx/msw/wx.manifest +++ b/include/wx/msw/wx.manifest @@ -13,7 +13,7 @@ type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" - processorArchitecture="X86" + processorArchitecture="*" publicKeyToken="6595b64144ccf1df" language="*" /> diff --git a/include/wx/msw/wx.rc b/include/wx/msw/wx.rc index 732793c197..4ebe2293a2 100644 --- a/include/wx/msw/wx.rc +++ b/include/wx/msw/wx.rc @@ -105,26 +105,6 @@ wxBITMAP_STD_COLOURS BITMAP "wx/msw/colours.bmp" #define wxMANIFEST_ID CREATEPROCESS_MANIFEST_RESOURCE_ID #endif -#if defined(WX_CPU_AMD64) - #define wxMANIFEST_CPU amd64 -#elif defined(WX_CPU_IA64) - #define wxMANIFEST_CPU ia64 -#elif defined(WX_CPU_X86) - #define wxMANIFEST_CPU wx -#elif defined(WX_CPU_ARM) - #define wxMANIFEST_CPU arm -#elif defined(WX_CPU_ARM64) - #define wxMANIFEST_CPU arm64 -#else -// Notice that if the manifest is included, WX_CPU_XXX constant corresponding -// to the architecture we're compiling for must be defined. This can be done -// either manually in your make/project file or by configuring the resource -// compiler paths to search in $(WXWIN)/lib/$(COMPILER_PREFIX)_lib/mswu[d] -// directory for its include files, as wx/msw/rcdefs.h file in this directory -// is generated during wxWidgets build and contains the correct definition. - #error "One of WX_CPU_XXX constants must be defined. See comment above." -#endif - #if !defined(wxUSE_DPI_AWARE_MANIFEST) || wxUSE_DPI_AWARE_MANIFEST == 0 #define wxMANIFEST_DPI .manifest #elif wxUSE_DPI_AWARE_MANIFEST == 1 @@ -135,14 +115,9 @@ wxBITMAP_STD_COLOURS BITMAP "wx/msw/colours.bmp" #define wxRC_STR(text) wxRC_STR2(text) #define wxRC_STR2(text) #text -#define wxRC_CONCAT(a, b, c) wxRC_CONCAT2(a, b, c) -#define wxRC_CONCAT2(a, b, c) a ## b ## c -#ifdef __GNUC__ - #define wxMANIFEST_FILE "wx/msw/" wxRC_STR(wxMANIFEST_CPU) wxRC_STR(wxMANIFEST_DPI) -#else - #define wxMANIFEST_FILE wxRC_CONCAT(wx/msw/, wxMANIFEST_CPU, wxMANIFEST_DPI) -#endif +#define wxMANIFEST_FILE "wx/msw/wx" wxRC_STR(wxMANIFEST_DPI) + wxMANIFEST_ID RT_MANIFEST wxMANIFEST_FILE #endif // wxUSE_RC_MANIFEST diff --git a/include/wx/msw/wx_dpi_aware.manifest b/include/wx/msw/wx_dpi_aware.manifest index 95c5a992b2..28733f1cab 100644 --- a/include/wx/msw/wx_dpi_aware.manifest +++ b/include/wx/msw/wx_dpi_aware.manifest @@ -2,7 +2,7 @@ - + diff --git a/include/wx/msw/wx_dpi_aware_pmv2.manifest b/include/wx/msw/wx_dpi_aware_pmv2.manifest index efbb36f994..f8a475152d 100644 --- a/include/wx/msw/wx_dpi_aware_pmv2.manifest +++ b/include/wx/msw/wx_dpi_aware_pmv2.manifest @@ -2,7 +2,7 @@ - +