git: 4938cdfa9867 - main - lang/gcc48: Remove expired port

From: Rene Ladan <rene_at_FreeBSD.org>
Date: Wed, 01 May 2024 20:28:46 UTC
The branch main has been updated by rene:

URL: https://cgit.FreeBSD.org/ports/commit/?id=4938cdfa9867176acc14c04deb418623b17b171f

commit 4938cdfa9867176acc14c04deb418623b17b171f
Author:     Rene Ladan <rene@FreeBSD.org>
AuthorDate: 2024-05-01 20:28:20 +0000
Commit:     Rene Ladan <rene@FreeBSD.org>
CommitDate: 2024-05-01 20:28:20 +0000

    lang/gcc48: Remove expired port
    
    2024-05-01 lang/gcc48: Unsupported by upstream since 2015. Use GCC 10 or newer instead.
---
 MOVED                                              |   1 +
 lang/Makefile                                      |   1 -
 lang/gcc48/Makefile                                | 120 --------------
 lang/gcc48/distinfo                                |   3 -
 lang/gcc48/files/patch-gcc_configure               |  11 --
 lang/gcc48/files/patch-stackprotector-gcc          | 158 ------------------
 lang/gcc48/files/patch-stackprotector-gcc_c-family |  12 --
 lang/gcc48/files/patch-stackprotector-gcc_doc      |  40 -----
 .../gcc48/files/patch-stackprotector-gcc_testsuite | 177 ---------------------
 lang/gcc48/files/pkg-message.in                    |  13 --
 lang/gcc48/pkg-descr                               |   5 -
 lang/gcc48/pkg-plist                               |  25 ---
 12 files changed, 1 insertion(+), 565 deletions(-)

diff --git a/MOVED b/MOVED
index 588ad6684fb3..3606be22b133 100644
--- a/MOVED
+++ b/MOVED
@@ -3228,3 +3228,4 @@ sysutils/dim||2024-04-30|Has expired: Abandonware, upstream stopped development
 net-im/jabberd||2024-04-30|Has expired: No longer developed as of 2019, consider using net-im/ejabberd
 irc/miau||2024-04-30|Has expired: Abandoned upstream, last release in 2010 and no activity since 2014. Consider migrating to irc/soju or irc/znc
 sysutils/no-login||2024-04-30|Has expired: Obsolete, use nologin in base
+lang/gcc48||2024-05-01|Has expired: Unsupported by upstream since 2015. Use GCC 10 or newer instead
diff --git a/lang/Makefile b/lang/Makefile
index 3cf731045a72..1e564399f6b9 100644
--- a/lang/Makefile
+++ b/lang/Makefile
@@ -94,7 +94,6 @@
     SUBDIR += gcc13-devel
     SUBDIR += gcc14-devel
     SUBDIR += gcc15-devel
-    SUBDIR += gcc48
     SUBDIR += gcc6-aux
     SUBDIR += gcc9
     SUBDIR += gforth
diff --git a/lang/gcc48/Makefile b/lang/gcc48/Makefile
deleted file mode 100644
index a89538859c03..000000000000
--- a/lang/gcc48/Makefile
+++ /dev/null
@@ -1,120 +0,0 @@
-PORTNAME=	gcc
-PORTVERSION=	4.8.5
-PORTREVISION=	16
-CATEGORIES=	lang
-MASTER_SITES=	GCC
-PKGNAMESUFFIX=	${SUFFIX}
-
-MAINTAINER=	ports@FreeBSD.org
-COMMENT=	GNU Compiler Collection 4.8
-WWW=		https://gcc.gnu.org
-
-LICENSE=	GPLv3 GPLv3RLE
-LICENSE_COMB=	multi
-
-DEPRECATED=		Unsupported by upstream since 2015. Use GCC 10 or newer instead.
-EXPIRATION_DATE=	2024-05-01
-
-ONLY_FOR_ARCHS=	amd64 i386
-
-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 perl5 tar:bzip2
-USE_BINUTILS=	yes
-USE_PERL5=	build
-
-CPE_VENDOR=	gnu
-
-GCC_VERSION=	${PORTVERSION}
-SUFFIX=		${PORTVERSION:C/([0-9]+).([0-9]+).*/\1\2/}
-SSP_UNSAFE=	yes
-CFLAGS:=	${CFLAGS:N-march=haswell:N-march=ivybridge:N-march=westmere:N-mretpoline}
-CXXFLAGS:=	${CXXFLAGS:N-march=haswell:N-march=ivybridge:N-march=westmere:N-mretpoline}
-
-.include <bsd.port.pre.mk>
-
-.if ${ARCH} == amd64
-CONFIGURE_TARGET=	x86_64-portbld-${OPSYS:tl}${OSREL}
-.endif
-
-LANGUAGES:=	c,c++
-TARGLIB=	${PREFIX}/lib/gcc${SUFFIX}
-LIBEXEC=	${PREFIX}/libexec/gcc${SUFFIX}
-GNU_CONFIGURE=	yes
-GNU_CONFIGURE_MANPREFIX=${PREFIX}/share
-CONFIGURE_OUTSOURCE=	yes
-CONFIGURE_ARGS+=--with-build-config=bootstrap-debug
-ALL_TARGET=	bootstrap-lean
-INSTALL_TARGET=	install-strip
-.if ${UID} != 0
-BINMODE=	755
-.endif
-CONFIGURE_ARGS+=--disable-nls \
-		--disable-multilib \
-		--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 \
-		--disable-libgcj \
-		--enable-languages=${LANGUAGES}
-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 \
-		gcc${SUFFIX}/libitm \
-		gcc${SUFFIX}/libquadmath
-SUB_FILES=	pkg-message
-SUB_LIST+=	TARGLIB=${TARGLIB}
-
-pre-everything::
-	@${ECHO_MSG} "Making GCC ${PORTVERSION} for ${CONFIGURE_TARGET} [${LANGUAGES}]"
-
-post-patch:
-	@${FIND} ${WRKSRC} -type f -name '*.[ch]' | \
-	    ${XARGS} ${EGREP} -l '"(HOST_WIDE|PLUGIN_COND)' | \
-	    ${XARGS} ${REINPLACE_CMD} -E -e 's/"(HOST_WIDE|PLUGIN_COND)/" \1/g'
-
-pre-configure:
-	cd ${WRKSRC} ; contrib/gcc_update --touch
-
-.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}/share/man/man7/*
-	${RM} -r ${STAGEDIR}${TARGLIB}/gcc/*/${GCC_VERSION}/include-fixed/ \
-	         ${STAGEDIR}${TARGLIB}/gcc/*/${GCC_VERSION}/finclude
-	# Add target libraries and include files to packaging list.
-	${RM} ${WRKDIR}/PLIST.lib
-.for d in ${TARGLIB: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/gcc48/distinfo b/lang/gcc48/distinfo
deleted file mode 100644
index ccdd01732668..000000000000
--- a/lang/gcc48/distinfo
+++ /dev/null
@@ -1,3 +0,0 @@
-TIMESTAMP = 1471299749
-SHA256 (gcc-4.8.5.tar.bz2) = 22fb1e7e0f68a63cee631d85b20461d1ea6bda162f03096350e38c8d427ecf23
-SIZE (gcc-4.8.5.tar.bz2) = 86165587
diff --git a/lang/gcc48/files/patch-gcc_configure b/lang/gcc48/files/patch-gcc_configure
deleted file mode 100644
index 7515f80c0c36..000000000000
--- a/lang/gcc48/files/patch-gcc_configure
+++ /dev/null
@@ -1,11 +0,0 @@
---- gcc/configure.orig	2014-12-08 11:29:43 UTC
-+++ gcc/configure
-@@ -6408,7 +6408,7 @@ fi
- 
- loose_warn=
- save_CFLAGS="$CFLAGS"
--for real_option in -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual; do
-+for real_option in -W -Wall -Wno-increment-bool -Wno-narrowing -Wno-register -Wwrite-strings -Wcast-qual; do
-   # Do the check with the no- prefix removed since gcc silently
-   # accepts any -Wno-* option on purpose
-   case $real_option in
diff --git a/lang/gcc48/files/patch-stackprotector-gcc b/lang/gcc48/files/patch-stackprotector-gcc
deleted file mode 100644
index fb5780bdbeb3..000000000000
--- a/lang/gcc48/files/patch-stackprotector-gcc
+++ /dev/null
@@ -1,158 +0,0 @@
---- UTC
---- gcc/cfgexpand.c.orig
-+++ gcc/cfgexpand.c
-@@ -1291,6 +1291,12 @@
-     clear_tree_used (t);
- }
- 
-+ enum {
-+   SPCT_FLAG_DEFAULT = 1,
-+   SPCT_FLAG_ALL = 2,
-+   SPCT_FLAG_STRONG = 3
-+ };
-+
- /* Examine TYPE and determine a bit mask of the following features.  */
- 
- #define SPCT_HAS_LARGE_CHAR_ARRAY	1
-@@ -1360,7 +1366,8 @@
-   if (bits & SPCT_HAS_SMALL_CHAR_ARRAY)
-     has_short_buffer = true;
- 
--  if (flag_stack_protect == 2)
-+  if (flag_stack_protect == SPCT_FLAG_ALL
-+      || flag_stack_protect == SPCT_FLAG_STRONG)
-     {
-       if ((bits & (SPCT_HAS_SMALL_CHAR_ARRAY | SPCT_HAS_LARGE_CHAR_ARRAY))
- 	  && !(bits & SPCT_HAS_AGGREGATE))
-@@ -1514,6 +1521,27 @@
-   return size;
- }
- 
-+/* Helper routine to check if a record or union contains an array field. */
-+
-+static int
-+record_or_union_type_has_array_p (const_tree tree_type)
-+{
-+  tree fields = TYPE_FIELDS (tree_type);
-+  tree f;
-+
-+  for (f = fields; f; f = DECL_CHAIN (f))
-+    if (TREE_CODE (f) == FIELD_DECL)
-+	  {
-+	    tree field_type = TREE_TYPE (f);
-+	    if (RECORD_OR_UNION_TYPE_P (field_type)
-+	        && record_or_union_type_has_array_p (field_type))
-+		  return 1;
-+	    if (TREE_CODE (field_type) == ARRAY_TYPE)
-+	      return 1;
-+	  }
-+  return 0;
-+}
-+
- /* Expand all variables used in the function.  */
- 
- static rtx
-@@ -1525,6 +1553,7 @@
-   struct pointer_map_t *ssa_name_decls;
-   unsigned i;
-   unsigned len;
-+  bool gen_stack_protect_signal = false;
- 
-   /* Compute the phase of the stack frame for this function.  */
-   {
-@@ -1575,6 +1604,24 @@
- 	}
-     }
-   pointer_map_destroy (ssa_name_decls);
-+   
-+  if (flag_stack_protect == SPCT_FLAG_STRONG)
-+    FOR_EACH_LOCAL_DECL (cfun, i, var)
-+      if (!is_global_var (var))
-+        {
-+	      tree var_type = TREE_TYPE (var);
-+	      /* Examine local referenced variables that have their addresses taken,
-+	         contain an array, or are arrays.  */
-+	      if (TREE_CODE (var) == VAR_DECL
-+	          && (TREE_CODE (var_type) == ARRAY_TYPE
-+	          || TREE_ADDRESSABLE (var)
-+	          || (RECORD_OR_UNION_TYPE_P (var_type)
-+	          && record_or_union_type_has_array_p (var_type))))
-+	        {
-+	          gen_stack_protect_signal = true;
-+	          break;
-+	        }
-+        }
- 
-   /* At this point all variables on the local_decls with TREE_USED
-      set are not associated with any block scope.  Lay them out.  */
-@@ -1662,12 +1709,32 @@
- 	dump_stack_var_partition ();
-     }
- 
--  /* There are several conditions under which we should create a
--     stack guard: protect-all, alloca used, protected decls present.  */
--  if (flag_stack_protect == 2
--      || (flag_stack_protect
--	  && (cfun->calls_alloca || has_protected_decls)))
--    create_stack_guard ();
-+  /* Create stack guard, if
-+     a) "-fstack-protector-all" - always;
-+     b) "-fstack-protector-strong" - if there are arrays, memory
-+     references to local variables, alloca used, or protected decls present;
-+     c) "-fstack-protector" - if alloca used, or protected decls present  */
-+	 
-+  switch (flag_stack_protect)
-+    {
-+    case SPCT_FLAG_ALL:
-+      create_stack_guard ();
-+      break;
-+
-+    case SPCT_FLAG_STRONG:
-+      if (gen_stack_protect_signal
-+	      || cfun->calls_alloca || has_protected_decls)
-+	    create_stack_guard ();
-+      break;
-+
-+    case SPCT_FLAG_DEFAULT:
-+      if (cfun->calls_alloca || has_protected_decls)
-+	    create_stack_guard ();
-+      break;
-+
-+    default:
-+      ;
-+    }
- 
-   /* Assign rtl to each variable based on these partitions.  */
-   if (stack_vars_num > 0)
-@@ -1688,7 +1755,7 @@
- 	  expand_stack_vars (stack_protect_decl_phase_1, &data);
- 
- 	  /* Phase 2 contains other kinds of arrays.  */
--	  if (flag_stack_protect == 2)
-+	  if (flag_stack_protect == SPCT_FLAG_ALL)
- 	    expand_stack_vars (stack_protect_decl_phase_2, &data);
- 	}
- 
---- gcc/common.opt.orig
-+++ gcc/common.opt
-@@ -1942,6 +1942,10 @@ fstack-protector-all
- Common Report RejectNegative Var(flag_stack_protect, 2)
- Use a stack protection method for every function
- 
-+fstack-protector-strong
-+Common Report RejectNegative Var(flag_stack_protect, 3)
-+Use a smart stack protection method for certain functions
-+
- fstack-usage
- Common RejectNegative Var(flag_stack_usage)
- Output stack usage information on a per-function basis
---- gcc/gcc.c.orig
-+++ gcc/gcc.c
-@@ -655,7 +655,7 @@ proper position among the other output files.  */
- #ifdef TARGET_LIBC_PROVIDES_SSP
- #define LINK_SSP_SPEC "%{fstack-protector:}"
- #else
--#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all:-lssp_nonshared -lssp}"
-+#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-strong|fstack-protector-all:-lssp_nonshared -lssp}"
- #endif
- #endif
diff --git a/lang/gcc48/files/patch-stackprotector-gcc_c-family b/lang/gcc48/files/patch-stackprotector-gcc_c-family
deleted file mode 100644
index ca1da8a3e08c..000000000000
--- a/lang/gcc48/files/patch-stackprotector-gcc_c-family
+++ /dev/null
@@ -1,12 +0,0 @@
---- UTC
---- gcc/c-family/c-cppbuiltin.c.orig
-+++ gcc/c-family/c-cppbuiltin.c
-@@ -888,6 +888,8 @@ c_cpp_builtins (cpp_reader *pfile)
-   /* Make the choice of the stack protector runtime visible to source code.
-      The macro names and values here were chosen for compatibility with an
-      earlier implementation, i.e. ProPolice.  */
-+  if (flag_stack_protect == 3)
-+    cpp_define (pfile, "__SSP_STRONG__=3");
-   if (flag_stack_protect == 2)
-     cpp_define (pfile, "__SSP_ALL__=2");
-   else if (flag_stack_protect == 1)
diff --git a/lang/gcc48/files/patch-stackprotector-gcc_doc b/lang/gcc48/files/patch-stackprotector-gcc_doc
deleted file mode 100644
index 1d577976b102..000000000000
--- a/lang/gcc48/files/patch-stackprotector-gcc_doc
+++ /dev/null
@@ -1,40 +0,0 @@
---- UTC
---- gcc/doc/cpp.texi.orig
-+++ gcc/doc/cpp.texi
-@@ -2349,6 +2349,10 @@ use.
- This macro is defined, with value 2, when @option{-fstack-protector-all} is
- in use.
- 
-+@item __SSP_STRONG__
-+This macro is defined, with value 3, when @option{-fstack-protector-strong} is
-+in use.
-+
- @item __SANITIZE_ADDRESS__
- This macro is defined, with value 1, when @option{-fsanitize=address} is
- in use.
---- gcc/doc/invoke.texi.orig
-+++ gcc/doc/invoke.texi
-@@ -407,8 +407,8 @@ Objective-C and Objective-C++ Dialects}.
- -fsel-sched-pipelining -fsel-sched-pipelining-outer-loops @gol
- -fshrink-wrap -fsignaling-nans -fsingle-precision-constant @gol
- -fsplit-ivs-in-unroller -fsplit-wide-types -fstack-protector @gol
---fstack-protector-all -fstrict-aliasing -fstrict-overflow @gol
---fthread-jumps -ftracer -ftree-bit-ccp @gol
-+-fstack-protector-all -fstack-protector-strong -fstrict-aliasing @gol
-+-fstrict-overflow -fthread-jumps -ftracer -ftree-bit-ccp @gol
- -ftree-builtin-call-dce -ftree-ccp -ftree-ch @gol
- -ftree-coalesce-inline-vars -ftree-coalesce-vars -ftree-copy-prop @gol
- -ftree-copyrename -ftree-dce -ftree-dominator-opts -ftree-dse @gol
-@@ -8957,6 +8957,12 @@ If a guard check fails, an error message is printed and the program exits.
- @opindex fstack-protector-all
- Like @option{-fstack-protector} except that all functions are protected.
- 
-+@item -fstack-protector-strong
-+@opindex fstack-protector-strong
-+Like @option{-fstack-protector} but includes additional functions to
-+be protected --- those that have local array definitions, or have
-+references to local frame addresses.
-+
- @item -fsection-anchors
- @opindex fsection-anchors
- Try to reduce the number of symbolic address calculations by using
diff --git a/lang/gcc48/files/patch-stackprotector-gcc_testsuite b/lang/gcc48/files/patch-stackprotector-gcc_testsuite
deleted file mode 100644
index 8200bb7e4c28..000000000000
--- a/lang/gcc48/files/patch-stackprotector-gcc_testsuite
+++ /dev/null
@@ -1,177 +0,0 @@
---- UTC
---- /dev/null
-+++ gcc/testsuite/g++.dg/fstack-protector-strong.C
-@@ -0,0 +1,35 @@
-+/* Test that stack protection is done on chosen functions. */
-+
-+/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
-+/* { dg-options "-O2 -fstack-protector-strong" } */
-+
-+class A
-+{
-+public:
-+  A() {}
-+  ~A() {}
-+  void method();
-+  int state;
-+};
-+
-+/* Frame address exposed to A::method via "this". */
-+int
-+foo1 ()
-+{
-+  A a;
-+  a.method ();
-+  return a.state;
-+}
-+
-+/* Possible destroying foo2's stack via &a. */
-+int
-+global_func (A& a);
-+
-+/* Frame address exposed to global_func. */
-+int foo2 ()
-+{
-+  A a;
-+  return global_func (a);
-+}
-+
-+/* { dg-final { scan-assembler-times "stack_chk_fail" 2 } } */
---- /dev/null
-+++ gcc/testsuite/gcc.dg/fstack-protector-strong.c
-@@ -0,0 +1,135 @@
-+/* Test that stack protection is done on chosen functions. */
-+
-+/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
-+/* { dg-options "-O2 -fstack-protector-strong" } */
-+
-+#include<string.h>
-+#include<stdlib.h>
-+
-+extern int g0;
-+extern int* pg0;
-+int
-+goo (int *);
-+int
-+hoo (int);
-+
-+/* Function frame address escaped function call. */
-+int
-+foo1 ()
-+{
-+  int i;
-+  return goo (&i);
-+}
-+
-+struct ArrayStruct
-+{
-+  int a;
-+  int array[10];
-+};
-+
-+struct AA
-+{
-+  int b;
-+  struct ArrayStruct as;
-+};
-+
-+/* Function frame contains array. */
-+int
-+foo2 ()
-+{
-+  struct AA aa;
-+  int i;
-+  for (i = 0; i < 10; ++i)
-+    {
-+      aa.as.array[i] = i * (i-1) + i / 2;
-+    }
-+  return aa.as.array[5];
-+}
-+
-+/* Address computation based on a function frame address. */
-+int
-+foo3 ()
-+{
-+  int a;
-+  int *p;
-+  p = &a + 5;
-+  return goo (p);
-+}
-+
-+/* Address cast based on a function frame address. */
-+int
-+foo4 ()
-+{
-+  int a;
-+  return goo (g0 << 2 ? (int *)(3 * (long)(void *)(&a)) : 0);
-+}
-+
-+/* Address cast based on a local array. */
-+int
-+foo5 ()
-+{
-+  short array[10];
-+  return goo ((int *)(array + 5));
-+}
-+
-+struct BB
-+{
-+  int one;
-+  int two;
-+  int three;
-+};
-+
-+/* Address computaton based on a function frame address.*/
-+int
-+foo6 ()
-+{
-+  struct BB bb;
-+  return goo (&bb.one + sizeof(int));
-+}
-+
-+/* Function frame address escaped via global variable. */
-+int
-+foo7 ()
-+{
-+  int a;
-+  pg0 = &a;
-+  goo (pg0);
-+  return *pg0;
-+}
-+
-+/* Check that this covers -fstack-protector. */
-+int
-+foo8 ()
-+{
-+  char base[100];
-+  memcpy ((void *)base, (const void *)pg0, 105);
-+  return (int)(base[32]);
-+}
-+
-+/* Check that this covers -fstack-protector. */
-+int
-+foo9 ()
-+{
-+  char* p = alloca (100);
-+  return goo ((int *)(p + 50));
-+}
-+
-+int
-+global2 (struct BB* pbb);
-+
-+/* Address taken on struct. */
-+int
-+foo10 ()
-+{
-+  struct BB bb;
-+  int i;
-+  bb.one = global2 (&bb);
-+  for (i = 0; i < 10; ++i)
-+    {
-+      bb.two = bb.one + bb.two;
-+      bb.three = bb.one + bb.two + bb.three;
-+    }
-+  return bb.three;
-+}
-+
-+/* { dg-final { scan-assembler-times "stack_chk_fail" 10 } } */
diff --git a/lang/gcc48/files/pkg-message.in b/lang/gcc48/files/pkg-message.in
deleted file mode 100644
index df3ea725ce59..000000000000
--- a/lang/gcc48/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/gcc48/pkg-descr b/lang/gcc48/pkg-descr
deleted file mode 100644
index 73990e94cb62..000000000000
--- a/lang/gcc48/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 gcc48, g++48, and
-gfortran48, respectively.
-
-Gerald Pfeifer <gerald@FreeBSD.org>
diff --git a/lang/gcc48/pkg-plist b/lang/gcc48/pkg-plist
deleted file mode 100644
index 39293d9b0a36..000000000000
--- a/lang/gcc48/pkg-plist
+++ /dev/null
@@ -1,25 +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/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%%
-share/man/man1/cpp%%SUFFIX%%.1.gz
-share/man/man1/g++%%SUFFIX%%.1.gz
-share/man/man1/gcc%%SUFFIX%%.1.gz
-share/man/man1/gcov%%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
-@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