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:
@@ -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;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user