[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] kconfig: detect LD implementation


  • To: <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Roger Pau Monne <roger.pau@xxxxxxxxxx>
  • Date: Mon, 14 Mar 2022 11:55:35 +0100
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=fB61Y6AkgCFoXtQB7EJYvUC5iJfNzDs4sVa702nQGcU=; b=eLKcOfYdv8nrGCa4hSXdClTieeMltVORki0Z/upuyrdnkejnQoay3AIgTQk85eGx95sBVdMjBVtK1/idmwLvzWnI2A6PixKbK/YNOMSZUJ/G/7rqv9xmn+z+OId2YxIwfNBrF5rA7mhxwVuOrZBQ7AUOzwGUAxZ4sn9oT1XFaGMk57O5oxtrfBqiP94nwBidg0rN4pblHopA7TGE5MNzu70sOSHT496P/v4LQZN1UaKWyG8Gy23Rgvi4NFAB3ZL6BY1aM2rUvbdNP/pV2N+P3EYg71m3qfL8N2lsVJVqu6yPNk3dtCqlao2U2KmH0aIcX/1Nq1blAwFZmSeFk+bcKg==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=d+AMKrkilGHEoJjacGS5EncYb1y8R5Nqc2BjD6gRoFiOkwBJae2tH8ersShQV8agibMDnRhNI4Fs8vWyI6thgbsJjRP8brEGUtIL+LKdlBx9rGIG1794EImOzcUTYqOCCYSNHIJQC4dP9bjI0KZamOMJxMnru56znlQBbMhx09cp74cUHdg9yQQkIOSz9wn4narCy/7a1bg4maSuy5KwVnnvIDCl/S0s+OCJt9onmXDW0+hDp2PAPsYiXrSSh82kq3A7wC4h94NFmq1YbrRsxlgagcCBgzd5KXte6WFoCpkb/pStLt9B6ZlYcU7L0AljfLHO1szoicBBLX37cqWvDQ==
  • Authentication-results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
  • Cc: Roger Pau Monne <roger.pau@xxxxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, George Dunlap <george.dunlap@xxxxxxxxxx>, "Jan Beulich" <jbeulich@xxxxxxxx>, Julien Grall <julien@xxxxxxx>, "Stefano Stabellini" <sstabellini@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>
  • Delivery-date: Mon, 14 Mar 2022 10:56:10 +0000
  • Ironport-data: A9a23:SwUgR67r5fT/NzQSuq95cQxRtBLHchMFZxGqfqrLsTDasY5as4F+v mcYDD2AOv+ON2bzfdkgaNzjpxkCuZHcmIBlTAFv+31mHi5G8cbLO4+Ufxz6V8+wwmwvb67FA +E2MISowBUcFyeEzvuVGuG96yE6j8lkf5KkYAL+EnkZqTRMFWFw0XqPp8Zj2tQy2YPgX1vU0 T/Pi5a31GGNimYc3l08s8pvmDs31BglkGpF1rCWTakjUG72zxH5PrpGTU2CByKQrr1vNvy7X 47+IISRpQs1yfuP5uSNyd4XemVSKlLb0JPnZnB+A8BOiTAazsA+PzpS2FPxpi67hh3Q9+2dx umhurSVRCJuOJ3ett8RDQtqMSFsB6J0xuTYdC3XXcy7lyUqclPpyvRqSko3IZcZ6qB8BmQmG f4wcW5XKErZ3qTvnez9GrIEascLdaEHOKsFvX5t13fBBOsOSpHfWaTao9Rf2V/cg+gQQ66OO ZtFOVKDajzQTzZ+GFQpGqkvkaChrHPGc2FaqV6K8P9fD2/7k1UqjemF3MDuUseRWcxfk0Kcp 2TH12f0GBcXMJqY0zXt2m2orv/Cm2X8Qo16PL+l8v9nhnWDy2pVDwcZPXOrrP/8hkOgVtZ3L 00P5jFovaU07FasTNT2Q1u/unHslhwWVsdUEuY6wBqQ0aeS6AGcblXoVRYYNoZg7pVvA2V3i BnZxLsFGACDrpWwRFfa8IeGgwi+ZzonD28QXyA2c1AatoyLTJ4IsjrDSdNqEaiQh9LzGC3tz z3ikBXSl4n/nuZQifzloAmvbyaE48GQE1Vrvlm/sneNtFsRWWKzW2C/BbE3B95kJZ3RcFSOt WNsdyO2vLFXVsHleMBgrYww8FCVCxStbWe0bb1HRcBJG9GRF5mLJ9w43d2GDB01WvvogBewC KMphStf5YVIIFyhZrJtboS6BqwClPa8So20CaqMMYUXOvCdkTNrGwk0OSatM53FyhBwwcnTx 7/GGSpTMZrqIfs+l2fnLwvs+bQq2jo/1QvuqWPTlHyaPU6lTCfNE98taQLWBshgtf/siFiFo r53aprRoz0CAbKWX8Ui2dNKRbz8BSNgXs6eRg0+XrPrHzeK70l6Uq6Pm+x9I9I590mX/8+Rl kyAtoZj4AOXrVXMKBmQa2Alb7XqXJ1lqmk8MzBqNlGts0XPq671ts/zq7NfkWEbydFe
  • Ironport-hdrordr: A9a23:u7bzaan7+rgxvdu4wdzzjsL7GdvpDfPEimdD5ihNYBxZY6Wkfp +V8sjzhCWatN9OYh0dcLC7WJVpQRvnhPlICO4qTMqftWjdyRGVxeRZjLcKrAeQYhEWmtQtsJ uIEJIOduEYb2IK9foSiTPQe71LrajlgcKVbI/lvghQpGpRGsddBmlCe2Km+hocfng7OXN1Lu vU2uN34x6bPVgHZMWyAXcIG8DFut3wjZrjJToLHQQu5gWihS6hrOeSKWnS4j4uFxd0hZsy+2 nMlAL0oo2lrvGA0xfZk0ve9Y5fltfNwsZKQOaMls8WADPxjRvAXvUoZ5Sy+BQO5M2/4lcjl9 fB5z8mIsRI8nvUOlq4pBP8sjOQpAoG2jvH8xu1kHHjqcv2SHYREMxan79UdRPf9g4JoMx8+L gj5RPUi7NnSTf72Ajt7dnBUB9n0mCup2A5rOIVh3tDFaMDdb5qq5AF9k89KuZMIMvD0vFoLA BSNrCc2B4PGmnqL0wx/1MfiuBEZ05DUStvGSM5y4+oOzs/pgEN86JX/r1cop46zuNMd3B13Z W0Dk1WrsA8ciZvV9MHOA4ge7rBNoWfe2O7DIqtSW6XZp3vfUi97qLK3A==
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

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@xxxxxxxxxx>
---
 xen/Kconfig | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/xen/Kconfig b/xen/Kconfig
index d134397a0b..e8d5e70d46 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.34.1




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.