MSVC: Fix linking with /MANIFEST:NO option
Refactoring in commit v3.4.0-rc1~74^2~1 (MSVC: Rewrite manifest file handling with Makefile and Ninja, 2015-09-15) broke handling of this option. Fix it and add a test case.
This commit is contained in:
parent
b4a2ada297
commit
ca263d1d71
|
@ -1550,7 +1550,6 @@ bool cmVSLink::Parse(std::vector<std::string>::const_iterator argBeg,
|
|||
// pass it to the link command.
|
||||
this->ManifestFileRC = intDir + "/manifest.rc";
|
||||
this->ManifestFileRes = intDir + "/manifest.res";
|
||||
this->LinkCommand.push_back(this->ManifestFileRes);
|
||||
}
|
||||
else if (this->UserManifests.empty())
|
||||
{
|
||||
|
@ -1658,6 +1657,9 @@ int cmVSLink::LinkIncremental()
|
|||
return -1;
|
||||
}
|
||||
|
||||
// Tell the linker to use our manifest compiled into a resource.
|
||||
this->LinkCommand.push_back(this->ManifestFileRes);
|
||||
|
||||
// Run the link command (possibly generates intermediate manifest).
|
||||
if (!RunCommand("LINK Pass 1", this->LinkCommand, this->Verbose))
|
||||
{
|
||||
|
|
|
@ -6,4 +6,6 @@ if(MSVC AND NOT MSVC_VERSION LESS 1400)
|
|||
COMMAND ${CMAKE_COMMAND} -Dexe=$<TARGET_FILE:MSManifest>
|
||||
-P ${CMAKE_CURRENT_SOURCE_DIR}/check.cmake
|
||||
)
|
||||
add_executable(MSManifestNone main.c)
|
||||
set_property(TARGET MSManifestNone PROPERTY LINK_FLAGS "/MANIFEST:NO")
|
||||
endif()
|
||||
|
|
Loading…
Reference in New Issue