summaryrefslogtreecommitdiff
path: root/lang/gcc15
diff options
context:
space:
mode:
Diffstat (limited to 'lang/gcc15')
-rw-r--r--lang/gcc15/Makefile7
-rw-r--r--lang/gcc15/distinfo6
-rw-r--r--lang/gcc15/files/patch-libgcc_unwind-dw2-fde-dip.c23
3 files changed, 28 insertions, 8 deletions
diff --git a/lang/gcc15/Makefile b/lang/gcc15/Makefile
index c9444e5e22e8..957ccabf391e 100644
--- a/lang/gcc15/Makefile
+++ b/lang/gcc15/Makefile
@@ -1,5 +1,6 @@
PORTNAME= gcc
-PORTVERSION= 15.1.0
+PORTVERSION= 15.2.0
+PORTREVISION= 1
CATEGORIES= lang
MASTER_SITES= GCC
PKGNAMESUFFIX= ${SUFFIX}
@@ -77,10 +78,6 @@ CONFIGURE_TARGET= x86_64-portbld-${OPSYS:tl}${OSREL}
.elif ${ARCH} == powerpc64
CONFIGURE_ARGS+= --with-abi=elfv2
-USE_GCC= yes
-
-.elif ${ARCH} == powerpc64le
-USE_GCC= yes
.endif
.if ${ARCH} == i386
diff --git a/lang/gcc15/distinfo b/lang/gcc15/distinfo
index 3b6b15e9e125..166f2aeba16f 100644
--- a/lang/gcc15/distinfo
+++ b/lang/gcc15/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1745940383
-SHA256 (gcc-15.1.0.tar.xz) = e2b09ec21660f01fecffb715e0120265216943f038d0e48a9868713e54f06cea
-SIZE (gcc-15.1.0.tar.xz) = 98268344
+TIMESTAMP = 1755075794
+SHA256 (gcc-15.2.0.tar.xz) = 438fd996826b0c82485a29da03a72d71d6e3541a83ec702df4271f6fe025d24e
+SIZE (gcc-15.2.0.tar.xz) = 101056276
diff --git a/lang/gcc15/files/patch-libgcc_unwind-dw2-fde-dip.c b/lang/gcc15/files/patch-libgcc_unwind-dw2-fde-dip.c
new file mode 100644
index 000000000000..66452b37de0f
--- /dev/null
+++ b/lang/gcc15/files/patch-libgcc_unwind-dw2-fde-dip.c
@@ -0,0 +1,23 @@
+FreeBSD defines ElfW(x) to translate Linux's convention to FreeBSD's convention.
+GCC defines ElfW to convert its convention to FreeBSD's convention. This patch
+removes the conversion defined by GCC so that the FreeBSD conversion only is
+applied.
+
+--- libgcc/unwind-dw2-fde-dip.c.orig 2025-05-16 15:47:38 UTC
++++ libgcc/unwind-dw2-fde-dip.c
+@@ -59,13 +59,13 @@
+
+ #if !defined(inhibit_libc) && defined(HAVE_LD_EH_FRAME_HDR) \
+ && defined(TARGET_DL_ITERATE_PHDR) \
+- && defined(__linux__)
++ && (defined(__linux__) || defined(__FreeBSD__))
+ # define USE_PT_GNU_EH_FRAME
+ #endif
+
+ #if !defined(inhibit_libc) && defined(HAVE_LD_EH_FRAME_HDR) \
+ && defined(TARGET_DL_ITERATE_PHDR) \
+- && (defined(__DragonFly__) || defined(__FreeBSD__))
++ && defined(__DragonFly__)
+ # define ElfW __ElfN
+ # define USE_PT_GNU_EH_FRAME
+ #endif