aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2025-01-31 09:34:06 +0000
committerLorenzo Salvadore <salvadore@FreeBSD.org>2025-02-04 08:16:33 +0000
commit168cb3d94f79d676bb4155c15dcfcf6a48756b6d (patch)
tree592de63f0ae7b0adeb60f9b97be1878358100441
parentc3ec97257e58840a395b70254e027d9e86cb9346 (diff)
lang/gcc12-devel: Fix segfaults for static binaries
Fix segmentation faults caused by -static flag into compiled binaries. Email thread: https://lists.freebsd.org/archives/freebsd-hackers/2025-January/004236.html Upstream bug report: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118685 PR: 284441 Reported by: kargl
-rw-r--r--lang/gcc12-devel/Makefile1
-rw-r--r--lang/gcc12-devel/files/patch-libgcc-config.host11
2 files changed, 12 insertions, 0 deletions
diff --git a/lang/gcc12-devel/Makefile b/lang/gcc12-devel/Makefile
index 5cf9b2cdd8bd..0849b6713921 100644
--- a/lang/gcc12-devel/Makefile
+++ b/lang/gcc12-devel/Makefile
@@ -1,5 +1,6 @@
PORTNAME= gcc
PORTVERSION= 12.4.1.s20250123
+PORTREVISION= 1
CATEGORIES= lang
MASTER_SITES= GCC/snapshots/${DIST_VERSION}
PKGNAMESUFFIX= ${SUFFIX}-devel
diff --git a/lang/gcc12-devel/files/patch-libgcc-config.host b/lang/gcc12-devel/files/patch-libgcc-config.host
new file mode 100644
index 000000000000..266694676d17
--- /dev/null
+++ b/lang/gcc12-devel/files/patch-libgcc-config.host
@@ -0,0 +1,11 @@
+--- libgcc/config.host.orig 2025-01-30 12:31:26.479569000 -0800
++++ libgcc/config.host 2025-01-30 12:32:03.732682000 -0800
+@@ -286,7 +286,7 @@
+ # machine-specific sections may refine and add to this
+ # configuration.
+ tmake_file="$tmake_file t-freebsd t-crtstuff-pic t-libgcc-pic t-eh-dw2-dip t-slibgcc t-slibgcc-gld t-slibgcc-elf-ver"
+- extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
++ extra_parts="crtbegin.o crtend.o crtbeginS.o crtbeginT.o crtendS.o"
+ case ${target_thread_file} in
+ posix)
+ tmake_file="${tmake_file} t-freebsd-thread"