git: 87382607f0fd - main - lang/gcc8: Remove expired port

From: Muhammad Moinur Rahman <bofh_at_FreeBSD.org>
Date: Sun, 31 Dec 2023 00:09:05 UTC
The branch main has been updated by bofh:

URL: https://cgit.FreeBSD.org/ports/commit/?id=87382607f0fdbf970d02e8bb8394529ac2b3b8d0

commit 87382607f0fdbf970d02e8bb8394529ac2b3b8d0
Author:     Muhammad Moinur Rahman <bofh@FreeBSD.org>
AuthorDate: 2023-12-30 08:17:18 +0000
Commit:     Muhammad Moinur Rahman <bofh@FreeBSD.org>
CommitDate: 2023-12-31 00:06:39 +0000

    lang/gcc8: Remove expired port
    
    2023-12-31 lang/gcc8: Unsupported by upstream. Use GCC 11 or newer instead.
---
 MOVED                                        |   1 +
 Mk/bsd.default-versions.mk                   |   6 +-
 Mk/bsd.gcc.mk                                |   2 +-
 lang/Makefile                                |   1 -
 lang/gcc8/Makefile                           | 155 ---------------------------
 lang/gcc8/distinfo                           |   3 -
 lang/gcc8/files/patch-arm-unwind-cxx-support | 106 ------------------
 lang/gcc8/files/patch-clang-vec_step         |  21 ----
 lang/gcc8/files/patch-fuse-ld=lld            | 106 ------------------
 lang/gcc8/files/patch-gcc_system.h           |  42 --------
 lang/gcc8/files/patch-gets-no-more           |  47 --------
 lang/gcc8/files/patch-gfortran-libgcc        |  70 ------------
 lang/gcc8/files/patch-spe-config             |  24 -----
 lang/gcc8/files/pkg-message.in               |  13 ---
 lang/gcc8/pkg-descr                          |   5 -
 lang/gcc8/pkg-plist                          |  33 ------
 16 files changed, 3 insertions(+), 632 deletions(-)

diff --git a/MOVED b/MOVED
index 254c2a0b6ce3..ac2230447150 100644
--- a/MOVED
+++ b/MOVED
@@ -8294,3 +8294,4 @@ net/wireguard||2023-12-31|Has expired: Only useful for FreeBSD 12 which is EoL s
 net/wireguard-kmod||2023-12-31|Has expired: Only useful for FreeBSD 12 which is EoL soon
 www/py-dj41-django-js-asset|www/py-dj42-django-js-asset|2023-12-31|Has expired: Extended support of Django 4.1 ends December 2023, upgrade to the Django 4.2+ version of this port. See https://www.djangoproject.com/download/
 www/py-dj41-django-timezone-field|www/py-dj42-django-timezone-field|2023-12-31|Has expired: Extended support of Django 4.1 ends December 2023, upgrade to the Django 4.2+ version of this port. See https://www.djangoproject.com/download/
+lang/gcc8||2023-12-31|Has expired: Unsupported by upstream. Use GCC 11 or newer instead.
diff --git a/Mk/bsd.default-versions.mk b/Mk/bsd.default-versions.mk
index c9ec72406e7f..97451633cdf6 100644
--- a/Mk/bsd.default-versions.mk
+++ b/Mk/bsd.default-versions.mk
@@ -56,13 +56,9 @@ FPC_DEFAULT?=		3.2.2
 .  else
 FPC_DEFAULT?=		3.3.1
 .  endif
-# Possible values: 8 (last to support powerpcspe), 9, 10, 11, 12
+# Possible values: 9, 10, 11, 12
 # (Any other version is completely unsupported and not meant for general use.)
-.  if ${ARCH} == "powerpcspe"
-GCC_DEFAULT?=		8
-.  else
 GCC_DEFAULT?=		12
-.  endif
 # Possible values: 10
 GHOSTSCRIPT_DEFAULT?=	10
 # Possible values: mesa-libs, mesa-devel
diff --git a/Mk/bsd.gcc.mk b/Mk/bsd.gcc.mk
index 824da68d5fc8..05a44cded48f 100644
--- a/Mk/bsd.gcc.mk
+++ b/Mk/bsd.gcc.mk
@@ -35,7 +35,7 @@ GCC_Include_MAINTAINER=		gerald@FreeBSD.org
 # All GCC versions supported by this framework.
 #
 # When updating this, keep Mk/bsd.default-versions.mk in sync.
-GCCVERSIONS=	4.8 8 9 10 11 12 13 14
+GCCVERSIONS=	4.8 9 10 11 12 13 14
 
 # No configurable parts below this. ####################################
 #
diff --git a/lang/Makefile b/lang/Makefile
index 0b743aa0f440..1fcf2c7c06f3 100644
--- a/lang/Makefile
+++ b/lang/Makefile
@@ -94,7 +94,6 @@
     SUBDIR += gcc14-devel
     SUBDIR += gcc48
     SUBDIR += gcc6-aux
-    SUBDIR += gcc8
     SUBDIR += gcc9
     SUBDIR += gforth
     SUBDIR += ghc
diff --git a/lang/gcc8/Makefile b/lang/gcc8/Makefile
deleted file mode 100644
index 392f8366203c..000000000000
--- a/lang/gcc8/Makefile
+++ /dev/null
@@ -1,155 +0,0 @@
-PORTNAME=	gcc
-PORTVERSION=	8.5.0
-PORTREVISION=	2
-CATEGORIES=	lang
-MASTER_SITES=	GCC
-PKGNAMESUFFIX=	${SUFFIX}
-
-MAINTAINER=	toolchain@FreeBSD.org
-COMMENT=	GNU Compiler Collection 8
-WWW=		https://gcc.gnu.org
-
-LICENSE=	GPLv3 GPLv3RLE
-LICENSE_COMB=	multi
-
-DEPRECATED=	Unsupported by upstream. Use GCC 11 or newer instead.
-EXPIRATION_DATE=	2023-12-31
-ONLY_FOR_ARCHS=	aarch64 amd64 arm armv6 armv7 i386 powerpc powerpc64 powerpcspe
-
-LIB_DEPENDS=	libgmp.so:math/gmp \
-		libmpfr.so:math/mpfr \
-		libmpc.so:math/mpc
-BUILD_DEPENDS+=	${LOCALBASE}/bin/as:devel/binutils
-RUN_DEPENDS+=	${LOCALBASE}/bin/as:devel/binutils
-.if defined(MAINTAINER_MODE)
-BUILD_DEPENDS+=	runtest:misc/dejagnu
-.endif
-
-USES=		compiler cpe gmake iconv libtool makeinfo perl5 tar:xz
-USE_BINUTILS=	yes
-USE_PERL5=	build
-
-CPE_VENDOR=	gnu
-
-GCC_VERSION=	${PORTVERSION}
-SUFFIX=		${PORTVERSION:C/([0-9]+).*/\1/}
-CFLAGS:=	${CFLAGS:N-mretpoline}
-CXXFLAGS:=	${CXXFLAGS:N-mretpoline}
-
-OPTIONS_DEFINE=		BOOTSTRAP
-OPTIONS_DEFAULT=	BOOTSTRAP
-BOOTSTRAP_DESC=		Build using a full bootstrap
-
-.if exists(/usr/lib32/libc.so)
-OPTIONS_DEFINE_amd64+=		MULTILIB
-OPTIONS_DEFAULT_amd64+=	MULTILIB
-OPTIONS_DEFINE_powerpc64+=	MULTILIB
-OPTIONS_DEFAULT_powerpc64+=	MULTILIB
-MULTILIB_DESC=		Build support for 32-bit and 64-bit targets
-MULTILIB_CONFIGURE_ENABLE=	multilib
-.else
-CONFIGURE_ARGS+=	--disable-multilib
-.endif
-
-.if defined(CPUTYPE) && ${CPUTYPE:Mg[3-5]}
-CFLAGS:=	${CFLAGS:S/mcpu=g/mcpu=G/}
-CXXFLAGS:=	${CFLAGS:S/mcpu=g/mcpu=G/}
-.endif
-
-.include <bsd.port.pre.mk>
-
-.if ${ARCH} == amd64
-CONFIGURE_TARGET=	x86_64-portbld-${OPSYS:tl}${OSREL}
-
-.elif ${ARCH} == powerpc64
-. if defined(PPC_ABI) && ${PPC_ABI} == ELFv2
-CONFIGURE_ARGS+=	--with-abi=elfv2
-. else
-MAKE_ARGS+=	CFLAGS_FOR_TARGET="-O1" CXXFLAGS_FOR_TARGET="-O1" BOOT_CFLAGS="-O1" # PR235975
-.endif
-
-.elif ${ARCH} == powerpcspe
-CONFIGURE_ARGS+=	--with-cpu=8548 --enable-e500_double --without-fp
-.endif
-
-LANGUAGES:=	c,c++,objc,fortran
-TARGLIB=	${PREFIX}/lib/gcc${SUFFIX}
-TARGLIB32=	${PREFIX}/lib32	# The version information is added later
-LIBEXEC=	${PREFIX}/libexec/gcc${SUFFIX}
-GNU_CONFIGURE=	yes
-CONFIGURE_OUTSOURCE=	yes
-.if empty(PORT_OPTIONS:MBOOTSTRAP)
-CONFIGURE_ARGS+=--disable-bootstrap
-.else
-CONFIGURE_ARGS+=--with-build-config=bootstrap-debug
-ALL_TARGET=	bootstrap-lean
-.endif
-INSTALL_TARGET=	install-strip
-.if ${UID} != 0
-BINMODE=	755
-.endif
-CONFIGURE_ARGS+=--disable-nls \
-		--enable-gnu-indirect-function \
-		--libdir=${TARGLIB} \
-		--libexecdir=${LIBEXEC} \
-		--program-suffix=${SUFFIX} \
-		--with-as=${LOCALBASE}/bin/as \
-		--with-gmp=${LOCALBASE} \
-		--with-gxx-include-dir=${TARGLIB}/include/c++/ \
-		--with-ld=${LOCALBASE}/bin/ld \
-		${ICONV_CONFIGURE_ARG} \
-		--with-pkgversion="FreeBSD Ports Collection" \
-		--with-system-zlib \
-		--without-zstd
-MAKE_ARGS+=	MAKEINFOFLAGS="--no-split"
-USE_LDCONFIG=	${TARGLIB}
-PLIST_SUB+=	GCC_VERSION=${GCC_VERSION} \
-		GNU_HOST=${CONFIGURE_TARGET} \
-		SUFFIX=${SUFFIX}
-INFO=		gcc${SUFFIX}/cpp \
-		gcc${SUFFIX}/cppinternals \
-		gcc${SUFFIX}/gcc \
-		gcc${SUFFIX}/gccinstall \
-		gcc${SUFFIX}/gccint \
-		gcc${SUFFIX}/gfortran \
-		gcc${SUFFIX}/libgomp
-# Release tarballs (as opposed to snapshots) always carry this.
-INFO+=		gcc${SUFFIX}/libquadmath \
-		gcc${SUFFIX}/libitm
-SUB_FILES=	pkg-message
-SUB_LIST+=	TARGLIB=${TARGLIB}
-
-CONFIGURE_ARGS+=--enable-languages=${LANGUAGES}
-
-pre-everything::
-	@${ECHO_MSG} "Making GCC ${PORTVERSION} for ${CONFIGURE_TARGET} [${LANGUAGES}]"
-
-pre-configure:
-	cd ${WRKSRC} ; contrib/gcc_update --touch
-	@${RM} ${WRKSRC}/gcc/*/*.info*
-
-.if defined(MAINTAINER_MODE)
-full-regression-test: build
-	cd ${TEST_WRKSRC}; ${MAKE_CMD} -sk check \
-	; ${WRKSRC}/contrib/test_summary
-.endif
-
-post-stage:
-	${RM} ${STAGEDIR}${PREFIX}/man/man7/*
-	${RM} -r ${STAGEDIR}${TARGLIB}/gcc/*/${GCC_VERSION}/include-fixed/
-	# Add target libraries and include files to packaging list.
-	${RM} ${WRKDIR}/PLIST.lib
-
-.if (${ARCH} == amd64 || ${ARCH} == powerpc64) && ${PORT_OPTIONS:MMULTILIB}
-	${MKDIR} ${STAGEDIR}${TARGLIB32}
-	${MV} ${STAGEDIR}${PREFIX}/lib/lib32 ${STAGEDIR}${TARGLIB32}/gcc${SUFFIX}
-.endif
-
-.for d in ${TARGLIB:S/^${PREFIX}\///} ${TARGLIB32:S/^${PREFIX}\///} ${LIBEXEC:S/^${PREFIX}\///}
-	cd ${STAGEDIR}${PREFIX} ; if [ -d $d ]; then \
-	    ${FIND} $d -type f -o -type l >>${WRKDIR}/PLIST.lib ;\
-	fi
-.endfor
-	cd ${WRKDIR} ; ${SED} -i -e "/PLIST.lib/ r PLIST.lib" ${TMPPLIST}
-
-.include <bsd.port.post.mk>
diff --git a/lang/gcc8/distinfo b/lang/gcc8/distinfo
deleted file mode 100644
index c0654295819b..000000000000
--- a/lang/gcc8/distinfo
+++ /dev/null
@@ -1,3 +0,0 @@
-TIMESTAMP = 1621158128
-SHA256 (gcc-8.5.0.tar.xz) = d308841a511bb830a6100397b0042db24ce11f642dab6ea6ee44842e5325ed50
-SIZE (gcc-8.5.0.tar.xz) = 63841008
diff --git a/lang/gcc8/files/patch-arm-unwind-cxx-support b/lang/gcc8/files/patch-arm-unwind-cxx-support
deleted file mode 100644
index ec6959b9655c..000000000000
--- a/lang/gcc8/files/patch-arm-unwind-cxx-support
+++ /dev/null
@@ -1,106 +0,0 @@
---- UTC
-Index: gcc/ginclude/unwind-arm-common.h
-===================================================================
---- gcc/ginclude/unwind-arm-common.h	(revision 219113)
-+++ gcc/ginclude/unwind-arm-common.h	(working copy)
-@@ -82,7 +82,11 @@
- 
-   struct _Unwind_Control_Block
-     {
-+#ifdef __FreeBSD__
-+      unsigned exception_class __attribute__((__mode__(__DI__)));
-+#else
-       char exception_class[8];
-+#endif
-       void (*exception_cleanup)(_Unwind_Reason_Code, _Unwind_Control_Block *);
-       /* Unwinder cache, private fields for the unwinder's use */
-       struct
-@@ -181,7 +185,11 @@
- 
-   /* Support functions for the PR.  */
- #define _Unwind_Exception _Unwind_Control_Block
-+#ifdef __FreeBSD__
-+  typedef unsigned _Unwind_Exception_Class __attribute__((__mode__(__DI__)));
-+#else
-   typedef char _Unwind_Exception_Class[8];
-+#endif
- 
-   void * _Unwind_GetLanguageSpecificData (_Unwind_Context *);
-   _Unwind_Ptr _Unwind_GetRegionStart (_Unwind_Context *);
-Index: libstdc++-v3/libsupc++/unwind-cxx.h
-===================================================================
---- libstdc++-v3/libsupc++/unwind-cxx.h	(revision 219147)
-+++ libstdc++-v3/libsupc++/unwind-cxx.h	(working copy)
-@@ -235,7 +235,7 @@
-   return reinterpret_cast<__cxa_dependent_exception *>(exc + 1) - 1;
- }
- 
--#ifdef __ARM_EABI_UNWINDER__
-+#if defined(__ARM_EABI_UNWINDER__) && !defined(__FreeBSD__)
- static inline bool
- __is_gxx_exception_class(_Unwind_Exception_Class c)
- {
-@@ -309,13 +309,7 @@
-   c[6] = 'R';
-   c[7] = '\0';
- }
--
--static inline void*
--__gxx_caught_object(_Unwind_Exception* eo)
--{
--  return (void*)eo->barrier_cache.bitpattern[0];
--}
--#else // !__ARM_EABI_UNWINDER__
-+#else // !__ARM_EABI_UNWINDER__ || __FreeBSD__
- // This is the primary exception class we report -- "GNUCC++\0".
- const _Unwind_Exception_Class __gxx_primary_exception_class
- = ((((((((_Unwind_Exception_Class) 'G' 
-@@ -339,6 +333,16 @@
-     << 8 | (_Unwind_Exception_Class) '+')
-    << 8 | (_Unwind_Exception_Class) '\x01');
- 
-+const _Unwind_Exception_Class __gxx_forced_unwind_class
-+= ((((((((_Unwind_Exception_Class) 'G'
-+        << 8 | (_Unwind_Exception_Class) 'N')
-+       << 8 | (_Unwind_Exception_Class) 'U')
-+      << 8 | (_Unwind_Exception_Class) 'C')
-+     << 8 | (_Unwind_Exception_Class) 'F')
-+    << 8 | (_Unwind_Exception_Class) 'O')
-+   << 8 | (_Unwind_Exception_Class) 'R')
-+  << 8 | (_Unwind_Exception_Class) '\0');
-+
- static inline bool
- __is_gxx_exception_class(_Unwind_Exception_Class c)
- {
-@@ -346,6 +350,12 @@
-       || c == __gxx_dependent_exception_class;
- }
- 
-+static inline bool
-+__is_gxx_forced_unwind_class(_Unwind_Exception_Class c)
-+{
-+  return c ==  __gxx_forced_unwind_class;
-+}
-+
- // Only checks for primary or dependent, but not that it is a C++ exception at
- // all.
- static inline bool
-@@ -357,7 +367,18 @@
- #define __GXX_INIT_PRIMARY_EXCEPTION_CLASS(c) c = __gxx_primary_exception_class
- #define __GXX_INIT_DEPENDENT_EXCEPTION_CLASS(c) \
-   c = __gxx_dependent_exception_class
-+#define __GXX_INIT_FORCED_UNWIND_CLASS(c) c = __gxx_forced_unwind_class 
-+#endif // __ARM_EABI_UNWINDER__ && !__FreeBSD__
- 
-+#ifdef __ARM_EABI_UNWINDER__
-+static inline void*
-+__gxx_caught_object(_Unwind_Exception* eo)
-+{
-+    return (void*)eo->barrier_cache.bitpattern[0];
-+}
-+
-+#else // !__ARM_EABI_UNWINDER__
-+
- // GNU C++ personality routine, Version 0.
- extern "C" _Unwind_Reason_Code __gxx_personality_v0
-      (int, _Unwind_Action, _Unwind_Exception_Class,
diff --git a/lang/gcc8/files/patch-clang-vec_step b/lang/gcc8/files/patch-clang-vec_step
deleted file mode 100644
index 68fbeedad582..000000000000
--- a/lang/gcc8/files/patch-clang-vec_step
+++ /dev/null
@@ -1,21 +0,0 @@
-https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=239266 reports how
-clang unfortunately poisons user namespace by default (without any
-special options).
-
-Until that changes (or GCC changes) we need to avoid using vec_step
-as a variable.
-
---- UTC
-Index: gcc/tree-vect-loop.c
-===================================================================
---- gcc/tree-vect-loop.c	(revision 273856)
-+++ gcc/tree-vect-loop.c	(working copy)
-@@ -55,6 +55,8 @@ along with GCC; see the file COPYING3.  If not see
- #include "vec-perm-indices.h"
- #include "tree-eh.h"
- 
-+#define vec_step vec_step_
-+
- /* Loop Vectorization Pass.
- 
-    This pass tries to vectorize loops.
diff --git a/lang/gcc8/files/patch-fuse-ld=lld b/lang/gcc8/files/patch-fuse-ld=lld
deleted file mode 100644
index 9b2037dee71e..000000000000
--- a/lang/gcc8/files/patch-fuse-ld=lld
+++ /dev/null
@@ -1,106 +0,0 @@
-commit 4eea76dbfc871614e116961b048d9aa38eee66ea
-Author: law <law@138bc75d-0d04-0410-961f-82ee72b054a4>
-Date:   Thu Nov 8 22:05:27 2018 +0000
-
-            * collect2.c (linker_select):  Add USE_LLD_LD.
-            (ld_suffixes): Add ld.lld.
-            (main): Handle -fuse-ld=lld.
-            * common.opt (-fuse-ld=lld): New option.
-            * doc/invoke.texi (-fuse-ld=lld): Document.
-            * opts.c (common_handle_option): Handle OPT_fuse_ld_lld.
-    
-    git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@265940 138bc75d-0d04-0410-961f-82ee72b054a4
-
---- UTC
-diff --git a/gcc/collect2.c b/gcc/collect2.c
-index a96af137a44..6463ff7b645 100644
---- gcc/collect2.c
-+++ gcc/collect2.c
-@@ -831,6 +831,7 @@ main (int argc, char **argv)
-       USE_PLUGIN_LD,
-       USE_GOLD_LD,
-       USE_BFD_LD,
-+      USE_LLD_LD,
-       USE_LD_MAX
-     } selected_linker = USE_DEFAULT_LD;
-   static const char *const ld_suffixes[USE_LD_MAX] =
-@@ -838,7 +839,8 @@ main (int argc, char **argv)
-       "ld",
-       PLUGIN_LD_SUFFIX,
-       "ld.gold",
--      "ld.bfd"
-+      "ld.bfd",
-+      "ld.lld"
-     };
-   static const char *const real_ld_suffix = "real-ld";
-   static const char *const collect_ld_suffix = "collect-ld";
-@@ -1007,6 +1009,8 @@ main (int argc, char **argv)
- 	  selected_linker = USE_BFD_LD;
- 	else if (strcmp (argv[i], "-fuse-ld=gold") == 0)
- 	  selected_linker = USE_GOLD_LD;
-+  else if (strcmp (argv[i], "-fuse-ld=lld") == 0)
-+    selected_linker = USE_LLD_LD;
- 
- #ifdef COLLECT_EXPORT_LIST
- 	/* These flags are position independent, although their order
-@@ -1096,7 +1100,8 @@ main (int argc, char **argv)
-   /* Maybe we know the right file to use (if not cross).  */
-   ld_file_name = 0;
- #ifdef DEFAULT_LINKER
--  if (selected_linker == USE_BFD_LD || selected_linker == USE_GOLD_LD)
-+  if (selected_linker == USE_BFD_LD || selected_linker == USE_GOLD_LD ||
-+      selected_linker == USE_LLD_LD)
-     {
-       char *linker_name;
- # ifdef HOST_EXECUTABLE_SUFFIX
-@@ -1315,7 +1320,7 @@ main (int argc, char **argv)
- 	      else if (!use_collect_ld
- 		       && strncmp (arg, "-fuse-ld=", 9) == 0)
- 		{
--		  /* Do not pass -fuse-ld={bfd|gold} to the linker. */
-+		  /* Do not pass -fuse-ld={bfd|gold|lld} to the linker. */
- 		  ld1--;
- 		  ld2--;
- 		}
-diff --git a/gcc/common.opt b/gcc/common.opt
-index 5a5d33205a4..99489fbd553 100644
---- gcc/common.opt
-+++ gcc/common.opt
-@@ -2732,6 +2732,10 @@ fuse-ld=gold
- Common Driver Negative(fuse-ld=bfd)
- Use the gold linker instead of the default linker.
- 
-+fuse-ld=lld
-+Common Driver Negative(fuse-ld=lld)
-+Use the lld LLVM linker instead of the default linker.
-+
- fuse-linker-plugin
- Common Undocumented Var(flag_use_linker_plugin)
- 
-diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
-index e0a770491b6..8762f3f7bc3 100644
---- gcc/doc/invoke.texi
-+++ gcc/doc/invoke.texi
-@@ -12610,6 +12610,10 @@ Use the @command{bfd} linker instead of the default linker.
- @opindex fuse-ld=gold
- Use the @command{gold} linker instead of the default linker.
- 
-+@item -fuse-ld=lld
-+@opindex fuse-ld=lld
-+Use the LLVM @command{lld} linker instead of the default linker.
-+
- @cindex Libraries
- @item -l@var{library}
- @itemx -l @var{library}
-diff --git a/gcc/opts.c b/gcc/opts.c
-index 34c283dd765..f094f5f1251 100644
---- gcc/opts.c
-+++ gcc/opts.c
-@@ -2557,6 +2557,7 @@ common_handle_option (struct gcc_options *opts,
- 
-     case OPT_fuse_ld_bfd:
-     case OPT_fuse_ld_gold:
-+    case OPT_fuse_ld_lld:
-     case OPT_fuse_linker_plugin:
-       /* No-op. Used by the driver and passed to us because it starts with f.*/
-       break;
diff --git a/lang/gcc8/files/patch-gcc_system.h b/lang/gcc8/files/patch-gcc_system.h
deleted file mode 100644
index 28a6281c22ca..000000000000
--- a/lang/gcc8/files/patch-gcc_system.h
+++ /dev/null
@@ -1,42 +0,0 @@
---- gcc/system.h.orig	2021-05-14 08:42:09 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>
-@@ -235,6 +222,19 @@ extern int errno;
- # include <cstring>
- # include <new>
- # include <utility>
-+#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/gcc8/files/patch-gets-no-more b/lang/gcc8/files/patch-gets-no-more
deleted file mode 100644
index 4b49aba3ca28..000000000000
--- a/lang/gcc8/files/patch-gets-no-more
+++ /dev/null
@@ -1,47 +0,0 @@
-Disable the build/use of libssp/gets-chk since FreeBSD 12 and later
-do not feature gets() any longer.
-
---- UTC
-Index: libssp/Makefile.am
-===================================================================
---- libssp/Makefile.am	(revision 263319)
-+++ libssp/Makefile.am	(working copy)
-@@ -42,7 +42,7 @@
- nobase_libsubinclude_HEADERS = ssp/ssp.h ssp/string.h ssp/stdio.h ssp/unistd.h
- 
- libssp_la_SOURCES = \
--	ssp.c gets-chk.c memcpy-chk.c memmove-chk.c mempcpy-chk.c \
-+	ssp.c memcpy-chk.c memmove-chk.c mempcpy-chk.c \
- 	memset-chk.c snprintf-chk.c sprintf-chk.c stpcpy-chk.c \
- 	strcat-chk.c strcpy-chk.c strncat-chk.c strncpy-chk.c \
- 	vsnprintf-chk.c vsprintf-chk.c
-Index: libssp/Makefile.in
-===================================================================
---- libssp/Makefile.in	(revision 263319)
-+++ libssp/Makefile.in	(working copy)
-@@ -108,7 +108,7 @@
- am__installdirs = "$(DESTDIR)$(toolexeclibdir)" \
- 	"$(DESTDIR)$(libsubincludedir)"
- LTLIBRARIES = $(toolexeclib_LTLIBRARIES)
--am_libssp_la_OBJECTS = ssp.lo gets-chk.lo memcpy-chk.lo memmove-chk.lo \
-+am_libssp_la_OBJECTS = ssp.lo memcpy-chk.lo memmove-chk.lo \
- 	mempcpy-chk.lo memset-chk.lo snprintf-chk.lo sprintf-chk.lo \
- 	stpcpy-chk.lo strcat-chk.lo strcpy-chk.lo strncat-chk.lo \
- 	strncpy-chk.lo vsnprintf-chk.lo vsprintf-chk.lo
-@@ -291,7 +291,7 @@
- libsubincludedir = $(libdir)/gcc/$(target_noncanonical)/$(gcc_version)/include
- nobase_libsubinclude_HEADERS = ssp/ssp.h ssp/string.h ssp/stdio.h ssp/unistd.h
- libssp_la_SOURCES = \
--	ssp.c gets-chk.c memcpy-chk.c memmove-chk.c mempcpy-chk.c \
-+	ssp.c memcpy-chk.c memmove-chk.c mempcpy-chk.c \
- 	memset-chk.c snprintf-chk.c sprintf-chk.c stpcpy-chk.c \
- 	strcat-chk.c strcpy-chk.c strncat-chk.c strncpy-chk.c \
- 	vsnprintf-chk.c vsprintf-chk.c
-@@ -452,7 +452,6 @@
- distclean-compile:
- 	-rm -f *.tab.c
- 
--@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gets-chk.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libssp_nonshared_la-ssp-local.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/memcpy-chk.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/memmove-chk.Plo@am__quote@
diff --git a/lang/gcc8/files/patch-gfortran-libgcc b/lang/gcc8/files/patch-gfortran-libgcc
deleted file mode 100644
index 89c6cb902c42..000000000000
--- a/lang/gcc8/files/patch-gfortran-libgcc
+++ /dev/null
@@ -1,70 +0,0 @@
-GCC has two runtime libraries:  The static library libgcc.a (-lgcc) and
-the shared library libgcc_s.so (-lgcc_s).  Both implement many of the
-same functions but they also each have their unique functions.  When
-gcc links programs and libraries there are three possibilities:
-
-1. gcc -static-libgcc or gcc -static: -lgcc
-   => Just use libgcc.a.
-
-2. gcc -shared-libgcc: -lgcc_s -lgcc
-   => Link with libgcc_s first, so libgcc.a is only used for its unique
-      functions.
-
-3. gcc: -lgcc -Wl,--as-needed -lgcc_s -Wl,--no-as-needed
-   => Link with libgcc.a first so libgcc_s is only used for its unique
-      functions (_Unwind_* functions).
-
-Approach 3 is the default for gcc and it's also what clang and clang++ use;
-approach 2 is the default for gfortran, g++ and probably other front ends.
-
-This patch makes 3 the default for gfortran.  It significantly reduces
-the use of libgcc_s.  The _Unwind_* functions are also available in the
-old base system libgcc_s which means this reduces the need for
--rpath /usr/local/lib/gccN in ports that depend on libraries built with
-gfortran.  Consider a dependency tree like this:
-
-  prog -> libA -> libgcc_s (old base system libgcc_s is fine)
-       -> libB -> libgcc_s (libB built with gfortran, needs new libgcc_s)
-
-Here prog needs to be linked with -rpath /usr/local/lib/gccN even if it's
-a normal C program compiled with clang.  Without -rpath it will fail to
-start because it loads old libgcc_s first as a dependency of libA and then
-it fails to load libB.  With this patch libB works with old base system
-libgcc_s or may not need libgcc_s at all, so prog does not need to be
-linked with -rpath.
-
-Upstream is unlikely accept a patch like this because libgfortran calls
-some _Unwind_* functions and so always needs libgcc_s.  Also because
-every Fortran program and library links to libgfortran it makes sense
-that option 2 above is the default.  On FreeBSD where clang and GCC
-compiled code can be mixed and where multiple libgcc_s may be installed,
-option 3 is just a lot easier to deal with.
-
-The bug that sparked this is PR 208120 (but note there's a lot of
-misleading information in that bug.  CMake is not actually doing
-anything wrong.)
-
---- UTC
---- gcc/fortran/gfortranspec.c.orig	2015-06-26 17:47:23 UTC
-+++ gcc/fortran/gfortranspec.c
-@@ -404,7 +404,7 @@ For more information about these matters
- 	}
-     }
- 
--#ifdef ENABLE_SHARED_LIBGCC
-+#if 0
-   if (library)
-     {
-       unsigned int i;
-
---- libgfortran/Makefile.in.orig	2019-02-22 14:22:13.000000000 +0000
-+++ libgfortran/Makefile.in	2019-02-27 16:27:08.856408000 +0000
-@@ -625,7 +625,7 @@
- 	$(LTLDFLAGS) $(LIBQUADLIB) ../libbacktrace/libbacktrace.la \
- 	$(HWCAP_LDFLAGS) \
- 	-lm $(extra_ldflags_libgfortran) \
--	$(version_arg) -Wc,-shared-libgcc
-+	$(version_arg)
- 
- libgfortran_la_DEPENDENCIES = $(version_dep) libgfortran.spec $(LIBQUADLIB_DEP)
- cafexeclib_LTLIBRARIES = libcaf_single.la
diff --git a/lang/gcc8/files/patch-spe-config b/lang/gcc8/files/patch-spe-config
deleted file mode 100644
index 7a1689898e1f..000000000000
--- a/lang/gcc8/files/patch-spe-config
+++ /dev/null
@@ -1,24 +0,0 @@
---- UTC
-Index: gcc/config.gcc
-===================================================================
---- gcc/config.gcc.orig 2018-06-25 19:34:01.000000000 +0000
-+++ gcc/config.gcc      2018-12-14 04:14:25.044026000 +0000
-@@ -455,7 +455,7 @@
- nvptx-*-*)
- 	cpu_type=nvptx
- 	;;
--powerpc*-*-*spe*)
-+powerpcspe-*-*|powerpc*-*-*spe*)
- 	cpu_type=powerpcspe
- 	extra_headers="ppc-asm.h altivec.h spe.h ppu_intrinsics.h paired.h spu2vmx.h vec_types.h si2vmx.h htmintrin.h htmxlintrin.h"
- 	case x$with_cpu in
-@@ -2413,6 +2413,9 @@
- 		tm_file="${tm_file} rs6000/default64.h rs6000/freebsd64.h"
- 		tmake_file="${tmake_file} rs6000/t-freebsd64"
- 		extra_options="${extra_options} rs6000/linux64.opt"
-+		;;
-+	     powerpcspe-*)
-+		tm_file="${tm_file} powerpcspe/freebsd.h powerpcspe/linuxspe.h powerpcspe/e500.h"
- 		;;
- 	     *)
- 		tm_file="${tm_file} rs6000/freebsd.h"
diff --git a/lang/gcc8/files/pkg-message.in b/lang/gcc8/files/pkg-message.in
deleted file mode 100644
index df3ea725ce59..000000000000
--- a/lang/gcc8/files/pkg-message.in
+++ /dev/null
@@ -1,13 +0,0 @@
-[
-{ type: install
-  message: <<EOD
-To ensure binaries built with this toolchain find appropriate versions
-of the necessary run-time libraries, you may want to link using
-
-  -Wl,-rpath=%%TARGLIB%%
-
-For ports leveraging USE_GCC, USES=compiler, or USES=fortran this happens
-transparently.
-EOD
-}
-]
diff --git a/lang/gcc8/pkg-descr b/lang/gcc8/pkg-descr
deleted file mode 100644
index 15624762b9a5..000000000000
--- a/lang/gcc8/pkg-descr
+++ /dev/null
@@ -1,5 +0,0 @@
-GCC, the GNU Compiler Collection, supports a number of languages.
-This port installs the C, C++, and Fortran front ends as gcc8, g++8,
-and gfortran8, respectively.
-
-Gerald Pfeifer <gerald@FreeBSD.org>
diff --git a/lang/gcc8/pkg-plist b/lang/gcc8/pkg-plist
deleted file mode 100644
index 8d302f0800b8..000000000000
--- a/lang/gcc8/pkg-plist
+++ /dev/null
@@ -1,33 +0,0 @@
-bin/%%GNU_HOST%%-c++%%SUFFIX%%
-bin/%%GNU_HOST%%-g++%%SUFFIX%%
-bin/%%GNU_HOST%%-gcc%%SUFFIX%%
-bin/%%GNU_HOST%%-gcc-%%GCC_VERSION%%
-bin/%%GNU_HOST%%-gcc-ar%%SUFFIX%%
-bin/%%GNU_HOST%%-gcc-nm%%SUFFIX%%
-bin/%%GNU_HOST%%-gcc-ranlib%%SUFFIX%%
-bin/%%GNU_HOST%%-gfortran%%SUFFIX%%
-bin/c++%%SUFFIX%%
-bin/cpp%%SUFFIX%%
-bin/g++%%SUFFIX%%
-bin/gcc%%SUFFIX%%
-bin/gcc-ar%%SUFFIX%%
-bin/gcc-nm%%SUFFIX%%
-bin/gcc-ranlib%%SUFFIX%%
-bin/gcov%%SUFFIX%%
-bin/gcov-dump%%SUFFIX%%
-bin/gcov-tool%%SUFFIX%%
-bin/gfortran%%SUFFIX%%
-man/man1/cpp%%SUFFIX%%.1.gz
-man/man1/g++%%SUFFIX%%.1.gz
-man/man1/gcc%%SUFFIX%%.1.gz
-man/man1/gcov%%SUFFIX%%.1.gz
-man/man1/gcov-dump%%SUFFIX%%.1.gz
-man/man1/gcov-tool%%SUFFIX%%.1.gz
-man/man1/gfortran%%SUFFIX%%.1.gz
-share/gcc-%%GCC_VERSION%%/python/libstdcxx/__init__.py
-share/gcc-%%GCC_VERSION%%/python/libstdcxx/v6/__init__.py
-share/gcc-%%GCC_VERSION%%/python/libstdcxx/v6/printers.py
-share/gcc-%%GCC_VERSION%%/python/libstdcxx/v6/xmethods.py
-@postexec if type ccache-update-links >/dev/null 2>&1; then ccache-update-links -v; fi
-@postunexec if type ccache-update-links >/dev/null 2>&1; then ccache-update-links -v; fi
-@comment Insert PLIST.lib here