From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 198BD138334 for ; Fri, 13 Sep 2019 14:11:25 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 82794E0B73; Fri, 13 Sep 2019 14:11:17 +0000 (UTC) Received: from mail-lf1-x144.google.com (mail-lf1-x144.google.com [IPv6:2a00:1450:4864:20::144]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id E478BE0B43 for ; Fri, 13 Sep 2019 14:11:16 +0000 (UTC) Received: by mail-lf1-x144.google.com with SMTP id d17so4391302lfa.7 for ; Fri, 13 Sep 2019 07:11:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=MQTC6P3HY3N6r+UHAxVMEO7E7JWGzwwAqajrauR26Tc=; b=QmqR9HGPzIhY8kAIpWwp3fCq6RoOdri5gXfZrOSaaRRrjfxWcxumn19qxGVOKh47q/ uPKok88ZziOzpZbjLAFuTwRIttHjoyLEkp8LKXwGnzflS02FUgy+uM/9AB/Ipaqk2ZWz bGeT95eEGo3BbqDpTPhxrnrW/6vQu6cViX6iDNn5v8xRdv6KhGN3I3baoStzXGMd/Ea9 V83UiWTFrgjXcs2uEAGQvdSX4sgFwezCyqwP9PpfJ8sIYA5q9MkcOZwztr3OFNrWu+0g KsJCDKRwwKNEAhXyiNYjmI9lUZFYe5jrRD6TFnxR/iR5Ozz+cHc+McYCB0dacp25yrxC aw3w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=MQTC6P3HY3N6r+UHAxVMEO7E7JWGzwwAqajrauR26Tc=; b=cMXDA3RseZcI8s3l4oJwNAf5uoN0NUEa4QJhyUycz+436cLe47etyIazQ7kSTVq4Hc 3ueFktSQcFkfKLgxSn6ce3aOmlFiGRuDb1W/jiOesKNSzjJbF6JugHmunWmomqqFnCZS KdFctq78xpxfHeCQMwFIk2om/ycA7DcDunxF0RXU00L6pJ/IuCE5VBa0USDM9fQrIkJy hyJqUH8qnaZOfYZ2+vgknhgT3+1eo8MhIwGfP67SiQLUYdrh37nV5MaA4vbjEqOH60Vs 3+NSFpfw1cpRuWUZOeZqS69Uu2BynDBqJhrykux/g9PVeXSG4jAY9hk9MzzW9Ckmvu7n vDZg== X-Gm-Message-State: APjAAAW6VJfzcWtbzvt2avPJrPso82Cwxtrh6Jm6z42ejAtu0NTmkFUi 8EMs5xkpJ3Mehtgpn5l1hsB8SECV0CM4Lvu9umJPRkvC2BA= X-Google-Smtp-Source: APXvYqzndtA6yjJwD+AwljBUbYSh6JBNNwpTlRD8W2lgibU/W1aPtjWK32+lnnX9xv9kEgC++X56O/YzdXYF0nujrqA= X-Received: by 2002:a19:2c1:: with SMTP id 184mr31381773lfc.100.1568383874800; Fri, 13 Sep 2019 07:11:14 -0700 (PDT) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply MIME-Version: 1.0 References: <20190912113240.226571-1-manojgupta@google.com> In-Reply-To: <20190912113240.226571-1-manojgupta@google.com> From: Manoj Gupta Date: Fri, 13 Sep 2019 07:11:03 -0700 Message-ID: Subject: [gentoo-dev] Re: [PATCH] toolchain-funcs: Add tc-ld-is-lld helper. To: gentoo-dev@lists.gentoo.org Content-Type: text/plain; charset="UTF-8" X-Archives-Salt: 73c7006c-943d-4be5-ac25-e8cf0dd59751 X-Archives-Hash: 1660b08f3681e16a340284459dcec9c0 friendly ping for patch review. On Thu, Sep 12, 2019 at 4:32 AM Manoj Gupta wrote: > > LLD is a new linker for LLVM project. > Add tc-ld-is-lld helper to be able to detect it. > > Signed-off-by: Manoj Gupta > --- > eclass/toolchain-funcs.eclass | 30 ++++++++++++++++++++++++++++++ > 1 file changed, 30 insertions(+) > > diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass > index 7bd90bb4e4a..e358d484417 100644 > --- a/eclass/toolchain-funcs.eclass > +++ b/eclass/toolchain-funcs.eclass > @@ -453,6 +453,36 @@ tc-ld-is-gold() { > return 1 > } > > +# @FUNCTION: tc-ld-is-lld > +# @USAGE: [toolchain prefix] > +# @DESCRIPTION: > +# Return true if the current linker is set to lld. > +tc-ld-is-lld() { > + local out > + > + # First check the linker directly. > + out=$($(tc-getLD "$@") --version 2>&1) > + if [[ ${out} == *"LLD"* ]] ; then > + return 0 > + fi > + > + # Then see if they're selecting lld via compiler flags. > + # Note: We're assuming they're using LDFLAGS to hold the > + # options and not CFLAGS/CXXFLAGS. > + local base="${T}/test-tc-lld" > + cat <<-EOF > "${base}.c" > + int main() { return 0; } > + EOF > + out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1) > + rm -f "${base}"* > + if [[ ${out} == *"LLD"* ]] ; then > + return 0 > + fi > + > + # No lld here! > + return 1 > +} > + > # @FUNCTION: tc-ld-disable-gold > # @USAGE: [toolchain prefix] > # @DESCRIPTION: > -- > 2.23.0.162.g0b9fbb3734-goog >