GNU bug report logs - #38376
[PATCH] gnu: clang: Fix search path detection with --sysroot.

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: guix-patches; Reported by: Carl Dong <contact@HIDDEN>; Keywords: patch; dated Mon, 25 Nov 2019 21:33:44 UTC; Maintainer for guix-patches is guix-patches@HIDDEN.

Message received at 38376 <at> debbugs.gnu.org:


Received: (at 38376) by debbugs.gnu.org; 8 Dec 2019 15:31:18 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Dec 08 10:31:18 2019
Received: from localhost ([127.0.0.1]:52062 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1idyWk-0007ej-Ci
	for submit <at> debbugs.gnu.org; Sun, 08 Dec 2019 10:31:18 -0500
Received: from mail-wm1-f68.google.com ([209.85.128.68]:35254)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <m.othacehe@HIDDEN>) id 1idyWj-0007eU-GL
 for 38376 <at> debbugs.gnu.org; Sun, 08 Dec 2019 10:31:17 -0500
Received: by mail-wm1-f68.google.com with SMTP id c20so10740908wmb.0
 for <38376 <at> debbugs.gnu.org>; Sun, 08 Dec 2019 07:31:17 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=references:user-agent:from:to:cc:subject:in-reply-to:date
 :message-id:mime-version;
 bh=tSffrc1WCP9yzGtkd8cI0KnOjZkwZ9PzsaO7xfgbKlo=;
 b=dlsQMxPVB4jhQtcEk24RgecoqvtijSmv62vyUCouFH9iWWIoSpsNrRxwPNw/EoR6Kt
 UWvby5O3C2IZBqCBTRAwlItSjj3wrbn8TWAdjGWur0pXNHZMNFz66y2U6gAOYq12U25r
 wrY9QdaQxXxizZ5DENNPsfl7r9oHxrQCBPGG0gxsBV02MEYppMRp0/hnKL+ckK4mP2ly
 CHoFkiN0U1xO9QHsjB/c6x4X/dPCVG7oXFvnQw4NBkOEkg2cY/DOt9RFW7oQecNQ//yv
 QLZ90e806/LVI2kN3QuiUdNMVjDIC+haRZJeJHSkLQIMftpsepizZkYtjztcZtvk75YA
 jvvA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:references:user-agent:from:to:cc:subject
 :in-reply-to:date:message-id:mime-version;
 bh=tSffrc1WCP9yzGtkd8cI0KnOjZkwZ9PzsaO7xfgbKlo=;
 b=EhAn7A52xiL8XH/JjId9p6L18Ehhar975mQ6jFf+MsmDtv1izlROjW6ZC2WPiOyK7p
 qpkQDdexekDFNaL9PxT6aLYyOT+cbg/VthYT3R6iXiB68noS5K34fZPEASN2IJXlyqlK
 JBycGuTW6CX3Yq/6Rxk/Uiok4YOpEnoEMq2Hk8BtM+IBn6OoUTYebze5ch1EixnfjAKc
 Dk4aMvrumyWlXu4Q7pgsuw0iIvb/4d5UtzMqYKh1updNunVDL7wsOFhcI19g8qBSmrMd
 PrBsRdu7u2NNaSdTOFot3/Z607MzX7bUtyJxKjseEmPrtIDzhzC0ERctaILyNZlXIJ4z
 6RSg==
X-Gm-Message-State: APjAAAUDNFtIk8BK+km4JNSHJJsi76/hwzKn0+QLMOqMG8r3KodRdlY+
 a1N/XK285KDe5d0/1ZidHQgmubBW
X-Google-Smtp-Source: APXvYqzHy6t/64YqbWPNC6R01QHiyVC3sSusBE9i1Lw2xA4HR5svq1pBHNizERy5IFl1t1h7yHf+1Q==
X-Received: by 2002:a1c:3941:: with SMTP id g62mr19907603wma.165.1575819071410; 
 Sun, 08 Dec 2019 07:31:11 -0800 (PST)
Received: from cervin ([2a01:e0a:fa:a50:cca0:e766:5a6d:364b])
 by smtp.gmail.com with ESMTPSA id l3sm23627928wrt.29.2019.12.08.07.31.09
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sun, 08 Dec 2019 07:31:10 -0800 (PST)
References: <20191125180144.1060289-1-contact@HIDDEN>
 <8736ebt8fr.fsf@HIDDEN> <379EB7C5-A387-4331-A48A-91C9083F3A73@HIDDEN>
 <8736e2lt8f.fsf@HIDDEN> <A72CBE3E-CB34-4694-BC3F-07517168B693@HIDDEN>
 <877e3ewmau.fsf@HIDDEN> <33E84CBF-D451-4512-A515-1DA6A5E26F20@HIDDEN>
User-agent: mu4e 1.2.0; emacs 26.3
From: Mathieu Othacehe <m.othacehe@HIDDEN>
To: Carl Dong <contact@HIDDEN>
Subject: Re: [bug#38376] [PATCH] gnu: clang: Fix search path detection with
 --sysroot.
In-reply-to: <33E84CBF-D451-4512-A515-1DA6A5E26F20@HIDDEN>
Date: Sun, 08 Dec 2019 16:31:08 +0100
Message-ID: <8736duj0lf.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.1 (/)
X-Debbugs-Envelope-To: 38376
Cc: 38376 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.1 (-)


Hello Carl,

> Did you get a chance to think of something? If not, what do you think about going with this right now and leaving an issue open for a cleaner way to patch in the future?
> Thanks again for all your help and insight.

No sadly I didn't get time :(. I would prefer we at least wait to find a way to
factorize the different patches.

Thank you,

Mathieu




Information forwarded to guix-patches@HIDDEN:
bug#38376; Package guix-patches. Full text available.

Message received at 38376 <at> debbugs.gnu.org:


Received: (at 38376) by debbugs.gnu.org; 5 Dec 2019 18:26:18 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Dec 05 13:26:18 2019
Received: from localhost ([127.0.0.1]:45172 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1icvpS-00089V-2p
	for submit <at> debbugs.gnu.org; Thu, 05 Dec 2019 13:26:18 -0500
Received: from mail1.protonmail.ch ([185.70.40.18]:16117)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <contact@HIDDEN>) id 1icvpQ-00089F-B8
 for 38376 <at> debbugs.gnu.org; Thu, 05 Dec 2019 13:26:17 -0500
Date: Thu, 05 Dec 2019 18:26:07 +0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=carldong.me;
 s=protonmail; t=1575570369;
 bh=4HxEqGq3MJLvkOmGvwzM0Ks8eGM9fWtKA5XCj7coiN4=;
 h=Date:To:From:Cc:Reply-To:Subject:In-Reply-To:References:
 Feedback-ID:From;
 b=T9UU2Ib9jJ0a07EsuAEG1Mx4kgX/R0DpDFTUnE/0LmS4ByrTqznwwKHoTB8vyosxb
 fr0I9WFRAlB+ayMpx21a6zL3iOUPX8p9+6olBuDfZd7cOIhp1SErXn71FeprmXrmOZ
 Azgspu23JBgeG3aEahb341mZoqLqCNzChc1VHvk8=
To: Mathieu Othacehe <m.othacehe@HIDDEN>
From: Carl Dong <contact@HIDDEN>
Subject: Re: [bug#38376] [PATCH] gnu: clang: Fix search path detection with
 --sysroot.
Message-ID: <33E84CBF-D451-4512-A515-1DA6A5E26F20@HIDDEN>
In-Reply-To: <877e3ewmau.fsf@HIDDEN>
References: <20191125180144.1060289-1-contact@HIDDEN>
 <8736ebt8fr.fsf@HIDDEN>
 <379EB7C5-A387-4331-A48A-91C9083F3A73@HIDDEN>
 <8736e2lt8f.fsf@HIDDEN>
 <A72CBE3E-CB34-4694-BC3F-07517168B693@HIDDEN>
 <877e3ewmau.fsf@HIDDEN>
Feedback-ID: a8j8tDUaJ4AYuDVBywMTwsJebN4w8TVXadJLsJb8td3t3dZi9RdXFlPaQvoFKnI9KgXySsPXcRkajVyY0cGTcA==:Ext:ProtonMail
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Status: No, score=-1.2 required=7.0 tests=ALL_TRUSTED,DKIM_SIGNED,
 DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF autolearn=ham
 autolearn_force=no version=3.4.2
X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mail.protonmail.ch
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 38376
Cc: 38376 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Reply-To: Carl Dong <contact@HIDDEN>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Hey Mathieu,

Did you get a chance to think of something? If not, what do you think about=
 going with this right now and leaving an issue open for a cleaner way to p=
atch in the future?
Thanks again for all your help and insight.

Cheers,
Carl Dong

> On Dec 2, 2019, at 2:38 PM, Mathieu Othacehe <m.othacehe@HIDDEN> wrote=
:
>=20
>=20
>=20
>>> Could we instead patch "clang-from-llvm" procedure to fix sysroot
>>> support?
>> Do you have anything particular in mind? I can=E2=80=99t think of any cl=
ean ways to do this off the top of my head right now unfortunately :-(
>=20
> No sadly, nothing in mind at the moment, but I'll have a look tomorrow!
>=20
> Thanks,
>=20
> Mathieu
>=20
>=20
>=20






Information forwarded to guix-patches@HIDDEN:
bug#38376; Package guix-patches. Full text available.

Message received at 38376 <at> debbugs.gnu.org:


Received: (at 38376) by debbugs.gnu.org; 2 Dec 2019 19:38:11 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Dec 02 14:38:11 2019
Received: from localhost ([127.0.0.1]:38965 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ibrWN-0006Mg-BZ
	for submit <at> debbugs.gnu.org; Mon, 02 Dec 2019 14:38:11 -0500
Received: from mail-wr1-f65.google.com ([209.85.221.65]:46432)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <m.othacehe@HIDDEN>) id 1ibrWL-0006MT-HW
 for 38376 <at> debbugs.gnu.org; Mon, 02 Dec 2019 14:38:10 -0500
Received: by mail-wr1-f65.google.com with SMTP id z7so594011wrl.13
 for <38376 <at> debbugs.gnu.org>; Mon, 02 Dec 2019 11:38:09 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=references:user-agent:from:to:cc:subject:in-reply-to:date
 :message-id:mime-version:content-transfer-encoding;
 bh=UWnPlDqmumqlI1lThRlYlr+28uAAFIs6zCCL03Slw+U=;
 b=uZOsPXioCOK07gVSPUcmpnSW65G3D+LiqPsozLCjR9HCb58h6ATvVFBJVSZwW+3wTP
 yQ1yMod2p8158/TF52qb12cI1eqDO8v9KCM7pK21tj5zpPcJgiC5JUno/z1W6URvUQhc
 tkKwM9a8XRpWfLKQ+p5AUff3QjNQG1qMs9ANz5EWAezRi78/uf/Ifu5MsCiGnl6GrWvb
 axXa/bPOSxJo8QJSF+eXB/PmkdL06juu1r6dh/vWsNW+L/QhtFtrkAThPabiOt1fvKnK
 0WiokblSYCUHjliV135gDnF3/JqYPOavMYHGHPNl9ShX+QoxBSwtAUkfrzQzzAtUEkFL
 BlVA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:references:user-agent:from:to:cc:subject
 :in-reply-to:date:message-id:mime-version:content-transfer-encoding;
 bh=UWnPlDqmumqlI1lThRlYlr+28uAAFIs6zCCL03Slw+U=;
 b=UHCCGO3eTTRLSohVgMRPShNtFoH/gEcuL8GYD7sGMGKMKDupdmDFQYklaCLV6CMi5a
 1lzz2MiFlKEx7zpH4z3aHAZ5lFKBPrG46Tmkd6n/s1VLxT29YQhcXh+kt5A+gzI/rg/x
 UnxMpDJir+OERt8r0UBWPCZ69ydhE7mlwuNVJRZlCEHeF/eudzIWZY6jgHPFCDAqEwp5
 KERuOHj6n1mwWr9KljQXO8Km9Fwtx58ZvcUQFkbFZ8N/YFi75gpKoFC7wAogMsYC2pHe
 Uh0bGJY9/BYEPXETa/4XaRtrlGpM4Ll6XykxdruLrXJy2WrTT5KWITj9ROGSZC9P2C1M
 3ZDQ==
X-Gm-Message-State: APjAAAXpUrzschD0v3x56wV0JGA34NiuOoVBVnhZAKc2ZKcLEdnoWWYW
 eW8YZKOGT2gtPhQG0JtOLmUpUPMT
X-Google-Smtp-Source: APXvYqwuHMM/7zarFowAa6suGniPtFvpn0R5zWZDHeGCv/o8kiU5qKj0QQqWPx7JEq3s6gy7KNQTUg==
X-Received: by 2002:adf:e2cc:: with SMTP id d12mr715199wrj.168.1575315483293; 
 Mon, 02 Dec 2019 11:38:03 -0800 (PST)
Received: from cervin ([2a01:e0a:fa:a50:9921:bdb7:f49c:a63])
 by smtp.gmail.com with ESMTPSA id e8sm551678wrt.7.2019.12.02.11.38.01
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 02 Dec 2019 11:38:02 -0800 (PST)
References: <20191125180144.1060289-1-contact@HIDDEN>
 <8736ebt8fr.fsf@HIDDEN> <379EB7C5-A387-4331-A48A-91C9083F3A73@HIDDEN>
 <8736e2lt8f.fsf@HIDDEN> <A72CBE3E-CB34-4694-BC3F-07517168B693@HIDDEN>
User-agent: mu4e 1.2.0; emacs 26.3
From: Mathieu Othacehe <m.othacehe@HIDDEN>
To: Carl Dong <contact@HIDDEN>
Subject: Re: [bug#38376] [PATCH] gnu: clang: Fix search path detection with
 --sysroot.
In-reply-to: <A72CBE3E-CB34-4694-BC3F-07517168B693@HIDDEN>
Date: Mon, 02 Dec 2019 20:38:01 +0100
Message-ID: <877e3ewmau.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -0.1 (/)
X-Debbugs-Envelope-To: 38376
Cc: 38376 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.1 (-)


>> Could we instead patch "clang-from-llvm" procedure to fix sysroot
>> support?
> Do you have anything particular in mind? I can=E2=80=99t think of any cle=
an ways to do this off the top of my head right now unfortunately :-(

No sadly, nothing in mind at the moment, but I'll have a look tomorrow!

Thanks,

Mathieu




Information forwarded to guix-patches@HIDDEN:
bug#38376; Package guix-patches. Full text available.

Message received at 38376 <at> debbugs.gnu.org:


Received: (at 38376) by debbugs.gnu.org; 2 Dec 2019 18:11:00 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Dec 02 13:11:00 2019
Received: from localhost ([127.0.0.1]:38914 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ibq9z-0003zr-OS
	for submit <at> debbugs.gnu.org; Mon, 02 Dec 2019 13:10:59 -0500
Received: from mail-40134.protonmail.ch ([185.70.40.134]:63531)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <contact@HIDDEN>) id 1ibq9w-0003zc-RT
 for 38376 <at> debbugs.gnu.org; Mon, 02 Dec 2019 13:10:57 -0500
Date: Mon, 02 Dec 2019 18:10:36 +0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=carldong.me;
 s=protonmail; t=1575310250;
 bh=17an/Xl1EEQgp56jehBfsWMGKC/tIhcKow2BGlirLKQ=;
 h=Date:To:From:Cc:Reply-To:Subject:In-Reply-To:References:
 Feedback-ID:From;
 b=D9MjBsPWRW9reXcRp91mRb28FtQLfJ8ntWOaRQ8gM4wC59j3DXE8QcY4Sg0vNvPZz
 wE+IXEfeD5R6cQBTroDA34rh/Dt1FGZHbOCjMYmFsnfveRtS1rk7//57Of1bHe7TmE
 diJiY9dJxMx71mOoypqKPgaCHaQszlvAxJ+GmS3g=
To: Mathieu Othacehe <m.othacehe@HIDDEN>
From: Carl Dong <contact@HIDDEN>
Subject: Re: [bug#38376] [PATCH] gnu: clang: Fix search path detection with
 --sysroot.
Message-ID: <A72CBE3E-CB34-4694-BC3F-07517168B693@HIDDEN>
In-Reply-To: <8736e2lt8f.fsf@HIDDEN>
References: <20191125180144.1060289-1-contact@HIDDEN>
 <8736ebt8fr.fsf@HIDDEN>
 <379EB7C5-A387-4331-A48A-91C9083F3A73@HIDDEN>
 <8736e2lt8f.fsf@HIDDEN>
Feedback-ID: a8j8tDUaJ4AYuDVBywMTwsJebN4w8TVXadJLsJb8td3t3dZi9RdXFlPaQvoFKnI9KgXySsPXcRkajVyY0cGTcA==:Ext:ProtonMail
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Status: No, score=-1.2 required=7.0 tests=ALL_TRUSTED,DKIM_SIGNED,
 DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF autolearn=ham
 autolearn_force=no version=3.4.2
X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mail.protonmail.ch
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 38376
Cc: 38376 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Reply-To: Carl Dong <contact@HIDDEN>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

> This makes 6 patches, it will keep increasing. So maintaing those
> patches will be very hard. I'd like to find another way to proceed.
I agree it would be very nice if we can avoid maintaining these patches=
=E2=80=A6

> Could we instead patch "clang-from-llvm" procedure to fix sysroot
> support?
Do you have anything particular in mind? I can=E2=80=99t think of any clean=
 ways to do this off the top of my head right now unfortunately :-(

Cheers,
Carl Dong





Information forwarded to guix-patches@HIDDEN:
bug#38376; Package guix-patches. Full text available.

Message received at 38376 <at> debbugs.gnu.org:


Received: (at 38376) by debbugs.gnu.org; 2 Dec 2019 14:03:55 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Dec 02 09:03:54 2019
Received: from localhost ([127.0.0.1]:37264 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ibmIs-0004yk-Ii
	for submit <at> debbugs.gnu.org; Mon, 02 Dec 2019 09:03:54 -0500
Received: from mail-wr1-f65.google.com ([209.85.221.65]:38152)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <m.othacehe@HIDDEN>) id 1ibmIq-0004yW-Ld
 for 38376 <at> debbugs.gnu.org; Mon, 02 Dec 2019 09:03:53 -0500
Received: by mail-wr1-f65.google.com with SMTP id y17so5782150wrh.5
 for <38376 <at> debbugs.gnu.org>; Mon, 02 Dec 2019 06:03:52 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=references:user-agent:from:to:cc:subject:in-reply-to:date
 :message-id:mime-version:content-transfer-encoding;
 bh=hamd7aoWIrSiXv2onD+yHfydvpC6/2OmD7Wz1oJ5psA=;
 b=QJNL+gm8Es6qY2Z9Dvd9tX1jaImySOnzXRF/pb09pTL92S4qv7Spzu9bh0TjaFxu6e
 6pJqILIZCCn8PxNfqTkWTCGVtZJz85wfBW2PK0cfF/BPxeWOiEGprsUR8nNGQZFelhbI
 q9AUgwOsL3/yn+KPxWO8E9wo2Pm+sqZ4v/L82uzMxm00aT7mGtDtj/etQQsBRsiIDWfA
 xwvVdY8m0fM9SJqAQXUU5C3zUwIK+/EK4ilE59QujPyB97Hmu3GDyyxvdLoPbN66pDnp
 m+b+wWp6FpDrftkxjY9myOeOpodofzEoVvIOrGhudF0ZrOYbFZ+7ILA6Xa0ev6GgYNtk
 Qp0Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:references:user-agent:from:to:cc:subject
 :in-reply-to:date:message-id:mime-version:content-transfer-encoding;
 bh=hamd7aoWIrSiXv2onD+yHfydvpC6/2OmD7Wz1oJ5psA=;
 b=eS968iIhdUMGuhiXGjdVSQQbOwd1g6SroXW8E1tNL0XdKKnKtLnH9ByWHOW7M6tSMh
 LcQcCGcH0x9eWKQJmTXk8uL65mlT9Mc5DKIC2mB68rmdfVFPNNx+H0hTAOC59FFfm+vv
 O36TRMWMsFSHQqIOe4uydZrD3m52/SHroyo3UZCG6QRVID3jl6HVNcgbVeatRmg3FfNL
 Rv/g1+wChAHJE9FR0KsdJ5j9c8gLvuvFvaHwjd2ceHWcETiNyrU2H0YlHURWg1H1tWlF
 9bHLGBRvqL0A8vGwe36xAEKzTw5c9urTlU8chsK5baaHvGSbjsLdALyiRLA0XHeymaWS
 IkEA==
X-Gm-Message-State: APjAAAWdHQ4+tVhRbRyDUvuv8NbThSBX5PpRs/XRtZPPmDdhmQTiy34e
 fjEhP5Arws/VmYnsndzFXdvmVsR8
X-Google-Smtp-Source: APXvYqxQxUfi/he4ms/xsuVWOVF9a3fKXAjL9B2j33ERTgAIMgKo7Wg9P5bp+mVeGYVXPrVMtsXoLw==
X-Received: by 2002:adf:f604:: with SMTP id t4mr13102017wrp.33.1575295426536; 
 Mon, 02 Dec 2019 06:03:46 -0800 (PST)
Received: from meru (lfbn-ann-1-237-90.w86-200.abo.wanadoo.fr. [86.200.196.90])
 by smtp.gmail.com with ESMTPSA id a14sm6792956wrx.81.2019.12.02.06.03.45
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 02 Dec 2019 06:03:45 -0800 (PST)
References: <20191125180144.1060289-1-contact@HIDDEN>
 <8736ebt8fr.fsf@HIDDEN> <379EB7C5-A387-4331-A48A-91C9083F3A73@HIDDEN>
User-agent: mu4e 1.2.0; emacs 26.3
From: Mathieu Othacehe <m.othacehe@HIDDEN>
To: Carl Dong <contact@HIDDEN>
Subject: Re: [bug#38376] [PATCH] gnu: clang: Fix search path detection with
 --sysroot.
In-reply-to: <379EB7C5-A387-4331-A48A-91C9083F3A73@HIDDEN>
Date: Mon, 02 Dec 2019 15:03:44 +0100
Message-ID: <8736e2lt8f.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -0.1 (/)
X-Debbugs-Envelope-To: 38376
Cc: 38376 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.1 (-)


Hello Carl,

> Please do let me know if there=E2=80=99s anything amiss in the patch as i=
t stands right now!

Sorry for the delay! Well in the current form we end up with 4 big
patches to clang + 2 that are missing for clang-8 and clang-9.

This makes 6 patches, it will keep increasing. So maintaing those
patches will be very hard. I'd like to find another way to proceed.

Could we instead patch "clang-from-llvm" procedure to fix sysroot
support?

Mathieu




Information forwarded to guix-patches@HIDDEN:
bug#38376; Package guix-patches. Full text available.

Message received at 38376 <at> debbugs.gnu.org:


Received: (at 38376) by debbugs.gnu.org; 26 Nov 2019 17:05:23 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Nov 26 12:05:23 2019
Received: from localhost ([127.0.0.1]:52859 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1iZeHD-0005Dl-6k
	for submit <at> debbugs.gnu.org; Tue, 26 Nov 2019 12:05:23 -0500
Received: from mail4.protonmail.ch ([185.70.40.27]:61696)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <contact@HIDDEN>) id 1iZeHA-0005DV-PQ
 for 38376 <at> debbugs.gnu.org; Tue, 26 Nov 2019 12:05:21 -0500
Date: Tue, 26 Nov 2019 17:05:05 +0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=carldong.me;
 s=protonmail; t=1574787914;
 bh=OkXa6RqrXupFJWz4MXN2giiQluup9NrZxicvAnN+PQ8=;
 h=Date:To:From:Cc:Reply-To:Subject:In-Reply-To:References:
 Feedback-ID:From;
 b=Ib1jfSM+hKbqsF0VA917Iz1ev3gIix9qiMUhaW1LADD3Jez3K9GH2whc9YUDueSJy
 bVno2pkxXNozPvqQg7KAPyj/wRlJzqjTL0sSOdz/QPOKBAPl7ed7Hu36/C1PjGX2+G
 IJk+UkXPTcJNRYt2RwUsUJBEpMgL+bzZs9SIBdKY=
To: Mathieu Othacehe <m.othacehe@HIDDEN>
From: Carl Dong <contact@HIDDEN>
Subject: Re: [bug#38376] [PATCH] gnu: clang: Fix search path detection with
 --sysroot.
Message-ID: <379EB7C5-A387-4331-A48A-91C9083F3A73@HIDDEN>
In-Reply-To: <8736ebt8fr.fsf@HIDDEN>
References: <20191125180144.1060289-1-contact@HIDDEN>
 <8736ebt8fr.fsf@HIDDEN>
Feedback-ID: a8j8tDUaJ4AYuDVBywMTwsJebN4w8TVXadJLsJb8td3t3dZi9RdXFlPaQvoFKnI9KgXySsPXcRkajVyY0cGTcA==:Ext:ProtonMail
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Status: No, score=-1.2 required=7.0 tests=ALL_TRUSTED,DKIM_SIGNED,
 DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF autolearn=ham
 autolearn_force=no version=3.4.2
X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mail.protonmail.ch
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 38376
Cc: 38376 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Reply-To: Carl Dong <contact@HIDDEN>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Hi Mathieu!

I think that=E2=80=99s an excellent idea but unfortunately I don=E2=80=
=99t have the bandwidth for it currently=E2=80=A6 I=E2=80=99ll put it on my=
 TODO list though :-)
Please do let me know if there=E2=80=99s anything amiss in the patch as it =
stands right now!

Cheers,
Carl Dong


> On Nov 26, 2019, at 2:15 AM, Mathieu Othacehe <m.othacehe@HIDDEN> wrot=
e:
>=20
>=20
>=20
> Hello Carl,
>=20
>> This was fine when running clang normally, but when a user supplies
>> clang with --sysroot, clang _should_ do the search path detection. This
>> commit fixes runing clang with --sysroot.
>=20
> Thanks for your patch. Do you think this could be done in a way that can
> be upstreamed? In lib/Driver/ToolChains/Gnu.cpp, there are some Gentoo
> specific stuff, maybe they would agree to integrate some Guix/nix specifi=
c
> stuff too.
>=20
> WDYT?
>=20
> Mathieu
>=20
>=20
>=20






Information forwarded to guix-patches@HIDDEN:
bug#38376; Package guix-patches. Full text available.

Message received at 38376 <at> debbugs.gnu.org:


Received: (at 38376) by debbugs.gnu.org; 26 Nov 2019 07:15:30 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Nov 26 02:15:30 2019
Received: from localhost ([127.0.0.1]:50146 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1iZV4L-0001Hy-TV
	for submit <at> debbugs.gnu.org; Tue, 26 Nov 2019 02:15:30 -0500
Received: from mail-wm1-f67.google.com ([209.85.128.67]:54136)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <m.othacehe@HIDDEN>) id 1iZV4L-0001Hk-15
 for 38376 <at> debbugs.gnu.org; Tue, 26 Nov 2019 02:15:29 -0500
Received: by mail-wm1-f67.google.com with SMTP id u18so1943104wmc.3
 for <38376 <at> debbugs.gnu.org>; Mon, 25 Nov 2019 23:15:29 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=references:user-agent:from:to:cc:subject:in-reply-to:date
 :message-id:mime-version;
 bh=O6BvnHxd7us6KyABVWbP+JEBX0o4hmjsQGk6QEW+awg=;
 b=D6TuMRrQHYuLR/rg4F5/Fme81LUh+0rSbT8wIqkEqT7cx77ieDoyiJVgXBtOrf969E
 vDqa4e/f7Q4ID7dLmC1Q8u1JKl9mekBV/iDe1WA5vDirwepEhVsDEi+m/8w6N3/Nyd/X
 RfqxmM3n7VhQZxidOsFquoRF84XCztUbNExbzKD8BGFr/tBIckdXUwoFL/VWto+k8NqD
 hRpchxzGTly2r2kktwZN0j49H2nxdEOn9/c+xIYaD9pnqFFKFn666IQX3ilJh7wHauyP
 RiL7E+2x5/b/+QRSRQ1WHxzsiaEEztOaN6Q4XzMlk94wJSiUa/anEmRwcw+Fi2WQMnb7
 InqQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:references:user-agent:from:to:cc:subject
 :in-reply-to:date:message-id:mime-version;
 bh=O6BvnHxd7us6KyABVWbP+JEBX0o4hmjsQGk6QEW+awg=;
 b=p+b25PNhn3ZxejkH03dA9GW1EKBLxQ4LUT0ZOQvRff1yPH2eBE8OPg1gEObLnJ0KR8
 B5/s0bvi80DIgo43C9+gN4RQpc8YwMhmXniUh+kP2Go9upNZ7aq94sbd2r5U/9ADSjCU
 04CiYfmptEN02Uxs/dOpPlNw9WFue1w91sUaPvIZLjK5/HkPHWMQCs4Rw2PA7628eCLZ
 /nvnHUmwimmHBI8zAordFtkMEzS8fBkNMIZuwK3DkIH7WZFCMn9Ss8KAzp3P3wuShrl5
 hTfuBer2ZssU2+KRxbHM8nVBgaaPm+CDoe+KX7uoJqX5OaEK1zFuN1sGOTQQ0uH0Lmoy
 5Iag==
X-Gm-Message-State: APjAAAWQZXbPiRpKGMphRFyyN30U0kNOmAnfVOoKlmdAP9JW4/9olwhA
 G2kx5miE7FE+0/Zc+SyZ/Yk1sTcG
X-Google-Smtp-Source: APXvYqyXB9aJd1G2CLt9uhZptu+LDEdR5v00IjzPzww8+5Tyyxjiu/5fXprPz+npeaYpbx5oevVKSg==
X-Received: by 2002:a1c:5409:: with SMTP id i9mr2549035wmb.135.1574752522886; 
 Mon, 25 Nov 2019 23:15:22 -0800 (PST)
Received: from meru (lfbn-ann-1-237-90.w86-200.abo.wanadoo.fr. [86.200.196.90])
 by smtp.gmail.com with ESMTPSA id d20sm14901809wra.4.2019.11.25.23.15.21
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 25 Nov 2019 23:15:21 -0800 (PST)
References: <20191125180144.1060289-1-contact@HIDDEN>
User-agent: mu4e 1.2.0; emacs 26.3
From: Mathieu Othacehe <m.othacehe@HIDDEN>
To: Carl Dong <contact@HIDDEN>
Subject: Re: [bug#38376] [PATCH] gnu: clang: Fix search path detection with
 --sysroot.
In-reply-to: <20191125180144.1060289-1-contact@HIDDEN>
Date: Tue, 26 Nov 2019 08:15:20 +0100
Message-ID: <8736ebt8fr.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 38376
Cc: 38376 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)


Hello Carl,

> This was fine when running clang normally, but when a user supplies
> clang with --sysroot, clang _should_ do the search path detection. This
> commit fixes runing clang with --sysroot.

Thanks for your patch. Do you think this could be done in a way that can
be upstreamed? In lib/Driver/ToolChains/Gnu.cpp, there are some Gentoo
specific stuff, maybe they would agree to integrate some Guix/nix specific
stuff too.

WDYT?

Mathieu




Information forwarded to guix-patches@HIDDEN:
bug#38376; Package guix-patches. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 25 Nov 2019 18:08:00 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Nov 25 13:08:00 2019
Received: from localhost ([127.0.0.1]:49659 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1iZImF-0005dn-5f
	for submit <at> debbugs.gnu.org; Mon, 25 Nov 2019 13:08:00 -0500
Received: from lists.gnu.org ([209.51.188.17]:47782)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <contact@HIDDEN>) id 1iZImD-0005dc-3K
 for submit <at> debbugs.gnu.org; Mon, 25 Nov 2019 13:07:58 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:34960)
 by lists.gnu.org with esmtp (Exim 4.90_1)
 (envelope-from <contact@HIDDEN>) id 1iZImA-0001A0-9o
 for guix-patches@HIDDEN; Mon, 25 Nov 2019 13:07:56 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=0.1 required=5.0 tests=BAYES_50,RCVD_IN_DNSWL_LOW,
 URIBL_BLOCKED autolearn=disabled version=3.3.2
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <contact@HIDDEN>) id 1iZIm7-0006HO-Bc
 for guix-patches@HIDDEN; Mon, 25 Nov 2019 13:07:53 -0500
Received: from mail-40132.protonmail.ch ([185.70.40.132]:35321)
 by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)
 (Exim 4.71) (envelope-from <contact@HIDDEN>) id 1iZIlw-0006BC-KI
 for guix-patches@HIDDEN; Mon, 25 Nov 2019 13:07:50 -0500
Date: Mon, 25 Nov 2019 18:01:48 +0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=carldong.me;
 s=protonmail; t=1574704920;
 bh=ZW9mnsZQEI6cKgYEFW7EPh+ZDTfAFmrUmckk2R9kvIo=;
 h=Date:To:From:Cc:Reply-To:Subject:Feedback-ID:From;
 b=ku3bj3+S6j9ShmUa5f68NHReucf1Yq4OBpNKAyNM4sd0a6R9zHFB1wMUEc7EXonOk
 Ngic/5naiJXKKJZOwReV+GHyjS+0iujxy3XH/sGutk+iFBCH9GvqhtnKk6eofI7UDV
 dJoObK1WFxPXuEwrIHak7psYhDgzJjjqCjGHT4YQ=
To: guix-patches@HIDDEN
From: Carl Dong <contact@HIDDEN>
Subject: [PATCH] gnu: clang: Fix search path detection with --sysroot.
Message-ID: <20191125180144.1060289-1-contact@HIDDEN>
Feedback-ID: a8j8tDUaJ4AYuDVBywMTwsJebN4w8TVXadJLsJb8td3t3dZi9RdXFlPaQvoFKnI9KgXySsPXcRkajVyY0cGTcA==:Ext:ProtonMail
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
 [fuzzy]
X-Received-From: 185.70.40.132
X-Spam-Score: -1.3 (-)
X-Debbugs-Envelope-To: submit
Cc: Carl Dong <contact@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Reply-To: Carl Dong <contact@HIDDEN>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.3 (--)

Prior to this commit, we had

1. Patched out a lot of search path detection in clang's codebase which
didn't make sense in Guix
2. Used -DC_INCLUDE_DIRS=3D to point clang to our libc, which, as a side
effect, causes the search path detection code in clang to return early,
and skip some search path detection

This was fine when running clang normally, but when a user supplies
clang with --sysroot, clang _should_ do the search path detection. This
commit fixes runing clang with --sysroot.

More details included as comments in the
gnu/packages/patches/clang-*-libc-search-path.patch files.

* gnu/packages/patches/clang-3.5-libc-search-path.patch: Restore search
  path detection code relative to $SYSROOT. Add @C_EXTRA_INCLUDE_DIRS@, a
  C_INCLUDE_DIRS replacement which does not return early.
* gnu/packages/patches/clang-3.8-libc-search-path.patch: Same as above.
* gnu/packages/patches/clang-6.0-libc-search-path.patch: Same as above.
* gnu/packages/patches/clang-7.0-libc-search-path.patch: Same as above.
* gnu/packages/llvm.scm: Substitute @C_EXTRA_INCLUDE_DIRS@ instead of
  using -DC_INCLUDE_DIRS=3D.
---
 gnu/packages/llvm.scm                         | 13 ++-
 .../patches/clang-3.5-libc-search-path.patch  | 74 ++++++++-------
 .../patches/clang-3.8-libc-search-path.patch  | 70 ++++++++-------
 .../patches/clang-6.0-libc-search-path.patch  | 77 ++++++++--------
 .../patches/clang-7.0-libc-search-path.patch  | 89 +++++++++----------
 5 files changed, 169 insertions(+), 154 deletions(-)

diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm
index 082e6e96ca..383180e140 100644
--- a/gnu/packages/llvm.scm
+++ b/gnu/packages/llvm.scm
@@ -190,12 +190,7 @@ compiler.  In LLVM this library is called \"compiler-r=
t\".")
=20
              ;; Find libgcc_s, crtbegin.o, and crtend.o.
              (string-append "-DGCC_INSTALL_PREFIX=3D"
-                            (assoc-ref %build-inputs "gcc-lib"))
-
-             ;; Use a sane default include directory.
-             (string-append "-DC_INCLUDE_DIRS=3D"
-                            (assoc-ref %build-inputs "libc")
-                            "/include"))
+                            (assoc-ref %build-inputs "gcc-lib")))
=20
        ;; Don't use '-g' during the build to save space.
        #:build-type "Release"
@@ -207,6 +202,7 @@ compiler.  In LLVM this library is called \"compiler-rt=
\".")
                      (let ((libc (assoc-ref inputs "libc"))
                            (compiler-rt (assoc-ref inputs "clang-runtime")=
)
                            (gcc (assoc-ref inputs "gcc"))
+                           (kernel-headers (assoc-ref inputs "kernel-heade=
rs"))
                            (version
                             (string->number
                              ,(version-major (package-version clang-runtim=
e)))))
@@ -232,7 +228,10 @@ compiler.  In LLVM this library is called \"compiler-r=
t\".")
                             ;; Make sure libc's libdir is on the search pa=
th, to
                             ;; allow crt1.o & co. to be found.
                             (("@GLIBC_LIBDIR@")
-                             (string-append libc "/lib"))))
+                             (string-append libc "/lib"))
+                            (("@C_EXTRA_INCLUDE_DIRS@")
+                             (string-append libc "/include" ":"
+                                            kernel-headers "/include"))))
                          (else
                           (substitute* "lib/Driver/Tools.cpp"
                             ;; Patch the 'getLinuxDynamicLinker' function =
so that
diff --git a/gnu/packages/patches/clang-3.5-libc-search-path.patch b/gnu/pa=
ckages/patches/clang-3.5-libc-search-path.patch
index 50e4480239..54fb9be7d8 100644
--- a/gnu/packages/patches/clang-3.5-libc-search-path.patch
+++ b/gnu/packages/patches/clang-3.5-libc-search-path.patch
@@ -8,7 +8,7 @@ to make sure Clang also works on non-GuixSD systems.
=20
 --- cfe-3.6.0.src/lib/Driver/ToolChains.cpp=092015-02-18 22:03:07.00000000=
0 +0100
 +++ cfe-3.6.0.src/lib/Driver/ToolChains.cpp=092015-06-19 16:37:20.45970104=
4 +0200
-@@ -2931,6 +2931,9 @@ Linux::Linux(const Driver &D, const llvm
+@@ -3040,6 +3040,9 @@
 =20
    Linker =3D GetLinkerPath();
 =20
@@ -18,7 +18,7 @@ to make sure Clang also works on non-GuixSD systems.
    Distro Distro =3D DetectDistro(Arch);
 =20
    if (IsOpenSUSE(Distro) || IsUbuntu(Distro)) {
-@@ -2973,6 +2976,7 @@ Linux::Linux(const Driver &D, const llvm
+@@ -3082,6 +3085,7 @@
 =20
    if (IsOpenSUSE(Distro))
      ExtraOpts.push_back("--enable-new-dtags");
@@ -26,41 +26,49 @@ to make sure Clang also works on non-GuixSD systems.
 =20
    // The selection of paths to try here is designed to match the patterns=
 which
    // the GCC driver itself uses, as this is part of the GCC-compatible dr=
iver.
-@@ -3043,14 +3047,12 @@ Linux::Linux(const Driver &D, const llvm
-     addPathIfExists(D.Dir + "/../" + OSLibDir, Paths);
-   }
+@@ -3194,6 +3198,10 @@
 =20
--  addPathIfExists(SysRoot + "/lib/" + MultiarchTriple, Paths);
--  addPathIfExists(SysRoot + "/lib/../" + OSLibDir, Paths);
--  addPathIfExists(SysRoot + "/usr/lib/" + MultiarchTriple, Paths);
--  addPathIfExists(SysRoot + "/usr/lib/../" + OSLibDir, Paths);
--
-   // Try walking via the GCC triple path in case of biarch or multiarch G=
CC
-   // installations with strange symlinks.
-   if (GCCInstallation.isValid()) {
-+    // The following code would end up adding things like
-+    // "/usr/lib/x86_64-unknown-linux-gnu/../../lib64" to the search path=
.
-+#if 0
-     addPathIfExists(SysRoot + "/usr/lib/" + GCCInstallation.getTriple().s=
tr() +
-                     "/../../" + OSLibDir, Paths);
-=20
-@@ -3060,6 +3062,7 @@ Linux::Linux(const Driver &D, const llvm
-       addPathIfExists(GCCInstallation.getInstallPath() +
-                       BiarchSibling.gccSuffix(), Paths);
-     }
-+#endif
-=20
-     // See comments above on the multilib variant for details of why this=
 is
-     // included even from outside the sysroot.
-@@ -3083,8 +3086,9 @@ Linux::Linux(const Driver &D, const llvm
-   if (StringRef(D.Dir).startswith(SysRoot))
-     addPathIfExists(D.Dir + "/../lib", Paths);
-=20
--  addPathIfExists(SysRoot + "/lib", Paths);
--  addPathIfExists(SysRoot + "/usr/lib", Paths);
+   addPathIfExists(SysRoot + "/lib", Paths);
+   addPathIfExists(SysRoot + "/usr/lib", Paths);
++
 +  // Add libc's lib/ directory to the search path, so that crt1.o, crti.o=
,
 +  // and friends can be found.
 +  addPathIfExists("@GLIBC_LIBDIR@", Paths);
  }
 =20
  bool Linux::HasNativeLLVMSupport() const {
+@@ -3384,6 +3392,34 @@
+   addExternCSystemInclude(DriverArgs, CC1Args, SysRoot + "/include");
+=20
+   addExternCSystemInclude(DriverArgs, CC1Args, SysRoot + "/usr/include");
++
++  // Check for configure-time "extra" C include directories. When constru=
cting a
++  // toolchain, @C_EXTRA_INCLUDE_DIRS@ should be replaced with something =
like a
++  // colon-separated string of the include dirs of libc and kernel header=
s.
++  //
++  // The reason why we use this mechanism instead of C_INCLUDE_DIRS above=
 is
++  // because when a user supplies clang with --sysroot, the normal expect=
ation
++  // is that clang will detect and add the proper $SYSROOT/$MULTIARCHINCL=
,
++  // $SYSROOT/include, and $SYSROOT/usr/include to its list of search pat=
hs.
++  // However, if C_INCLUDE_DIRS is not empty, this function will return e=
arly
++  // and not attempt to add the aforementioned search paths, which is not
++  // desirable.
++  //
++  // By adding our configure-time "extra" C include directories here, aft=
er
++  // we've added $SYSROOT/include and $SYSROOT/usr/include, we make sure =
that IF
++  // --sysroot is supplied on the command line, we pick up the expected s=
earch
++  // paths in the $SYSROOT, and that they come before our configure-time =
"extra"
++  // C include directories.
++  StringRef CExtraIncludeDirs("@C_EXTRA_INCLUDE_DIRS@");
++  if (CExtraIncludeDirs !=3D "") {
++      SmallVector<StringRef, 5> dirs;
++      CExtraIncludeDirs.split(dirs, ":");
++      for (StringRef dir : dirs) {
++          StringRef Prefix =3D
++              llvm::sys::path::is_absolute(dir) ? StringRef(SysRoot) : ""=
;
++          addExternCSystemInclude(DriverArgs, CC1Args, Prefix + dir);
++      }
++  }
+ }
+=20
+ /// \brief Helper to add the variant paths of a libstdc++ installation.
diff --git a/gnu/packages/patches/clang-3.8-libc-search-path.patch b/gnu/pa=
ckages/patches/clang-3.8-libc-search-path.patch
index 0f7d0a4add..243d167755 100644
--- a/gnu/packages/patches/clang-3.8-libc-search-path.patch
+++ b/gnu/packages/patches/clang-3.8-libc-search-path.patch
@@ -29,41 +29,49 @@ changes in clang 3.8.
 =20
    // The selection of paths to try here is designed to match the patterns=
 which
    // the GCC driver itself uses, as this is part of the GCC-compatible dr=
iver.
-@@ -3771,14 +3775,12 @@
-     addPathIfExists(D, D.Dir + "/../" + OSLibDir, Paths);
-   }
+@@ -3817,6 +3821,10 @@
 =20
--  addPathIfExists(D, SysRoot + "/lib/" + MultiarchTriple, Paths);
--  addPathIfExists(D, SysRoot + "/lib/../" + OSLibDir, Paths);
--  addPathIfExists(D, SysRoot + "/usr/lib/" + MultiarchTriple, Paths);
--  addPathIfExists(D, SysRoot + "/usr/lib/../" + OSLibDir, Paths);
--
-   // Try walking via the GCC triple path in case of biarch or multiarch G=
CC
-   // installations with strange symlinks.
-   if (GCCInstallation.isValid()) {
-+    // The following code would end up adding things like
-+    // "/usr/lib/x86_64-unknown-linux-gnu/../../lib64" to the search path=
.
-+#if 0
-     addPathIfExists(D,
-                     SysRoot + "/usr/lib/" + GCCInstallation.getTriple().s=
tr() +
-                         "/../../" + OSLibDir,
-@@ -3791,6 +3793,7 @@
-                              BiarchSibling.gccSuffix(),
-                       Paths);
-     }
-+#endif
-=20
-     // See comments above on the multilib variant for details of why this=
 is
-     // included even from outside the sysroot.
-@@ -3815,8 +3818,9 @@
-   if (StringRef(D.Dir).startswith(SysRoot))
-     addPathIfExists(D, D.Dir + "/../lib", Paths);
-=20
--  addPathIfExists(D, SysRoot + "/lib", Paths);
--  addPathIfExists(D, SysRoot + "/usr/lib", Paths);
+   addPathIfExists(D, SysRoot + "/lib", Paths);
+   addPathIfExists(D, SysRoot + "/usr/lib", Paths);
++
 +  // Add libc's lib/ directory to the search path, so that crt1.o, crti.o=
,
 +  // and friends can be found.
 +  addPathIfExists(D, "@GLIBC_LIBDIR@", Paths);
  }
 =20
  bool Linux::HasNativeLLVMSupport() const { return true; }
+@@ -4026,6 +4034,34 @@
+   addExternCSystemInclude(DriverArgs, CC1Args, SysRoot + "/include");
+=20
+   addExternCSystemInclude(DriverArgs, CC1Args, SysRoot + "/usr/include");
++
++  // Check for configure-time "extra" C include directories. When constru=
cting a
++  // toolchain, @C_EXTRA_INCLUDE_DIRS@ should be replaced with something =
like a
++  // colon-separated string of the include dirs of libc and kernel header=
s.
++  //
++  // The reason why we use this mechanism instead of C_INCLUDE_DIRS above=
 is
++  // because when a user supplies clang with --sysroot, the normal expect=
ation
++  // is that clang will detect and add the proper $SYSROOT/$MULTIARCHINCL=
,
++  // $SYSROOT/include, and $SYSROOT/usr/include to its list of search pat=
hs.
++  // However, if C_INCLUDE_DIRS is not empty, this function will return e=
arly
++  // and not attempt to add the aforementioned search paths, which is not
++  // desirable.
++  //
++  // By adding our configure-time "extra" C include directories here, aft=
er
++  // we've added $SYSROOT/include and $SYSROOT/usr/include, we make sure =
that IF
++  // --sysroot is supplied on the command line, we pick up the expected s=
earch
++  // paths in the $SYSROOT, and that they come before our configure-time =
"extra"
++  // C include directories.
++  StringRef CExtraIncludeDirs("@C_EXTRA_INCLUDE_DIRS@");
++  if (CExtraIncludeDirs !=3D "") {
++      SmallVector<StringRef, 5> dirs;
++      CExtraIncludeDirs.split(dirs, ":");
++      for (StringRef dir : dirs) {
++          StringRef Prefix =3D
++              llvm::sys::path::is_absolute(dir) ? StringRef(SysRoot) : ""=
;
++          addExternCSystemInclude(DriverArgs, CC1Args, Prefix + dir);
++      }
++  }
+ }
+=20
+=20
diff --git a/gnu/packages/patches/clang-6.0-libc-search-path.patch b/gnu/pa=
ckages/patches/clang-6.0-libc-search-path.patch
index a62e8063c2..d80c798467 100644
--- a/gnu/packages/patches/clang-6.0-libc-search-path.patch
+++ b/gnu/packages/patches/clang-6.0-libc-search-path.patch
@@ -8,18 +8,17 @@ to make sure Clang also works on non-GuixSD systems.
=20
 --- cfe-6.0.0.src/lib/Driver/ToolChains/Linux.cpp
 +++ cfe-6.0.0.src/lib/Driver/ToolChains/Linux.cpp
-@@ -207,7 +207,9 @@
-   PPaths.push_back(Twine(GCCInstallation.getParentLibPath() + "/../" +
+@@ -208,6 +208,9 @@
                           GCCInstallation.getTriple().str() + "/bin")
                         .str());
--
+=20
 +  // Comment out the distro-specific tweaks so that they don't bite when
 +  // using Guix on a foreign distro.
 +#if 0
    Distro Distro(D.getVFS());
 =20
    if (Distro.IsAlpineLinux()) {
-@@ -255,6 +257,7 @@
+@@ -255,6 +258,7 @@
 =20
    if (IsAndroid || Distro.IsOpenSUSE())
      ExtraOpts.push_back("--enable-new-dtags");
@@ -27,41 +26,49 @@ to make sure Clang also works on non-GuixSD systems.
 =20
    // The selection of paths to try here is designed to match the patterns=
 which
    // the GCC driver itself uses, as this is part of the GCC-compatible dr=
iver.
-@@ -329,14 +332,12 @@
-     addPathIfExists(D, D.Dir + "/../" + OSLibDir, Paths);
-   }
-=20
--  addPathIfExists(D, SysRoot + "/lib/" + MultiarchTriple, Paths);
--  addPathIfExists(D, SysRoot + "/lib/../" + OSLibDir, Paths);
--  addPathIfExists(D, SysRoot + "/usr/lib/" + MultiarchTriple, Paths);
--  addPathIfExists(D, SysRoot + "/usr/lib/../" + OSLibDir, Paths);
--
-   // Try walking via the GCC triple path in case of biarch or multiarch G=
CC
-   // installations with strange symlinks.
-   if (GCCInstallation.isValid()) {
-+    // The following code would end up adding things like
-+    // "/usr/lib/x86_64-unknown-linux-gnu/../../lib64" to the search path=
.
-+#if 0
-     addPathIfExists(D,
-                     SysRoot + "/usr/lib/" + GCCInstallation.getTriple().s=
tr() +
-                         "/../../" + OSLibDir,
-@@ -349,6 +350,7 @@
-                              BiarchSibling.gccSuffix(),
-                       Paths);
-     }
-+#endif
+@@ -375,6 +379,10 @@
 =20
-     // See comments above on the multilib variant for details of why this=
 is
-     // included even from outside the sysroot.
-@@ -373,8 +375,9 @@
-   if (StringRef(D.Dir).startswith(SysRoot))
-     addPathIfExists(D, D.Dir + "/../lib", Paths);
-=20
--  addPathIfExists(D, SysRoot + "/lib", Paths);
--  addPathIfExists(D, SysRoot + "/usr/lib", Paths);
+   addPathIfExists(D, SysRoot + "/lib", Paths);
+   addPathIfExists(D, SysRoot + "/usr/lib", Paths);
++
 +  // Add libc's lib/ directory to the search path, so that crt1.o, crti.o=
,
 +  // and friends can be found.
 +  addPathIfExists(D, "@GLIBC_LIBDIR@", Paths);
  }
 =20
  bool Linux::HasNativeLLVMSupport() const { return true; }
+@@ -710,6 +718,34 @@
+   addExternCSystemInclude(DriverArgs, CC1Args, SysRoot + "/include");
+=20
+   addExternCSystemInclude(DriverArgs, CC1Args, SysRoot + "/usr/include");
++
++  // Check for configure-time "extra" C include directories. When constru=
cting a
++  // toolchain, @C_EXTRA_INCLUDE_DIRS@ should be replaced with something =
like a
++  // colon-separated string of the include dirs of libc and kernel header=
s.
++  //
++  // The reason why we use this mechanism instead of C_INCLUDE_DIRS above=
 is
++  // because when a user supplies clang with --sysroot, the normal expect=
ation
++  // is that clang will detect and add the proper $SYSROOT/$MULTIARCHINCL=
,
++  // $SYSROOT/include, and $SYSROOT/usr/include to its list of search pat=
hs.
++  // However, if C_INCLUDE_DIRS is not empty, this function will return e=
arly
++  // and not attempt to add the aforementioned search paths, which is not
++  // desirable.
++  //
++  // By adding our configure-time "extra" C include directories here, aft=
er
++  // we've added $SYSROOT/include and $SYSROOT/usr/include, we make sure =
that IF
++  // --sysroot is supplied on the command line, we pick up the expected s=
earch
++  // paths in the $SYSROOT, and that they come before our configure-time =
"extra"
++  // C include directories.
++  StringRef CExtraIncludeDirs("@C_EXTRA_INCLUDE_DIRS@");
++  if (CExtraIncludeDirs !=3D "") {
++      SmallVector<StringRef, 5> dirs;
++      CExtraIncludeDirs.split(dirs, ":");
++      for (StringRef dir : dirs) {
++          StringRef Prefix =3D
++              llvm::sys::path::is_absolute(dir) ? StringRef(SysRoot) : ""=
;
++          addExternCSystemInclude(DriverArgs, CC1Args, Prefix + dir);
++      }
++  }
+ }
+=20
+ static std::string DetectLibcxxIncludePath(StringRef base) {
diff --git a/gnu/packages/patches/clang-7.0-libc-search-path.patch b/gnu/pa=
ckages/patches/clang-7.0-libc-search-path.patch
index 07ff8c90bd..445b5d17ac 100644
--- a/gnu/packages/patches/clang-7.0-libc-search-path.patch
+++ b/gnu/packages/patches/clang-7.0-libc-search-path.patch
@@ -8,7 +8,7 @@ to make sure Clang also works on non-GuixSD systems.
=20
 --- a/lib/Driver/ToolChains/Linux.cpp
 +++ b/lib/Driver/ToolChains/Linux.cpp
-@@ -225,7 +225,9 @@ Linux::Linux(const Driver &D, const llvm::Triple &Trip=
le, const ArgList &Args)
+@@ -225,7 +225,9 @@
    PPaths.push_back(Twine(GCCInstallation.getParentLibPath() + "/../" +
                           GCCInstallation.getTriple().str() + "/bin")
                         .str());
@@ -19,7 +19,7 @@ to make sure Clang also works on non-GuixSD systems.
    Distro Distro(D.getVFS());
 =20
    if (Distro.IsAlpineLinux()) {
-@@ -284,6 +286,7 @@ Linux::Linux(const Driver &D, const llvm::Triple &Trip=
le, const ArgList &Args)
+@@ -284,6 +286,7 @@
 =20
    if (IsAndroid || Distro.IsOpenSUSE())
      ExtraOpts.push_back("--enable-new-dtags");
@@ -27,56 +27,49 @@ to make sure Clang also works on non-GuixSD systems.
 =20
    // The selection of paths to try here is designed to match the patterns=
 which
    // the GCC driver itself uses, as this is part of the GCC-compatible dr=
iver.
-@@ -342,7 +345,7 @@ Linux::Linux(const Driver &D, const llvm::Triple &Trip=
le, const ArgList &Args)
-     // the cross. Note that GCC does include some of these directories in=
 some
-     // configurations but this seems somewhere between questionable and s=
imply
-     // a bug.
--    if (StringRef(LibPath).startswith(SysRoot)) {
-+    if (0) {
-       addPathIfExists(D, LibPath + "/" + MultiarchTriple, Paths);
-       addPathIfExists(D, LibPath + "/../" + OSLibDir, Paths);
-     }
-@@ -361,6 +364,8 @@ Linux::Linux(const Driver &D, const llvm::Triple &Trip=
le, const ArgList &Args)
-   addPathIfExists(D, SysRoot + "/lib/" + MultiarchTriple, Paths);
-   addPathIfExists(D, SysRoot + "/lib/../" + OSLibDir, Paths);
+@@ -431,6 +434,10 @@
 =20
-+  // This requires the commented distro tweaks above.
-+#if 0
-   if (IsAndroid) {
-     // Android sysroots contain a library directory for each supported OS
-     // version as well as some unversioned libraries in the usual multiar=
ch
-@@ -389,10 +394,14 @@ Linux::Linux(const Driver &D, const llvm::Triple &Tr=
iple, const ArgList &Args)
-     addPathIfExists(D, SysRoot + "/" + OSLibDir + "/" + ABIName, Paths);
-     addPathIfExists(D, SysRoot + "/usr/" + OSLibDir + "/" + ABIName, Path=
s);
-   }
-+#endif
-=20
-   // Try walking via the GCC triple path in case of biarch or multiarch G=
CC
-   // installations with strange symlinks.
-   if (GCCInstallation.isValid()) {
-+    // The following code would end up adding things like
-+    // "/usr/lib/x86_64-unknown-linux-gnu/../../lib64" to the search path=
.
-+#if 0
-     addPathIfExists(D,
-                     SysRoot + "/usr/lib/" + GCCInstallation.getTriple().s=
tr() +
-                         "/../../" + OSLibDir,
-@@ -405,6 +414,7 @@ Linux::Linux(const Driver &D, const llvm::Triple &Trip=
le, const ArgList &Args)
-                              BiarchSibling.gccSuffix(),
-                       Paths);
-     }
-+#endif
-=20
-     // See comments above on the multilib variant for details of why this=
 is
-     // included even from outside the sysroot.
-@@ -429,8 +439,9 @@ Linux::Linux(const Driver &D, const llvm::Triple &Trip=
le, const ArgList &Args)
-   if (StringRef(D.Dir).startswith(SysRoot))
-     addPathIfExists(D, D.Dir + "/../lib", Paths);
-=20
--  addPathIfExists(D, SysRoot + "/lib", Paths);
--  addPathIfExists(D, SysRoot + "/usr/lib", Paths);
+   addPathIfExists(D, SysRoot + "/lib", Paths);
+   addPathIfExists(D, SysRoot + "/usr/lib", Paths);
++
 +  // Add libc's lib/ directory to the search path, so that crt1.o, crti.o=
,
 +  // and friends can be found.
 +  addPathIfExists(D, "@GLIBC_LIBDIR@", Paths);
  }
 =20
  bool Linux::HasNativeLLVMSupport() const { return true; }
+@@ -794,6 +801,34 @@
+   addExternCSystemInclude(DriverArgs, CC1Args, SysRoot + "/include");
+=20
+   addExternCSystemInclude(DriverArgs, CC1Args, SysRoot + "/usr/include");
++
++  // Check for configure-time "extra" C include directories. When constru=
cting a
++  // toolchain, @C_EXTRA_INCLUDE_DIRS@ should be replaced with something =
like a
++  // colon-separated string of the include dirs of libc and kernel header=
s.
++  //
++  // The reason why we use this mechanism instead of C_INCLUDE_DIRS above=
 is
++  // because when a user supplies clang with --sysroot, the normal expect=
ation
++  // is that clang will detect and add the proper $SYSROOT/$MULTIARCHINCL=
,
++  // $SYSROOT/include, and $SYSROOT/usr/include to its list of search pat=
hs.
++  // However, if C_INCLUDE_DIRS is not empty, this function will return e=
arly
++  // and not attempt to add the aforementioned search paths, which is not
++  // desirable.
++  //
++  // By adding our configure-time "extra" C include directories here, aft=
er
++  // we've added $SYSROOT/include and $SYSROOT/usr/include, we make sure =
that IF
++  // --sysroot is supplied on the command line, we pick up the expected s=
earch
++  // paths in the $SYSROOT, and that they come before our configure-time =
"extra"
++  // C include directories.
++  StringRef CExtraIncludeDirs("@C_EXTRA_INCLUDE_DIRS@");
++  if (CExtraIncludeDirs !=3D "") {
++      SmallVector<StringRef, 5> dirs;
++      CExtraIncludeDirs.split(dirs, ":");
++      for (StringRef dir : dirs) {
++          StringRef Prefix =3D
++              llvm::sys::path::is_absolute(dir) ? StringRef(SysRoot) : ""=
;
++          addExternCSystemInclude(DriverArgs, CC1Args, Prefix + dir);
++      }
++  }
+ }
+=20
+ static std::string DetectLibcxxIncludePath(StringRef base) {
--=20
2.24.0






Acknowledgement sent to Carl Dong <contact@HIDDEN>:
New bug report received and forwarded. Copy sent to guix-patches@HIDDEN. Full text available.
Report forwarded to guix-patches@HIDDEN:
bug#38376; Package guix-patches. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Sun, 8 Dec 2019 15:45:01 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.