Subject: [PATCH v2 3/3] gnu: gcc@9: Fix limits.h include for cross builds.

From: Carl Dong <[email-masked]>
Date: Sun, 05 May 2019 14:35:13 +0000

This allows us to supply gcc-9 as an optional argument to cross-gcc,
successfully constructing gcc-9-based cross-compilers.

* gnu/packages/gcc.scm (gcc-9)[source](patches): Add
  "gcc-9-asan-fix-limits-include.patch".
* gnu/packages/patches/gcc-9-asan-fix-limits-include.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add the patch.
---
 gnu/local.mk                                        |  1 +
 gnu/packages/gcc.scm                                |  1 +
 .../patches/gcc-9-asan-fix-limits-include.patch     | 13 +++++++++++++
 3 files changed, 15 insertions(+)
 create mode 100644 gnu/packages/patches/gcc-9-asan-fix-limits-include.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 847ebf677c..f2e10a4e24 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -815,6 +815,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/gcc-6-source-date-epoch-2.patch		\
   %D%/packages/patches/gcc-8-cross-environment-variables.patch	\
   %D%/packages/patches/gcc-8-strmov-store-file-names.patch	\
+  %D%/packages/patches/gcc-9-asan-fix-limits-include.patch	\
   %D%/packages/patches/gcc-9-strmov-store-file-names.patch	\
   %D%/packages/patches/gd-CVE-2018-5711.patch			\
   %D%/packages/patches/gd-CVE-2018-1000222.patch		\
diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm
index eefce2737b..50c58c1828 100644
--- a/gnu/packages/gcc.scm
+++ b/gnu/packages/gcc.scm
@@ -531,6 +531,7 @@ It also includes runtime support libraries for these languages.")))
              (base32
               "1817nc2bqdc251k0lpc51cimna7v68xjrnvqzvc50q3ax4s6i9kr"))
             (patches (search-patches "gcc-9-strmov-store-file-names.patch"
+                                     "gcc-9-asan-fix-limits-include.patch"
                                      "gcc-5.0-libvtv-runpath.patch"))))))

 ;; Note: When changing the default gcc version, update
diff --git a/gnu/packages/patches/gcc-9-asan-fix-limits-include.patch b/gnu/packages/patches/gcc-9-asan-fix-limits-include.patch
new file mode 100644
index 0000000000..2f5ce7c697
--- /dev/null
+++ b/gnu/packages/patches/gcc-9-asan-fix-limits-include.patch
@@ -0,0 +1,13 @@
+diff --git a/libsanitizer/asan/asan_linux.cc b/libsanitizer/asan/asan_linux.cc
+index d92d0596b7c..7926536a0c3 100644
+--- a/libsanitizer/asan/asan_linux.cc
++++ b/libsanitizer/asan/asan_linux.cc
+@@ -30,7 +30,7 @@
+ #include <sys/types.h>
+ #include <dlfcn.h>
+ #include <fcntl.h>
+-#include <limits.h>
++#include <linux/limits.h>
+ #include <pthread.h>
+ #include <stdio.h>
+ #include <unistd.h>
--
2.21.0