summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to '0015-kconfig-detect-LD-implementation.patch')
-rw-r--r--0015-kconfig-detect-LD-implementation.patch46
1 files changed, 46 insertions, 0 deletions
diff --git a/0015-kconfig-detect-LD-implementation.patch b/0015-kconfig-detect-LD-implementation.patch
new file mode 100644
index 0000000..f2fc24a
--- /dev/null
+++ b/0015-kconfig-detect-LD-implementation.patch
@@ -0,0 +1,46 @@
+From 3754bd128d1a6b3d5864d1a3ee5d27b67d35387a Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
+Date: Tue, 7 Jun 2022 14:05:06 +0200
+Subject: [PATCH 15/32] kconfig: detect LD implementation
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+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é <roger.pau@citrix.com>
+Reviewed-by: Michal Orzel <michal.orzel@arm.com>
+Acked-by: Julien Grall <jgrall@amazon.com>
+master commit: c70c4b624f85f7d4e28c70a804a0a3f20d73092b
+master date: 2022-05-02 08:50:39 +0200
+---
+ xen/Kconfig | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/xen/Kconfig b/xen/Kconfig
+index bcbd2758e5d3..0c89afd50fcf 100644
+--- a/xen/Kconfig
++++ b/xen/Kconfig
+@@ -23,6 +23,12 @@ config CLANG_VERSION
+ int
+ default $(shell,$(BASEDIR)/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.35.1
+