mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-26 04:32:44 +01:00
a7626e13c1
Summary: cmake fails with an error when attempting to evaluate $<TARGET_FILE:tgt> where `tgt` is defined via an `add_custom_target` and thus the `TYPE` is `UTILITY`. Requesting a TARGET_FILE only works on an `EXECUTABLE` or one of a few differetnt types of `X_LIBRARY` (e.g. added via `add_library` or `add_executable`). The logic as implemented in cmake is below: enum TargetType { EXECUTABLE, STATIC_LIBRARY, SHARED_LIBRARY, MODULE_LIBRARY, OBJECT_LIBRARY, UTILITY, GLOBAL_TARGET, INTERFACE_LIBRARY, UNKNOWN_LIBRARY }; if (target->GetType() >= cmStateEnums::OBJECT_LIBRARY && target->GetType() != cmStateEnums::UNKNOWN_LIBRARY) { ::reportError(context, content->GetOriginalExpression(), "Target \"" + name + "\" is not an executable or library."); return nullptr; } This has always been the case back to at least 3.12 (furthest I checked) but this is causing a new failure in cmake 3.17 while evaluating ExternalProjectAdd. Subscribers: mgorny, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D77284 |
||
---|---|---|
.. | ||
AddLLVM.cmake | ||
AddLLVMDefinitions.cmake | ||
AddOCaml.cmake | ||
AddSphinxTarget.cmake | ||
CheckAtomic.cmake | ||
CheckCompilerVersion.cmake | ||
CheckLinkerFlag.cmake | ||
ChooseMSVCCRT.cmake | ||
CMakeLists.txt | ||
CrossCompile.cmake | ||
DetermineGCCCompatible.cmake | ||
FindLibpfm.cmake | ||
FindOCaml.cmake | ||
FindSphinx.cmake | ||
FindZ3.cmake | ||
GenerateVersionFromVCS.cmake | ||
GetHostTriple.cmake | ||
HandleLLVMOptions.cmake | ||
HandleLLVMStdlib.cmake | ||
LLVM-Config.cmake | ||
LLVMConfig.cmake.in | ||
LLVMConfigVersion.cmake.in | ||
LLVMDistributionSupport.cmake | ||
LLVMExternalProjectUtils.cmake | ||
LLVMInstallSymlink.cmake | ||
LLVMProcessSources.cmake | ||
TableGen.cmake | ||
UseLibtool.cmake | ||
VersionFromVCS.cmake |