diff --git a/utils.cmake b/utils.cmake
index c12f5ac..343547e 100644
--- a/utils.cmake
+++ b/utils.cmake
@@ -1500,7 +1500,7 @@ END
endfunction()
function(generate_win32_manifest_file)
- cmake_parse_arguments(MF_ARGS "UTF8_CODEPAGE;VISTA_COMPAT;WIN7_COMPAT;WIN8_COMPAT;WIN8_1_COMPAT;WIN10_COMPAT;WIN11_COMPAT;XAML_ISLANDS_COMPAT;REQUIRE_ADMIN" "PATH;ID;VERSION;DESCRIPTION" "" ${ARGN})
+ cmake_parse_arguments(MF_ARGS "UTF8_CODEPAGE;VISTA_COMPAT;WIN7_COMPAT;WIN8_COMPAT;WIN8_1_COMPAT;WIN10_COMPAT;WIN11_COMPAT;XAML_ISLANDS_COMPAT;REQUIRE_ADMIN" "PATH;ID;VERSION;DESCRIPTION;ARCHITECTURE;LANGUAGE;PUBLIC_KEY_TOKEN" "" ${ARGN})
if(NOT MF_ARGS_PATH)
message(AUTHOR_WARNING "generate_win32_manifest_file: You need to specify where to put the generated rc file for this function!")
return()
@@ -1514,7 +1514,7 @@ function(generate_win32_manifest_file)
return()
endif()
set(__id "${MF_ARGS_ID}")
- set(__version)
+ set(__version "")
if(MF_ARGS_VERSION)
if(MF_ARGS_VERSION MATCHES "[0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+")
set(__version "${MF_ARGS_VERSION}")
@@ -1530,42 +1530,60 @@ function(generate_win32_manifest_file)
else()
set(__version "0.0.0.0")
endif()
- set(__description)
+ set(__architecture "")
+ if(MF_ARGS_ARCHITECTURE)
+ set(__architecture "${MF_ARGS_ARCHITECTURE}")
+ else()
+ set(__architecture "*")
+ endif()
+ set(__language "")
+ if(MF_ARGS_LANGUAGE)
+ set(__language "${MF_ARGS_LANGUAGE}")
+ else()
+ set(__language "*")
+ endif()
+ set(__public_key_token "")
+ if(MF_ARGS_PUBLIC_KEY_TOKEN)
+ set(__public_key_token "publicKeyToken=\"${MF_ARGS_PUBLIC_KEY_TOKEN}\" ")
+ endif()
+ set(__description "")
if(MF_ARGS_DESCRIPTION)
set(__description "${MF_ARGS_DESCRIPTION}")
endif()
- set(__execution_level)
+ set(__execution_level "")
if(MF_ARGS_REQUIRE_ADMIN)
set(__execution_level "requireAdministrator")
else()
set(__execution_level "asInvoker")
endif()
- set(__vista_compat)
+ set(__vista_compat "")
if(MF_ARGS_VISTA_COMPAT)
set(__vista_compat "
")
endif()
- set(__win7_compat)
+ set(__win7_compat "")
if(MF_ARGS_WIN7_COMPAT)
set(__win7_compat "
")
endif()
- set(__win8_compat)
+ set(__win8_compat "")
if(MF_ARGS_WIN8_COMPAT)
set(__win8_compat "
")
endif()
- set(__win8_1_compat)
+ set(__win8_1_compat "")
if(MF_ARGS_WIN8_1_COMPAT)
set(__win8_1_compat "
")
endif()
- set(__win10_11_compat)
+ set(__win10_11_compat "")
if(MF_ARGS_WIN10_COMPAT OR MF_ARGS_WIN11_COMPAT)
- set(__win10_11_compat "
+ set(__win10_11_compat "
")
endif()
- set(__xaml_islands_compat "
+ set(__xaml_islands_compat "")
+ if(MF_ARGS_XAML_ISLANDS_COMPAT)
+ set(__xaml_islands_compat "
@@ -1585,7 +1603,8 @@ function(generate_win32_manifest_file)
")
- set(__utf8_codepage)
+ endif()
+ set(__utf8_codepage "")
if(MF_ARGS_UTF8_CODEPAGE)
set(__utf8_codepage "UTF-8")
endif()
@@ -1594,7 +1613,7 @@ function(generate_win32_manifest_file)
-
+
${__description}
@@ -1626,6 +1645,10 @@ function(generate_win32_manifest_file)
True
SegmentHeap
${__utf8_codepage}
+ True
+ True
+ True
+