From: Ricardo Wurmus <rekado@elephly.net>
To: Marius Bakke <mbakke@fastmail.com>
Cc: 32953@debbugs.gnu.org
Subject: [bug#32953] [PATCH core-updates-next 0/8] Use GCC7 as the default compiler.
Date: Fri, 08 Feb 2019 13:28:37 +0100 [thread overview]
Message-ID: <87ftsympl6.fsf@elephly.net> (raw)
In-Reply-To: <87pns4o6yv.fsf@fastmail.com>
Marius Bakke <mbakke@fastmail.com> writes:
> Ricardo Wurmus <rekado@elephly.net> writes:
>
>> Hi Marius,
>>
>>> Efraim Flashner <efraim@flashner.co.il> writes:
>>>
>>>> On Sat, Jan 19, 2019 at 07:09:04PM +0200, Efraim Flashner wrote:
>>>>>
>>>>> I'm going to see if I can build hello --target=arm-linux-gnueabihf next
>>>>> and see how that works.
>>>>
>>>> When I get to gcc-cross-arm-linux-gnueabihf it fails during configure,
>>>> cannot find gmp.h. Looking at (gnu packages cross-base), I don't think
>>>> there are any package-inputs for xgcc. I still thought gcc bundled its
>>>> own gmp et. al.
>>>
>>> I'm happy to report that the cross-compilation issues are resolved with
>>> this trivial patch:
>>>
>>> 2 files changed, 5 insertions(+), 11 deletions(-)
>>> gnu/build/cross-toolchain.scm | 9 +++------
>>> gnu/packages/cross-base.scm | 7 ++-----
>>>
>>> modified gnu/build/cross-toolchain.scm
>>> @@ -36,11 +36,8 @@
>>>
>>> (define %gcc-include-paths
>>> ;; Environment variables for header search paths.
>>> - ;; Note: See <http://bugs.gnu.org/22186> for why not 'CPATH'.
>>> - '("C_INCLUDE_PATH"
>>> - "CPLUS_INCLUDE_PATH"
>>> - "OBJC_INCLUDE_PATH"
>>> - "OBJCPLUS_INCLUDE_PATH"))
>>> + ;; Note: See <http://bugs.gnu.org/30756> for why not 'C_INCLUDE_PATH' & co.
>>> + '("CPATH"))
>>>
>>> (define %gcc-cross-include-paths
>>> ;; Search path for target headers when cross-compiling.
>>> @@ -179,7 +176,7 @@ a target triplet."
>>> ;; header" such that #include_next does the right thing.
>>> (for-each (lambda (var)
>>> (setenv var (string-append libc "/include")))
>>> - '("C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH")))
>>> + '("CROSS_C_INCLUDE_PATH" "CROSS_CPLUS_INCLUDE_PATH")))
>>> #t)))
>>> (add-after 'install 'make-cross-binutils-visible
>>> (cut make-cross-binutils-visible #:target target <...>))
>>> modified gnu/packages/cross-base.scm
>>> @@ -51,11 +51,8 @@
>>>
>>> (define %gcc-include-paths
>>> ;; Environment variables for header search paths.
>>> - ;; Note: See <http://bugs.gnu.org/22186> for why not 'CPATH'.
>>> - '("C_INCLUDE_PATH"
>>> - "CPLUS_INCLUDE_PATH"
>>> - "OBJC_INCLUDE_PATH"
>>> - "OBJCPLUS_INCLUDE_PATH"))
>>> + ;; Note: See <http://bugs.gnu.org/30756> for why not 'C_INCLUDE_PATH' & co.
>>> + '("CPATH"))
>>>
>>> (define %gcc-cross-include-paths
>>> ;; Search path for target headers when cross-compiling.
>>>
>>> [back]
>>> Silly me for not catching the CROSS_C_INCLUDE_PATH issue earlier. But,
>>> at least I got to know the GCC build processes and GDB better... ;-)
>>>
>>> I will commit this series shortly and work on a followup patch that
>>> removes the various GCC5/C++14 workarounds in one go.
>>
>> Will this break compilation with GCC5 and older, when they are installed
>> in a profile or used as inputs? Do we need copies of these variables
>> and use different variants for different compiler versions?
>
> I believe using (CROSS_)CPATH will work for all GCC versions, whereas
> (CROSS_)C_INCLUDE_PATH are broken for GCC >= 6.
>
> We do use C_INCLUDE_PATH for GCC < 6 in (gnu packages gcc), but I don't
> think the added complexity is worth it for the cross-compiler
> infrastructure.
Thanks for the explanation.
Will this allow us to close bug #30756?
--
Ricardo
next prev parent reply other threads:[~2019-02-08 14:15 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-06 13:14 [bug#32953] [PATCH core-updates-next 0/8] Use GCC7 as the default compiler Marius Bakke
2018-10-06 13:16 ` [bug#32953] [PATCH core-updates-next 1/8] gnu: Remove gcc-for-libstdc++ Marius Bakke
2018-10-06 13:16 ` [bug#32953] [PATCH core-updates-next 2/8] gnu: libstdc++-boot0: Improve gcc-wrapper workaround Marius Bakke
2018-10-11 8:08 ` Danny Milosavljevic
2018-10-06 13:16 ` [bug#32953] [PATCH core-updates-next 3/8] gnu: gcc-boot0: Improve gcc-wrapper workarounds Marius Bakke
2018-10-11 8:08 ` Danny Milosavljevic
2018-10-06 13:16 ` [bug#32953] [PATCH core-updates-next 4/8] gnu: Remove duplicate linux-libre-headers package from bootstrap inputs Marius Bakke
2018-10-11 8:09 ` Danny Milosavljevic
2018-10-06 13:16 ` [bug#32953] [PATCH core-updates-next 5/8] gnu: Use GCC 7 as the default compiler Marius Bakke
2018-10-11 8:05 ` Danny Milosavljevic
2018-10-06 13:16 ` [bug#32953] [PATCH core-updates-next 6/8] gnu: python: Fix FTBFS with GCC >= 6 Marius Bakke
2018-10-06 13:16 ` [bug#32953] [PATCH core-updates-next 7/8] gnu: cmake: Try CPATH and C_INCLUDE_PATH when finding system libraries Marius Bakke
2018-10-11 8:06 ` Danny Milosavljevic
2018-10-06 13:16 ` [bug#32953] [PATCH core-updates-next 8/8] gnu: cppunit: Update to 1.14.0 Marius Bakke
2018-10-11 8:17 ` Danny Milosavljevic
2018-10-06 17:00 ` [bug#32953] [PATCH core-updates-next 0/8] Use GCC7 as the default compiler Marius Bakke
2018-12-27 10:59 ` Ludovic Courtès
2018-12-29 17:58 ` Efraim Flashner
2019-01-16 13:53 ` Marius Bakke
2019-01-19 17:09 ` Efraim Flashner
2019-01-19 20:01 ` Efraim Flashner
2019-02-06 20:23 ` Marius Bakke
2019-02-06 22:35 ` Ricardo Wurmus
2019-02-06 23:03 ` Marius Bakke
2019-02-08 12:28 ` Ricardo Wurmus [this message]
2019-02-09 15:00 ` Ludovic Courtès
2019-02-09 20:57 ` bug#32953: " Marius Bakke
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87ftsympl6.fsf@elephly.net \
--to=rekado@elephly.net \
--cc=32953@debbugs.gnu.org \
--cc=mbakke@fastmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.