From debbugs-submit-bounces@debbugs.gnu.org Fri Mar 09 07:11:19 2018 Received: (at submit) by debbugs.gnu.org; 9 Mar 2018 12:11:19 +0000 Received: from localhost ([127.0.0.1]:51792 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1euGrm-0000MQ-68 for submit@debbugs.gnu.org; Fri, 09 Mar 2018 07:11:19 -0500 Received: from eggs.gnu.org ([208.118.235.92]:39676) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1euGrk-0000MC-QV for submit@debbugs.gnu.org; Fri, 09 Mar 2018 07:11:17 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1euGre-00045b-RG for submit@debbugs.gnu.org; Fri, 09 Mar 2018 07:11:11 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:46856) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1euGre-00045T-ND for submit@debbugs.gnu.org; Fri, 09 Mar 2018 07:11:10 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58879) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1euGrd-0002h8-Lc for bug-guix@gnu.org; Fri, 09 Mar 2018 07:11:10 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1euGra-00043h-FL for bug-guix@gnu.org; Fri, 09 Mar 2018 07:11:09 -0500 Received: from lepiller.eu ([89.234.186.109]:43404) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1euGra-00042P-4v for bug-guix@gnu.org; Fri, 09 Mar 2018 07:11:06 -0500 Received: from webmail.lepiller.eu (static-176-182-42-79.ncc.abo.bbox.fr [176.182.42.79]) by lepiller.eu (OpenSMTPD) with ESMTPSA id a5791694 (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128:NO) for ; Fri, 9 Mar 2018 12:12:58 +0000 (UTC) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Date: Fri, 09 Mar 2018 13:10:58 +0100 From: julien lepiller To: bug-guix@gnu.org Subject: gcc7 doesn't find stdlib.h Message-ID: X-Sender: julien@lepiller.eu User-Agent: Roundcube Webmail/1.3.3 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) Hi, I'm trying to build a software that requires gcc>=7.2. Unfortunately, the process crashes and ends with: /gnu/store/a4vwdk8r6p6l2mnffz4yaqlr1z6z6w3r-gcc-7.3.0/include/c++/cstdlib:75:15: fatal error: stdlib.h: No such file or directory. What I'm trying to build is called emojicode, and the current version of my package definition can be found here: https://framagit.org/tyreunom/guix-more/commit/ca9a77ed4b0a3ae50590f8e8abb9175f42094560 From debbugs-submit-bounces@debbugs.gnu.org Fri Mar 09 07:41:10 2018 Received: (at control) by debbugs.gnu.org; 9 Mar 2018 12:41:10 +0000 Received: from localhost ([127.0.0.1]:51821 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1euHKg-00036l-8I for submit@debbugs.gnu.org; Fri, 09 Mar 2018 07:41:10 -0500 Received: from hera.aquilenet.fr ([185.233.100.1]:59252) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1euHKf-00036e-EF for control@debbugs.gnu.org; Fri, 09 Mar 2018 07:41:09 -0500 Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id E973B12092 for ; Fri, 9 Mar 2018 13:41:08 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at aquilenet.fr Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ijWubaJm4CQn for ; Fri, 9 Mar 2018 13:41:08 +0100 (CET) Received: from ribbon (unknown [193.50.110.144]) by hera.aquilenet.fr (Postfix) with ESMTPSA id 5602A100FB for ; Fri, 9 Mar 2018 13:41:08 +0100 (CET) Date: Fri, 09 Mar 2018 13:41:07 +0100 Message-Id: <87lgf1zajg.fsf@gnu.org> To: control@debbugs.gnu.org From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: control message for bug #30756 MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.0 (+) severity 30756 important From debbugs-submit-bounces@debbugs.gnu.org Fri Mar 09 07:42:43 2018 Received: (at 30756) by debbugs.gnu.org; 9 Mar 2018 12:42:43 +0000 Received: from localhost ([127.0.0.1]:51826 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1euHMB-00039T-Hl for submit@debbugs.gnu.org; Fri, 09 Mar 2018 07:42:43 -0500 Received: from hera.aquilenet.fr ([185.233.100.1]:59258) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1euHMA-00039K-Bf for 30756@debbugs.gnu.org; Fri, 09 Mar 2018 07:42:42 -0500 Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id BE04412092; Fri, 9 Mar 2018 13:42:41 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at aquilenet.fr Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id J8j1SUxqujXl; Fri, 9 Mar 2018 13:42:41 +0100 (CET) Received: from ribbon (unknown [193.50.110.144]) by hera.aquilenet.fr (Postfix) with ESMTPSA id C8698100FB; Fri, 9 Mar 2018 13:42:40 +0100 (CET) From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: julien lepiller Subject: Re: bug#30756: gcc7 doesn't find stdlib.h References: Date: Fri, 09 Mar 2018 13:42:40 +0100 In-Reply-To: (julien lepiller's message of "Fri, 09 Mar 2018 13:10:58 +0100") Message-ID: <87fu59zagv.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 30756 Cc: 30756@debbugs.gnu.org, Marius Bakke X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.0 (+) julien lepiller skribis: > I'm trying to build a software that requires gcc>=3D7.2. Unfortunately, > the process crashes and ends with: > > /gnu/store/a4vwdk8r6p6l2mnffz4yaqlr1z6z6w3r-gcc-7.3.0/include/c++/cstdlib= :75:15: > fatal error: stdlib.h: No such file or directory. On IRC Marius mentioned this bug report: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D70129#c3 Note that we use C_INCLUDE_PATH, which is equivalent to =E2=80=98-isystem= =E2=80=99. Quoth (gnu packages gcc): (native-search-paths ;; Use the language-specific variables rather than 'CPATH' because t= hey ;; are equivalent to '-isystem' whereas 'CPATH' is equivalent to '-I= '. ;; The intent is to allow headers that are in the search path to be ;; treated as "system headers" (headers exempt from warnings) just l= ike ;; the typical /usr/include headers on an FHS system. (list (search-path-specification (variable "C_INCLUDE_PATH") (files '("include"))) (search-path-specification (variable "CPLUS_INCLUDE_PATH") (files '("include"))) (search-path-specification (variable "LIBRARY_PATH") (files '("lib" "lib64"))))) Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Fri May 04 08:43:47 2018 Received: (at 30756) by debbugs.gnu.org; 4 May 2018 12:43:47 +0000 Received: from localhost ([127.0.0.1]:48991 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEa3v-0002cV-I0 for submit@debbugs.gnu.org; Fri, 04 May 2018 08:43:47 -0400 Received: from hera.aquilenet.fr ([185.233.100.1]:35490) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEa3t-0002cM-DX for 30756@debbugs.gnu.org; Fri, 04 May 2018 08:43:46 -0400 Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id A472A1BF8B; Fri, 4 May 2018 14:43:43 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at aquilenet.fr Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id TXfez3VYNPPV; Fri, 4 May 2018 14:43:42 +0200 (CEST) Received: from ribbon (unknown [193.50.110.223]) by hera.aquilenet.fr (Postfix) with ESMTPSA id 73F021BF98; Fri, 4 May 2018 14:43:42 +0200 (CEST) From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Giel van Schijndel Subject: Re: bug#30756: gcc7 doesn't find stdlib.h References: <87fu59zagv.fsf@gnu.org> <5212cd7e-5f52-2826-2f65-9b66af4e73ad@mortis.eu> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 15 =?utf-8?Q?Flor=C3=A9al?= an 226 de la =?utf-8?Q?R?= =?utf-8?Q?=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Fri, 04 May 2018 14:43:42 +0200 In-Reply-To: <5212cd7e-5f52-2826-2f65-9b66af4e73ad@mortis.eu> (Giel van Schijndel's message of "Fri, 4 May 2018 11:46:58 +0200") Message-ID: <87d0ybvbep.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 30756 Cc: Marius Bakke , julien lepiller , 30756@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi, Giel van Schijndel skribis: > On 09-03-18 13:42, Ludovic Court=C3=A8s wrote: >> julien lepiller skribis: >> >>> I'm trying to build a software that requires gcc>=3D7.2. Unfortunately, >>> the process crashes and ends with: >>> >>> /gnu/store/a4vwdk8r6p6l2mnffz4yaqlr1z6z6w3r-gcc-7.3.0/include/c++/cstdl= ib:75:15: >>> fatal error: stdlib.h: No such file or directory. >> On IRC Marius mentioned this bug report: >> >> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D70129#c3 >> >> Note that we use C_INCLUDE_PATH, which is equivalent to =E2=80=98-isyste= m=E2=80=99. > > This is biting me too for a C++17 project I'm trying to build. Marius, do you have a link to the exact change in GCC that caused this regression? I find it hard to believe that a fix would necessarily =E2=80=9Cslow everyt= hing down=E2=80=9D, as Jakub put it in the report above. Also it seems clear that in Guix we=E2=80=99ll want a solution that=E2=80= =99s not CMake-specific. Giel, does the patch below work for you? --=-=-= Content-Type: text/x-patch Content-Disposition: inline diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index 62b896882..9a82a9e81 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -476,7 +476,17 @@ Go. It also includes runtime support libraries for these languages.") "pa" "sh" "tilepro" "xtensa"))))) (inputs `(("isl" ,isl) - ,@(package-inputs gcc-4.7))))) + ,@(package-inputs gcc-4.7))) + + (native-search-paths + ;; We have to use 'CPATH' for GCC > 5, not 'C_INCLUDE_PATH' & co., due to + ;; . + (list (search-path-specification + (variable "CPATH") + (files '("include"))) + (search-path-specification + (variable "LIBRARY_PATH") + (files '("lib" "lib64"))))))) (define-public gcc-7 (package --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 DQpUaGFua3MsDQpMdWRv4oCZLg0K --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Fri May 04 11:28:32 2018 Received: (at 30756) by debbugs.gnu.org; 4 May 2018 15:28:32 +0000 Received: from localhost ([127.0.0.1]:49901 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEcdM-0006aS-7h for submit@debbugs.gnu.org; Fri, 04 May 2018 11:28:32 -0400 Received: from hera.aquilenet.fr ([185.233.100.1]:51956) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEcdK-0006aJ-El for 30756@debbugs.gnu.org; Fri, 04 May 2018 11:28:30 -0400 Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id 87EC61C74E; Fri, 4 May 2018 17:28:29 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at aquilenet.fr Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id CkqqBlqNjyPl; Fri, 4 May 2018 17:28:27 +0200 (CEST) Received: from ribbon (unknown [193.50.110.223]) by hera.aquilenet.fr (Postfix) with ESMTPSA id 31D9F1C791; Fri, 4 May 2018 17:28:27 +0200 (CEST) From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Giel van Schijndel Subject: Re: bug#30756: gcc7 doesn't find stdlib.h References: <87fu59zagv.fsf@gnu.org> <5212cd7e-5f52-2826-2f65-9b66af4e73ad@mortis.eu> <87d0ybvbep.fsf@gnu.org> <36478fc2-98e7-0ebd-9048-7193fd240f5c@mortis.eu> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 15 =?utf-8?Q?Flor=C3=A9al?= an 226 de la =?utf-8?Q?R?= =?utf-8?Q?=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Fri, 04 May 2018 17:28:26 +0200 In-Reply-To: <36478fc2-98e7-0ebd-9048-7193fd240f5c@mortis.eu> (Giel van Schijndel's message of "Fri, 4 May 2018 16:30:08 +0200") Message-ID: <87k1sjsan9.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 30756 Cc: Marius Bakke , julien lepiller , 30756@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) Giel van Schijndel skribis: > On 04-05-18 14:43, Ludovic Court=C3=A8s wrote: [...] >> Giel, does the patch below work for you? > > No, just by itself it doesn't. It does add 'CPATH', but doesn't drop > 'C_INCLUDE_PATH' and 'CPLUS_INCLUDE_PATH'. That=E2=80=99s probably because your package still includes gcc@5 as an imp= licit input via =E2=80=98cmake-build-system=E2=80=99. You could use a procedure like this to remove implicit inputs and add your own GCC variant: --8<---------------cut here---------------start------------->8--- (define (package-with-specific-compiler p compiler) "Return P modified to be built with COMPILER." (package (inherit p) (arguments `(#:implicit-inputs? #f ,@(package-arguments p))) (native-inputs `(("compiler" ,compiler) ,@(package-native-inputs p))) (inputs (append (package-inputs p) (alist-delete "gcc" (standard-packages)))))) --8<---------------cut here---------------end--------------->8--- =E2=80=A6 where =E2=80=98standard-packages=E2=80=99 comes from (guix build-= system gnu). > But I can no longer build with warnings treated as error at that point, > because I'm getting a ton of warnings inside headers of dependencies > now. With either of '-Wno-error' or '-w' I can build now. Yeah, that=E2=80=99s a downside (that was the reason why we switched from C= PATH to C_INCLUDE_PATH a while back), but it could be a reasonable workaround for now. > Would it be possible to filter the list of directories added to these > environment variables to exclude those already present in GCC's default > search path? I still don=E2=80=99t fully understand the issue actually. What=E2=80=99s = wrong with having these directories appear several times in the search path? The difficulty here will be that search path environment variables in Guix are populated automatically based on their specifications, so it=E2=80= =99s not all that clear to me where that filtering would happen. Thanks, Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Fri May 04 11:41:49 2018 Received: (at 30756) by debbugs.gnu.org; 4 May 2018 15:41:49 +0000 Received: from localhost ([127.0.0.1]:49910 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEcqC-0006tf-NJ for submit@debbugs.gnu.org; Fri, 04 May 2018 11:41:49 -0400 Received: from khitomer.mortis.eu ([185.27.175.75]:19474) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEXIw-0000xS-Oi for 30756@debbugs.gnu.org; Fri, 04 May 2018 05:47:07 -0400 Received: from [10.117.11.179] (unknown [185.5.121.222]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "giel-tomtom-nl2lxd-108395-auth", Issuer "Khitomer Root CA" (verified OK)) by khitomer.mortis.eu (Postfix) with ESMTPS id 7ADAB6C9; Fri, 4 May 2018 11:47:00 +0200 (CEST) Subject: Re: bug#30756: gcc7 doesn't find stdlib.h To: =?UTF-8?Q?Ludovic_Court=c3=a8s?= , julien lepiller References: <87fu59zagv.fsf@gnu.org> From: Giel van Schijndel Message-ID: <5212cd7e-5f52-2826-2f65-9b66af4e73ad@mortis.eu> Date: Fri, 4 May 2018 11:46:58 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: <87fu59zagv.fsf@gnu.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Content-Language: en-US X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 30756 X-Mailman-Approved-At: Fri, 04 May 2018 11:41:47 -0400 Cc: 30756@debbugs.gnu.org, Marius Bakke X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) On 09-03-18 13:42, Ludovic Courtès wrote: > julien lepiller skribis: > >> I'm trying to build a software that requires gcc>=7.2. Unfortunately, >> the process crashes and ends with: >> >> /gnu/store/a4vwdk8r6p6l2mnffz4yaqlr1z6z6w3r-gcc-7.3.0/include/c++/cstdlib:75:15: >> fatal error: stdlib.h: No such file or directory. > On IRC Marius mentioned this bug report: > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70129#c3 > > Note that we use C_INCLUDE_PATH, which is equivalent to ‘-isystem’. This is biting me too for a C++17 project I'm trying to build. That GCC bug report (Jakub Jellinek) says that you shouldn't be using -isystem for the default include directories. So I believe these paths shouldn't get added to CPLUS_INCLUDE_PATH in the first place. In that bug report there's a link to a CMake bug report with a link to a solution employed by WebKit: https://trac.webkit.org/changeset/205672/webkit/trunk/Source/cmake/OptionsCommon.cmake That solution boils down to executing "g++ -v -E -x c++ /dev/null" and extracting the list of (default) include directories from its output then giving CMake that list to ensure it won't ever try to add it with either -I or -isystem to the preprocessor's search path. I believe a similar approach should be taken by (gnu packages gcc) (assuming that's what is responsible for adding this). To confirm that this works: > $ env -u CPATH -u C_INCLUDE_PATH -u CPLUS_INCLUDE_PATH c++ -v -E -x > c++ /dev/null > ... > #include <...> search starts here: >  /gnu/store/f9wi8xs84b29f5igp578hnqfpjnfn4gh-gcc-7.3.0/include/c++ >  /gnu/store/f9wi8xs84b29f5igp578hnqfpjnfn4gh-gcc-7.3.0/include/c++/x86_64-unknown-linux-gnu >  /gnu/store/f9wi8xs84b29f5igp578hnqfpjnfn4gh-gcc-7.3.0/include/c++/backward >  /gnu/store/8jp0v7q1g4g87ay94i7h7p54mcw48mf3-gcc-7.3.0-lib/lib/gcc/x86_64-unknown-linux-gnu/7.3.0/include >  /gnu/store/8jp0v7q1g4g87ay94i7h7p54mcw48mf3-gcc-7.3.0-lib/lib/gcc/x86_64-unknown-linux-gnu/7.3.0/include-fixed >  /gnu/store/4sqaib7c2dfjv62ivrg9b8wa7bh226la-glibc-2.26.105-g0890d5379c/include > End of search list. > ... To get my C++17 project building I can take the auto-generated CPLUS_INCLUDE_PATH and just strip every path from it that also occurs in the above list and set it again with (setenv). There's two problems with this: 1. It's a workaround for a break in the build environment that would need to be copy-pasted to every project wishing to build C++ with a modern GCC 2. My skill at Scheme/Guile isn't good enough to execute the above command and capture its output from within the build phases, let alone parse and use its result to clean up CPLUS_INCLUDE_PATH. -- Met vriendelijke groet, With kind regards, Giel van Schijndel From debbugs-submit-bounces@debbugs.gnu.org Fri May 04 11:41:49 2018 Received: (at 30756) by debbugs.gnu.org; 4 May 2018 15:41:49 +0000 Received: from localhost ([127.0.0.1]:49912 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEcqD-0006th-94 for submit@debbugs.gnu.org; Fri, 04 May 2018 11:41:49 -0400 Received: from khitomer.mortis.eu ([185.27.175.75]:30864) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEbiw-0005Hr-Qs for 30756@debbugs.gnu.org; Fri, 04 May 2018 10:30:15 -0400 Received: from [10.117.11.179] (unknown [185.5.121.222]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "giel-tomtom-nl2lxd-108395-auth", Issuer "Khitomer Root CA" (verified OK)) by khitomer.mortis.eu (Postfix) with ESMTPS id 11DCD7CF; Fri, 4 May 2018 16:30:09 +0200 (CEST) Subject: Re: bug#30756: gcc7 doesn't find stdlib.h To: =?UTF-8?Q?Ludovic_Court=c3=a8s?= References: <87fu59zagv.fsf@gnu.org> <5212cd7e-5f52-2826-2f65-9b66af4e73ad@mortis.eu> <87d0ybvbep.fsf@gnu.org> From: Giel van Schijndel Message-ID: <36478fc2-98e7-0ebd-9048-7193fd240f5c@mortis.eu> Date: Fri, 4 May 2018 16:30:08 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: <87d0ybvbep.fsf@gnu.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Content-Language: en-US X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 30756 X-Mailman-Approved-At: Fri, 04 May 2018 11:41:47 -0400 Cc: Marius Bakke , julien lepiller , 30756@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) On 04-05-18 14:43, Ludovic Courtès wrote: > Hi, > > Giel van Schijndel skribis: > >> On 09-03-18 13:42, Ludovic Courtès wrote: >>> julien lepiller skribis: >>> >>>> I'm trying to build a software that requires gcc>=7.2. Unfortunately, >>>> the process crashes and ends with: >>>> >>>> /gnu/store/a4vwdk8r6p6l2mnffz4yaqlr1z6z6w3r-gcc-7.3.0/include/c++/cstdlib:75:15: >>>> fatal error: stdlib.h: No such file or directory. >>> On IRC Marius mentioned this bug report: >>> >>> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70129#c3 >>> >>> Note that we use C_INCLUDE_PATH, which is equivalent to ‘-isystem’. >> This is biting me too for a C++17 project I'm trying to build. > Marius, do you have a link to the exact change in GCC that caused this > regression? > > I find it hard to believe that a fix would necessarily “slow everything > down”, as Jakub put it in the report above. > > Also it seems clear that in Guix we’ll want a solution that’s not > CMake-specific. Obviously, I wasn't suggesting that. I was just suggesting a similar approach. > Giel, does the patch below work for you? No, just by itself it doesn't. It does add 'CPATH', but doesn't drop 'C_INCLUDE_PATH' and 'CPLUS_INCLUDE_PATH'. With this added to my package preprocessing succeeds: >           (add-before 'configure 'fixgcc7 >             (lambda _ >               (unsetenv "C_INCLUDE_PATH") >               (unsetenv "CPLUS_INCLUDE_PATH"))) But I can no longer build with warnings treated as error at that point, because I'm getting a ton of warnings inside headers of dependencies now. With either of '-Wno-error' or '-w' I can build now. Would it be possible to filter the list of directories added to these environment variables to exclude those already present in GCC's default search path? I believe that should solve it in all cases, not just the CMake one. I'm currently trying to produce a minimal test case, I'll post it here when I succeed. -- Met vriendelijke groet, With kind regards, Giel van Schijndel From debbugs-submit-bounces@debbugs.gnu.org Fri May 04 11:41:50 2018 Received: (at 30756) by debbugs.gnu.org; 4 May 2018 15:41:50 +0000 Received: from localhost ([127.0.0.1]:49914 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEcqD-0006to-IO for submit@debbugs.gnu.org; Fri, 04 May 2018 11:41:50 -0400 Received: from khitomer.mortis.eu ([185.27.175.75]:57526) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEcJ2-00066z-IE for 30756@debbugs.gnu.org; Fri, 04 May 2018 11:07:32 -0400 Received: from [10.117.11.179] (unknown [185.5.121.222]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "giel-tomtom-nl2lxd-108395-auth", Issuer "Khitomer Root CA" (verified OK)) by khitomer.mortis.eu (Postfix) with ESMTPS id 5AD0B7F1; Fri, 4 May 2018 17:07:26 +0200 (CEST) Subject: Re: bug#30756: gcc7 doesn't find stdlib.h From: Giel van Schijndel To: =?UTF-8?Q?Ludovic_Court=c3=a8s?= References: <87fu59zagv.fsf@gnu.org> <5212cd7e-5f52-2826-2f65-9b66af4e73ad@mortis.eu> <87d0ybvbep.fsf@gnu.org> <36478fc2-98e7-0ebd-9048-7193fd240f5c@mortis.eu> Message-ID: <39b433d2-bc3b-733f-3210-4a93fcb596c2@mortis.eu> Date: Fri, 4 May 2018 17:07:26 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: <36478fc2-98e7-0ebd-9048-7193fd240f5c@mortis.eu> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Content-Language: en-US X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 30756 X-Mailman-Approved-At: Fri, 04 May 2018 11:41:47 -0400 Cc: Marius Bakke , julien lepiller , 30756@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) On 04-05-18 16:30, Giel van Schijndel wrote: > I'm currently trying to produce a minimal test case, I'll post it here > when I succeed. I've put the test case at https://git.fsfe.org/giel/hello-cpp17. It only uses a simple makefile. PS The web interface doesn't seem to update. Directly cloning that URL does work though. -- Met vriendelijke groet, With kind regards, Giel van Schijndel From debbugs-submit-bounces@debbugs.gnu.org Fri May 04 12:03:47 2018 Received: (at 30756) by debbugs.gnu.org; 4 May 2018 16:03:47 +0000 Received: from localhost ([127.0.0.1]:49920 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEdBS-0007Oo-Nd for submit@debbugs.gnu.org; Fri, 04 May 2018 12:03:46 -0400 Received: from khitomer.mortis.eu ([185.27.175.75]:31654) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEdBQ-0007OY-PR for 30756@debbugs.gnu.org; Fri, 04 May 2018 12:03:45 -0400 Received: from [10.117.11.179] (unknown [185.5.121.222]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "giel-tomtom-nl2lxd-108395-auth", Issuer "Khitomer Root CA" (verified OK)) by khitomer.mortis.eu (Postfix) with ESMTPS id 8C56B82F; Fri, 4 May 2018 18:03:38 +0200 (CEST) Subject: Re: bug#30756: gcc7 doesn't find stdlib.h To: =?UTF-8?Q?Ludovic_Court=c3=a8s?= References: <87fu59zagv.fsf@gnu.org> <5212cd7e-5f52-2826-2f65-9b66af4e73ad@mortis.eu> <87d0ybvbep.fsf@gnu.org> <36478fc2-98e7-0ebd-9048-7193fd240f5c@mortis.eu> <87k1sjsan9.fsf@gnu.org> From: Giel van Schijndel Message-ID: <58dc244a-8ff5-fb1f-8c7b-d6745c1f2558@mortis.eu> Date: Fri, 4 May 2018 18:03:38 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: <87k1sjsan9.fsf@gnu.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Content-Language: en-US X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 30756 Cc: Marius Bakke , julien lepiller , 30756@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) On 04-05-18 17:28, Ludovic Courtès wrote: > That’s probably because your package still includes gcc@5 as an implicit > input via ‘cmake-build-system’. > > You could use a procedure like this to remove implicit inputs and add > your own GCC variant: > > --8<---------------cut here---------------start------------->8--- > (define (package-with-specific-compiler p compiler) > "Return P modified to be built with COMPILER." > (package > (inherit p) > (arguments > `(#:implicit-inputs? #f ,@(package-arguments p))) > (native-inputs `(("compiler" ,compiler) > ,@(package-native-inputs p))) > (inputs (append (package-inputs p) > (alist-delete "gcc" (standard-packages)))))) > --8<---------------cut here---------------end--------------->8--- > > … where ‘standard-packages’ comes from (guix build-system gnu). This gives me: > guix/build-system/cmake.scm:93:0: In procedure cmake-build: > guix/build-system/cmake.scm:93:0: Unrecognized keyword: #:implicit-inputs? >> Would it be possible to filter the list of directories added to these >> environment variables to exclude those already present in GCC's default >> search path? > I still don’t fully understand the issue actually. What’s wrong with > having these directories appear several times in the search path? > > The difficulty here will be that search path environment variables in > Guix are populated automatically based on their specifications, so it’s > not all that clear to me where that filtering would happen. The problem seems to be triggered by glibc appearing on the search path. I'm not sure about GCC's internals exactly so I'm making one assumption that causes all of this to make sense to me: if a directory appears multiples times in the search path it will be searched only the first time that it's encountered. So in short: contains an "#include_next " preprocessor directive. That's a GCC extension that tells the preprocessor it should only search directories appearing in the search path _after_ the directory containing the file currently being processed. Now this is the trimmed down search path that gets produced for g++:  * /gnu/store/4sqaib7c2dfjv62ivrg9b8wa7bh226la-glibc-2.26.105-g0890d5379c/include  * /gnu/store/f9wi8xs84b29f5igp578hnqfpjnfn4gh-gcc-7.3.0/include/c++  * /gnu/store/f9wi8xs84b29f5igp578hnqfpjnfn4gh-gcc-7.3.0/include/c++/x86_64-unknown-linux-gnu  * /gnu/store/f9wi8xs84b29f5igp578hnqfpjnfn4gh-gcc-7.3.0/include/c++/backward  * /gnu/store/8jp0v7q1g4g87ay94i7h7p54mcw48mf3-gcc-7.3.0-lib/lib/gcc/x86_64-unknown-linux-gnu/7.3.0/include  * /gnu/store/8jp0v7q1g4g87ay94i7h7p54mcw48mf3-gcc-7.3.0-lib/lib/gcc/x86_64-unknown-linux-gnu/7.3.0/include-fixed  * /gnu/store/4sqaib7c2dfjv62ivrg9b8wa7bh226la-glibc-2.26.105-g0890d5379c/include The first item gets there through CPLUS_INCLUDE_PATH. The rest of the list are GCC's defaults. Because the first item is a duplicate of the last, under the previously stated assumption, this will prevent the preprocessor from searching it a second time for the last. This means that , which is found in .../include/c++ cannot find in the list of directories left to search. Because that list, at that point, starts at .../c++/x86_64-unknown-linux-gnu and ends at *-glibc-*/include _but_ because that's a duplicate of a previously seen item it gets eliminated. I'm guessing the slow down they claim a workaround would cause that GCC bug report is caused by having to deal with cycle detection becoming more complicated if you cannot just remove duplicate entries from the include path. -- Met vriendelijke groet, With kind regards, Giel van Schijndel From debbugs-submit-bounces@debbugs.gnu.org Fri May 04 12:43:03 2018 Received: (at 30756) by debbugs.gnu.org; 4 May 2018 16:43:03 +0000 Received: from localhost ([127.0.0.1]:49928 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEdnS-0008GL-Rq for submit@debbugs.gnu.org; Fri, 04 May 2018 12:43:03 -0400 Received: from world.peace.net ([64.112.178.59]:48354) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEdnQ-0008Fr-Tn for 30756@debbugs.gnu.org; Fri, 04 May 2018 12:43:01 -0400 Received: from mhw by world.peace.net with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1fEdnK-00088u-GB; Fri, 04 May 2018 12:42:54 -0400 From: Mark H Weaver To: Giel van Schijndel Subject: Re: bug#30756: gcc7 doesn't find stdlib.h References: <87fu59zagv.fsf@gnu.org> <5212cd7e-5f52-2826-2f65-9b66af4e73ad@mortis.eu> <87d0ybvbep.fsf@gnu.org> <36478fc2-98e7-0ebd-9048-7193fd240f5c@mortis.eu> <87k1sjsan9.fsf@gnu.org> <58dc244a-8ff5-fb1f-8c7b-d6745c1f2558@mortis.eu> Date: Fri, 04 May 2018 12:41:52 -0400 In-Reply-To: <58dc244a-8ff5-fb1f-8c7b-d6745c1f2558@mortis.eu> (Giel van Schijndel's message of "Fri, 4 May 2018 18:03:38 +0200") Message-ID: <87zi1fid9r.fsf@netris.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 30756 Cc: Ludovic =?utf-8?Q?Court=C3=A8s?= , 30756@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Giel van Schijndel writes: > On 04-05-18 17:28, Ludovic Court=C3=A8s wrote: >> That=E2=80=99s probably because your package still includes gcc@5 as an = implicit >> input via =E2=80=98cmake-build-system=E2=80=99. >> >> You could use a procedure like this to remove implicit inputs and add >> your own GCC variant: >> >> --8<---------------cut here---------------start------------->8--- >> (define (package-with-specific-compiler p compiler) >> "Return P modified to be built with COMPILER." >> (package >> (inherit p) >> (arguments >> `(#:implicit-inputs? #f ,@(package-arguments p))) >> (native-inputs `(("compiler" ,compiler) >> ,@(package-native-inputs p))) >> (inputs (append (package-inputs p) >> (alist-delete "gcc" (standard-packages)))))) >> --8<---------------cut here---------------end--------------->8--- >> >> =E2=80=A6 where =E2=80=98standard-packages=E2=80=99 comes from (guix bui= ld-system gnu). > This gives me: >> guix/build-system/cmake.scm:93:0: In procedure cmake-build: >> guix/build-system/cmake.scm:93:0: Unrecognized keyword: #:implicit-input= s? > >>> Would it be possible to filter the list of directories added to these >>> environment variables to exclude those already present in GCC's default >>> search path? >> I still don=E2=80=99t fully understand the issue actually. What=E2=80= =99s wrong with >> having these directories appear several times in the search path? >> >> The difficulty here will be that search path environment variables in >> Guix are populated automatically based on their specifications, so it=E2= =80=99s >> not all that clear to me where that filtering would happen. > > The problem seems to be triggered by glibc appearing on the search path. > > I'm not sure about GCC's internals exactly so I'm making one assumption > that causes all of this to make sense to me: if a directory appears > multiples times in the search path it will be searched only the first > time that it's encountered. > > So in short: contains an "#include_next " > preprocessor directive. That's a GCC extension that tells the > preprocessor it should only search directories appearing in the search > path _after_ the directory containing the file currently being processed. I ran into the same problem with our 'gjs' package in the 'core-updates' branch. First I added 'gcc-7' to the inputs to work around a different issue (an internal compiler error in gcc-5), and then I encountered the exact problem you described above. On my own private branch, I worked around this problem by adding "-idirafter /include" to CXXFLAGS, but of course it's not a proper fix. My workaround happens to be in Savannah on the 'reproduce-bug-29774' branch: https://git.savannah.gnu.org/cgit/guix.git/commit/?h=3Dreproduce-bug-2977= 4&id=3D87022e2666c5e68e865eb160a4bd8e9cdcc1a955 Mark From debbugs-submit-bounces@debbugs.gnu.org Fri May 04 13:15:25 2018 Received: (at 30756) by debbugs.gnu.org; 4 May 2018 17:15:25 +0000 Received: from localhost ([127.0.0.1]:49932 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEeIn-0000YH-Ez for submit@debbugs.gnu.org; Fri, 04 May 2018 13:15:25 -0400 Received: from world.peace.net ([64.112.178.59]:48428) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEeIl-0000Y5-95 for 30756@debbugs.gnu.org; Fri, 04 May 2018 13:15:23 -0400 Received: from mhw by world.peace.net with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1fEeIf-0008HR-6m; Fri, 04 May 2018 13:15:17 -0400 From: Mark H Weaver To: Giel van Schijndel Subject: Re: bug#30756: gcc7 doesn't find stdlib.h References: <87fu59zagv.fsf@gnu.org> <5212cd7e-5f52-2826-2f65-9b66af4e73ad@mortis.eu> <87d0ybvbep.fsf@gnu.org> <36478fc2-98e7-0ebd-9048-7193fd240f5c@mortis.eu> <87k1sjsan9.fsf@gnu.org> <58dc244a-8ff5-fb1f-8c7b-d6745c1f2558@mortis.eu> <87zi1fid9r.fsf@netris.org> Date: Fri, 04 May 2018 13:14:15 -0400 In-Reply-To: <87zi1fid9r.fsf@netris.org> (Mark H. Weaver's message of "Fri, 04 May 2018 12:41:52 -0400") Message-ID: <87vac3ibrs.fsf@netris.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 30756 Cc: 30756@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Mark H Weaver writes: > Giel van Schijndel writes: > >> The problem seems to be triggered by glibc appearing on the search path. >> >> I'm not sure about GCC's internals exactly so I'm making one assumption >> that causes all of this to make sense to me: if a directory appears >> multiples times in the search path it will be searched only the first >> time that it's encountered. >> >> So in short: contains an "#include_next " >> preprocessor directive. That's a GCC extension that tells the >> preprocessor it should only search directories appearing in the search >> path _after_ the directory containing the file currently being processed. > > I ran into the same problem with our 'gjs' package in the 'core-updates' > branch. First I added 'gcc-7' to the inputs to work around a different > issue (an internal compiler error in gcc-5), and then I encountered the > exact problem you described above. > > On my own private branch, I worked around this problem by adding > "-idirafter /include" to CXXFLAGS, but of course it's not a proper > fix. My workaround happens to be in Savannah on the > 'reproduce-bug-29774' branch: > > https://git.savannah.gnu.org/cgit/guix.git/commit/?h=reproduce-bug-29774&id=87022e2666c5e68e865eb160a4bd8e9cdcc1a955 I forgot to mention that in addition to adding -idirafter, I also had to remove /include from CPLUS_INCLUDE_PATH. Without the latter, the -idirafter directive was ignored as a duplicate. Mark From debbugs-submit-bounces@debbugs.gnu.org Fri May 04 16:39:51 2018 Received: (at 30756) by debbugs.gnu.org; 4 May 2018 20:39:51 +0000 Received: from localhost ([127.0.0.1]:49997 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEhUc-0005TK-W0 for submit@debbugs.gnu.org; Fri, 04 May 2018 16:39:51 -0400 Received: from hera.aquilenet.fr ([185.233.100.1]:54388) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEhUc-0005TD-6H for 30756@debbugs.gnu.org; Fri, 04 May 2018 16:39:50 -0400 Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id 095CE1D6C8; Fri, 4 May 2018 22:39:49 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at aquilenet.fr Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id B9g6r9NxZatS; Fri, 4 May 2018 22:39:47 +0200 (CEST) Received: from ribbon (unknown [IPv6:2a01:e0a:1d:7270:af76:b9b:ca24:c465]) by hera.aquilenet.fr (Postfix) with ESMTPSA id 8A6CC1D6B4; Fri, 4 May 2018 22:39:47 +0200 (CEST) From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Mark H Weaver Subject: Re: bug#30756: gcc7 doesn't find stdlib.h References: <87fu59zagv.fsf@gnu.org> <5212cd7e-5f52-2826-2f65-9b66af4e73ad@mortis.eu> <87d0ybvbep.fsf@gnu.org> <36478fc2-98e7-0ebd-9048-7193fd240f5c@mortis.eu> <87k1sjsan9.fsf@gnu.org> <58dc244a-8ff5-fb1f-8c7b-d6745c1f2558@mortis.eu> <87zi1fid9r.fsf@netris.org> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 15 =?utf-8?Q?Flor=C3=A9al?= an 226 de la =?utf-8?Q?R?= =?utf-8?Q?=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Fri, 04 May 2018 22:39:46 +0200 In-Reply-To: <87zi1fid9r.fsf@netris.org> (Mark H. Weaver's message of "Fri, 04 May 2018 12:41:52 -0400") Message-ID: <87fu37rw8d.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 30756 Cc: 30756@debbugs.gnu.org, Giel van Schijndel X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) Mark H Weaver skribis: > On my own private branch, I worked around this problem by adding > "-idirafter /include" to CXXFLAGS, but of course it's not a proper > fix. My workaround happens to be in Savannah on the > 'reproduce-bug-29774' branch: > > https://git.savannah.gnu.org/cgit/guix.git/commit/?h=3Dreproduce-bug-29= 774&id=3D87022e2666c5e68e865eb160a4bd8e9cdcc1a955 Perhaps we could achieve the same effect by adding =E2=80=9C-idirafter LIBC/include=E2=80=9D to the default spec file, under =E2=80=98cpp_options= =E2=80=99? (We=E2=80=99d achieve that by modifying the value of =E2=80=98cpp_options= =E2=80=99 in gcc/gcc.c.) I suppose that would fix the include_next issue that Giel describes? Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Fri May 04 17:37:37 2018 Received: (at 30756) by debbugs.gnu.org; 4 May 2018 21:37:37 +0000 Received: from localhost ([127.0.0.1]:50012 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEiOW-0006qc-T7 for submit@debbugs.gnu.org; Fri, 04 May 2018 17:37:37 -0400 Received: from world.peace.net ([64.112.178.59]:48902) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fEiOU-0006qM-Ue for 30756@debbugs.gnu.org; Fri, 04 May 2018 17:37:35 -0400 Received: from mhw by world.peace.net with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1fEiOP-0001Yj-5T; Fri, 04 May 2018 17:37:29 -0400 From: Mark H Weaver To: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: bug#30756: gcc7 doesn't find stdlib.h References: <87fu59zagv.fsf@gnu.org> <5212cd7e-5f52-2826-2f65-9b66af4e73ad@mortis.eu> <87d0ybvbep.fsf@gnu.org> <36478fc2-98e7-0ebd-9048-7193fd240f5c@mortis.eu> <87k1sjsan9.fsf@gnu.org> <58dc244a-8ff5-fb1f-8c7b-d6745c1f2558@mortis.eu> <87zi1fid9r.fsf@netris.org> <87fu37rw8d.fsf@gnu.org> Date: Fri, 04 May 2018 17:36:27 -0400 In-Reply-To: <87fu37rw8d.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Fri, 04 May 2018 22:39:46 +0200") Message-ID: <87fu37hzms.fsf@netris.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 30756 Cc: 30756@debbugs.gnu.org, Giel van Schijndel X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) ludo@gnu.org (Ludovic Court=C3=A8s) writes: > Mark H Weaver skribis: > >> On my own private branch, I worked around this problem by adding >> "-idirafter /include" to CXXFLAGS, but of course it's not a proper >> fix. My workaround happens to be in Savannah on the >> 'reproduce-bug-29774' branch: >> >> https://git.savannah.gnu.org/cgit/guix.git/commit/?h=3Dreproduce-bug-2= 9774&id=3D87022e2666c5e68e865eb160a4bd8e9cdcc1a955 > > Perhaps we could achieve the same effect by adding =E2=80=9C-idirafter > LIBC/include=E2=80=9D to the default spec file, under =E2=80=98cpp_option= s=E2=80=99? > (We=E2=80=99d achieve that by modifying the value of =E2=80=98cpp_options= =E2=80=99 in > gcc/gcc.c.) I guess that it might be better to avoid using -idirafter and instead pay attention to the order in which the normal include search paths are populated, and in particular for LIBC to last, but maybe that would be awkward to arrange, dunno. Mark From debbugs-submit-bounces@debbugs.gnu.org Mon May 07 06:12:40 2018 Received: (at 30756) by debbugs.gnu.org; 7 May 2018 10:12:40 +0000 Received: from localhost ([127.0.0.1]:52006 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fFd8J-0000ws-Oo for submit@debbugs.gnu.org; Mon, 07 May 2018 06:12:39 -0400 Received: from eggs.gnu.org ([208.118.235.92]:57377) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fFd8I-0000we-PQ for 30756@debbugs.gnu.org; Mon, 07 May 2018 06:12:39 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fFd8C-0006bo-Hz for 30756@debbugs.gnu.org; Mon, 07 May 2018 06:12:33 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=BAYES_20 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:47792) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fFd82-0006WG-3r; Mon, 07 May 2018 06:12:22 -0400 Received: from [193.50.110.223] (port=44904 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fFd81-0007NL-ME; Mon, 07 May 2018 06:12:21 -0400 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Giel van Schijndel Subject: Re: bug#30756: gcc7 doesn't find stdlib.h References: <87fu59zagv.fsf@gnu.org> <5212cd7e-5f52-2826-2f65-9b66af4e73ad@mortis.eu> <87d0ybvbep.fsf@gnu.org> <36478fc2-98e7-0ebd-9048-7193fd240f5c@mortis.eu> Date: Mon, 07 May 2018 12:12:19 +0200 In-Reply-To: <36478fc2-98e7-0ebd-9048-7193fd240f5c@mortis.eu> (Giel van Schijndel's message of "Fri, 4 May 2018 16:30:08 +0200") Message-ID: <87sh7393lo.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) 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] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: 30756 Cc: julien lepiller , 30756@debbugs.gnu.org, Marius Bakke X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) Giel van Schijndel skribis: > On 04-05-18 14:43, Ludovic Court=C3=A8s wrote: >> Hi, >> >> Giel van Schijndel skribis: >> >>> On 09-03-18 13:42, Ludovic Court=C3=A8s wrote: >>>> julien lepiller skribis: >>>> >>>>> I'm trying to build a software that requires gcc>=3D7.2. Unfortunatel= y, >>>>> the process crashes and ends with: >>>>> >>>>> /gnu/store/a4vwdk8r6p6l2mnffz4yaqlr1z6z6w3r-gcc-7.3.0/include/c++/cst= dlib:75:15: >>>>> fatal error: stdlib.h: No such file or directory. >>>> On IRC Marius mentioned this bug report: >>>> >>>> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D70129#c3 >>>> >>>> Note that we use C_INCLUDE_PATH, which is equivalent to =E2=80=98-isys= tem=E2=80=99. >>> This is biting me too for a C++17 project I'm trying to build. >> Marius, do you have a link to the exact change in GCC that caused this >> regression? >> >> I find it hard to believe that a fix would necessarily =E2=80=9Cslow eve= rything >> down=E2=80=9D, as Jakub put it in the report above. >> >> Also it seems clear that in Guix we=E2=80=99ll want a solution that=E2= =80=99s not >> CMake-specific. > > Obviously, I wasn't suggesting that. I was just suggesting a similar > approach. > >> Giel, does the patch below work for you? > > No, just by itself it doesn't. It does add 'CPATH', but doesn't drop > 'C_INCLUDE_PATH' and 'CPLUS_INCLUDE_PATH'. With this added to my package > preprocessing succeeds: > >> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-before 'conf= igure 'fixgcc7 >> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lamb= da _ >> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 (unsetenv "C_INCLUDE_PATH") >> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 (unsetenv "CPLUS_INCLUDE_PATH"))) I pushed the patch as a stop-gap measure in 91a56b4ab5e714e230c0088fb9f5ce0519efe1a0. Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Mon May 07 19:33:33 2018 Received: (at 30756) by debbugs.gnu.org; 7 May 2018 23:33:33 +0000 Received: from localhost ([127.0.0.1]:53307 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fFpdN-0007C8-0p for submit@debbugs.gnu.org; Mon, 07 May 2018 19:33:33 -0400 Received: from world.peace.net ([64.112.178.59]:58586) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fFpdK-0007Bw-Q0 for 30756@debbugs.gnu.org; Mon, 07 May 2018 19:33:31 -0400 Received: from mhw by world.peace.net with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1fFpdD-000625-Qx; Mon, 07 May 2018 19:33:24 -0400 From: Mark H Weaver To: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: bug#30756: gcc7 doesn't find stdlib.h References: <87fu59zagv.fsf@gnu.org> <5212cd7e-5f52-2826-2f65-9b66af4e73ad@mortis.eu> <87d0ybvbep.fsf@gnu.org> <36478fc2-98e7-0ebd-9048-7193fd240f5c@mortis.eu> <87sh7393lo.fsf@gnu.org> Date: Mon, 07 May 2018 19:32:19 -0400 In-Reply-To: <87sh7393lo.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Mon, 07 May 2018 12:12:19 +0200") Message-ID: <87k1sff3ek.fsf@netris.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 30756 Cc: 30756@debbugs.gnu.org, Giel van Schijndel X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi Ludovic, ludo@gnu.org (Ludovic Court=C3=A8s) writes: > I pushed the patch as a stop-gap measure in > 91a56b4ab5e714e230c0088fb9f5ce0519efe1a0. FYI, this did not fix the build failure of 'gjs' on core-updates. After merging 'master' into my private branch based on 'core-updates', including your commit above, I tried reverting the workarounds for 'gjs' that I described earlier in this thread, except that I left 'gcc-7' in the native-inputs. It failed with the same error as before. Looking at the full log, I see that in the 'set-paths' phase, although 'CPATH' is now being set thanks to your commit above, 'C_INCLUDE_PATH' and 'CPLUS_INCLUDE_PATH' are still being set as well. I guess this is because gcc-final (based on gcc-5) is still included as an implicit input for gnu-build-system. I've attached the full build log below. Mark --=-=-= Content-Type: application/x-gzip Content-Disposition: attachment; filename=4aicj1qqdvlvssr14zr8fnmzcbbgf3zk-gjs-1.48.6.drv.gz Content-Transfer-Encoding: base64 Content-Description: Failed build log for gjs on core-updates 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 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Tue May 08 09:21:38 2018 Received: (at 30756) by debbugs.gnu.org; 8 May 2018 13:21:38 +0000 Received: from localhost ([127.0.0.1]:53587 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fG2Yk-0004qs-9y for submit@debbugs.gnu.org; Tue, 08 May 2018 09:21:38 -0400 Received: from eggs.gnu.org ([208.118.235.92]:34739) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fG2Yi-0004qe-RM for 30756@debbugs.gnu.org; Tue, 08 May 2018 09:21:37 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fG2Yc-0005US-Nt for 30756@debbugs.gnu.org; Tue, 08 May 2018 09:21:31 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:45786) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fG2Yc-0005UM-KZ; Tue, 08 May 2018 09:21:30 -0400 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=54472 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fG2Yc-0006h2-8l; Tue, 08 May 2018 09:21:30 -0400 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Mark H Weaver Subject: Re: bug#30756: gcc7 doesn't find stdlib.h References: <87fu59zagv.fsf@gnu.org> <5212cd7e-5f52-2826-2f65-9b66af4e73ad@mortis.eu> <87d0ybvbep.fsf@gnu.org> <36478fc2-98e7-0ebd-9048-7193fd240f5c@mortis.eu> <87sh7393lo.fsf@gnu.org> <87k1sff3ek.fsf@netris.org> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 19 =?utf-8?Q?Flor=C3=A9al?= an 226 de la =?utf-8?Q?R?= =?utf-8?Q?=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Tue, 08 May 2018 15:21:28 +0200 In-Reply-To: <87k1sff3ek.fsf@netris.org> (Mark H. Weaver's message of "Mon, 07 May 2018 19:32:19 -0400") Message-ID: <87h8ni471j.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) 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] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: 30756 Cc: 30756@debbugs.gnu.org, Giel van Schijndel X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) Hi Mark, Mark H Weaver skribis: > ludo@gnu.org (Ludovic Court=C3=A8s) writes: >> I pushed the patch as a stop-gap measure in >> 91a56b4ab5e714e230c0088fb9f5ce0519efe1a0. > > FYI, this did not fix the build failure of 'gjs' on core-updates. After > merging 'master' into my private branch based on 'core-updates', > including your commit above, I tried reverting the workarounds for 'gjs' > that I described earlier in this thread, except that I left 'gcc-7' in > the native-inputs. It failed with the same error as before. > > Looking at the full log, I see that in the 'set-paths' phase, although > 'CPATH' is now being set thanks to your commit above, 'C_INCLUDE_PATH' > and 'CPLUS_INCLUDE_PATH' are still being set as well. I guess this is > because gcc-final (based on gcc-5) is still included as an implicit > input for gnu-build-system. Yes, that=E2=80=99s what Giel reported as well, and Giel ended up having to explicitly unset the *_INCLUDE_PATH variables (which come from the implicit gcc@5 input, indeed.) Thanks for your feedback, Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Fri Aug 24 16:18:12 2018 Received: (at control) by debbugs.gnu.org; 24 Aug 2018 20:18:12 +0000 Received: from localhost ([127.0.0.1]:60006 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ftIX5-0000r9-QR for submit@debbugs.gnu.org; Fri, 24 Aug 2018 16:18:11 -0400 Received: from eggs.gnu.org ([208.118.235.92]:41478) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ftIX4-0000qx-30 for control@debbugs.gnu.org; Fri, 24 Aug 2018 16:18:10 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ftIWx-0000uA-Ux for control@debbugs.gnu.org; Fri, 24 Aug 2018 16:18:04 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:55061) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ftIWx-0000ty-M1 for control@debbugs.gnu.org; Fri, 24 Aug 2018 16:18:03 -0400 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=41910 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1ftIWx-0007Yf-38 for control@debbugs.gnu.org; Fri, 24 Aug 2018 16:18:03 -0400 Date: Fri, 24 Aug 2018 22:18:00 +0200 Message-Id: <87in3zlds7.fsf@gnu.org> To: control@debbugs.gnu.org From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: control message for bug #30756 MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) retitle 30756 GCC >= 6 '-isystem' and C_INCLUDE_PATH behavior changed, breaking #include_next From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 22 12:26:51 2019 Received: (at 30756) by debbugs.gnu.org; 22 Oct 2019 16:26:51 +0000 Received: from localhost ([127.0.0.1]:60380 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iMwzi-0007mx-TS for submit@debbugs.gnu.org; Tue, 22 Oct 2019 12:26:51 -0400 Received: from mail4.protonmail.ch ([185.70.40.27]:25199) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iMwzg-0007mk-IA for 30756@debbugs.gnu.org; Tue, 22 Oct 2019 12:26:49 -0400 Date: Tue, 22 Oct 2019 16:26:32 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=carldong.me; s=protonmail; t=1571761602; bh=0N8RZehEV7Zp/WY4VQ2lTMdLZZf8pFIx4Tfq6/vApsw=; h=Date:To:From:Reply-To:Subject:Feedback-ID:From; b=VaFm1aAh/+IYIISX2njUX1IO6fKrh1+dMKzK8DAn1hjM97UdTrUnCJwKa1efs10db dOmRXb+/AOUH2l4C8k7qHaTq/S1aXWzbp0e9MnIXy5PyjFp/1EEhGKSDM+kqWpCRun qCNMfmFz4yDXJLIWitRXIrJ9myW/x+cl1+bXXB5I= To: "30756@debbugs.gnu.org" <30756@debbugs.gnu.org>, Mark H Weaver From: Carl Dong Subject: GCC >= 6 '-isystem' and C_INCLUDE_PATH behavior changed, breaking #include_next Message-ID: 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: 30756 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Carl Dong Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Hi all, I ran into a similar problem in 37870, whereby the mingw-w64 search path wa= s placed at the top of the search paths, making include_next very grumpy. Mark: I'm curious as to why -idirafter was not a viable solution to the pro= blem, as it seems like the perfect way to add a path to the bottom of the list of search paths. Perhaps there's something more fundamental that I'm missing? Cheers, Carl Dong contact@carldong.me "I fight for the users" From debbugs-submit-bounces@debbugs.gnu.org Sat Dec 14 09:23:56 2019 Received: (at 30756) by debbugs.gnu.org; 14 Dec 2019 14:23:56 +0000 Received: from localhost ([127.0.0.1]:35058 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ig8Kp-0005HS-PM for submit@debbugs.gnu.org; Sat, 14 Dec 2019 09:23:55 -0500 Received: from wildebeest.demon.nl ([212.238.236.112]:42190 helo=gnu.wildebeest.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ig8Ko-0005HJ-6N for 30756@debbugs.gnu.org; Sat, 14 Dec 2019 09:23:54 -0500 Received: from tarox.wildebeest.org (tarox.wildebeest.org [172.31.17.39]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by gnu.wildebeest.org (Postfix) with ESMTPSA id 3EB0030278BD for <30756@debbugs.gnu.org>; Sat, 14 Dec 2019 15:23:52 +0100 (CET) Received: by tarox.wildebeest.org (Postfix, from userid 1000) id 803E840BA656; Sat, 14 Dec 2019 15:23:51 +0100 (CET) Message-ID: <33fde3bf5afcbddcb553c6095846f4f1be5aae93.camel@klomp.org> Subject: Use {C,CPLUS,OBJC}_INCLUDE_PATH instead of CPATH From: Mark Wielaard To: 30756@debbugs.gnu.org Date: Sat, 14 Dec 2019 15:23:51 +0100 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Mailer: Evolution 3.28.5 (3.28.5-5.el7) Mime-Version: 1.0 X-Spam-Flag: NO X-Spam-Status: No, score=-2.9 required=5.0 tests=ALL_TRUSTED,BAYES_00 autolearn=ham autolearn_force=no version=3.4.0 X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on gnu.wildebeest.org X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 30756 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) I am seeing this issue with guix (GNU Guix) f69439dff438e59fbd24b76949b8767360f2cd72 using gcc (GCC) 9.2.0. e.g. $ cat > t.c=20 #include int main() { error (0, 0, "what!?"); return 0; } $ gcc -Wformat -Wformat-nonliteral -Werror -g -O2 -o t t.c In file included from /home/mark/.guix-profile/include/error.h:52, from t.c:1: /home/mark/.guix-profile/include/bits/error.h: In function =E2=80=98error= =E2=80=99: /home/mark/.guix-profile/include/bits/error.h:39:5: error: format not a string literal, argument types not checked [-Werror=3Dformat-nonliteral] 39 | __error_noreturn (__status, __errnum, __format, __va_arg_pack ()); | ^~~~~~~~~~~~~~~~ /home/mark/.guix-profile/include/bits/error.h:41:5: error: format not a string literal, argument types not checked [-Werror=3Dformat-nonliteral] 41 | __error_alias (__status, __errnum, __format, __va_arg_pack ()); | ^~~~~~~~~~~~~ /home/mark/.guix-profile/include/bits/error.h: In function =E2=80=98error_at_line=E2=80=99: /home/mark/.guix-profile/include/bits/error.h:68:10: error: format not a string literal, argument types not checked [-Werror=3Dformat- nonliteral] 68 | __va_arg_pack ()); | ^~~~~~~~~~~~~ /home/mark/.guix-profile/include/bits/error.h:71:7: error: format not a string literal, argument types not checked [-Werror=3Dformat-nonliteral] 71 | __format, __va_arg_pack ()); | ^~~~~~~~ cc1: all warnings being treated as errors And indeed only CPATH is set, but not C_INCLUDE_PATH. unsetting CPATH and setting C_INCLUDE_PATH does resolve the issue. From debbugs-submit-bounces@debbugs.gnu.org Fri Jan 17 10:28:08 2020 Received: (at 30756) by debbugs.gnu.org; 17 Jan 2020 15:28:08 +0000 Received: from localhost ([127.0.0.1]:39947 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1isTXc-0007Oj-6I for submit@debbugs.gnu.org; Fri, 17 Jan 2020 10:28:08 -0500 Received: from mail-yw1-f47.google.com ([209.85.161.47]:44276) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1isOmi-0003y1-2k for 30756@debbugs.gnu.org; Fri, 17 Jan 2020 05:23:24 -0500 Received: by mail-yw1-f47.google.com with SMTP id t141so14132166ywc.11 for <30756@debbugs.gnu.org>; Fri, 17 Jan 2020 02:23:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:reply-to:from:date:message-id:subject:to; bh=0tEcbEmubTZCkYcnJVbWvo5+lwOt7A+fzgENQb7yRZ4=; b=c52EaDIhsl/Y2JZfl+CI9zmiFrvQrHKMJgBVPxLXbVme7EN4UHsiogG0KcR1a6gdgt Pq9uq0D9o+HUfCKEJiqcpixNscCTykXj0cx+iyRrZHIH1yFYrA4pFCymqJvbjq2jKDhh DKuVTARVsemJwX0D1c42ShigTnzGTpXSdoUEGAX/gtDkdo+Wmmi+h+PWUbeADkMCBsS0 OfhlLtB4soo7prX7SpEZL6YzgldgTvoitVJjDIDgp21EKIiZVX+HWXaMpfqVetM32Emb h5a4HbwyaniIHTm6qtGGh34wa1pt3iTdulq4htL3i8okpYqDiFVqnc3VcfA+zA/0/6Y4 8knw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:reply-to:from:date:message-id :subject:to; bh=0tEcbEmubTZCkYcnJVbWvo5+lwOt7A+fzgENQb7yRZ4=; b=GvTE0rjjC0hLBqI3rJOY7sDin8VYWvz6FAVvYUfJIWKwKAm4YFkyxdUfIVPbPyOc1r w9qGXttThu9OXNSzGFaDMki5Ny8Kg8gVdgFH0qFbKog8vZKg8GoNVz0piFUcvlcpp4Jd PdZ8TKBV5sywDrZZGuzkOLrv3d5VrIv3A5zKZ2my1I6st9k2ZXbQY+tJoO6kbYp4sAKK 8ZjPsmn+oiP6iEGqd5P7yhXTNqqPIH8NB2ad2nkiZHmoaQw487iUCQahjj0oCGpe6CoD EeFK1LAGOwNy1O3hcgj5NNumkVZRc8z1wVQRKI3RY8hu0AvC/Xark2Ckn77Tvt6+Sua8 IbZg== X-Gm-Message-State: APjAAAUY8j20qNaN59LYSytpYPNu7a06reLo356coP49RWWwcZXfiWBP ovXe9zP/Z/xFbrJKXbyqrVFmBpdhnB983TCagDDD2Q== X-Google-Smtp-Source: APXvYqyZBtMoni2r7GzgPQ2TPec0yk54rJkoPUJ/lGvBG6gxF8OzDDr1dusA/ZKJyyqTKP+53J7QbqN9QLD7Gway/Bk= X-Received: by 2002:a0d:c243:: with SMTP id e64mr30347293ywd.12.1579256598415; Fri, 17 Jan 2020 02:23:18 -0800 (PST) MIME-Version: 1.0 From: Reza Housseini Date: Fri, 17 Jan 2020 11:23:07 +0100 Message-ID: Subject: GCC >= 6 '-isystem' and C_INCLUDE_PATH behavior changed, breaking To: 30756@debbugs.gnu.org Content-Type: multipart/alternative; boundary="0000000000008ecec5059c53543c" X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 30756 X-Mailman-Approved-At: Fri, 17 Jan 2020 10:28:07 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: reza.housseini@gmx.ch Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --0000000000008ecec5059c53543c Content-Type: text/plain; charset="UTF-8" So what is the workaround for this bug when one wants to use gcc >= 6.0.0 with a cmake build system? --0000000000008ecec5059c53543c Content-Type: text/html; charset="UTF-8"
So what is the workaround for this bug when one wants to use gcc >= 6.0.0 with a cmake build system?
--0000000000008ecec5059c53543c-- From debbugs-submit-bounces@debbugs.gnu.org Sun Jan 19 16:17:03 2020 Received: (at 30756) by debbugs.gnu.org; 19 Jan 2020 21:17:03 +0000 Received: from localhost ([127.0.0.1]:43966 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1itHwN-0004PY-BP for submit@debbugs.gnu.org; Sun, 19 Jan 2020 16:17:03 -0500 Received: from eggs.gnu.org ([209.51.188.92]:35894) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1itHwK-0004Oy-Fh for 30756@debbugs.gnu.org; Sun, 19 Jan 2020 16:17:01 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:39805) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1itHwF-0001Vj-7a; Sun, 19 Jan 2020 16:16:55 -0500 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=33334 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1itHwE-0000W6-MA; Sun, 19 Jan 2020 16:16:55 -0500 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= To: Reza Housseini Subject: Re: bug#30756: GCC >= 6 '-isystem' and C_INCLUDE_PATH behavior changed, breaking References: X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 30 =?utf-8?Q?Niv=C3=B4se?= an 228 de la =?utf-8?Q?R?= =?utf-8?Q?=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Sun, 19 Jan 2020 22:16:52 +0100 In-Reply-To: (Reza Housseini's message of "Fri, 17 Jan 2020 11:23:07 +0100") Message-ID: <87y2u3qh8b.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) 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] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 30756 Cc: reza.housseini@gmx.ch, 30756@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Hi, Reza Housseini skribis: > So what is the workaround for this bug when one wants to use gcc >=3D 6.0= .0 > with a cmake build system? Guix has been using GCC 7.x as its default compiler for some time, and everything works well, CMake or not. However, we also switched to using =E2=80=98CPATH=E2=80=99 instead of =E2=80=98C_INCLUDE_PATH=E2=80=99 to work= around this bug. HTH! Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Sun Jan 19 22:26:07 2020 Received: (at 30756) by debbugs.gnu.org; 20 Jan 2020 03:26:07 +0000 Received: from localhost ([127.0.0.1]:44246 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1itNhW-00075L-Lh for submit@debbugs.gnu.org; Sun, 19 Jan 2020 22:26:07 -0500 Received: from mail-qk1-f195.google.com ([209.85.222.195]:39099) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1itNhT-00074a-MY for 30756@debbugs.gnu.org; Sun, 19 Jan 2020 22:26:06 -0500 Received: by mail-qk1-f195.google.com with SMTP id c16so28826350qko.6 for <30756@debbugs.gnu.org>; Sun, 19 Jan 2020 19:26:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version:content-transfer-encoding; bh=6rhJzqZyBtlyJpY8SILTE6H1NVVf+Ae3aoMBAbKPdG8=; b=tnznzCYmwhvqaz5sLxerFt7l0kdgTkwlMuhOq5aYOJ+fyVZxRYKzvPFP7kLJQLnqgb 9cf0q8RmfgFNmYL+plp4cAbYF6uEVaNHZqWEqgvQWZjbwqOW+ss1+VnJZ4qxAZvopdii 98k+4Gm/6h/4dBzgZHnw9aH+ukEyouQ/wUFpXviJ+RReJ29FlVUdT7RQfT19pf6FeIbL TUst9kNyYKesJ0+7+uREu5Bv4JkzhbxyxruXw0hWNE2dfClM+kXSv8dU5RYPaQ9nECzM mCAVfOKTtaoA2e8aZCeyUEVaCtOGr40UX9DNeaxXYEys/e6RqVuBLiy4Cmhffz6hS+Ly Or5g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version:content-transfer-encoding; bh=6rhJzqZyBtlyJpY8SILTE6H1NVVf+Ae3aoMBAbKPdG8=; b=VkgIvDyzoXa4Qr9VrJEAevf9XHZXIHouDd0SjPUBrl2gagHUpyxvv0KQNCyhmctpod vfM2B4SbwMs3PirbWABnLf51RoDiPyCxYAlVj89P06Za3IjelQpcTw0f27MEYUPqEcPm w9SbJHisNJ8e8bGDD5Ji0xud6BNmx61nwgaFIqTjjUKj8zUlEXpzvX8pBKPZu+RtLOXp iEhiuf/ncVIz6s1hpHkAxeWAt2+1gHC+9ZjZkZx+RNX7KJ2au7hpL5sDESM806r0vZOs mzBdnkloFDiBL0CSmTXDXXqh1kLX6cVH3TOC6TZlKo7+pCkKWj1CFicoP4jZdzp4YFQD jaPg== X-Gm-Message-State: APjAAAVQDB+TcfCd+3k9DnSgzZB0mXbxAmdKK3+fXGz14het7N6eXqUW fpu7RVqIIJP5BwNK9I0lyD2LYGjb X-Google-Smtp-Source: APXvYqzC/ek3vflKKm7Kj7wbk1IyxhTlJhZdXy+muyK6+B20X5+p1eTteUkZ6xcJzr2HHoMtdQJPDQ== X-Received: by 2002:a37:a18b:: with SMTP id k133mr45333768qke.83.1579490758110; Sun, 19 Jan 2020 19:25:58 -0800 (PST) Received: from apteryx (dsl-10-141-179.b2b2c.ca. [72.10.141.179]) by smtp.gmail.com with ESMTPSA id t38sm17196197qta.78.2020.01.19.19.25.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 19 Jan 2020 19:25:57 -0800 (PST) From: Maxim Cournoyer To: Ludovic =?utf-8?Q?Court=C3=A8s?= Subject: Re: bug#30756: GCC >= 6 '-isystem' and C_INCLUDE_PATH behavior changed, breaking References: <87y2u3qh8b.fsf@gnu.org> Date: Sun, 19 Jan 2020 22:25:39 -0500 In-Reply-To: <87y2u3qh8b.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Sun, 19 Jan 2020 22:16:52 +0100") Message-ID: <87r1zulsgc.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 30756 Cc: reza.housseini@gmx.ch, 30756@debbugs.gnu.org, Reza Housseini X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hello, Ludovic Court=C3=A8s writes: > Hi, > > Reza Housseini skribis: > >> So what is the workaround for this bug when one wants to use gcc >=3D 6.= 0.0 >> with a cmake build system? > > Guix has been using GCC 7.x as its default compiler for some time, and > everything works well, CMake or not. However, we also switched to using > =E2=80=98CPATH=E2=80=99 instead of =E2=80=98C_INCLUDE_PATH=E2=80=99 to wo= rk around this bug. > > HTH! > > Ludo=E2=80=99. As has been mentioned by Giel van Schijndel earlier in this bug report, using CPATH causes warnings to be emitted for core libraries such as glibc since the headers found in CPATH are not (rightfully) treated as system headers (and thus not muted by GCC). That has bitten me here, where I was mislead to think there was a build issue with the latest Inkscape: https://gitlab.com/inkscape/inkscape/issues/807. Many packages will end up having to disable warnings to cope with this behavior. It'd be nice to find a correct solution, but it seems I can't even make the build system of Inkscape work after switching from CPATH to CPLUS_INCLUDE_PATH and stripping it from any glibc/gcc include directories (I don't get the "stdlib.h: No such file or directory." error anymore, but I now get: "/gnu/store/zw5f5g5aqlxam3imaylfla0i98nkridf-glibc-2.30/include/bits/errno.= h:26:11: fatal error: linux/errno.h: No such file or directory" instead, which I don't understand). I also tried moving the glibc include directory to the end of CPLUS_INCLUDE_PATH and it would still wouldn't be happy. Hmmph! Maxim From debbugs-submit-bounces@debbugs.gnu.org Mon Jan 20 03:56:40 2020 Received: (at 30756) by debbugs.gnu.org; 20 Jan 2020 08:56:40 +0000 Received: from localhost ([127.0.0.1]:44329 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1itSrM-0006bs-4l for submit@debbugs.gnu.org; Mon, 20 Jan 2020 03:56:40 -0500 Received: from eggs.gnu.org ([209.51.188.92]:43100) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1itSrG-0006bb-Fh for 30756@debbugs.gnu.org; Mon, 20 Jan 2020 03:56:34 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:48020) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1itSrA-0004qB-Tr; Mon, 20 Jan 2020 03:56:24 -0500 Received: from [2001:660:6102:320:e120:2c8f:8909:cdfe] (port=54496 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1itSrA-0002Gz-G6; Mon, 20 Jan 2020 03:56:24 -0500 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= To: Maxim Cournoyer Subject: Re: bug#30756: GCC >= 6 '-isystem' and C_INCLUDE_PATH behavior changed, breaking References: <87y2u3qh8b.fsf@gnu.org> <87r1zulsgc.fsf@gmail.com> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 1 =?utf-8?Q?Pluvi=C3=B4se?= an 228 de la =?utf-8?Q?R?= =?utf-8?Q?=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Mon, 20 Jan 2020 09:56:23 +0100 In-Reply-To: <87r1zulsgc.fsf@gmail.com> (Maxim Cournoyer's message of "Sun, 19 Jan 2020 22:25:39 -0500") Message-ID: <87sgkaik08.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) 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] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 30756 Cc: reza.housseini@gmx.ch, 30756@debbugs.gnu.org, Reza Housseini X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Hi, Maxim Cournoyer skribis: > It'd be nice to find a correct solution, but it seems I can't even make > the build system of Inkscape work after switching from CPATH to > CPLUS_INCLUDE_PATH and stripping it from any glibc/gcc include > directories (I don't get the "stdlib.h: No such file or directory." > error anymore, but I now get: > "/gnu/store/zw5f5g5aqlxam3imaylfla0i98nkridf-glibc-2.30/include/bits/errn= o.h:26:11: > fatal error: linux/errno.h: No such file or directory" instead, which I > don't understand). > > I also tried moving the glibc include directory to the end of > CPLUS_INCLUDE_PATH and it would still wouldn't be happy. Hmmph! Oh, really? I think that, as Mark H Weaver mentioned in this thread, if we make sure that glibc comes next-to-last (before Linux-libre headers) and appears only once in the list, it should work. Can you confirm? Thanks, Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Tue Jan 21 22:05:05 2020 Received: (at 30756) by debbugs.gnu.org; 22 Jan 2020 03:05:05 +0000 Received: from localhost ([127.0.0.1]:48824 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iu6KG-0006gF-OE for submit@debbugs.gnu.org; Tue, 21 Jan 2020 22:05:05 -0500 Received: from mail-qt1-f193.google.com ([209.85.160.193]:33566) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iu6KF-0006fL-DN for 30756@debbugs.gnu.org; Tue, 21 Jan 2020 22:05:03 -0500 Received: by mail-qt1-f193.google.com with SMTP id d5so4553407qto.0 for <30756@debbugs.gnu.org>; Tue, 21 Jan 2020 19:05:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version:content-transfer-encoding; bh=dpVjuKEn5ewL38QZZ9wQjad74U0m2/a0PwcUgE2PykM=; b=WgCfacejl15ggtDdAL9DiCeP0ekCsKkC2isFFO83d786d9kPTTVDzmRRWldMlps8M9 tpl0Lwk5rw/3GcrXqis+DNPszK/RgJZcUbiBSuYio8jYqSs7i7VA3XpE45aLIefeNk4S 1mCwKV7bAeGVUYNQF0J/4Nn0z4SIqUIP+E/z5I6yLxn+WLkv2fwJp1ttIBfvGsgqetX5 +xqTP1AH4Vjvru236gJGV/+2ko6IJRGGm3+jLMRbff+i0Hhl5QXC+QMlkq5XAY+c6rgK sXN26tE2HzUaHm34RBLPMSmKzJgjC0tYkPV22UXmRhp7dt2+BeFYJ7lDeNeO/26wWrHW eNiw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version:content-transfer-encoding; bh=dpVjuKEn5ewL38QZZ9wQjad74U0m2/a0PwcUgE2PykM=; b=cHclYKuldto9aGx90aoNdllymb1X6UHduvuTGd9olJSfw+b3PFXPrmqH0Xzc3XPkye 1Dj2sj4EGGKGO2i4NyzsN0vIiI5UxUUnhzIdgzMmdtN4WnF3M8AEPXvCP15XXn95ep9z /8Igp7801SR2Dcxzss4HuQOrgD8nrzlu/0JOifUcBT8fuX/38uTfUQlWV3o/RwzEWFF6 GD8wIiacVgIwB5CdXgZNUq+GWa6QUAKk6fE05Xuobm4QeLD35GOI0hzRs0A9CKIJwKEF VBZTz2ZLWro9FBOXu2nJJWcBzfeBfnT24/zBEoLrvOcUzpMPXub3He7p+DxhGrtmjfMw rW0A== X-Gm-Message-State: APjAAAUTy+4kMteaaXdZcgC2Uv8TmzV2X8WdNA8YjlxURk5RhEoQ0410 5wj/PQ4NVwwjiRWPfD28dkA= X-Google-Smtp-Source: APXvYqzoJ24j4IiT14CDsXRj58qtV0qtZZ2jkQXRZNxqGXhD909D64h1dGHS2+A2KP+cRsJyyQaTGA== X-Received: by 2002:aed:3c7b:: with SMTP id u56mr8106085qte.82.1579662297705; Tue, 21 Jan 2020 19:04:57 -0800 (PST) Received: from apteryx (dsl-236-123-184.b2b2c.ca. [207.236.123.184]) by smtp.gmail.com with ESMTPSA id i16sm18192886qkh.120.2020.01.21.19.04.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Jan 2020 19:04:57 -0800 (PST) From: Maxim Cournoyer To: Ludovic =?utf-8?Q?Court=C3=A8s?= Subject: Re: bug#30756: GCC >= 6 '-isystem' and C_INCLUDE_PATH behavior changed, breaking References: <87y2u3qh8b.fsf@gnu.org> <87r1zulsgc.fsf@gmail.com> <87sgkaik08.fsf@gnu.org> Date: Tue, 21 Jan 2020 22:04:36 -0500 In-Reply-To: <87sgkaik08.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Mon, 20 Jan 2020 09:56:23 +0100") Message-ID: <878sm0kx8b.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 30756 Cc: reza.housseini@gmx.ch, 30756@debbugs.gnu.org, Reza Housseini X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hello, Ludovic Court=C3=A8s writes: > Hi, > > Maxim Cournoyer skribis: > >> It'd be nice to find a correct solution, but it seems I can't even make >> the build system of Inkscape work after switching from CPATH to >> CPLUS_INCLUDE_PATH and stripping it from any glibc/gcc include >> directories (I don't get the "stdlib.h: No such file or directory." >> error anymore, but I now get: >> "/gnu/store/zw5f5g5aqlxam3imaylfla0i98nkridf-glibc-2.30/include/bits/err= no.h:26:11: >> fatal error: linux/errno.h: No such file or directory" instead, which I >> don't understand). >> >> I also tried moving the glibc include directory to the end of >> CPLUS_INCLUDE_PATH and it would still wouldn't be happy. Hmmph! > > Oh, really? I think that, as Mark H Weaver mentioned in this thread, if > we make sure that glibc comes next-to-last (before Linux-libre headers) > and appears only once in the list, it should work. > > Can you confirm? OK, so the errors I was getting about linux/errno.h missing was caused by my omission to *also* set C_INCLUDE_PATH to the content of CPATH, because Inkscape goes on building some bundled libraries which are C and not C++. After this was understood, Inkscape now builds successfully by simply taking out glibc from the inputs. Keeping GCC headers in seems OK, although I reckon if we fix this at the core (by extending what can be done which search path specifications) we should take it out as it could potentially cause problems: GCC keeps a reference to its own standard include directories, as shown by the command 'echo | ~a/bin/c++ -E -Wp,-v -'). On core-updates, this command, when ran in the following phase: --8<---------------cut here---------------start------------->8--- (add-before 'set-paths 'show-g++-internal-paths (lambda* (#:key inputs #:allow-other-keys) (system (format #f "echo | ~a/bin/c++ -E -Wp,-v -" (assoc-ref inputs "g= cc"))) #t)) --8<---------------cut here---------------end--------------->8--- gives: --8<---------------cut here---------------start------------->8--- starting phase `show-g++-internal-paths' ignoring nonexistent directory "/no-gcc-local-prefix/include" ignoring nonexistent directory "/gnu/store/bhn2mqpnxabmllh1kclrmkqp8mhhvjb0= -gcc-7.5.0-lib/lib/gcc/x86_64-unknown-linux-gnu/7.5.0/../../../../../../../= x86_64-unknown-linux-gnu/include" #include "..." search starts here: #include <...> search starts here: /gnu/store/bhn2mqpnxabmllh1kclrmkqp8mhhvjb0-gcc-7.5.0-lib/lib/gcc/x86_64-u= nknown-linux-gnu/7.5.0/include /gnu/store/bhn2mqpnxabmllh1kclrmkqp8mhhvjb0-gcc-7.5.0-lib/lib/gcc/x86_64-u= nknown-linux-gnu/7.5.0/include-fixed /gnu/store/zw5f5g5aqlxam3imaylfla0i98nkridf-glibc-2.30/include End of search list. --8<---------------cut here---------------end--------------->8--- which lists references to GCC itself as well as to glibc. The use of -idirafter is to append a headers directory after *everything* else, including the compiler's own standard include paths. I think that to -idirafter glibc shouldn't have any effect, since glibc headers are already in the standard include path, and IIUC GCC will scan a header directory only once (the first time it encounters it). The GCC manual lists the include directories order as (c.f. the node 'Options for Directory Search' of the GCC reference manual): 1. For the quote form of the include directive, the directory of the current file is searched first. 2. For the quote form of the include directive, the directories specified by '-iquote' options are searched in left-to-right order, as they appear on the command line. 3. Directories specified with '-I' options are scanned in left-to-right order. 4. Directories specified with '-isystem' options are scanned in left-to-right order. 5. Standard system directories are scanned. 6. Directories specified with '-idirafter' options are scanned in left-to-right order. It'd be very cool to embed arbitrary logic such as sorting, filtering, or whatever else we need doing directly in a search path specification :-). Do you thing this could be done? Perhaps Gexps could be useful for this? Maxim From debbugs-submit-bounces@debbugs.gnu.org Thu Jan 23 15:46:06 2020 Received: (at 30756) by debbugs.gnu.org; 23 Jan 2020 20:46:07 +0000 Received: from localhost ([127.0.0.1]:53233 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iujMc-0002TB-HH for submit@debbugs.gnu.org; Thu, 23 Jan 2020 15:46:06 -0500 Received: from eggs.gnu.org ([209.51.188.92]:40591) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iujMY-0002SN-DO for 30756@debbugs.gnu.org; Thu, 23 Jan 2020 15:46:04 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:37831) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1iujMS-0004vs-QM; Thu, 23 Jan 2020 15:45:56 -0500 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=59206 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1iujMS-0001cS-9s; Thu, 23 Jan 2020 15:45:56 -0500 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= To: Maxim Cournoyer Subject: Re: bug#30756: GCC >= 6 '-isystem' and C_INCLUDE_PATH behavior changed, breaking References: <87y2u3qh8b.fsf@gnu.org> <87r1zulsgc.fsf@gmail.com> <87sgkaik08.fsf@gnu.org> <878sm0kx8b.fsf@gmail.com> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 4 =?utf-8?Q?Pluvi=C3=B4se?= an 228 de la =?utf-8?Q?R?= =?utf-8?Q?=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Thu, 23 Jan 2020 21:45:54 +0100 In-Reply-To: <878sm0kx8b.fsf@gmail.com> (Maxim Cournoyer's message of "Tue, 21 Jan 2020 22:04:36 -0500") Message-ID: <87wo9hnbp9.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) 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] X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 30756 Cc: reza.housseini@gmx.ch, 30756@debbugs.gnu.org, Reza Housseini X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Hello! Thanks for investigating. Maxim Cournoyer skribis: > It'd be very cool to embed arbitrary logic such as sorting, filtering, > or whatever else we need doing directly in a search path specification > :-). Do you thing this could be done? Perhaps Gexps could be useful > for this? No, that sounds pretty unreasonable to me. :-) However, I=E2=80=99m sure we should be able to sort things appropriately in guix/build-system/gnu.scm and/or in =E2=80=98%final-inputs=E2=80=99, no? =E2=80=98%final-inputs=E2=80=99 order actually looks good: --8<---------------cut here---------------start------------->8--- scheme@(gnu packages commencement)> (map car %final-inputs) $2 =3D ("tar" "gzip" "bzip2" "xz" "file" "diffutils" "patch" "findutils" "g= awk" "sed" "grep" "coreutils" "make" "bash" "ld-wrapper" "binutils" "gcc" "= libc" "libc:static" "locales") --8<---------------cut here---------------end--------------->8--- But then it breaks when we add everything: --8<---------------cut here---------------start------------->8--- scheme@(guile-user)> (map car (bag-transitive-inputs (package->bag coreutil= s))) $5 =3D ("source" "perl" "tar" "gzip" "bzip2" "xz" "file" "diffutils" "patch= " "findutils" "gawk" "sed" "grep" "coreutils" "make" "bash" "ld-wrapper" "b= inutils" "gcc" "libc" "libc:static" "locales" "acl" "gmp" "libcap" "kernel-= headers") --8<---------------cut here---------------end--------------->8--- Here acl, gmp, and libcap should be before libc and all (=E2=80=98bag-transitive-inputs=E2=80=99 is used by =E2=80=98bag->derivatio= n=E2=80=99.) So I think we should arrange to have the right order in =E2=80=98bag->derivation=E2=80=99. WDYT? Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Mon Feb 03 04:01:11 2020 Received: (at 30756) by debbugs.gnu.org; 3 Feb 2020 09:01:11 +0000 Received: from localhost ([127.0.0.1]:40865 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iyXbO-0004ww-VA for submit@debbugs.gnu.org; Mon, 03 Feb 2020 04:01:11 -0500 Received: from eggs.gnu.org ([209.51.188.92]:35207) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iyXbN-0004wM-Ht for 30756@debbugs.gnu.org; Mon, 03 Feb 2020 04:01:06 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:34960) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1iyXbI-0001LL-1F; Mon, 03 Feb 2020 04:01:00 -0500 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=55934 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1iyXb2-0002DK-RI; Mon, 03 Feb 2020 04:00:47 -0500 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= To: Maxim Cournoyer Subject: Re: bug#30756: GCC >= 6 '-isystem' and C_INCLUDE_PATH behavior changed, breaking References: <87y2u3qh8b.fsf@gnu.org> <87r1zulsgc.fsf@gmail.com> <87sgkaik08.fsf@gnu.org> <878sm0kx8b.fsf@gmail.com> <87wo9hnbp9.fsf@gnu.org> Date: Mon, 03 Feb 2020 10:00:42 +0100 In-Reply-To: <87wo9hnbp9.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Thu, 23 Jan 2020 21:45:54 +0100") Message-ID: <87blqg2gg5.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 30756 Cc: reza.housseini@gmx.ch, 30756@debbugs.gnu.org, Marius Bakke , Reza Housseini X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hello comrades! (+Cc: Marius.) Ludovic Court=C3=A8s skribis: > =E2=80=98%final-inputs=E2=80=99 order actually looks good: > > scheme@(gnu packages commencement)> (map car %final-inputs) > $2 =3D ("tar" "gzip" "bzip2" "xz" "file" "diffutils" "patch" "findutils" = "gawk" "sed" "grep" "coreutils" "make" "bash" "ld-wrapper" "binutils" "gcc"= "libc" "libc:static" "locales") > > > But then it breaks when we add everything: > > scheme@(guile-user)> (map car (bag-transitive-inputs (package->bag coreut= ils))) > $5 =3D ("source" "perl" "tar" "gzip" "bzip2" "xz" "file" "diffutils" "pat= ch" "findutils" "gawk" "sed" "grep" "coreutils" "make" "bash" "ld-wrapper" = "binutils" "gcc" "libc" "libc:static" "locales" "acl" "gmp" "libcap" "kerne= l-headers") > > Here acl, gmp, and libcap should be before libc and all > (=E2=80=98bag-transitive-inputs=E2=80=99 is used by =E2=80=98bag->derivat= ion=E2=80=99.) > > So I think we should arrange to have the right order in > =E2=80=98bag->derivation=E2=80=99. The attached patch does three things: 1. Fix the order of inputs computed by (@@ (guix build-system gnu) lower) so that implicit inputs come last. In particular, this ensures that libc headers and kernel headers come last. All user libraries passed as =E2=80=98inputs=E2=80=99 appear before libc, so th= ey can #include_next a libc header. 2. Add =E2=80=9Cinclude/c++=E2=80=9D to the list of directories of =E2=80=98CPLUS_INCLUDE_PATH=E2=80=99. This is a not-so-elegant hack; = the main purpose here is to make sure the gcc/libstdc++ include directory appears twice in the search path, so that this chain of include works as expected: (GCC): #include_next =E2=86=92 (GCC): #include_next =E2=86=92 (libc) 3. Switch back to =E2=80=98C_INCLUDE_PATH=E2=80=99 & co. instead of =E2= =80=98CPATH=E2=80=99 (yay!). I=E2=80=99ve tested it with =E2=80=9Cguix build coreutils=E2=80=9D, which i= nvolved building GMP with its C++ bindings, making it a rather good test. However, more testing is needed. There=E2=80=99s potential for breakage in all the places where we=E2=80=99v= e manually fiddled with C{,PLUS}_INCLUDE_PATH. I guess we=E2=80=99ll have to review a= ll of them. Since it fixes a rather serious issue for C/C++ developers (they=E2=80=99d rather not see warnings about system headers) but also for packaging (=E2=80=98-Werror=E2=80=99 breaks for warnings that shouldn=E2=80=99t be th= ere in the first place), I=E2=80=99d like to propose merging it in this =E2=80=98core-update= s=E2=80=99 cycle. But let=E2=80=99s face it: it=E2=80=99ll keep us busy for a bit. :-) Thoughts? Ludo=E2=80=99. --=-=-= Content-Type: text/x-patch; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 851bb02163..473d6b8345 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright =C2=A9 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovi= c Court=C3=A8s +;;; Copyright =C2=A9 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 = Ludovic Court=C3=A8s ;;; Copyright =C2=A9 2014 Andreas Enge ;;; Copyright =C2=A9 2012 Nikita Karetnikov ;;; Copyright =C2=A9 2014, 2015, 2017 Mark H Weaver @@ -2303,15 +2303,6 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~= a/~a \"$@\"~%" char-set:letter) ,(package-name lib))) (list gmp-6.0 mpfr mpc)) - #t))) - (add-before 'configure 'treat-glibc-as-system-header - (lambda* (#:key inputs #:allow-other-keys) - (let ((libc (assoc-ref inputs "libc"))) - ;; Make sure Glibc is treated as a "system header" so - ;; #include_next does the right thing. - (for-each (lambda (var) - (setenv var (string-append libc "/includ= e"))) - '("C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH")) #t)))))))) =20 ;; This time we want Texinfo, so we get the manual. Add diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index 40cc9ed631..4c4b63dbd1 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright =C2=A9 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovi= c Court=C3=A8s +;;; Copyright =C2=A9 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 = Ludovic Court=C3=A8s ;;; Copyright =C2=A9 2014, 2015, 2018 Mark H Weaver ;;; Copyright =C2=A9 2014, 2015, 2016, 2017, 2019 Ricardo Wurmus ;;; Copyright =C2=A9 2015 Andreas Enge @@ -340,7 +340,9 @@ where the OS part is overloaded to denote a specific AB= I---into GCC (files '("include"))) (search-path-specification (variable "CPLUS_INCLUDE_PATH") - (files '("include"))) + ;; Add 'include/c++' here so that 's "#include_next + ;; " finds GCC's , not libc's. + (files '("include/c++" "include"))) (search-path-specification (variable "LIBRARY_PATH") (files '("lib" "lib64"))))) @@ -476,17 +478,7 @@ Go. It also includes runtime support libraries for th= ese languages.") "gcc-5.0-libvtv-runpath.patch")))) (inputs `(("isl" ,isl) - ,@(package-inputs gcc-4.7))) - - (native-search-paths - ;; We have to use 'CPATH' for GCC > 5, not 'C_INCLUDE_PATH' & co., du= e to - ;; . - (list (search-path-specification - (variable "CPATH") - (files '("include"))) - (search-path-specification - (variable "LIBRARY_PATH") - (files '("lib" "lib64"))))))) + ,@(package-inputs gcc-4.7))))) =20 (define-public gcc-7 (package diff --git a/guix/build-system/gnu.scm b/guix/build-system/gnu.scm index 3cc89f8852..6e66f5ffce 100644 --- a/guix/build-system/gnu.scm +++ b/guix/build-system/gnu.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright =C2=A9 2012, 2013, 2014, 2015, 2016, 2017, 2019 Ludovic Cour= t=C3=A8s +;;; Copyright =C2=A9 2012, 2013, 2014, 2015, 2016, 2017, 2019, 2020 Ludovi= c Court=C3=A8s ;;; ;;; This file is part of GNU Guix. ;;; @@ -296,13 +296,19 @@ standard packages used as implicit inputs of the GNU = build system." `(("source" ,source)) '()) ,@native-inputs + + ;; When not cross-compiling, ensure implicit inputs co= me + ;; last. That way, libc headers come last, which allo= ws + ;; #include_next to work correctly; see + ;; . + ,@(if target '() inputs) ,@(if (and target implicit-cross-inputs?) (standard-cross-packages target 'host) '()) ,@(if implicit-inputs? (standard-packages) '()))) - (host-inputs inputs) + (host-inputs (if target inputs '())) =20 ;; The cross-libc is really a target package, but for bootstrapping ;; reasons, we can't put it in 'host-inputs'. Namely, 'cross-gcc' is a --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Mon Feb 03 16:04:06 2020 Received: (at 30756) by debbugs.gnu.org; 3 Feb 2020 21:04:06 +0000 Received: from localhost ([127.0.0.1]:42269 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iyit3-0001Ma-Ms for submit@debbugs.gnu.org; Mon, 03 Feb 2020 16:04:05 -0500 Received: from wout3-smtp.messagingengine.com ([64.147.123.19]:42529) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iyit1-0001M3-JP for 30756@debbugs.gnu.org; Mon, 03 Feb 2020 16:04:04 -0500 Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.west.internal (Postfix) with ESMTP id B2032851; Mon, 3 Feb 2020 16:03:57 -0500 (EST) Received: from mailfrontend2 ([10.202.2.163]) by compute5.internal (MEProxy); Mon, 03 Feb 2020 16:03:58 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h= from:to:cc:subject:in-reply-to:references:date:message-id :mime-version:content-type; s=fm2; bh=gCNkHMg/WYiKFVl+yLT3ZZBV6Y LO99O9Roy+s4jSheM=; b=LGBv8kyeGljHqs+4YPrg1AgLORqhV9bgTraGjAUQDo 82IMCQgDq9cqa7MlZWs2gbt1syRJKD2NyYq5QG2q9BOpbIM5DIE4+YXRguVYxDK1 RHlQbSG6sgZZuwfJN/teyod26IW3pf8ui1uK0g8se/LkSJBfV6OqpaSdKJU84v+J KyQhB/N9E4N+i4nM3gXwMCOsE+Aa0kycqCzckEWDfFHn/7/agjLgjvczYqusCcmF zRYcFIIEnhEj0lgZZoGY6S8mBCjMlnmJtDaXA3w4zBrSJf99cNiMb7Hfpbbvl7EL 4zpBM7LDEzRZi65jdsDvg85YHytvGQckzNFS6396Mv3g== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; bh=gCNkHM g/WYiKFVl+yLT3ZZBV6YLO99O9Roy+s4jSheM=; b=o6RJwQSvv82XpmGW2PRkcB +CMXrQTIlX6V7gyVBR/Mz/qp211dE5Z4lcERwDxxqSk+HyCi2byEe01MNpWdcUMQ 7kOCydMJfcKL2tmFpiXHLzR/V/Hn+iOck0nv9MWoOZWN08pMuSoPgCUPvYSEdyjY hxFgv0cLN0olr/9PegjHRoX9L9m9wXMnRpWvr+upJGqY/UD66iM6Bz1Eq3MQjuU3 qrPBE5VRLHhTGOajJP2jXqES1QWQWTcSz9imA0P6jFOi5q8s1XwkL5yxEOLH3ygC YE+XVJNfPWeOaUjTj9Eu1XwgOKQCdTHeNNYDVoj7LK9J/9MJCMAeDVUVArn89lCA == X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedugedrgeejgddugeduucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephffvufgjfhgffffkgggtsehgtderredtreejnecuhfhrohhmpeforghrihhu shcuuegrkhhkvgcuoehmsggrkhhkvgesfhgrshhtmhgrihhlrdgtohhmqeenucfkphepke egrddvtddvrdeiledrvdehfeenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhep mhgrihhlfhhrohhmpehmsggrkhhkvgesfhgrshhtmhgrihhlrdgtohhm X-ME-Proxy: Received: from localhost (ti0006q161-3035.bb.online.no [84.202.69.253]) by mail.messagingengine.com (Postfix) with ESMTPA id B74E73060272; Mon, 3 Feb 2020 16:03:56 -0500 (EST) From: Marius Bakke To: Ludovic =?utf-8?Q?Court=C3=A8s?= , Maxim Cournoyer Subject: Re: bug#30756: GCC >= 6 '-isystem' and C_INCLUDE_PATH behavior changed, breaking In-Reply-To: <87blqg2gg5.fsf@gnu.org> References: <87y2u3qh8b.fsf@gnu.org> <87r1zulsgc.fsf@gmail.com> <87sgkaik08.fsf@gnu.org> <878sm0kx8b.fsf@gmail.com> <87wo9hnbp9.fsf@gnu.org> <87blqg2gg5.fsf@gnu.org> User-Agent: Notmuch/0.29.3 (https://notmuchmail.org) Emacs/26.3 (x86_64-pc-linux-gnu) Date: Mon, 03 Feb 2020 22:03:54 +0100 Message-ID: <87blqfmlhh.fsf@devup.no> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 30756 Cc: reza.housseini@gmx.ch, 30756@debbugs.gnu.org, Reza Housseini X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Ludovic Court=C3=A8s writes: > The attached patch does three things: > > 1. Fix the order of inputs computed by (@@ (guix build-system gnu) > lower) so that implicit inputs come last. In particular, this > ensures that libc headers and kernel headers come last. All user > libraries passed as =E2=80=98inputs=E2=80=99 appear before libc, so = they can > #include_next a libc header. > > 2. Add =E2=80=9Cinclude/c++=E2=80=9D to the list of directories of > =E2=80=98CPLUS_INCLUDE_PATH=E2=80=99. This is a not-so-elegant hack= ; the main > purpose here is to make sure the gcc/libstdc++ include directory > appears twice in the search path, so that this chain of include > works as expected: > > (GCC): #include_next > =E2=86=92 (GCC): #include_next > =E2=86=92 (libc) > > 3. Switch back to =E2=80=98C_INCLUDE_PATH=E2=80=99 & co. instead of =E2= =80=98CPATH=E2=80=99 (yay!). > > I=E2=80=99ve tested it with =E2=80=9Cguix build coreutils=E2=80=9D, which= involved building GMP > with its C++ bindings, making it a rather good test. However, more > testing is needed. > > There=E2=80=99s potential for breakage in all the places where we=E2=80= =99ve manually > fiddled with C{,PLUS}_INCLUDE_PATH. I guess we=E2=80=99ll have to review= all of > them. > > Since it fixes a rather serious issue for C/C++ developers (they=E2=80=99d > rather not see warnings about system headers) but also for packaging > (=E2=80=98-Werror=E2=80=99 breaks for warnings that shouldn=E2=80=99t be = there in the first > place), I=E2=80=99d like to propose merging it in this =E2=80=98core-upda= tes=E2=80=99 cycle. > But let=E2=80=99s face it: it=E2=80=99ll keep us busy for a bit. :-) > > Thoughts? The patch looks great to me. Love how simple your solution was. The #include_next issue be confusing and frustrating even for seasoned Guix developers, so I'm all for getting it in ASAP. Can you check whether (gnu packages cross-base) can be adjusted in the same vein? I.e. go back to CROSS_C_INCLUDE_PATH & co, and dropping the 'treat-glibc-as-system-header' phase from "cross-gcc-arguments". --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAl44iroACgkQoqBt8qM6 VPqQ5QgAxbROf3oywrRVHg7D+JcHcLLj+iDAQT2JcD7bCACMYVc/V6ZSbIq5Y0qM M4Ce5U2ug3VIi2rj+DRriiJbcsdUfVSOAcD6mn59+qnz/4q2M+Gof6OnNWHAohCx 4JI79kj76HkJQg//wutdIDbEKdduzCdA9Zh6NoVGLp39Z608O6XmCaaL8T+8tgcn +BOD8V4/AS5F5ry3+OUpd/PgzBMNQlaKgrgEnT7RiIE8CC18IaiSZ3q0nR2R6MZh /PQcEqsYB5M6411N/yVUUgLqGn7SNXPRrnIctrjHxsV1LnP8YBgZn2YaLdRTnYc9 y/MqqUoRxX6agfvFLZp4orwpfbiHcQ== =OEya -----END PGP SIGNATURE----- --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Tue Feb 04 06:28:34 2020 Received: (at 30756) by debbugs.gnu.org; 4 Feb 2020 11:28:34 +0000 Received: from localhost ([127.0.0.1]:42676 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iywNe-0002Y8-9o for submit@debbugs.gnu.org; Tue, 04 Feb 2020 06:28:34 -0500 Received: from eggs.gnu.org ([209.51.188.92]:37256) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iywNc-0002Xv-7x for 30756@debbugs.gnu.org; Tue, 04 Feb 2020 06:28:32 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:56880) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1iywNW-0001Wr-Ru; Tue, 04 Feb 2020 06:28:26 -0500 Received: from [2001:660:6102:320:e120:2c8f:8909:cdfe] (port=49848 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1iywNV-0006r5-83; Tue, 04 Feb 2020 06:28:25 -0500 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= To: Marius Bakke Subject: Re: bug#30756: GCC >= 6 '-isystem' and C_INCLUDE_PATH behavior changed, breaking References: <87y2u3qh8b.fsf@gnu.org> <87r1zulsgc.fsf@gmail.com> <87sgkaik08.fsf@gnu.org> <878sm0kx8b.fsf@gmail.com> <87wo9hnbp9.fsf@gnu.org> <87blqg2gg5.fsf@gnu.org> <87blqfmlhh.fsf@devup.no> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 16 =?utf-8?Q?Pluvi=C3=B4se?= an 228 de la =?utf-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Tue, 04 Feb 2020 12:28:22 +0100 In-Reply-To: <87blqfmlhh.fsf@devup.no> (Marius Bakke's message of "Mon, 03 Feb 2020 22:03:54 +0100") Message-ID: <874kw6zj55.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) 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] X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 30756 Cc: reza.housseini@gmx.ch, 30756@debbugs.gnu.org, Reza Housseini , Maxim Cournoyer X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Hello! Marius Bakke skribis: > The patch looks great to me. Love how simple your solution was. The > #include_next issue be confusing and frustrating even for seasoned Guix > developers, so I'm all for getting it in ASAP. Great. We=E2=80=99ll make new friends with this patch, I can tell you. ;-) > Can you check whether (gnu packages cross-base) can be adjusted in the > same vein? I.e. go back to CROSS_C_INCLUDE_PATH & co, and dropping the > 'treat-glibc-as-system-header' phase from "cross-gcc-arguments". Yes, though probably as a separate patch, if you don=E2=80=99t mind, because cross-base is kinda orthogonal. I=E2=80=99ve started looking at places where we manually fiddle with CPATH/C_INCLUDE_PATH and found some more in build systems. But then, there are also quite a few individual packages that fiddle with it, so it=E2=80=99ll certainly take some time before we find and address each of t= hese. Related to that, I=E2=80=99ll be posting a patch that clarifies search path handling in commencement.scm=E2=80=94not a prerequisite, but a nice bonus I= MO. Thanks, Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Thu Feb 06 12:49:49 2020 Received: (at 30756-done) by debbugs.gnu.org; 6 Feb 2020 17:49:49 +0000 Received: from localhost ([127.0.0.1]:48381 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1izlHh-0008El-8T for submit@debbugs.gnu.org; Thu, 06 Feb 2020 12:49:49 -0500 Received: from eggs.gnu.org ([209.51.188.92]:33932) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1izlHg-0008EY-J2 for 30756-done@debbugs.gnu.org; Thu, 06 Feb 2020 12:49:48 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:53030) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1izlHa-0005N4-Vi; Thu, 06 Feb 2020 12:49:43 -0500 Received: from [2001:660:6102:320:e120:2c8f:8909:cdfe] (port=34016 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1izlHa-00010n-2E; Thu, 06 Feb 2020 12:49:42 -0500 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= To: Marius Bakke Subject: Re: bug#30756: GCC >= 6 '-isystem' and C_INCLUDE_PATH behavior changed, breaking References: <87y2u3qh8b.fsf@gnu.org> <87r1zulsgc.fsf@gmail.com> <87sgkaik08.fsf@gnu.org> <878sm0kx8b.fsf@gmail.com> <87wo9hnbp9.fsf@gnu.org> <87blqg2gg5.fsf@gnu.org> <87blqfmlhh.fsf@devup.no> <874kw6zj55.fsf@gnu.org> Date: Thu, 06 Feb 2020 18:49:40 +0100 In-Reply-To: <874kw6zj55.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Tue, 04 Feb 2020 12:28:22 +0100") Message-ID: <87tv4361xn.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) 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] X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 30756-done Cc: reza.housseini@gmx.ch, 30756-done@debbugs.gnu.org, Maxim Cournoyer , Reza Housseini X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Pushed as 2073b55e6b964cb8ca15e8c74cb32dac00f05f0d! I=E2=80=99ve been able to build Python, CMake things, and I think Meson thi= ngs, so it=E2=80=99s looking good. Next we should look at CROSS_CPATH. Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Thu Feb 06 22:39:17 2020 Received: (at 30756) by debbugs.gnu.org; 7 Feb 2020 03:39:17 +0000 Received: from localhost ([127.0.0.1]:48787 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1izuU8-0000wT-NS for submit@debbugs.gnu.org; Thu, 06 Feb 2020 22:39:17 -0500 Received: from mail-qk1-f194.google.com ([209.85.222.194]:43189) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1izuU6-0000wG-Mo for 30756@debbugs.gnu.org; Thu, 06 Feb 2020 22:39:15 -0500 Received: by mail-qk1-f194.google.com with SMTP id j20so896557qka.10 for <30756@debbugs.gnu.org>; Thu, 06 Feb 2020 19:39:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version:content-transfer-encoding; bh=NwSGtwrnXESbxJzb1vjvx/IjpQRXRMM+1gAcZVwtD6A=; b=ZeWPYvX/B4M+chRNdFJqPoEVsXoOLU1bB1WMRQAE/xVe8WG9O3ZrlpiS/jwMF8jtjD gqORvS+5PS/L5l4/X/uxATp+pEYD2mPMMg2pohSenfl+ndeZtl6KLMs4fJCHAO4ch8aw yEKBjXQHJb9AXEgOyvtPLz7LrLsL0mKxV7WB7TfOERDbNweAhDT+niqF1m0AAdmwbg6L usS8U6BRnbla2hwKhd2RJa3yx+AIjgOVtmsSKytVRmk57kRt+SvGZ1kal7zTpbfRnvhf VjcVDL3Gtq5NtZJZJGuTsVe8/eccpYQYfj7JGagg2Zg+P9cfksq4wk+lOtEdfFcL15VI vtjw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version:content-transfer-encoding; bh=NwSGtwrnXESbxJzb1vjvx/IjpQRXRMM+1gAcZVwtD6A=; b=lQ+3lrH+/z16JNd7GX+RUFNiO6Pn3QuDURiXs+t3HHrIjlMkbEOP2kLF1Ptp6k/0TE +zx8D4HxZXpYosQyqQ3etslBt7GJPqGVWDCp+5x7F+fe66xjzZ9PhsxjHlVZs9qyXTda DI92BZzpwCsZHkSwGxb+q1n/t3mXAq725GuLH0JMLpbbxTGo2+7vol1xkRe1DRKQh1VB LfeVkZhCHH+dFihHNVXQ+F8BDIF7CPKSCDu0szkA/fi9us6rPI6EXsaFDRF9irUekOSq TvquDC8rEmO2Jky9odrk4StRXD9hixLjl0djNdkCWfcg2akd01GD8mJei3rO+dGe9WAo 5ZBA== X-Gm-Message-State: APjAAAVnEbm1EDOu55gY2xQ+N01LHxQVp2LPWgjDvkPd9WsqLKbPAezH h/ylk7zn487rn0SjgSao4pA= X-Google-Smtp-Source: APXvYqz8T8aeVmyE4htgXvcc8e18emAPaNtmusfk6iK6yFoK6P84/hqEoo6dZ60Bt68KxmHejuB2cw== X-Received: by 2002:a37:dd8:: with SMTP id 207mr5510494qkn.292.1581046749030; Thu, 06 Feb 2020 19:39:09 -0800 (PST) Received: from apteryx (dsl-236-124-127.b2b2c.ca. [207.236.124.127]) by smtp.gmail.com with ESMTPSA id p26sm689538qkp.34.2020.02.06.19.39.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Feb 2020 19:39:08 -0800 (PST) From: Maxim Cournoyer To: Ludovic =?utf-8?Q?Court=C3=A8s?= Subject: Re: bug#30756: GCC >= 6 '-isystem' and C_INCLUDE_PATH behavior changed, breaking References: <87y2u3qh8b.fsf@gnu.org> <87r1zulsgc.fsf@gmail.com> <87sgkaik08.fsf@gnu.org> <878sm0kx8b.fsf@gmail.com> <87wo9hnbp9.fsf@gnu.org> <87blqg2gg5.fsf@gnu.org> Date: Thu, 06 Feb 2020 22:39:06 -0500 In-Reply-To: <87blqg2gg5.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Mon, 03 Feb 2020 10:00:42 +0100") Message-ID: <87ftfnm5gl.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 30756 Cc: reza.housseini@gmx.ch, 30756@debbugs.gnu.org, Marius Bakke , Reza Housseini X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hello Ludovic, Ludovic Court=C3=A8s writes: > Hello comrades! > > (+Cc: Marius.) > > Ludovic Court=C3=A8s skribis: > >> =E2=80=98%final-inputs=E2=80=99 order actually looks good: >> >> scheme@(gnu packages commencement)> (map car %final-inputs) >> $2 =3D ("tar" "gzip" "bzip2" "xz" "file" "diffutils" "patch" "findutils"= "gawk" "sed" "grep" "coreutils" "make" "bash" "ld-wrapper" "binutils" "gcc= " "libc" "libc:static" "locales") >> >> >> But then it breaks when we add everything: >> >> scheme@(guile-user)> (map car (bag-transitive-inputs (package->bag coreu= tils))) >> $5 =3D ("source" "perl" "tar" "gzip" "bzip2" "xz" "file" "diffutils" "pa= tch" "findutils" "gawk" "sed" "grep" "coreutils" "make" "bash" "ld-wrapper"= "binutils" "gcc" "libc" "libc:static" "locales" "acl" "gmp" "libcap" "kern= el-headers") >> >> Here acl, gmp, and libcap should be before libc and all >> (=E2=80=98bag-transitive-inputs=E2=80=99 is used by =E2=80=98bag->deriva= tion=E2=80=99.) >> >> So I think we should arrange to have the right order in >> =E2=80=98bag->derivation=E2=80=99. > > The attached patch does three things: > > 1. Fix the order of inputs computed by (@@ (guix build-system gnu) > lower) so that implicit inputs come last. In particular, this > ensures that libc headers and kernel headers come last. All user > libraries passed as =E2=80=98inputs=E2=80=99 appear before libc, so = they can > #include_next a libc header. > > 2. Add =E2=80=9Cinclude/c++=E2=80=9D to the list of directories of > =E2=80=98CPLUS_INCLUDE_PATH=E2=80=99. This is a not-so-elegant hack= ; the main > purpose here is to make sure the gcc/libstdc++ include directory > appears twice in the search path, so that this chain of include > works as expected: > > (GCC): #include_next > =E2=86=92 (GCC): #include_next > =E2=86=92 (libc) > > 3. Switch back to =E2=80=98C_INCLUDE_PATH=E2=80=99 & co. instead of =E2= =80=98CPATH=E2=80=99 (yay!). > > I=E2=80=99ve tested it with =E2=80=9Cguix build coreutils=E2=80=9D, which= involved building GMP > with its C++ bindings, making it a rather good test. However, more > testing is needed. > > There=E2=80=99s potential for breakage in all the places where we=E2=80= =99ve manually > fiddled with C{,PLUS}_INCLUDE_PATH. I guess we=E2=80=99ll have to review= all of > them. > > Since it fixes a rather serious issue for C/C++ developers (they=E2=80=99d > rather not see warnings about system headers) but also for packaging > (=E2=80=98-Werror=E2=80=99 breaks for warnings that shouldn=E2=80=99t be = there in the first > place), I=E2=80=99d like to propose merging it in this =E2=80=98core-upda= tes=E2=80=99 cycle. > But let=E2=80=99s face it: it=E2=80=99ll keep us busy for a bit. :-) > > Thoughts? > > Ludo=E2=80=99. Thank you for working on a fix, and properly understanding the root cause of the problem. I've reviewed it and it seems great! I see that it is already in core-updates. I will go ahead and proceed with rebuilding the world and see what ensues! :-) Cheers, Maxim From debbugs-submit-bounces@debbugs.gnu.org Fri Feb 07 06:01:01 2020 Received: (at 30756) by debbugs.gnu.org; 7 Feb 2020 11:01:02 +0000 Received: from localhost ([127.0.0.1]:48925 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1j01Nd-0004Tm-I9 for submit@debbugs.gnu.org; Fri, 07 Feb 2020 06:01:01 -0500 Received: from eggs.gnu.org ([209.51.188.92]:41247) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1j01Nc-0004TW-Sv for 30756@debbugs.gnu.org; Fri, 07 Feb 2020 06:01:01 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:41536) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1j01NX-0003Nh-J8; Fri, 07 Feb 2020 06:00:55 -0500 Received: from [2001:660:6102:320:e120:2c8f:8909:cdfe] (port=53010 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1j01NW-0001Zs-Uk; Fri, 07 Feb 2020 06:00:55 -0500 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= To: Maxim Cournoyer Subject: Re: bug#30756: GCC >= 6 '-isystem' and C_INCLUDE_PATH behavior changed, breaking References: <87y2u3qh8b.fsf@gnu.org> <87r1zulsgc.fsf@gmail.com> <87sgkaik08.fsf@gnu.org> <878sm0kx8b.fsf@gmail.com> <87wo9hnbp9.fsf@gnu.org> <87blqg2gg5.fsf@gnu.org> <87ftfnm5gl.fsf@gmail.com> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 19 =?utf-8?Q?Pluvi=C3=B4se?= an 228 de la =?utf-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Fri, 07 Feb 2020 12:00:53 +0100 In-Reply-To: <87ftfnm5gl.fsf@gmail.com> (Maxim Cournoyer's message of "Thu, 06 Feb 2020 22:39:06 -0500") Message-ID: <87r1z68xwa.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) 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] X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 30756 Cc: reza.housseini@gmx.ch, 30756@debbugs.gnu.org, Marius Bakke , Reza Housseini X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Hello, Maxim Cournoyer skribis: > Thank you for working on a fix, and properly understanding the root > cause of the problem. I've reviewed it and it seems great! I see that > it is already in core-updates. I will go ahead and proceed with > rebuilding the world and see what ensues! :-) Thank you! Let me know if anything doesn=E2=80=99t work as advertised! Ludo=E2=80=99. From unknown Sun Jun 22 17:17:25 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Fri, 06 Mar 2020 12:24:05 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator