1
0
mirror of https://github.com/Kitware/CMake.git synced 2025-10-16 22:37:30 +08:00

target_link_libraries: Remove likely-broken ancient compatibility check

Since commit daa6d2bc04 (ENH: updated handling of debug and optimized
target link libraries, 2006-11-29, v2.6.0~2471) the ancient
`<lib>_LINK_TYPE` compatibility lookup was done using the name of the
dependent target for which `target_link_libraries` is called, rather
than the name of the library dependency being considered.  This code
probably does nothing.  Remove it.
This commit is contained in:
Brad King
2022-02-15 15:48:22 -05:00
parent e5a5f3b76f
commit 42590df9f9

View File

@@ -271,25 +271,10 @@ bool cmTargetLinkLibrariesCommand(std::vector<std::string> const& args,
if (!tll.HandleLibrary(currentProcessingState, args[i], llt)) {
return false;
}
} else {
// Lookup old-style cache entry if type is unspecified. So if you
// do a target_link_libraries(foo optimized bar) it will stay optimized
// and not use the lookup. As there may be the case where someone has
// specified that a library is both debug and optimized. (this check is
// only there for backwards compatibility when mixing projects built
// with old versions of CMake and new)
llt = GENERAL_LibraryType;
std::string linkType = cmStrCat(args[0], "_LINK_TYPE");
cmValue linkTypeString = mf.GetDefinition(linkType);
if (linkTypeString) {
if (*linkTypeString == "debug") {
llt = DEBUG_LibraryType;
}
if (*linkTypeString == "optimized") {
llt = OPTIMIZED_LibraryType;
}
}
if (!tll.HandleLibrary(currentProcessingState, args[i], llt)) {
} else {
if (!tll.HandleLibrary(currentProcessingState, args[i],
GENERAL_LibraryType)) {
return false;
}
}