Skip to contentSkip to conversation

gcc/config/riscv: define _REENTRANT for RISC-V when -pthread is passed

PATCH New Mark Corbin 2 participants 2 messages Nov 22, 2018 – Nov 24, 2018

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 gcc/config/riscv: define _REENTRANT for RISC-V when -pthread is passed

The detection of pthread support fails on RISC-V unless _REENTRANT is defined. Added the CPP_SPEC definition from gcc 8.1.0 to correct this.

---
 ...TRANT-for-RISC-V-when-pthread-is-pas.patch | 30 +++++++++++++++++++
 1 file changed, 30 insertions(+)
 create mode 100644 package/gcc/7.3.0/1001-gcc-define-_REENTRANT-for-RISC-V-when-pthread-is-pas.patch
package/gcc/7.3.0/1001-gcc-define-_REENTRANT-for-RISC-V-when-pthread-is-pas.patch new file +30 -0
new file mode 100644
index 0000000000..4f96bf7d81
@@ -0,0 +1,30 @@
+From 6ea832d09415cd82b744d0cf168cdd728c43df47 Mon Sep 17 00:00:00 2001
+From: Mark Corbin <[email protected]>
+Date: Thu, 22 Nov 2018 12:19:11 +0000
+Subject: [PATCH 1/1] gcc: define _REENTRANT for RISC-V when -pthread is passed
+
+The detection of pthread support fails on RISC-V unless _REENTRANT
+is defined. Added the CPP_SPEC definition from gcc 8.1.0 to correct
+this.
+
+Signed-off-by: Mark Corbin <[email protected]>
+---
+ gcc/config/riscv/linux.h | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/gcc/config/riscv/linux.h b/gcc/config/riscv/linux.h
+index 4b2f7b6e1fd..b00d23ddfa0 100644
+--- a/gcc/config/riscv/linux.h
++++ b/gcc/config/riscv/linux.h
+@@ -47,6 +47,8 @@ along with GCC; see the file COPYING3.  If not see
+ 
+ #define ICACHE_FLUSH_FUNC "__riscv_flush_icache"
+ 
++#define CPP_SPEC "%{pthread:-D_REENTRANT}"
++
+ #define LINK_SPEC "\
+ -melf" XLEN_SPEC "lriscv \
+ %{shared} \
+-- 
+2.19.1
+
Signature · 1 line
2.19.1
#1 lore raw

PATCH 1/1 gcc/config/riscv: define _REENTRANT for RISC-V when -pthread is passed

Hello,

Quoted 9 lines · Mark Corbin

The detection of pthread support fails on RISC-V unless _REENTRANT is defined. Added the CPP_SPEC definition from gcc 8.1.0 to correct this.

---
 ...TRANT-for-RISC-V-when-pthread-is-pas.patch | 30 +++++++++++++++++++
 1 file changed, 30 insertions(+)
 create mode 100644 package/gcc/7.3.0/1001-gcc-define-_REENTRANT-for-RISC-V-when-pthread-is-pas.patch

Applied to master, thanks. I have also reverted all the package-specific fixes we had to add _REENTRANT to fix this RISC-V issue.

Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com