From 00d7ab957b38d715bc0484a38531ec17dc5ebc5d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Herm=C3=A8s=20B=C3=A9lusca-Ma=C3=AFto?= Date: Thu, 13 Jul 2017 20:50:49 +0000 Subject: [PATCH] [CMAKE]: Correctly set valid PE image version numbers for the OS subsystem (GCC builds), and image and OS version numbers from the NT OS version ReactOS is based on. svn path=/trunk/; revision=75333 --- reactos/sdk/cmake/CMakeMacros.cmake | 16 ++++++++++++---- reactos/sdk/cmake/gcc.cmake | 2 +- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/reactos/sdk/cmake/CMakeMacros.cmake b/reactos/sdk/cmake/CMakeMacros.cmake index 8af76ea035d..850bb7f52ad 100644 --- a/reactos/sdk/cmake/CMakeMacros.cmake +++ b/reactos/sdk/cmake/CMakeMacros.cmake @@ -581,12 +581,20 @@ function(set_module_type MODULE TYPE) set_subsystem(${MODULE} ${__subsystem}) endif() - #set unicode definitions + # Set the PE image version numbers from the NT OS version ReactOS is based on + if (MSVC) + add_target_link_flags(${MODULE} "/VERSION:5.01") + else() + add_target_link_flags(${MODULE} "-Wl,--major-image-version,5 -Wl,--minor-image-version,01") + add_target_link_flags(${MODULE} "-Wl,--major-os-version,5 -Wl,--minor-os-version,01") + endif() + + # Set unicode definitions if(__module_UNICODE) add_target_compile_definitions(${MODULE} UNICODE _UNICODE) endif() - # set entry point + # Set entry point if(__module_ENTRYPOINT OR (__module_ENTRYPOINT STREQUAL "0")) list(GET __module_ENTRYPOINT 0 __entrypoint) list(LENGTH __module_ENTRYPOINT __length) @@ -633,7 +641,7 @@ function(set_module_type MODULE TYPE) endif() endif() - #set base address + # Set base address if(__module_IMAGEBASE) set_image_base(${MODULE} ${__module_IMAGEBASE}) elseif(${TYPE} STREQUAL win32dll) @@ -662,7 +670,7 @@ function(set_module_type MODULE TYPE) set_target_properties(${MODULE} PROPERTIES SUFFIX ".cpl") endif() - # do compiler specific stuff + # Do compiler specific stuff set_module_type_toolchain(${MODULE} ${TYPE}) endfunction() diff --git a/reactos/sdk/cmake/gcc.cmake b/reactos/sdk/cmake/gcc.cmake index 375405aee61..41d6a721cb1 100644 --- a/reactos/sdk/cmake/gcc.cmake +++ b/reactos/sdk/cmake/gcc.cmake @@ -289,7 +289,7 @@ function(set_entrypoint MODULE ENTRYPOINT) endfunction() function(set_subsystem MODULE SUBSYSTEM) - add_target_link_flags(${MODULE} "-Wl,--subsystem,${SUBSYSTEM}") + add_target_link_flags(${MODULE} "-Wl,--subsystem,${SUBSYSTEM}:5.01") endfunction() function(set_image_base MODULE IMAGE_BASE)