aboutsummaryrefslogtreecommitdiffstats
path: root/lang
diff options
context:
space:
mode:
authorgerald <gerald@FreeBSD.org>2009-01-24 20:19:08 +0800
committergerald <gerald@FreeBSD.org>2009-01-24 20:19:08 +0800
commitf582ac2449bc1289bee30f20e12afd565ad70664 (patch)
tree1b3f21aa160eb777e1528f00ae15d9c5616e7a6b /lang
parentc808ba02def97ff3d1dc307790c53f916a1b727d (diff)
downloadfreebsd-ports-gnome-f582ac2449bc1289bee30f20e12afd565ad70664.tar.gz
freebsd-ports-gnome-f582ac2449bc1289bee30f20e12afd565ad70664.tar.zst
freebsd-ports-gnome-f582ac2449bc1289bee30f20e12afd565ad70664.zip
Remove lang/gcc28 (GCC 2.8) which has been DEPRECATED for more than
3 years and does not build anywhere. No objections: mjl@luckie.org.nz (maintainer), pav
Diffstat (limited to 'lang')
-rw-r--r--lang/Makefile1
-rw-r--r--lang/gcc28/Makefile81
-rw-r--r--lang/gcc28/distinfo3
-rw-r--r--lang/gcc28/files/patch-01152
-rw-r--r--lang/gcc28/files/patch-0240
-rw-r--r--lang/gcc28/files/patch-03203
-rw-r--r--lang/gcc28/files/patch-0420
-rw-r--r--lang/gcc28/files/patch-0534
-rw-r--r--lang/gcc28/files/patch-0642
-rw-r--r--lang/gcc28/files/patch-0719
-rw-r--r--lang/gcc28/files/patch-0817
-rw-r--r--lang/gcc28/files/patch-0911
-rw-r--r--lang/gcc28/files/patch-1067
-rw-r--r--lang/gcc28/files/patch-1137
-rw-r--r--lang/gcc28/files/patch-1252
-rw-r--r--lang/gcc28/files/patch-14236
-rw-r--r--lang/gcc28/files/patch-1511
-rw-r--r--lang/gcc28/files/patch-2011
-rw-r--r--lang/gcc28/files/patch-2111
-rw-r--r--lang/gcc28/files/patch-2212
-rw-r--r--lang/gcc28/files/patch-238
-rw-r--r--lang/gcc28/files/patch-2410
-rw-r--r--lang/gcc28/files/patch-cpp.texi14
-rw-r--r--lang/gcc28/files/patch-gcc.texi14
-rw-r--r--lang/gcc28/pkg-descr10
-rw-r--r--lang/gcc28/pkg-plist42
26 files changed, 0 insertions, 1158 deletions
diff --git a/lang/Makefile b/lang/Makefile
index e3174061cc68..f7f6d1a83866 100644
--- a/lang/Makefile
+++ b/lang/Makefile
@@ -82,7 +82,6 @@
SUBDIR += gauche
SUBDIR += gawk
SUBDIR += gcc-ooo
- SUBDIR += gcc28
SUBDIR += gcc295
SUBDIR += gcc33
SUBDIR += gcc34
diff --git a/lang/gcc28/Makefile b/lang/gcc28/Makefile
deleted file mode 100644
index 819ac4a0cd08..000000000000
--- a/lang/gcc28/Makefile
+++ /dev/null
@@ -1,81 +0,0 @@
-# ex:ts=8
-# Ports collection makefile for: gcc
-# Date created: 17 Jan 1998
-# Whom: David O'Brien <obrien@NUXI.com>
-#
-# $FreeBSD$
-#
-
-PORTNAME= gcc
-PORTVERSION= 2.8.1
-PORTREVISION= 3
-CATEGORIES= lang
-MASTER_SITES= ${MASTER_SITE_GNU}
-MASTER_SITE_SUBDIR= gcc
-
-MAINTAINER= mjl@luckie.org.nz
-COMMENT= GNU Compiler Collection 2.8
-
-NOT_FOR_ARCHS= amd64 sparc64 ia64
-NO_CDROM= "old version, not worth the cost in real estate"
-
-LATEST_LINK= gcc28
-
-DEPRECATED= This port is no longer in use by anything in the ports collection. Use a later release instead
-
-.include <bsd.port.pre.mk>
-
-.if ${ARCH} == "alpha"
-BROKEN= Does not compile on alpha
-.endif
-
-CONFIGURE_ENV+= OSVERSION=${OSVERSION}
-PLIST_SUB= GNUHOST=${CONFIGURE_TARGET}
-CONFIGURE_ARGS= --with-gxx-include-dir=${PREFIX}/lib/gcc-lib/${CONFIGURE_TARGET}/2.8.1/include/g++ \
- --program-suffix=28
-GNU_CONFIGURE= yes
-USE_GMAKE= yes
-ALL_TARGET= bootstrap
-MAN1= cccp28.1 g++28.1 gcc28.1
-INFO= cpp gcc
-
-pre-everything::
- @${ECHO_MSG} "GCC ${DISTNAME:S/^gcc-//} for ${OPSYS} ${OSREL}"
-
-pre-patch:
- @${MV} ${WRKSRC}/config/i386/freebsd.h ${WRKSRC}/config/i386/freebsd-aout.h
- @${MV} ${WRKSRC}/config/i386/freebsd-elf.h ${WRKSRC}/config/i386/freebsd.h
-
-pre-configure:
- @# Keep from running `autoconf' and `autoheader' since we modified
- @# configure.in by patching it.
- @${TOUCH} ${TOUCH_FLAGS} ${WRKSRC}/configure
- @${TOUCH} ${TOUCH_FLAGS} ${WRKSRC}/cstamp-h.in
- @(cd ${WRKSRC}/config/${ARCH}/ ; \
- MAJ=`/sbin/sysctl -n kern.osreldate | ${SED} -e '/.....$$/s///'` ; \
- ${MV} freebsd-aout.h freebsd-aout.h.in ; \
- ${SED} -e "s:__FreeBSD__=[0-9]*:__FreeBSD__=$${MAJ}:" \
- freebsd-aout.h.in >freebsd-aout.h ; \
- ${MV} freebsd.h freebsd.h.in ; \
- ${SED} -e "s:__FreeBSD__=[0-9]*:__FreeBSD__=$${MAJ}:" freebsd.h.in \
- >freebsd.h)
-
-post-install:
- @${RM} -f ${PREFIX}/bin/c++
- (for prog in ${PREFIX}/bin/gcc ${PREFIX}/bin/g++ ${PREFIX}/bin/gcov \
- ${PREFIX}/bin/protoize ${PREFIX}/bin/unprotoize \
- ${PREFIX}/bin/${CONFIGURE_TARGET}-gcc \
- ${PREFIX}/lib/gcc-lib/${CONFIGURE_TARGET}/2.8.1/cc1 \
- ${PREFIX}/lib/gcc-lib/${CONFIGURE_TARGET}/2.8.1/cc1obj \
- ${PREFIX}/lib/gcc-lib/${CONFIGURE_TARGET}/2.8.1/cc1plus \
- ${PREFIX}/lib/gcc-lib/${CONFIGURE_TARGET}/2.8.1/cpp ; \
- do ${STRIP_CMD} $$prog ; \
- done)
- @${MV} ${PREFIX}/bin/gcc ${PREFIX}/bin/gcc28
- @${MV} ${PREFIX}/bin/g++ ${PREFIX}/bin/g++28
- @${MV} ${PREFIX}/bin/gcov ${PREFIX}/bin/gcov28
- @${MV} ${PREFIX}/man/man1/cccp.1 ${PREFIX}/man/man1/cccp28.1
- @${MV} ${PREFIX}/man/man1/g++.1 ${PREFIX}/man/man1/g++28.1
- @${MV} ${PREFIX}/man/man1/gcc.1 ${PREFIX}/man/man1/gcc28.1
-
-.include <bsd.port.post.mk>
diff --git a/lang/gcc28/distinfo b/lang/gcc28/distinfo
deleted file mode 100644
index af8de09584ef..000000000000
--- a/lang/gcc28/distinfo
+++ /dev/null
@@ -1,3 +0,0 @@
-MD5 (gcc-2.8.1.tar.gz) = 311829e9c36080fb54b0145285746a9e
-SHA256 (gcc-2.8.1.tar.gz) = 3b30fbfdf93e628373d90d174243f3267b0eec9ebe792bb64fd15b8828c2ea4c
-SIZE (gcc-2.8.1.tar.gz) = 8447495
diff --git a/lang/gcc28/files/patch-01 b/lang/gcc28/files/patch-01
deleted file mode 100644
index 1573fadd5c80..000000000000
--- a/lang/gcc28/files/patch-01
+++ /dev/null
@@ -1,152 +0,0 @@
---- config/i386/freebsd-aout.h.orig Sun Oct 19 09:31:05 1997
-+++ config/i386/freebsd-aout.h Tue Aug 11 14:28:56 1998
-@@ -35,10 +35,21 @@
- #include "i386/perform.h"
-
- #undef CPP_PREDEFINES
--#define CPP_PREDEFINES "-Dunix -Di386 -D__FreeBSD__ -D__386BSD__ -Asystem(unix) -Asystem(FreeBSD) -Acpu(i386) -Amachine(i386)"
-+#define CPP_PREDEFINES "-Dunix -Di386 -D__FreeBSD__=2 -Asystem(unix) -Asystem(FreeBSD) -Acpu(i386) -Amachine(i386)"
-+
-+/* FreeBSD using a.out does not support DWARF2 unwinding mechanisms.
-+ Thus, need the equivalent of "-fsjlj-exceptions" (use setjmp/longjmp
-+ for exceptions). */
-+#define DWARF2_UNWIND_INFO 0
-+
-+/* Provide a CPP_SPEC appropriate for OpenBSD. Current we just deal with
-+ the GCC option `-posix'. */
-+
-+#undef CPP_SPEC
-+#define CPP_SPEC "%{posix:-D_POSIX_SOURCE}"
-
- /* Like the default, except no -lg. */
--#define LIB_SPEC "%{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p}"
-+#define LIB_SPEC "%{!shared:%{!pg:-lc}%{pg:-lc_p}}"
-
- #undef SIZE_TYPE
- #define SIZE_TYPE "unsigned int"
-@@ -54,8 +65,13 @@
- #undef WCHAR_TYPE_SIZE
- #define WCHAR_TYPE_SIZE 16
-
-+/* We have atexit(3). */
- #define HAVE_ATEXIT
-
-+/* We want gcc.c to call mktemp() for each file it generates. We would
-+ prefer mkstemp(), but we will take what we get. XXX busted */
-+/* #undef MKTEMP_EACH_FILE */
-+
- #undef ASM_APP_ON
- #define ASM_APP_ON "#APP\n"
-
-@@ -114,6 +130,7 @@
-
- #define TYPE_ASM_OP ".type"
- #define SIZE_ASM_OP ".size"
-+#define SET_ASM_OP ".set"
-
- /* The following macro defines the format used to output the second
- operand of the .type assembler directive. Different svr4 assemblers
-@@ -123,6 +140,10 @@
-
- #define TYPE_OPERAND_FMT "@%s"
-
-+/* Handle #pragma weak and #pragma pack. */
-+
-+#define HANDLE_SYSV_PRAGMA 1
-+
- /* Write the extra assembler code needed to declare a function's result.
- Most svr4 assemblers don't require any special declaration of the
- result value, but there are exceptions. */
-@@ -131,9 +158,9 @@
- #define ASM_DECLARE_RESULT(FILE, RESULT)
- #endif
-
--/* These macros generate the special .type and .size directives which
-+/* these macros generate the special .type and .size directives which
- are used to set the corresponding fields of the linker symbol table
-- entries in an ELF object file under SVR4. These macros also output
-+ entries in an elf object file under svr4. these macros also output
- the starting labels for the relevant functions/objects. */
-
- /* Write the extra assembler code needed to declare a function properly.
-@@ -185,6 +212,7 @@
- && DECL_INITIAL (DECL) == error_mark_node \
- && !size_directive_output) \
- { \
-+ size_directive_output = 1; \
- fprintf (FILE, "\t%s\t ", SIZE_ASM_OP); \
- assemble_name (FILE, name); \
- fprintf (FILE, ",%d\n", int_size_in_bytes (TREE_TYPE (DECL)));\
-@@ -213,33 +241,57 @@
- } \
- } while (0)
-
-+/* XXX - should ASM_SPEC be " %| %{fpic:-k} %{fPIC:-k -K}" ??? */
- #define ASM_SPEC " %| %{fpic:-k} %{fPIC:-k}"
-+
- #define LINK_SPEC \
-- "%{!nostdlib:%{!r*:%{!e*:-e start}}} -dc -dp %{static:-Bstatic} %{assert*}"
-+ "%{p:%e`-p' not supported; use `-pg' and gprof(1)} \
-+ %{shared:-Bshareable} \
-+ %{!shared:%{!nostdlib:%{!r:%{!e*:-e start}}} -dc -dp %{static:-Bstatic} \
-+ %{pg:-Bstatic} %{Z}} \
-+ %{assert*} %{R*}"
-+
-+#ifdef FROM_OPENBSD
-+/* This defines which switch letters take arguments.
-+ make -R /path/to/lib work the same as -R/path/to/lib */
-+#undef SWITCH_TAKES_ARG
-+#define SWITCH_TAKES_ARG(CHAR) \
-+ (DEFAULT_SWITCH_TAKES_ARG(CHAR) \
-+ || (CHAR) == 'R')
-+#endif
-+
-+#define STARTFILE_SPEC \
-+ "%{shared:c++rt0.o%s} \
-+ %{!shared:%{pg:gcrt0.o%s}%{!pg:%{static:scrt0.o%s}%{!static:crt0.o%s}}}"
-
--/* This is defined when gcc is compiled in the BSD-directory-tree, and must
-- * make up for the gap to all the stuff done in the GNU-makefiles.
-+#define MD_STARTFILE_PREFIX "/usr/lib/aout/"
-+
-+/* FREEBSD_NATIVE is defined when gcc is compiled in the BSD-directory-tree,
-+ * and must make up for the gap to all the stuff done in the GNU-makefiles.
- */
-
- #ifdef FREEBSD_NATIVE
-
--#define INCLUDE_DEFAULTS { \
-- { "/usr/include", 0, 0, 0 }, \
-- { "/usr/include/g++", "G++", 1, 1 }, \
-- { 0, 0, 0, 0} \
-- }
-+#undef GCC_INCLUDE_DIR
-+#define GCC_INCLUDE_DIR "/usr/include"
-+
-+#undef GPLUSPLUS_INCLUDE_DIR
-+#define GPLUSPLUS_INCLUDE_DIR "/usr/include/g++"
-+
-+/* Look for the include files in the system-defined places. */
-+
-+#undef INCLUDE_DEFAULTS
-+#define INCLUDE_DEFAULTS \
-+ { \
-+ { GPLUSPLUS_INCLUDE_DIR, "G++", 1, 1 }, \
-+ { GCC_INCLUDE_DIR, 0, 0, 0 }, \
-+ { 0, 0, 0, 0 } \
-+ }
-
- #undef MD_EXEC_PREFIX
- #define MD_EXEC_PREFIX "/usr/libexec/"
-
- #undef STANDARD_STARTFILE_PREFIX
- #define STANDARD_STARTFILE_PREFIX "/usr/lib"
--
--#if 0 /* This is very wrong!!! */
--#define DEFAULT_TARGET_MACHINE "i386-unknown-freebsd_1.0"
--#define GPLUSPLUS_INCLUDE_DIR "/usr/local/lib/gcc-lib/i386-unknown-freebsd_1.0/2.5.8/include"
--#define TOOL_INCLUDE_DIR "/usr/local/i386-unknown-freebsd_1.0/include"
--#define GCC_INCLUDE_DIR "/usr/local/lib/gcc-lib/i386-unknown-freebsd_1.0/2.5.8/include"
--#endif
-
- #endif /* FREEBSD_NATIVE */
diff --git a/lang/gcc28/files/patch-02 b/lang/gcc28/files/patch-02
deleted file mode 100644
index e141d3a56714..000000000000
--- a/lang/gcc28/files/patch-02
+++ /dev/null
@@ -1,40 +0,0 @@
---- config/i386/freebsd.h.orig Fri Dec 5 04:15:34 1997
-+++ config/i386/freebsd.h Sun Apr 27 15:12:42 2003
-@@ -26,8 +26,18 @@
-
- /* The svr4 ABI for the i386 says that records and unions are returned
- in memory. */
-+/* On FreeBSD, we do not. */
- #undef DEFAULT_PCC_STRUCT_RETURN
--#define DEFAULT_PCC_STRUCT_RETURN 1
-+#define DEFAULT_PCC_STRUCT_RETURN 0
-+
-+/* This gets defined in tm.h->linux.h->svr4.h, and keeps us from using
-+ libraries compiled with the native cc, so undef it. */
-+#undef NO_DOLLAR_IN_LABEL
-+
-+/* FreeBSD using ELF does not support DWARF2 unwinding mechanisms.
-+ Thus, need the equivalent of "-fsjlj-exceptions" (use setjmp/longjmp
-+ for exceptions). */
-+#define DWARF2_UNWIND_INFO 0
-
- /* This is how to output an element of a case-vector that is relative.
- This is only used for PIC code. See comments by the `casesi' insn in
-@@ -140,7 +150,7 @@
- #define WCHAR_TYPE_SIZE BITS_PER_WORD
-
- #undef CPP_PREDEFINES
--#define CPP_PREDEFINES "-Dunix -D__ELF__ -D__FreeBSD__=2 -Asystem(FreeBSD)"
-+#define CPP_PREDEFINES "-Di386 -Dunix -D__ELF__ -D__FreeBSD__=3 -Asystem(FreeBSD) -Asystem(FreeBSD) -Acpu(i386) -Amachine(i386)"
-
- #undef CPP_SPEC
- #define CPP_SPEC "%(cpp_cpu) %[cpp_cpu] %{fPIC:-D__PIC__ -D__pic__} %{fpic:-D__PIC__ -D__pic__} %{posix:-D_POSIX_SOURCE}"
-@@ -176,7 +186,7 @@
- done. */
-
- #undef LINK_SPEC
--#define LINK_SPEC "-m elf_i386 %{shared:-shared} \
-+#define LINK_SPEC "%{shared:-shared} \
- %{!shared: \
- %{!ibcs: \
- %{!static: \
diff --git a/lang/gcc28/files/patch-03 b/lang/gcc28/files/patch-03
deleted file mode 100644
index 5b2f582a9b2d..000000000000
--- a/lang/gcc28/files/patch-03
+++ /dev/null
@@ -1,203 +0,0 @@
---- configure.orig Sat Feb 28 21:02:02 1998
-+++ configure Sat Feb 12 02:28:01 2005
-@@ -677,9 +677,9 @@
- if test -z "$ac_aux_dir"; then
- { echo "configure: error: can not find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." 1>&2; exit 1; }
- fi
--ac_config_guess=$ac_aux_dir/config.guess
--ac_config_sub=$ac_aux_dir/config.sub
--ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
-+ac_config_guess="/bin/sh $ac_aux_dir/config.guess"
-+ac_config_sub="/bin/sh $ac_aux_dir/config.sub"
-+ac_configure="/bin/sh $ac_aux_dir/configure" # This should be Cygnus configure.
-
-
- # Do some error checking and defaulting for the host and target type.
-@@ -2797,6 +2797,21 @@
- a29k-*-*) # Default a29k environment.
- use_collect2=yes
- ;;
-+ alpha*-*-freebsd*)
-+ tm_file=alpha/freebsd.h
-+ if [ "${OSVERSION}" -lt 600011 ] ; \
-+ then fixincludes=fixinc.math; \
-+ else fixincludes=Makefile.in; \
-+ fi
-+ tmake_file=t-libc-ok
-+ ;;
-+ alpha-*-openbsd*)
-+ tm_file=alpha/openbsd.h
-+ # On OpenBSD, the headers are already okay.
-+ fixincludes=Makefile.in
-+ tmake_file=t-libc-ok
-+ xmake_file=x-openbsd
-+ ;;
- alpha*-*-linux-gnuecoff*)
- tm_file="${tm_file} alpha/linux.h"
- xm_file="${xm_file} alpha/xm-linux.h"
-@@ -3158,6 +3173,14 @@
- use_collect2=yes
- fixincludes=Makefile.in
- ;;
-+ hppa*-*-openbsd*)
-+ target_cpu_default=1
-+ tm_file="pa/pa-openbsd.h"
-+ xm_file=pa/xm-openbsd.h
-+ xmake_file=x-openbsd
-+ use_collect2=yes
-+ fixincludes=Makefile.in
-+ ;;
- i370-*-mvs*)
- ;;
- i[34567]86-ibm-aix*) # IBM PS/2 running AIX
-@@ -3256,20 +3279,24 @@
- # Next line turned off because both 386BSD and BSD/386 use GNU ld.
- # use_collect2=yes
- ;;
-- i[34567]86-*-freebsdelf*)
-- tm_file="i386/i386.h i386/att.h linux.h i386/freebsd-elf.h i386/perform.h"
-- # On FreeBSD, the headers are already ok, except for math.h.
-- fixincludes=fixinc.math
-+ i[34567]86-*-freebsdaout*)
-+ tm_file=i386/freebsd-aout.h
-+ if [ "${OSVERSION}" -lt 600011 ] ; \
-+ then fixincludes=fixinc.math; \
-+ else fixincludes=Makefile.in; \
-+ fi
- tmake_file=i386/t-freebsd
-- gas=yes
-- gnu_ld=yes
-- stabs=yes
- ;;
- i[34567]86-*-freebsd*)
-- tm_file=i386/freebsd.h
-- # On FreeBSD, the headers are already ok, except for math.h.
-- fixincludes=fixinc.math
-+ tm_file="i386/i386.h i386/att.h linux.h i386/freebsd.h i386/perform.h"
-+ if [ "${OSVERSION}" -lt 600011 ] ; \
-+ then fixincludes=fixinc.math; \
-+ else fixincludes=Makefile.in; \
-+ fi
- tmake_file=i386/t-freebsd
-+ gas=yes
-+ gnu_ld=yes
-+ stabs=yes
- ;;
- i[34567]86-*-netbsd*)
- tm_file=i386/netbsd.h
-@@ -3277,6 +3304,13 @@
- fixincludes=fixinc.math
- tmake_file=t-netbsd
- ;;
-+ i[34567]86-*-openbsd*)
-+ tm_file=i386/openbsd.h
-+ # On OpenBSD, the headers are already okay.
-+ fixincludes=Makefile.in
-+ tmake_file=t-libc-ok
-+ xmake_file=x-openbsd
-+ ;;
- i[34567]86-*-coff*)
- tm_file=i386/i386-coff.h
- tmake_file=i386/t-i386bare
-@@ -3964,6 +3998,13 @@
- fixincludes=fixinc.math
- tmake_file=t-netbsd
- ;;
-+ m68k-*-openbsd*)
-+ tm_file=m68k/openbsd.h
-+ # On OpenBSD, the headers are already okay.
-+ fixincludes=Makefile.in
-+ tmake_file=t-libc-ok
-+ xmake_file=x-openbsd
-+ ;;
- m68k-*-sysv3*) # Motorola m68k's running system V.3
- xm_file=m68k/xm-m68kv.h
- xmake_file=m68k/x-m68kv
-@@ -4273,6 +4314,20 @@
- prefix=$native_prefix
- fi
- ;;
-+ mips*el-*-openbsd*) # MIPS running OpenBSD
-+ tm_file=mips/openbsd-le.h
-+ xmake_file=x-openbsd
-+ tmake_file=t-libc-ok
-+ # On OpenBSD, the headers are already okay.
-+ fixincludes=Makefile.in
-+ ;;
-+ mips*-*-openbsd*) # MIPS big-endian running OpenBSD
-+ tm_file=mips/openbsd-be.h
-+ xmake_file=x-openbsd
-+ tmake_file=t-libc-ok
-+ # On OpenBSD, the headers are already okay.
-+ fixincludes=Makefile.in
-+ ;;
- mips-sony-bsd* | mips-sony-newsos*) # Sony NEWS 3600 or risc/news.
- tm_file=mips/news4.h
- if [ x$stabs = xyes ]; then
-@@ -4612,6 +4667,13 @@
- fixincludes=fixinc.math
- tmake_file=t-netbsd
- ;;
-+ ns32k-*-openbsd*)
-+ tm_file=ns32k/openbsd.h
-+ tmake_file=t-libc-ok
-+ # On OpenBSD, the headers are already okay.
-+ fixincludes=Makefile.in
-+ xmake_file=x-openbsd
-+ ;;
- pdp11-*-bsd)
- tm_file="${tm_file} pdp11/2bsd.h"
- ;;
-@@ -4625,10 +4687,23 @@
- romp-*-aos*)
- use_collect2=yes
- ;;
-+ romp-*-openbsd*)
-+ tm_file=romp/openbsd.h
-+ # On OpenBSD, the headers are already okay.
-+ fixincludes=Makefile.in
-+ xmake_file=romp/x-openbsd
-+ ;;
- romp-*-mach*)
- xmake_file=romp/x-mach
- use_collect2=yes
- ;;
-+ powerpc-*-*bsd*)
-+ tm_file=rs6000/openbsd.h
-+ tmake_file=rs6000/t-openbsd
-+ # On OpenBSD, the headers are already okay.
-+ fixincludes=Makefile.in
-+ xmake_file=rs6000/x-openbsd
-+ ;;
- powerpc-*-sysv* | powerpc-*-elf*)
- tm_file=rs6000/sysv4.h
- xm_file=rs6000/xm-sysv4.h
-@@ -4841,6 +4916,13 @@
- fixincludes=fixinc.math
- tmake_file=t-netbsd
- ;;
-+ sparc-*-openbsd*)
-+ tm_file=sparc/openbsd.h
-+ # On OpenBSD, the headers are already okay.
-+ fixincludes=Makefile.in
-+ tmake_file=t-libc-ok
-+ xmake_file=x-openbsd
-+ ;;
- sparc-*-bsd*)
- tm_file=sparc/bsd.h
- ;;
-@@ -5009,6 +5091,14 @@
- # On NetBSD, the headers are already okay, except for math.h.
- fixincludes=fixinc.math
- tmake_file=t-netbsd
-+ float_format=vax
-+ ;;
-+ vax-*-openbsd*)
-+ tm_file=vax/openbsd.h
-+ tmake_file="t-libc-ok vax/t-openbsd"
-+ # On OpenBSD, the headers are already okay.
-+ fixincludes=Makefile.in
-+ xmake_file=x-openbsd
- float_format=vax
- ;;
- vax-*-ultrix*) # vaxen running ultrix
diff --git a/lang/gcc28/files/patch-04 b/lang/gcc28/files/patch-04
deleted file mode 100644
index cf942a2ca977..000000000000
--- a/lang/gcc28/files/patch-04
+++ /dev/null
@@ -1,20 +0,0 @@
---- choose-temp.c.orig Thu Dec 4 06:17:56 1997
-+++ choose-temp.c Tue Aug 11 04:05:05 1998
-@@ -107,12 +107,17 @@
- base = try (getenv ("TMP"), base);
- base = try (getenv ("TEMP"), base);
-
-+#ifdef COMMENT_OUT /* XXX - P_tmpdir is not /tmp in 4.4BSD */
- #ifdef P_tmpdir
- base = try (P_tmpdir, base);
- #endif
-+#endif /* XXX */
-
- /* Try /usr/tmp, then /tmp. */
-+#ifdef COMMENT_OUT /* XXX - want /tmp used, peroid. Sometimes pkg_add can
-+ create a /usr/tmp, so beware. */
- base = try (usrtmp, base);
-+#endif /* XXX */
- base = try (tmp, base);
-
- /* If all else fails, use the current directory! */
diff --git a/lang/gcc28/files/patch-05 b/lang/gcc28/files/patch-05
deleted file mode 100644
index 2ed03dce4d62..000000000000
--- a/lang/gcc28/files/patch-05
+++ /dev/null
@@ -1,34 +0,0 @@
---- flags.h.orig Wed Dec 31 05:02:33 1997
-+++ flags.h Wed Mar 31 00:08:39 1999
-@@ -125,6 +125,10 @@
-
- extern int warn_aggregate_return;
-
-+/* Nonzero means that -Wformat accepts certain non-ANSI formats. */
-+
-+extern int flag_format_extensions;
-+
- /* Nonzero if generating code to do profiling. */
-
- extern int profile_flag;
-@@ -215,6 +219,20 @@
- This is generally not a win. */
-
- extern int flag_unroll_all_loops;
-+
-+/* Nonzero forces all invariant computations in loops to be moved
-+ outside the loop. */
-+
-+extern int flag_move_all_movables;
-+
-+/* Nonzero forces all general induction variables in loops to be
-+ strength reduced. */
-+
-+extern int flag_reduce_all_givs;
-+
-+/* Nonzero gets another run of loop_optimize performed. */
-+
-+extern int flag_rerun_loop_opt;
-
- /* Nonzero for -fcse-follow-jumps:
- have cse follow jumps to do a more extensive job. */
diff --git a/lang/gcc28/files/patch-06 b/lang/gcc28/files/patch-06
deleted file mode 100644
index adb068501f33..000000000000
--- a/lang/gcc28/files/patch-06
+++ /dev/null
@@ -1,42 +0,0 @@
---- toplev.c.orig Wed Feb 25 18:04:46 1998
-+++ toplev.c Wed Mar 31 00:15:41 1999
-@@ -463,6 +463,20 @@
-
- int flag_unroll_all_loops;
-
-+/* Nonzero forces all invariant computations in loops to be moved
-+ outside the loop. */
-+
-+int flag_move_all_movables = 0;
-+
-+/* Nonzero forces all general induction variables in loops to be
-+ strength reduced. */
-+
-+int flag_reduce_all_givs = 0;
-+
-+/* Nonzero gets another run of loop_optimize performed. */
-+
-+int flag_rerun_loop_opt = 0;
-+
- /* Nonzero for -fwritable-strings:
- store string constants in data segment and don't uniquize them. */
-
-@@ -691,6 +705,7 @@
- {"stack-check", &flag_stack_check, 1},
- {"bytecode", &output_bytecode, 1},
- {"check-memory-usage", &flag_check_memory_usage, 1},
-+ {"format-extensions", &flag_format_extensions, 1},
- {"prefix-function-name", &flag_prefix_function_name, 1}
- };
-
-@@ -880,6 +895,10 @@
- {"uninitialized", &warn_uninitialized, 1},
- {"inline", &warn_inline, 1}
- };
-+
-+/* Nonzero means that -Wformat accepts certain system-dependent formats. */
-+
-+int flag_format_extensions = 0;
-
- /* Output files for assembler code (real compiler output)
- and debugging dumps. */
diff --git a/lang/gcc28/files/patch-07 b/lang/gcc28/files/patch-07
deleted file mode 100644
index 2a209d746c98..000000000000
--- a/lang/gcc28/files/patch-07
+++ /dev/null
@@ -1,19 +0,0 @@
---- loop.c.orig Fri Feb 6 11:23:34 1998
-+++ loop.c Tue Aug 11 16:57:35 1998
-@@ -1637,6 +1637,7 @@
- extra cost because something else was already moved. */
-
- if (already_moved[regno]
-+ || flag_move_all_movables
- || (threshold * savings * m->lifetime) >= insn_count
- || (m->forces && m->forces->done
- && n_times_used[m->forces->regno] == 1))
-@@ -3911,7 +3912,7 @@
- of such giv's whether or not we know they are used after the loop
- exit. */
-
-- if (v->lifetime * threshold * benefit < insn_count
-+ if (!flag_reduce_all_givs && v->lifetime * threshold * benefit < insn_count
- && ! bl->reversed)
- {
- if (loop_dump_stream)
diff --git a/lang/gcc28/files/patch-08 b/lang/gcc28/files/patch-08
deleted file mode 100644
index 088527b87911..000000000000
--- a/lang/gcc28/files/patch-08
+++ /dev/null
@@ -1,17 +0,0 @@
---- cp/lex.c.orig Wed Nov 26 12:13:20 1997
-+++ cp/lex.c Tue Aug 11 13:37:17 1998
-@@ -3329,6 +3329,14 @@
- token_buffer[0] = '^';
- token_buffer[1] = 0;
- }
-+ else if (ptr->token == NAMESPACE)
-+ {
-+ static int warned;
-+ if (! warned)
-+ warning ("namespaces are mostly broken in this version of g++");
-+
-+ warned = 1;
-+ }
-
- value = (int) ptr->token;
- }
diff --git a/lang/gcc28/files/patch-09 b/lang/gcc28/files/patch-09
deleted file mode 100644
index 3b6a6d1c93c2..000000000000
--- a/lang/gcc28/files/patch-09
+++ /dev/null
@@ -1,11 +0,0 @@
---- gcc.1.orig Tue Feb 17 10:44:00 1998
-+++ gcc.1 Tue Aug 11 13:30:01 1998
-@@ -182,7 +182,7 @@
- \-Waggregate\-return
- \-Wcast\-align
- \-Wcast\-qual
--\-Wchar\-subscript
-+\-Wchar\-subscripts
- \-Wcomment
- \-Wconversion
- \-Wenum\-clash
diff --git a/lang/gcc28/files/patch-10 b/lang/gcc28/files/patch-10
deleted file mode 100644
index 63782b953e0c..000000000000
--- a/lang/gcc28/files/patch-10
+++ /dev/null
@@ -1,67 +0,0 @@
---- invoke.texi.orig Tue Feb 17 10:54:05 1998
-+++ invoke.texi Tue Aug 11 13:29:38 1998
-@@ -115,7 +115,7 @@
- @smallexample
- -fsyntax-only -pedantic -pedantic-errors
- -w -W -Wall -Waggregate-return -Wbad-function-cast
---Wcast-align -Wcast-qual -Wchar-subscript -Wcomment
-+-Wcast-align -Wcast-qual -Wchar-subscripts -Wcomment
- -Wconversion -Werror -Wformat
- -Wid-clash-@var{len} -Wimplicit -Wimplicit-int
- -Wimplicit-function-declarations -Wimport -Winline
-@@ -153,6 +153,7 @@
- -frerun-cse-after-loop -fschedule-insns
- -fschedule-insns2 -fstrength-reduce -fthread-jumps
- -funroll-all-loops -funroll-loops
-+-fmove-all-movables -freduce-all-givs -frerun-loop-opt
- -O -O0 -O1 -O2 -O3
- @end smallexample
-
-@@ -2284,6 +2285,47 @@
- Perform the optimization of loop unrolling. This is done for all loops
- and usually makes programs run more slowly. @samp{-funroll-all-loops}
- implies @samp{-fstrength-reduce} as well as @samp{-frerun-cse-after-loop}.
-+
-+@item -fmove-all-movables
-+Forces all invariant computations in loops to be moved
-+outside the loop.
-+This option is provided primarily to improve performance
-+for some Fortran code, though it might improve code written
-+in other languages.
-+
-+@emph{Note:} When compiling programs written in Fortran,
-+this option is enabled by default.
-+
-+Analysis of Fortran code optimization and the resulting
-+optimizations triggered by this option, and the
-+@samp{-freduce-all-givs} and @samp{-frerun-loop-opt}
-+options as well, were
-+contributed by Toon Moene (@code{toon@@moene.indiv.nluug.nl}).
-+
-+Please let us (@code{fortran@@gnu.ai.mit.edu})
-+know how use of these options affects
-+the performance of your production code.
-+We're very interested in code that runs @emph{slower}
-+when these options are @emph{enabled}.
-+
-+@item -freduce-all-givs
-+Forces all general-induction variables in loops to be
-+strength-reduced.
-+This option is provided primarily to improve performance
-+for some Fortran code, though it might improve code written
-+in other languages.
-+
-+@emph{Note:} When compiling programs written in Fortran,
-+this option is enabled by default.
-+
-+@item -frerun-loop-opt
-+Runs loop optimizations a second time.
-+This option is provided primarily to improve performance
-+for some Fortran code, though it might improve code written
-+in other languages.
-+
-+@emph{Note:} When compiling programs written in Fortran,
-+this option is enabled by default.
-
- @item -fno-peephole
- Disable any machine-specific peephole optimizations.
diff --git a/lang/gcc28/files/patch-11 b/lang/gcc28/files/patch-11
deleted file mode 100644
index dd0bbe0f7fa1..000000000000
--- a/lang/gcc28/files/patch-11
+++ /dev/null
@@ -1,37 +0,0 @@
---- expmed.c.dist Sat Nov 8 14:11:58 1997
-+++ expmed.c Thu Aug 13 11:18:13 1998
-@@ -2249,7 +2249,8 @@
- rtx shift_subtarget = preserve ? 0 : accum;
- rtx add_target
- = (opno == alg.ops - 1 && target != 0 && variant != add_variant
-- ? target : 0);
-+ && ! preserve)
-+ ? target : 0;
- rtx accum_target = preserve ? 0 : accum;
-
- switch (alg.op[opno])
-@@ -2716,6 +2717,7 @@
- optab optab1, optab2;
- int op1_is_constant, op1_is_pow2;
- int max_cost, extra_cost;
-+ static HOST_WIDE_INT last_div_const = 0;
-
- op1_is_constant = GET_CODE (op1) == CONST_INT;
- op1_is_pow2 = (op1_is_constant
-@@ -2825,8 +2827,15 @@
- size = GET_MODE_BITSIZE (mode);
- #endif
-
-+ /* Only deduct something for a REM if the last divide done was
-+ for a different constant. Then set the constant of the last
-+ divide. */
- max_cost = div_cost[(int) compute_mode]
-- - (rem_flag ? mul_cost[(int) compute_mode] + add_cost : 0);
-+ - (rem_flag && ! (last_div_const != 0 && op1_is_constant
-+ && INTVAL (op1) == last_div_const)
-+ ? mul_cost[(int) compute_mode] + add_cost : 0);
-+
-+ last_div_const = ! rem_flag && op1_is_constant ? INTVAL (op1) : 0;
-
- /* Now convert to the best mode to use. */
- if (compute_mode != mode)
diff --git a/lang/gcc28/files/patch-12 b/lang/gcc28/files/patch-12
deleted file mode 100644
index 7b16b1ea0a5b..000000000000
--- a/lang/gcc28/files/patch-12
+++ /dev/null
@@ -1,52 +0,0 @@
---- configure.in.orig Sat Feb 28 15:58:12 1998
-+++ configure.in Sat Feb 12 02:26:56 2005
-@@ -303,6 +303,14 @@
- a29k-*-*) # Default a29k environment.
- use_collect2=yes
- ;;
-+ alpha*-*-freebsd*)
-+ tm_file=alpha/freebsd.h
-+ if [[ "${OSVERSION}" -lt 600011 ]] ; \
-+ then fixincludes=fixinc.math; \
-+ else fixincludes=Makefile.in; \
-+ fi
-+ tmake_file=t-libc-ok
-+ ;;
- alpha*-*-linux-gnuecoff*)
- tm_file="${tm_file} alpha/linux.h"
- xm_file="${xm_file} alpha/xm-linux.h"
-@@ -762,20 +770,24 @@
- # Next line turned off because both 386BSD and BSD/386 use GNU ld.
- # use_collect2=yes
- ;;
-- i[[34567]]86-*-freebsdelf*)
-- tm_file="i386/i386.h i386/att.h linux.h i386/freebsd-elf.h i386/perform.h"
-- # On FreeBSD, the headers are already ok, except for math.h.
-- fixincludes=fixinc.math
-+ i[[34567]]86-*-freebsdaout*)
-+ tm_file=i386/freebsd.h
-+ if [[ "${OSVERSION}" -lt 600011 ]] ; \
-+ then fixincludes=fixinc.math; \
-+ else fixincludes=Makefile.in; \
-+ fi
- tmake_file=i386/t-freebsd
-- gas=yes
-- gnu_ld=yes
-- stabs=yes
- ;;
- i[[34567]]86-*-freebsd*)
-- tm_file=i386/freebsd.h
-- # On FreeBSD, the headers are already ok, except for math.h.
-- fixincludes=fixinc.math
-+ tm_file="i386/i386.h i386/att.h linux.h i386/freebsd.h i386/perform.h"
-+ if [[ "${OSVERSION}" -lt 600011 ]] ; \
-+ then fixincludes=fixinc.math; \
-+ else fixincludes=Makefile.in; \
-+ fi
- tmake_file=i386/t-freebsd
-+ gas=yes
-+ gnu_ld=yes
-+ stabs=yes
- ;;
- i[[34567]]86-*-netbsd*)
- tm_file=i386/netbsd.h
diff --git a/lang/gcc28/files/patch-14 b/lang/gcc28/files/patch-14
deleted file mode 100644
index 6e0c0c03fb9c..000000000000
--- a/lang/gcc28/files/patch-14
+++ /dev/null
@@ -1,236 +0,0 @@
---- c-common.c.orig Wed Feb 18 19:16:13 1998
-+++ c-common.c Tue Mar 30 14:42:30 1999
-@@ -623,6 +623,7 @@
- int format_num;
- int first_arg_num;
- int is_scan;
-+ int null_format_ok;
- tree argument;
- int arg_num;
-
-@@ -637,12 +638,26 @@
- && (!strcmp (IDENTIFIER_POINTER (format_type), "printf")
- || !strcmp (IDENTIFIER_POINTER (format_type),
- "__printf__")))
-- is_scan = 0;
-+ {
-+ is_scan = 0;
-+ null_format_ok = 0;
-+ }
-+ else if (TREE_CODE (format_type) == IDENTIFIER_NODE
-+ && (!strcmp (IDENTIFIER_POINTER (format_type), "printf0")
-+ || !strcmp (IDENTIFIER_POINTER (format_type),
-+ "__printf0__")))
-+ {
-+ is_scan = 0;
-+ null_format_ok = 1;
-+ }
- else if (TREE_CODE (format_type) == IDENTIFIER_NODE
- && (!strcmp (IDENTIFIER_POINTER (format_type), "scanf")
- || !strcmp (IDENTIFIER_POINTER (format_type),
- "__scanf__")))
-- is_scan = 1;
-+ {
-+ is_scan = 1;
-+ null_format_ok = 0;
-+ }
- else if (TREE_CODE (format_type) == IDENTIFIER_NODE)
- {
- error ("`%s' is an unrecognized format function type",
-@@ -651,7 +666,7 @@
- }
- else
- {
-- error ("unrecognized format specifier");
-+ error_with_decl (decl, "unrecognized format specifier");
- continue;
- }
-
-@@ -718,7 +733,8 @@
-
- record_function_format (DECL_NAME (decl),
- DECL_ASSEMBLER_NAME (decl),
-- is_scan, format_num, first_arg_num);
-+ is_scan, null_format_ok, format_num,
-+ first_arg_num);
- break;
- }
-
-@@ -906,6 +922,7 @@
- int pointer_count;
- /* Type of argument if no length modifier is used. */
- tree *nolen;
-+ /* EGCS has tree *hhlen -- length modifier for shortening to byte */
- /* Type of argument if length modifier for shortening is used.
- If NULL, then this modifier is not allowed. */
- tree *hlen;
-@@ -926,6 +943,11 @@
- } format_char_info;
-
- static format_char_info print_char_table[] = {
-+/* FreeBSD kernel extensions. */
-+ { "D", 1, T_C, NULL, NULL, NULL, NULL, NULL, "-wp" },
-+ { "b", 1, T_C, NULL, NULL, NULL, NULL, NULL, "-wp" },
-+ { "rz", 0, NULL, T_I, T_L, NULL, NULL, NULL, "-wp0 +#" },
-+#define unextended_print_char_table (print_char_table + 3)
- { "di", 0, T_I, T_I, T_L, T_LL, T_LL, T_ST, "-wp0 +" },
- { "oxX", 0, T_UI, T_UI, T_UL, T_ULL, T_ULL, T_ST, "-wp0#" },
- { "u", 0, T_UI, T_UI, T_UL, T_ULL, T_ULL, T_ST, "-wp0" },
-@@ -960,6 +982,7 @@
- tree name; /* identifier such as "printf" */
- tree assembler_name; /* optional mangled identifier (for C++) */
- int is_scan; /* TRUE if *scanf */
-+ int null_format_ok; /* TRUE if the format string may be NULL */
- int format_num; /* number of format argument */
- int first_arg_num; /* number of first arg (zero for varargs) */
- } function_format_info;
-@@ -991,15 +1014,15 @@
- void
- init_function_format_info ()
- {
-- record_function_format (get_identifier ("printf"), NULL_TREE, 0, 1, 2);
-- record_function_format (get_identifier ("fprintf"), NULL_TREE, 0, 2, 3);
-- record_function_format (get_identifier ("sprintf"), NULL_TREE, 0, 2, 3);
-- record_function_format (get_identifier ("scanf"), NULL_TREE, 1, 1, 2);
-- record_function_format (get_identifier ("fscanf"), NULL_TREE, 1, 2, 3);
-- record_function_format (get_identifier ("sscanf"), NULL_TREE, 1, 2, 3);
-- record_function_format (get_identifier ("vprintf"), NULL_TREE, 0, 1, 0);
-- record_function_format (get_identifier ("vfprintf"), NULL_TREE, 0, 2, 0);
-- record_function_format (get_identifier ("vsprintf"), NULL_TREE, 0, 2, 0);
-+ record_function_format (get_identifier ("printf"), NULL_TREE, 0, 0, 1, 2);
-+ record_function_format (get_identifier ("fprintf"), NULL_TREE, 0, 0, 2, 3);
-+ record_function_format (get_identifier ("sprintf"), NULL_TREE, 0, 0, 2, 3);
-+ record_function_format (get_identifier ("scanf"), NULL_TREE, 1, 0, 1, 2);
-+ record_function_format (get_identifier ("fscanf"), NULL_TREE, 1, 0, 2, 3);
-+ record_function_format (get_identifier ("sscanf"), NULL_TREE, 1, 0, 2, 3);
-+ record_function_format (get_identifier ("vprintf"), NULL_TREE, 0, 0, 1, 0);
-+ record_function_format (get_identifier ("vfprintf"), NULL_TREE, 0, 0, 2, 0);
-+ record_function_format (get_identifier ("vsprintf"), NULL_TREE, 0, 0, 2, 0);
-
- record_international_format (get_identifier ("gettext"), NULL_TREE, 1);
- record_international_format (get_identifier ("dgettext"), NULL_TREE, 2);
-@@ -1016,11 +1039,12 @@
- (e.g. for varargs such as vfprintf). */
-
- void
--record_function_format (name, assembler_name, is_scan,
-+record_function_format (name, assembler_name, is_scan, null_format_ok,
- format_num, first_arg_num)
- tree name;
- tree assembler_name;
- int is_scan;
-+ int null_format_ok;
- int format_num;
- int first_arg_num;
- {
-@@ -1044,6 +1068,7 @@
- }
-
- info->is_scan = is_scan;
-+ info->null_format_ok = null_format_ok;
- info->format_num = format_num;
- info->first_arg_num = first_arg_num;
- }
-@@ -1194,7 +1219,8 @@
-
- if (integer_zerop (format_tree))
- {
-- warning ("null format string");
-+ if (!info->null_format_ok)
-+ warning ("null format string");
- return;
- }
- if (TREE_CODE (format_tree) != ADDR_EXPR)
-@@ -1329,6 +1355,7 @@
- It will work on most machines, because size_t and int
- have the same mode. But might as well warn anyway,
- since it will fail on other machines. */
-+ /* XXX should we allow unsigned ints here? */
- if ((TYPE_MAIN_VARIANT (TREE_TYPE (cur_param))
- != integer_type_node)
- &&
-@@ -1336,7 +1363,7 @@
- != unsigned_type_node))
- {
- sprintf (message,
-- "field width is not type int (arg %d)",
-+ "precision is not type int (arg %d)",
- arg_num);
- warning (message);
- }
-@@ -1371,6 +1398,7 @@
- cur_param = TREE_VALUE (params);
- params = TREE_CHAIN (params);
- ++arg_num;
-+ /* XXX should we allow unsigned ints here? */
- if (TYPE_MAIN_VARIANT (TREE_TYPE (cur_param))
- != integer_type_node)
- {
-@@ -1388,6 +1416,56 @@
- }
- }
- }
-+ if (*format_chars == 'b')
-+ {
-+ /* There should be an int arg to control the string arg. */
-+ if (params == 0)
-+ {
-+ warning (tfaff);
-+ return;
-+ }
-+ if (info->first_arg_num != 0)
-+ {
-+ cur_param = TREE_VALUE (params);
-+ params = TREE_CHAIN (params);
-+ ++arg_num;
-+ if ((TYPE_MAIN_VARIANT (TREE_TYPE (cur_param))
-+ != integer_type_node)
-+ &&
-+ (TYPE_MAIN_VARIANT (TREE_TYPE (cur_param))
-+ != unsigned_type_node))
-+ {
-+ sprintf (message, "bitmap is not type int (arg %d)",
-+ arg_num);
-+ warning (message);
-+ }
-+ }
-+ }
-+ if (*format_chars == 'D')
-+ {
-+ /* There should be an unsigned char * arg before the string arg. */
-+ if (params == 0)
-+ {
-+ warning (tfaff);
-+ return;
-+ }
-+ if (info->first_arg_num != 0)
-+ {
-+ cur_param = TREE_VALUE (params);
-+ params = TREE_CHAIN (params);
-+ ++arg_num;
-+ cur_type = TREE_TYPE (cur_param);
-+ if (TREE_CODE (cur_type) != POINTER_TYPE
-+ || TYPE_MAIN_VARIANT (TREE_TYPE (cur_type))
-+ != unsigned_char_type_node)
-+ {
-+ sprintf (message,
-+ "ethernet address is not type unsigned char * (arg %d)",
-+ arg_num);
-+ warning (message);
-+ }
-+ }
-+ }
- if (*format_chars == 'h' || *format_chars == 'l')
- length_char = *format_chars++;
- else if (*format_chars == 'q' || *format_chars == 'L')
-@@ -1436,7 +1514,9 @@
- continue;
- }
- format_chars++;
-- fci = info->is_scan ? scan_char_table : print_char_table;
-+ fci = info->is_scan ? scan_char_table
-+ : flag_format_extensions ? print_char_table
-+ : unextended_print_char_table;
- while (fci->format_chars != 0
- && index (fci->format_chars, format_char) == 0)
- ++fci;
diff --git a/lang/gcc28/files/patch-15 b/lang/gcc28/files/patch-15
deleted file mode 100644
index fb77dd09c9ac..000000000000
--- a/lang/gcc28/files/patch-15
+++ /dev/null
@@ -1,11 +0,0 @@
---- c-tree.h.orig Fri Aug 8 13:09:02 1997
-+++ c-tree.h Tue Mar 30 14:14:51 1999
-@@ -162,7 +162,7 @@
- extern void declare_function_name PROTO((void));
- extern void decl_attributes PROTO((tree, tree, tree));
- extern void init_function_format_info PROTO((void));
--extern void record_function_format PROTO((tree, tree, int, int, int));
-+extern void record_function_format PROTO((tree, tree, int, int, int, int));
- extern void check_function_format PROTO((tree, tree, tree));
- /* Print an error message for invalid operands to arith operation CODE.
- NOP_EXPR is used as a special case (see truthvalue_conversion). */
diff --git a/lang/gcc28/files/patch-20 b/lang/gcc28/files/patch-20
deleted file mode 100644
index 8c0f44a74606..000000000000
--- a/lang/gcc28/files/patch-20
+++ /dev/null
@@ -1,11 +0,0 @@
---- config/alpha/alpha.c.orig Fri Feb 6 17:23:50 1998
-+++ config/alpha/alpha.c Tue Aug 11 04:06:42 1998
-@@ -1843,7 +1843,7 @@
- /* Write a version stamp. Don't write anything if we are running as a
- cross-compiler. Otherwise, use the versions in /usr/include/stamp.h. */
-
--#if !defined(CROSS_COMPILE) && !defined(_WIN32) && !defined(__linux__) && !defined(VMS)
-+#if !defined(CROSS_COMPILE) && !defined(_WIN32) && !defined(__OpenBSD__) && !defined(__FreeBSD__) && !defined(__linux__) && !defined(VMS)
- #include <stamp.h>
- #endif
-
diff --git a/lang/gcc28/files/patch-21 b/lang/gcc28/files/patch-21
deleted file mode 100644
index 02e2874917b5..000000000000
--- a/lang/gcc28/files/patch-21
+++ /dev/null
@@ -1,11 +0,0 @@
---- ginclude/stdarg.h.orig Sat Oct 18 10:26:07 1997
-+++ ginclude/stdarg.h Tue Aug 11 13:27:03 1998
-@@ -64,7 +64,7 @@
-
- #ifndef __GNUC_VA_LIST
- #define __GNUC_VA_LIST
--#if defined(__svr4__) || defined(_AIX) || defined(_M_UNIX) || defined(__NetBSD__)
-+#if defined(__svr4__) || defined(_AIX) || defined(_M_UNIX) || defined(__NetBSD__) || defined(__OpenBSD__)
- typedef char *__gnuc_va_list;
- #else
- typedef void *__gnuc_va_list;
diff --git a/lang/gcc28/files/patch-22 b/lang/gcc28/files/patch-22
deleted file mode 100644
index 4f9ae9c2c719..000000000000
--- a/lang/gcc28/files/patch-22
+++ /dev/null
@@ -1,12 +0,0 @@
---- ginclude/stddef.h.orig Mon Oct 28 04:35:28 1996
-+++ ginclude/stddef.h Sun Mar 24 03:26:25 2002
-@@ -24,7 +24,8 @@
-
- /* On 4.3bsd-net2, make sure ansi.h is included, so we have
- one less case to deal with in the following. */
--#if defined (__BSD_NET2__) || defined (____386BSD____) || defined (__FreeBSD__) || defined(__NetBSD__)
-+#if defined (__BSD_NET2__) || defined (____386BSD____) || defined (__FreeBSD__) || defined(__NetBSD__) || defined (__OpenBSD__)
-+#define __NO_GNUC_VA_LIST /* <machine/ansi.h> defines __gnuc_va_list */
- #include <machine/ansi.h>
- #endif
-
diff --git a/lang/gcc28/files/patch-23 b/lang/gcc28/files/patch-23
deleted file mode 100644
index c371cb3dcdd5..000000000000
--- a/lang/gcc28/files/patch-23
+++ /dev/null
@@ -1,8 +0,0 @@
---- sys-types.h.orig Wed Oct 9 04:26:35 1996
-+++ sys-types.h Sun Mar 24 03:35:27 2002
-@@ -83,4 +83,5 @@
- union wait;
-
-+#define __NO_GNUC_VA_LIST /* <machine/ansi.h> defines __gnuc_va_list */
- /* Get size_t and wchar_t. */
- #include <stddef.h>
diff --git a/lang/gcc28/files/patch-24 b/lang/gcc28/files/patch-24
deleted file mode 100644
index ea4d03aabe8f..000000000000
--- a/lang/gcc28/files/patch-24
+++ /dev/null
@@ -1,10 +0,0 @@
---- protoize.c.orig Fri Feb 27 01:39:03 1998
-+++ protoize.c Wed Aug 17 21:22:15 2005
-@@ -57,6 +57,7 @@
- #define _POSIX_SOURCE
- #endif
-
-+#include <sys/cdefs.h>
- #include <varargs.h>
- /* On some systems stdio.h includes stdarg.h;
- we must bring in varargs.h first. */
diff --git a/lang/gcc28/files/patch-cpp.texi b/lang/gcc28/files/patch-cpp.texi
deleted file mode 100644
index 643e9c083bd3..000000000000
--- a/lang/gcc28/files/patch-cpp.texi
+++ /dev/null
@@ -1,14 +0,0 @@
---- cpp.texi.orig Wed Feb 18 03:42:42 1998
-+++ cpp.texi Sun May 9 17:25:42 1999
-@@ -2,6 +2,11 @@
- @setfilename cpp.info
- @settitle The C Preprocessor
-
-+@dircategory Gcc Documentation
-+@direntry
-+* Cpp: (cpp.info). The GNU C pre-processor.
-+@end direntry
-+
- @ignore
- @ifinfo
- @format
diff --git a/lang/gcc28/files/patch-gcc.texi b/lang/gcc28/files/patch-gcc.texi
deleted file mode 100644
index 11441568b4a8..000000000000
--- a/lang/gcc28/files/patch-gcc.texi
+++ /dev/null
@@ -1,14 +0,0 @@
---- gcc.texi.orig Sun Mar 1 05:58:17 1998
-+++ gcc.texi Sun May 9 17:25:24 1999
-@@ -58,6 +58,11 @@
- @settitle Porting GNU CC
- @end ifclear
-
-+@dircategory Gcc Documentation
-+@direntry
-+* Gcc: (gcc.info). The GNU C compiler.
-+@end direntry
-+
- @syncodeindex fn cp
- @syncodeindex vr cp
- @c %**end of header
diff --git a/lang/gcc28/pkg-descr b/lang/gcc28/pkg-descr
deleted file mode 100644
index 286416677c30..000000000000
--- a/lang/gcc28/pkg-descr
+++ /dev/null
@@ -1,10 +0,0 @@
-C++ support, and in particular template support, is vastly improved over
-gcc-2.7. G++ 2.8.1 also compiles SGI's offical reference implimentation
-of the STL.
-
-Beware: This port installs new versions of "gcc", "g++", and so forth
-into the "${PREFIX}/bin" directory. Mind your PATHs if you don't want
-to use this compiler by default. However, "cc" and "c++" will not
-be hidden by this port.
-
--- David O'Brien <obrien@NUXI.com>
diff --git a/lang/gcc28/pkg-plist b/lang/gcc28/pkg-plist
deleted file mode 100644
index 52fea6d25500..000000000000
--- a/lang/gcc28/pkg-plist
+++ /dev/null
@@ -1,42 +0,0 @@
-@comment $FreeBSD$
-bin/g++28
-bin/gcov28
-bin/gcc28
-bin/protoize
-bin/unprotoize
-bin/%%GNUHOST%%-gcc
-lib/gcc-lib/%%GNUHOST%%/2.8.1/include/float.h
-lib/gcc-lib/%%GNUHOST%%/2.8.1/include/syslimits.h
-lib/gcc-lib/%%GNUHOST%%/2.8.1/include/typeinfo
-lib/gcc-lib/%%GNUHOST%%/2.8.1/include/exception
-lib/gcc-lib/%%GNUHOST%%/2.8.1/include/new
-lib/gcc-lib/%%GNUHOST%%/2.8.1/include/new.h
-lib/gcc-lib/%%GNUHOST%%/2.8.1/include/limits.h
-lib/gcc-lib/%%GNUHOST%%/2.8.1/include/README
-lib/gcc-lib/%%GNUHOST%%/2.8.1/include/objc/hash.h
-lib/gcc-lib/%%GNUHOST%%/2.8.1/include/objc/objc-list.h
-lib/gcc-lib/%%GNUHOST%%/2.8.1/include/objc/sarray.h
-lib/gcc-lib/%%GNUHOST%%/2.8.1/include/objc/objc.h
-lib/gcc-lib/%%GNUHOST%%/2.8.1/include/objc/objc-api.h
-lib/gcc-lib/%%GNUHOST%%/2.8.1/include/objc/NXConstStr.h
-lib/gcc-lib/%%GNUHOST%%/2.8.1/include/objc/Object.h
-lib/gcc-lib/%%GNUHOST%%/2.8.1/include/objc/Protocol.h
-lib/gcc-lib/%%GNUHOST%%/2.8.1/include/objc/encoding.h
-lib/gcc-lib/%%GNUHOST%%/2.8.1/include/objc/typedstream.h
-lib/gcc-lib/%%GNUHOST%%/2.8.1/include/objc/thr.h
-lib/gcc-lib/%%GNUHOST%%/2.8.1/cc1
-lib/gcc-lib/%%GNUHOST%%/2.8.1/cc1plus
-lib/gcc-lib/%%GNUHOST%%/2.8.1/cc1obj
-lib/gcc-lib/%%GNUHOST%%/2.8.1/specs
-lib/gcc-lib/%%GNUHOST%%/2.8.1/SYSCALLS.c.X
-lib/gcc-lib/%%GNUHOST%%/2.8.1/cpp
-lib/gcc-lib/%%GNUHOST%%/2.8.1/libgcc.a
-lib/gcc-lib/%%GNUHOST%%/2.8.1/libobjc.a
-%%GNUHOST%%/include/assert.h
-@dirrm lib/gcc-lib/%%GNUHOST%%/2.8.1/include/objc
-@dirrm lib/gcc-lib/%%GNUHOST%%/2.8.1/include
-@dirrm lib/gcc-lib/%%GNUHOST%%/2.8.1
-@dirrm lib/gcc-lib/%%GNUHOST%%
-@dirrmtry lib/gcc-lib
-@dirrm %%GNUHOST%%/include
-@dirrm %%GNUHOST%%