diff --git a/llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn b/llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn --- a/llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn +++ b/llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn @@ -380,8 +380,12 @@ # that \n is a literal '\' followed by a literal 'n', not a newline # character. (write_cmake_config.py replaces that with a real newline). value = "" - foreach(target, all_targets) { - value = "$value${invoker.value}($target)\n" + if (all_targets != []) { + foreach(target, all_targets) { + value = "$value${invoker.value}($target)\n" + } + } else { + not_needed(invoker, [ "value" ]) } values = [ "${invoker.key}=$value" ] }