GNU bug report logs -
#51743
[PATCH] cross-base: fix environment variables patch for GCC 10
Previous Next
Reported by: Michael Ford <fanquake <at> gmail.com>
Date: Wed, 10 Nov 2021 06:58:01 UTC
Severity: normal
Tags: patch
Done: Morgan Smith <Morgan.J.Smith <at> outlook.com>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 51743 in the body.
You can then email your comments to 51743 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
guix-patches <at> gnu.org
:
bug#51743
; Package
guix-patches
.
(Wed, 10 Nov 2021 06:58:01 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Michael Ford <fanquake <at> gmail.com>
:
New bug report received and forwarded. Copy sent to
guix-patches <at> gnu.org
.
(Wed, 10 Nov 2021 06:58:01 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
---
gnu/packages/cross-base.scm | 2 +
.../gcc-10-cross-environment-variables.patch | 54 +++++++++++++++++++
2 files changed, 56 insertions(+)
create mode 100644
gnu/packages/patches/gcc-10-cross-environment-variables.patch
diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm
index 180594509b..0a93d0dc6d 100644
--- a/gnu/packages/cross-base.scm
+++ b/gnu/packages/cross-base.scm
@@ -243,6 +243,8 @@ (define* (cross-gcc target
(append
(origin-patches (package-source xgcc))
(append (cond
+ ((version>=? (package-version xgcc) "10.0")
+ (search-patches
"gcc-10-cross-environment-variables.patch"))
((version>=? (package-version xgcc) "8.0")
(search-patches
"gcc-8-cross-environment-variables.patch"))
((version>=? (package-version xgcc) "6.0")
diff --git a/gnu/packages/patches/gcc-10-cross-environment-variables.patch
b/gnu/packages/patches/gcc-10-cross-environment-variables.patch
new file mode 100644
index 0000000000..829bc583e9
--- /dev/null
+++ b/gnu/packages/patches/gcc-10-cross-environment-variables.patch
@@ -0,0 +1,54 @@
+Search path environment variables for cross-compilers. See the discussion
+at <http://gcc.gnu.org/ml/gcc/2013-02/msg00124.html>.
+
+Note: Touch 'C_INCLUDE_PATH' et al. rather than 'CPATH', as discussed
+at <http://bugs.gnu.org/22186>.
+
+diff --git a/gcc/gcc.c b/gcc/gcc.c
+index 9f790db0daf..326aa52f46f 100644
+--- a/gcc/gcc.c
++++ b/gcc/gcc.c
+@@ -4474,7 +4474,7 @@ process_command (unsigned int decoded_options_count,
+ }
+
+ temp = env.get (LIBRARY_PATH_ENV);
+- if (temp && *cross_compile == '0')
++ if (temp)
+ {
+ const char *startp, *endp;
+ char *nstore = (char *) alloca (strlen (temp) + 3);
+diff --git a/gcc/incpath.c b/gcc/incpath.c
+index 8a2bda00f80..4f740a6a4c3 100644
+--- a/gcc/incpath.c
++++ b/gcc/incpath.c
+@@ -472,8 +472,8 @@ register_include_chains (cpp_reader *pfile, const char
*sysroot,
+ int stdinc, int cxx_stdinc, int verbose)
+ {
+ static const char *const lang_env_vars[] =
+- { "C_INCLUDE_PATH", "CPLUS_INCLUDE_PATH",
+- "OBJC_INCLUDE_PATH", "OBJCPLUS_INCLUDE_PATH" };
++ { "CROSS_C_INCLUDE_PATH", "CROSS_CPLUS_INCLUDE_PATH",
++ "CROSS_OBJC_INCLUDE_PATH", "CROSS_OBJCPLUS_INCLUDE_PATH" };
+ cpp_options *cpp_opts = cpp_get_options (pfile);
+ size_t idx = (cpp_opts->objc ? 2: 0);
+
+@@ -484,7 +484,7 @@ register_include_chains (cpp_reader *pfile, const char
*sysroot,
+
+ /* CPATH and language-dependent environment variables may add to the
+ include chain. */
+- add_env_var_paths ("CPATH", INC_BRACKET);
++ add_env_var_paths ("CROSS_CPATH", INC_BRACKET);
+ add_env_var_paths (lang_env_vars[idx], INC_SYSTEM);
+
+ target_c_incpath.extra_pre_includes (sysroot, iprefix, stdinc);
+diff --git a/gcc/system.h b/gcc/system.h
+index 263070169ab..14a819db28d 100644
+--- a/gcc/system.h
++++ b/gcc/system.h
+@@ -1248,4 +1248,6 @@ void gcc_stablesort (void *, size_t, size_t,
+ of the number. */
+ #define PRsa(n) "%" #n PRIu64 "%c"
+
++#define LIBRARY_PATH_ENV "CROSS_LIBRARY_PATH"
++
+ #endif /* ! GCC_SYSTEM_H */
--
2.33.1
[Message part 2 (text/html, inline)]
Information forwarded
to
guix-patches <at> gnu.org
:
bug#51743
; Package
guix-patches
.
(Thu, 11 Nov 2021 04:55:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 51743 <at> debbugs.gnu.org (full text, mbox):
From: Michael Ford <fanquake <at> gmail.com>
This patch works great! I have an MSP430 toolchain based on GCC 11 I've been trying to get working and this fixes the environment variable problem. Thank you very much! I think the formating of the patch got messed up a little in transport so I'm re-sending it here to make it easy for the committer.
---
gnu/packages/cross-base.scm | 2 +
.../gcc-10-cross-environment-variables.patch | 54 +++++++++++++++++++
2 files changed, 56 insertions(+)
create mode 100644 gnu/packages/patches/gcc-10-cross-environment-variables.patch
diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm
index 180594509b..0a93d0dc6d 100644
--- a/gnu/packages/cross-base.scm
+++ b/gnu/packages/cross-base.scm
@@ -243,6 +243,8 @@ (define* (cross-gcc target
(append
(origin-patches (package-source xgcc))
(append (cond
+ ((version>=? (package-version xgcc) "10.0")
+ (search-patches "gcc-10-cross-environment-variables.patch"))
((version>=? (package-version xgcc) "8.0")
(search-patches "gcc-8-cross-environment-variables.patch"))
((version>=? (package-version xgcc) "6.0")
diff --git a/gnu/packages/patches/gcc-10-cross-environment-variables.patch b/gnu/packages/patches/gcc-10-cross-environment-variables.patch
new file mode 100644
index 0000000000..c350e4b62b
--- /dev/null
+++ b/gnu/packages/patches/gcc-10-cross-environment-variables.patch
@@ -0,0 +1,54 @@
+Search path environment variables for cross-compilers. See the discussion
+at <http://gcc.gnu.org/ml/gcc/2013-02/msg00124.html>.
+
+Note: Touch 'C_INCLUDE_PATH' et al. rather than 'CPATH', as discussed
+at <http://bugs.gnu.org/22186>.
+
+diff --git a/gcc/gcc.c b/gcc/gcc.c
+index 9f790db0daf..326aa52f46f 100644
+--- a/gcc/gcc.c
++++ b/gcc/gcc.c
+@@ -4474,7 +4474,7 @@ process_command (unsigned int decoded_options_count,
+ }
+
+ temp = env.get (LIBRARY_PATH_ENV);
+- if (temp && *cross_compile == '0')
++ if (temp)
+ {
+ const char *startp, *endp;
+ char *nstore = (char *) alloca (strlen (temp) + 3);
+diff --git a/gcc/incpath.c b/gcc/incpath.c
+index 8a2bda00f80..4f740a6a4c3 100644
+--- a/gcc/incpath.c
++++ b/gcc/incpath.c
+@@ -472,8 +472,8 @@ register_include_chains (cpp_reader *pfile, const char *sysroot,
+ int stdinc, int cxx_stdinc, int verbose)
+ {
+ static const char *const lang_env_vars[] =
+- { "C_INCLUDE_PATH", "CPLUS_INCLUDE_PATH",
+- "OBJC_INCLUDE_PATH", "OBJCPLUS_INCLUDE_PATH" };
++ { "CROSS_C_INCLUDE_PATH", "CROSS_CPLUS_INCLUDE_PATH",
++ "CROSS_OBJC_INCLUDE_PATH", "CROSS_OBJCPLUS_INCLUDE_PATH" };
+ cpp_options *cpp_opts = cpp_get_options (pfile);
+ size_t idx = (cpp_opts->objc ? 2: 0);
+
+@@ -484,7 +484,7 @@ register_include_chains (cpp_reader *pfile, const char *sysroot,
+
+ /* CPATH and language-dependent environment variables may add to the
+ include chain. */
+- add_env_var_paths ("CPATH", INC_BRACKET);
++ add_env_var_paths ("CROSS_CPATH", INC_BRACKET);
+ add_env_var_paths (lang_env_vars[idx], INC_SYSTEM);
+
+ target_c_incpath.extra_pre_includes (sysroot, iprefix, stdinc);
+diff --git a/gcc/system.h b/gcc/system.h
+index 263070169ab..14a819db28d 100644
+--- a/gcc/system.h
++++ b/gcc/system.h
+@@ -1248,4 +1248,6 @@ void gcc_stablesort (void *, size_t, size_t,
+ of the number. */
+ #define PRsa(n) "%" #n PRIu64 "%c"
+
++#define LIBRARY_PATH_ENV "CROSS_LIBRARY_PATH"
++
+ #endif /* ! GCC_SYSTEM_H */
--
2.33.1
Information forwarded
to
guix-patches <at> gnu.org
:
bug#51743
; Package
guix-patches
.
(Wed, 01 Dec 2021 16:52:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 51743 <at> debbugs.gnu.org (full text, mbox):
Hi Michael and Morgan,
Michael Ford <fanquake <at> gmail.com> skribis:
> ---
> gnu/packages/cross-base.scm | 2 +
> .../gcc-10-cross-environment-variables.patch | 54 +++++++++++++++++++
> 2 files changed, 56 insertions(+)
> create mode 100644
A similar patch was added in ‘core-updates’ commit
4796b5d6d18dcc0f1b6c8e134977ebdb575c5741, which we’ll hopefully be
merged Real Soon Now.
So I’m tempted to just wait for the merge.
Thoughts?
Thanks,
Ludo’.
PS: Please use ‘git send-email’ or send patches as attachments to make
sure they aren’t mangled on the way.
bug closed, send any further explanations to
51743 <at> debbugs.gnu.org and Michael Ford <fanquake <at> gmail.com>
Request was from
Morgan Smith <Morgan.J.Smith <at> outlook.com>
to
control <at> debbugs.gnu.org
.
(Thu, 30 Dec 2021 08:00:01 GMT)
Full text and
rfc822 format available.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Thu, 27 Jan 2022 12:24:08 GMT)
Full text and
rfc822 format available.
This bug report was last modified 2 years and 89 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.