From c70c4b624f85f7d4e28c70a804a0a3f20d73092b Mon Sep 17 00:00:00 2001 From: =?utf8?q?Roger=20Pau=20Monn=C3=A9?= Date: Mon, 2 May 2022 08:50:39 +0200 Subject: [PATCH] kconfig: detect LD implementation MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Detect GNU and LLVM ld implementations. This is required for further patches that will introduce diverging behaviour depending on the linker implementation in use. Note that LLVM ld returns "compatible with GNU linkers" as part of the version string, so be on the safe side and use '^' to only match at the start of the line in case LLVM ever decides to change the text to use "compatible with GNU ld" instead. Signed-off-by: Roger Pau Monné Reviewed-by: Michal Orzel Acked-by: Julien Grall --- xen/Kconfig | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/xen/Kconfig b/xen/Kconfig index ec2bd9fbcf..134e6e68ad 100644 --- a/xen/Kconfig +++ b/xen/Kconfig @@ -23,6 +23,12 @@ config CLANG_VERSION int default $(shell,$(srctree)/scripts/clang-version.sh $(CC)) +config LD_IS_GNU + def_bool $(success,$(LD) --version | head -n 1 | grep -q "^GNU ld") + +config LD_IS_LLVM + def_bool $(success,$(LD) --version | head -n 1 | grep -q "^LLD") + # -fvisibility=hidden reduces -fpic cost, if it's available config CC_HAS_VISIBILITY_ATTRIBUTE def_bool $(cc-option,-fvisibility=hidden) -- 2.30.2