diff --git a/pkgs/development/compilers/gcc/10/default.nix b/pkgs/development/compilers/gcc/10/default.nix index 7de8b14ac24f..25eae9e77e0f 100644 --- a/pkgs/development/compilers/gcc/10/default.nix +++ b/pkgs/development/compilers/gcc/10/default.nix @@ -51,8 +51,14 @@ let majorVersion = "10"; inherit (stdenv) buildPlatform hostPlatform targetPlatform; - patches = [ ] - ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch + patches = [ + # Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80431 + (fetchurl { + name = "fix-bug-80431.patch"; + url = "https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=de31f5445b12fd9ab9969dc536d821fe6f0edad0"; + sha256 = "0sd52c898msqg7m316zp0ryyj7l326cjcn2y19dcxqp15r74qj0g"; + }) + ] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch ++ optional noSysDirs ../no-sys-dirs.patch ++ optional (noSysDirs && hostPlatform.isRiscV) ../no-sys-dirs-riscv.patch /* ++ optional (hostPlatform != buildPlatform) (fetchpatch { # XXX: Refine when this should be applied diff --git a/pkgs/development/compilers/gcc/11/default.nix b/pkgs/development/compilers/gcc/11/default.nix index 07d06a3b0d4a..c31d18e1dc55 100644 --- a/pkgs/development/compilers/gcc/11/default.nix +++ b/pkgs/development/compilers/gcc/11/default.nix @@ -51,8 +51,14 @@ let majorVersion = "11"; inherit (stdenv) buildPlatform hostPlatform targetPlatform; - patches = - optional (targetPlatform != hostPlatform) ../libstdc++-target.patch + patches = [ + # Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80431 + (fetchurl { + name = "fix-bug-80431.patch"; + url = "https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=de31f5445b12fd9ab9969dc536d821fe6f0edad0"; + sha256 = "0sd52c898msqg7m316zp0ryyj7l326cjcn2y19dcxqp15r74qj0g"; + }) + ] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch ++ optional noSysDirs ../no-sys-dirs.patch ++ optional (noSysDirs && hostPlatform.isRiscV) ../no-sys-dirs-riscv.patch /* ++ optional (hostPlatform != buildPlatform) (fetchpatch { # XXX: Refine when this should be applied diff --git a/pkgs/development/compilers/gcc/6/default.nix b/pkgs/development/compilers/gcc/6/default.nix index e9454c51cebc..20b86476e3a1 100644 --- a/pkgs/development/compilers/gcc/6/default.nix +++ b/pkgs/development/compilers/gcc/6/default.nix @@ -64,6 +64,13 @@ let majorVersion = "6"; patches = optionals (!stdenv.targetPlatform.isRedox) [ ../use-source-date-epoch.patch ./0001-Fix-build-for-glibc-2.31.patch + + # Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80431 + (fetchurl { + name = "fix-bug-80431.patch"; + url = "https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=de31f5445b12fd9ab9969dc536d821fe6f0edad0"; + sha256 = "0sd52c898msqg7m316zp0ryyj7l326cjcn2y19dcxqp15r74qj0g"; + }) ] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch ++ optional noSysDirs ../no-sys-dirs.patch ++ optional langAda ../gnat-cflags.patch diff --git a/pkgs/development/compilers/gcc/7/default.nix b/pkgs/development/compilers/gcc/7/default.nix index 79b463a0b008..a9e5ab9c5d04 100644 --- a/pkgs/development/compilers/gcc/7/default.nix +++ b/pkgs/development/compilers/gcc/7/default.nix @@ -56,6 +56,13 @@ let majorVersion = "7"; ./gcc8-asan-glibc-2.34.patch ./0001-Fix-build-for-glibc-2.31.patch + + # Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80431 + (fetchurl { + name = "fix-bug-80431.patch"; + url = "https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=de31f5445b12fd9ab9969dc536d821fe6f0edad0"; + sha256 = "0sd52c898msqg7m316zp0ryyj7l326cjcn2y19dcxqp15r74qj0g"; + }) ] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch ++ optionals targetPlatform.isNetBSD [ diff --git a/pkgs/development/compilers/gcc/8/default.nix b/pkgs/development/compilers/gcc/8/default.nix index 4905ea18c78d..5b0a2f1b34bd 100644 --- a/pkgs/development/compilers/gcc/8/default.nix +++ b/pkgs/development/compilers/gcc/8/default.nix @@ -46,8 +46,14 @@ let majorVersion = "8"; inherit (stdenv) buildPlatform hostPlatform targetPlatform; - patches = - optional (targetPlatform != hostPlatform) ../libstdc++-target.patch + patches = [ + # Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80431 + (fetchurl { + name = "fix-bug-80431.patch"; + url = "https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=de31f5445b12fd9ab9969dc536d821fe6f0edad0"; + sha256 = "0sd52c898msqg7m316zp0ryyj7l326cjcn2y19dcxqp15r74qj0g"; + }) + ] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch ++ optional targetPlatform.isNetBSD ../libstdc++-netbsd-ctypes.patch ++ optional noSysDirs ../no-sys-dirs.patch /* ++ optional (hostPlatform != buildPlatform) (fetchpatch { # XXX: Refine when this should be applied diff --git a/pkgs/development/compilers/gcc/9/default.nix b/pkgs/development/compilers/gcc/9/default.nix index 1d8f4e21efeb..3d794aeb154c 100644 --- a/pkgs/development/compilers/gcc/9/default.nix +++ b/pkgs/development/compilers/gcc/9/default.nix @@ -55,9 +55,14 @@ let majorVersion = "9"; inherit (stdenv) buildPlatform hostPlatform targetPlatform; - patches = - [ ] - ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch + patches = [ + # Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80431 + (fetchurl { + name = "fix-bug-80431.patch"; + url = "https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=de31f5445b12fd9ab9969dc536d821fe6f0edad0"; + sha256 = "0sd52c898msqg7m316zp0ryyj7l326cjcn2y19dcxqp15r74qj0g"; + }) + ] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch ++ optional targetPlatform.isNetBSD ../libstdc++-netbsd-ctypes.patch ++ optional noSysDirs ../no-sys-dirs.patch ++ optional (noSysDirs && hostPlatform.isRiscV) ../no-sys-dirs-riscv-gcc9.patch