about summary refs log tree commit diff
path: root/pkgs/development/compilers/gcc
diff options
context:
space:
mode:
authorDmitry Kalinkin <dmitry.kalinkin@gmail.com>2021-12-23 16:58:33 -0500
committerDmitry Kalinkin <dmitry.kalinkin@gmail.com>2021-12-23 16:58:33 -0500
commit1a9297102cf31ea0d523f79f704eb53e3b8ff9b4 (patch)
treec64367953177cfc5b4dcafb8d0d555a29bef1d0e /pkgs/development/compilers/gcc
parent2d571be5e4cedd247d3c469ce4d81c28c83e9e54 (diff)
parentba3cc463ca2d2289ce3b2d5e165578f8e16e35e8 (diff)
Merge branch 'master' into staging-next
Diffstat (limited to 'pkgs/development/compilers/gcc')
-rw-r--r--pkgs/development/compilers/gcc/10/default.nix1
-rw-r--r--pkgs/development/compilers/gcc/11/default.nix1
-rw-r--r--pkgs/development/compilers/gcc/no-sys-dirs-riscv.patch12
3 files changed, 14 insertions, 0 deletions
diff --git a/pkgs/development/compilers/gcc/10/default.nix b/pkgs/development/compilers/gcc/10/default.nix
index f9dd0465b9258..4493fd936ec38 100644
--- a/pkgs/development/compilers/gcc/10/default.nix
+++ b/pkgs/development/compilers/gcc/10/default.nix
@@ -64,6 +64,7 @@ let majorVersion = "10";
     patches =
          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
         url = "https://git.busybox.net/buildroot/plain/package/gcc/${version}/0900-remove-selftests.patch?id=11271540bfe6adafbc133caf6b5b902a816f5f02";
         sha256 = ""; # TODO: uncomment and check hash when available.
diff --git a/pkgs/development/compilers/gcc/11/default.nix b/pkgs/development/compilers/gcc/11/default.nix
index f71f941540c47..a9498b1060dba 100644
--- a/pkgs/development/compilers/gcc/11/default.nix
+++ b/pkgs/development/compilers/gcc/11/default.nix
@@ -64,6 +64,7 @@ let majorVersion = "11";
     patches =
          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
         url = "https://git.busybox.net/buildroot/plain/package/gcc/${version}/0900-remove-selftests.patch?id=11271540bfe6adafbc133caf6b5b902a816f5f02";
         sha256 = ""; # TODO: uncomment and check hash when available.
diff --git a/pkgs/development/compilers/gcc/no-sys-dirs-riscv.patch b/pkgs/development/compilers/gcc/no-sys-dirs-riscv.patch
new file mode 100644
index 0000000000000..00e2838af6fd4
--- /dev/null
+++ b/pkgs/development/compilers/gcc/no-sys-dirs-riscv.patch
@@ -0,0 +1,12 @@
+--- a/gcc/config/riscv/linux.h
++++ b/gcc/config/riscv/linux.h
+@@ -69,8 +69,4 @@
+ 
+ #define TARGET_ASM_FILE_END file_end_indicate_exec_stack
+ 
+-#define STARTFILE_PREFIX_SPEC 			\
+-   "/lib" XLEN_SPEC "/" ABI_SPEC "/ "		\
+-   "/usr/lib" XLEN_SPEC "/" ABI_SPEC "/ "	\
+-   "/lib/ "					\
+-   "/usr/lib/ "
++#define STARTFILE_PREFIX_SPEC ""