git: 0cd003615453 - main - lang/gcc12: Update to 12.4.0

From: Lorenzo Salvadore <salvadore_at_FreeBSD.org>
Date: Tue, 03 Sep 2024 15:45:46 UTC
The branch main has been updated by salvadore:

URL: https://cgit.FreeBSD.org/ports/commit/?id=0cd003615453bb5fb998e0e1b45db0344bf677cd

commit 0cd003615453bb5fb998e0e1b45db0344bf677cd
Author:     Lorenzo Salvadore <salvadore@FreeBSD.org>
AuthorDate: 2024-08-20 14:07:45 +0000
Commit:     Lorenzo Salvadore <salvadore@FreeBSD.org>
CommitDate: 2024-09-03 15:45:41 +0000

    lang/gcc12: Update to 12.4.0
    
    Changes: https://gcc.gnu.org/gcc-12/changes.html#12.4
    
    PR:             281091
    Tested by:      exp-run (antoine)
---
 lang/gcc12/Makefile                           |  2 +-
 lang/gcc12/distinfo                           |  6 ++--
 lang/gcc12/files/patch-gcc_configure          | 22 ++++++++++++++
 lang/gcc12/files/patch-gcc_system.h           | 42 ---------------------------
 lang/gcc12/files/patch-libcc1_libcc1plugin.cc | 19 ------------
 lang/gcc12/files/patch-libcc1_libcp1plugin.cc | 19 ------------
 6 files changed, 26 insertions(+), 84 deletions(-)

diff --git a/lang/gcc12/Makefile b/lang/gcc12/Makefile
index beba427302f6..0d28ba3fd5c6 100644
--- a/lang/gcc12/Makefile
+++ b/lang/gcc12/Makefile
@@ -1,5 +1,5 @@
 PORTNAME=	gcc
-PORTVERSION=	12.3.0
+PORTVERSION=	12.4.0
 CATEGORIES=	lang
 MASTER_SITES=	GCC
 PKGNAMESUFFIX=	${SUFFIX}
diff --git a/lang/gcc12/distinfo b/lang/gcc12/distinfo
index 1736f42f015f..e90d6d8bcef9 100644
--- a/lang/gcc12/distinfo
+++ b/lang/gcc12/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1699355292
-SHA256 (gcc-12.3.0.tar.xz) = 949a5d4f99e786421a93b532b22ffab5578de7321369975b91aec97adfda8c3b
-SIZE (gcc-12.3.0.tar.xz) = 85491976
+TIMESTAMP = 1724162795
+SHA256 (gcc-12.4.0.tar.xz) = 704f652604ccbccb14bdabf3478c9511c89788b12cb3bbffded37341916a9175
+SIZE (gcc-12.4.0.tar.xz) = 83377372
diff --git a/lang/gcc12/files/patch-gcc_configure b/lang/gcc12/files/patch-gcc_configure
new file mode 100644
index 000000000000..cc60593ba6f7
--- /dev/null
+++ b/lang/gcc12/files/patch-gcc_configure
@@ -0,0 +1,22 @@
+Enable support for .init_array and .fini_array, which FreeBSD supports
+since commit 83aa9cc00c2d83d05a0efe7a1496d8aab4a153bb in the src
+repository.
+
+There __FreeBSD_version is 1000009, so we start enabling the support
+from __FreeBSD_version == 1000010.
+--- gcc/configure.orig	2023-05-11 22:33:34 UTC
++++ gcc/configure
+@@ -24214,6 +24214,13 @@ EOF
+ #else
+ # if defined __sun__ && defined __svr4__
+    /* Solaris ld.so.1 supports .init_array/.fini_array since Solaris 8.  */
++# elif defined __FreeBSD__
++#  include <sys/param.h>
++#   if __FreeBSD_version >= 1000010
++     /* FreeBSD supports .init_array/.fini_array since FreeBSD 10.  */
++#   else
++#    error The C library not known to support .init_array/.fini_array
++#   endif
+ # else
+ #  error The C library not known to support .init_array/.fini_array
+ # endif
diff --git a/lang/gcc12/files/patch-gcc_system.h b/lang/gcc12/files/patch-gcc_system.h
deleted file mode 100644
index 7a18af14077a..000000000000
--- a/lang/gcc12/files/patch-gcc_system.h
+++ /dev/null
@@ -1,42 +0,0 @@
---- gcc/system.h.orig	2022-08-19 08:09:53 UTC
-+++ gcc/system.h
-@@ -203,19 +203,6 @@ extern int fprintf_unlocked (FILE *, const char *, ...
- #endif
- #endif
- 
--/* There are an extraordinary number of issues with <ctype.h>.
--   The last straw is that it varies with the locale.  Use libiberty's
--   replacement instead.  */
--#include "safe-ctype.h"
--
--#include <sys/types.h>
--
--#include <errno.h>
--
--#if !defined (errno) && defined (HAVE_DECL_ERRNO) && !HAVE_DECL_ERRNO
--extern int errno;
--#endif
--
- #ifdef __cplusplus
- #if defined (INCLUDE_ALGORITHM) || !defined (HAVE_SWAP_IN_UTILITY)
- # include <algorithm>
-@@ -243,6 +230,19 @@ extern int errno;
- # include <new>
- # include <utility>
- # include <type_traits>
-+#endif
-+
-+/* There are an extraordinary number of issues with <ctype.h>.
-+   The last straw is that it varies with the locale.  Use libiberty's
-+   replacement instead.  */
-+#include "safe-ctype.h"
-+
-+#include <sys/types.h>
-+
-+#include <errno.h>
-+
-+#if !defined (errno) && defined (HAVE_DECL_ERRNO) && !HAVE_DECL_ERRNO
-+extern int errno;
- #endif
- 
- /* Some of glibc's string inlines cause warnings.  Plus we'd rather
diff --git a/lang/gcc12/files/patch-libcc1_libcc1plugin.cc b/lang/gcc12/files/patch-libcc1_libcc1plugin.cc
deleted file mode 100644
index d54adddb021b..000000000000
--- a/lang/gcc12/files/patch-libcc1_libcc1plugin.cc
+++ /dev/null
@@ -1,19 +0,0 @@
---- libcc1/libcc1plugin.cc.orig	2023-07-27 08:13:07 UTC
-+++ libcc1/libcc1plugin.cc
-@@ -32,6 +32,7 @@
- #undef PACKAGE_VERSION
- 
- #define INCLUDE_MEMORY
-+#define INCLUDE_VECTOR
- #include "gcc-plugin.h"
- #include "system.h"
- #include "coretypes.h"
-@@ -68,8 +69,6 @@
- #include "rpc.hh"
- #include "gcc-c-interface.h"
- #include "context.hh"
--
--#include <vector>
- 
- using namespace cc1_plugin;
- 
diff --git a/lang/gcc12/files/patch-libcc1_libcp1plugin.cc b/lang/gcc12/files/patch-libcc1_libcp1plugin.cc
deleted file mode 100644
index 0f3d2d161404..000000000000
--- a/lang/gcc12/files/patch-libcc1_libcp1plugin.cc
+++ /dev/null
@@ -1,19 +0,0 @@
---- libcc1/libcp1plugin.cc.orig	2023-07-27 08:13:07 UTC
-+++ libcc1/libcp1plugin.cc
-@@ -33,6 +33,7 @@
- #undef PACKAGE_VERSION
- 
- #define INCLUDE_MEMORY
-+#define INCLUDE_VECTOR
- #include "gcc-plugin.h"
- #include "system.h"
- #include "coretypes.h"
-@@ -70,8 +71,6 @@
- #include "marshall-cp.hh"
- #include "rpc.hh"
- #include "context.hh"
--
--#include <vector>
- 
- using namespace cc1_plugin;
-