1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-15 03:14:23 +00:00

Remove lang/gcc32 (GCC 3.2) which is no longer used by any other ports and

does not support amd64, for example.
This commit is contained in:
Gerald Pfeifer 2008-08-23 09:44:58 +00:00
parent b7b604d523
commit 661f403226
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=219035
19 changed files with 0 additions and 780 deletions

View File

@ -77,7 +77,6 @@
SUBDIR += gcc-ooo
SUBDIR += gcc28
SUBDIR += gcc295
SUBDIR += gcc32
SUBDIR += gcc33
SUBDIR += gcc34
SUBDIR += gcc41

View File

@ -1,145 +0,0 @@
# ex:ts=8
# Ports collection makefile for: egcs
# Date created: 9 Jan 1998
# Whom: John Polstra <jdp@polstra.com>
#
# $FreeBSD$
#
PORTNAME= gcc
PORTVERSION= 3.2.3
PORTREVISION= 3
CATEGORIES= lang
MASTER_SITES= ${MASTER_SITE_GCC} \
http://web.inter.NL.net/hcc/Haj.Ten.Brugge/:bc
MASTER_SITE_SUBDIR= releases/gcc-${PORTVERSION}
DISTFILES= gcc-core-${PORTVERSION}${EXTRACT_SUFX} \
gcc-g++-${PORTVERSION}${EXTRACT_SUFX} \
gcc-g77-${PORTVERSION}${EXTRACT_SUFX} \
gcc-objc-${PORTVERSION}${EXTRACT_SUFX}
MAINTAINER?= ports@FreeBSD.org
COMMENT?= GNU Compiler Collection 3.2.3
NOT_FOR_ARCHS= amd64
LATEST_LINK?= gcc32${PKGNAMESUFFIX}
USE_BZIP2= yes
INFO= cpp cppinternals g77 gcc gccint
PATCH_WRKSRC= ${SRCDIR}
CONFIGURE_SCRIPT= ../${SRCDIR:C/${WRKDIR}//}/configure
# Do not let USE_GCC be set here. We can't hardcode that gcc32 should require
# gcc32 in order to build. Setting USE_GCC at all here causes recursion errors
# when it clobbers the USE_GCC defined by other ports.
.undef USE_GCC
NOMANCOMPRESS= yes # too hard to deal with differences on 5-cur and releng4
.include <bsd.port.pre.mk>
.if ${ARCH} == "amd64"
CONFIGURE_TARGET= x86_64-portbld-freebsd${OSREL}
.else
CONFIGURE_TARGET= ${ARCH}-portbld-freebsd${OSREL}
.endif
WITHOUT_CPU_CFLAGS=true
GCC_REV= ${PORTVERSION:C/\.0$//}
SRCDIR= ${WRKDIR}/gcc-${GCC_REV}
WRKSRC= ${WRKDIR}/build
TARGLIB= ${PREFIX}/lib/gcc-lib/${CONFIGURE_TARGET}/${GCC_REV}
PLIST_SUB= GCC_REV=${GCC_REV} GNU_HOST=${CONFIGURE_TARGET} \
PORTVERSION=${PORTVERSION}
GNU_CONFIGURE= yes
USE_GMAKE= yes
CONFIGURE_ARGS+= --disable-nls \
--with-gxx-include-dir=${TARGLIB}/include/g++-v3
#CONFIGURE_ARGS+= --program-suffix=32
CONFIGURE_ARGS+= --with-system-zlib --includedir=${TARGLIB}/include/Java
CONFIGURE_ENV= MAKEINFO="makeinfo --no-split"
.if defined(WANT_SHAREDLIBS)
CONFIGURE_ARGS+= --enable-shared
LDCONFIG_DIRS= %%PREFIX%%/lib ${TARGLIB}
EXTRA_SHLIB= libgcc_s
USE_LDCONFIG= ${TARGLIB}
.else
CONFIGURE_ARGS+= --disable-shared
.endif
.if defined(WANT_THREADS_SUPPORT)
CONFIGURE_ARGS+= --enable-threads
# ?is this an ObjC only thing?
CONFIGURE_ARGS+= --enable-threads=posix
.endif
ALL_TARGET= bootstrap
MAN1= cpp32.1 g++32.1 g77-32.1 gcc32.1 gcov32.1
MAN7= fsf-funding.7 gfdl.7 gpl.7
pre-configure:
cd ${SRCDIR} ; contrib/gcc_update --touch
@${LN} -sf ${FILESDIR}/freebsd7.h ${SRCDIR}/gcc/config
@${RM} -f ${SRCDIR}/gcc/*/*.info*
@${MKDIR} ${CONFIGURE_WRKSRC}
@${REINPLACE_CMD} -e 's/elf_x86_64/elf_x86_64_fbsd/g' \
${SRCDIR}/gcc/config/i386/freebsd64.h
pre-install:
${MKDIR} ${PREFIX}/info
.if defined(WANT_SHAREDLIBS)
-@${MKDIR} ${PREFIX}/libdata/ldconfig
.endif
post-install:
@${RM} -f ${PREFIX}/bin/c++ ${PREFIX}/bin/${CONFIGURE_TARGET}-c++
@${MV} -f ${PREFIX}/bin/c++filt ${PREFIX}/bin/g++filt
@(for prog in ${PREFIX}/bin/gcc ${PREFIX}/bin/g++ \
${PREFIX}/bin/g++filt ${PREFIX}/bin/g77 ${PREFIX}/bin/gcov \
${PREFIX}/bin/${CONFIGURE_TARGET}-gcc \
${TARGLIB}/cpp0 ${TARGLIB}/collect2 ${TARGLIB}/f771 ; \
do \
${STRIP_CMD} $$prog ; \
done )
.for file in gcc g++ cpp g++filt gcov ${CONFIGURE_TARGET}-gcc ${CONFIGURE_TARGET}-g++
${MV} -f ${PREFIX}/bin/${file} ${PREFIX}/bin/${file}32
( ${TEST} ! -e ${PREFIX}/man/man1/${file}.1 \
|| ${MV} -f ${PREFIX}/man/man1/${file}.1 \
${PREFIX}/man/man1/${file}32.1 )
.endfor
.for file in g77
${MV} -f ${PREFIX}/bin/${file} ${PREFIX}/bin/${file}-32
( ${TEST} ! -e ${PREFIX}/man/man1/${file}.1 \
|| ${MV} -f ${PREFIX}/man/man1/${file}.1 \
${PREFIX}/man/man1/${file}-32.1 )
.endfor
${MV} -f ${PREFIX}/bin/gccbug ${PREFIX}/bin/gccbug-${PORTVERSION}
# These 3 libraries are moved from PREFIX/lib to avoid conflicts
# with the stock compiler.
.for file in libstdc++ libsupc++ libg2c libfrtbegin libobjc ${EXTRA_SHLIB}
${MV} -f ${PREFIX}/lib/${file}.* ${TARGLIB}
.endfor
-${MV} -f ${PREFIX}/lib/ieee ${TARGLIB}
${RM} -f ${PREFIX}/lib/libiberty.a
${RM} -f ${TARGLIB}/*.la
# I am sick and tired of the anonyance that man pages can only be generated if
# perl 5.6 is installed. This is becoming a royal PITA on non-5-CURRENT systems
.for mp in ${_MANPAGES}
( ${TEST} -e ${mp} && ${TOUCH} ${TOUCH_FLAGS} ${mp} )
.endfor
cd ${PREFIX} ;\
${FIND} ${TARGLIB:S/^${PREFIX}\///} -type f -o -type l \
>${WRKDIR}/PLIST.gcc-lib
cd ${PREFIX} ;\
${FIND} ${TARGLIB:S/^${PREFIX}\///} -type d \
| ${SORT} -r | ${SED} -e 's/^/@dirrm /g' \
>>${WRKDIR}/PLIST.gcc-lib
(${ECHO_CMD} "@unexec rmdir %D/lib/gcc-lib/${CONFIGURE_TARGET} 2>&1 || true" ; ${ECHO_CMD} "@unexec rmdir %D/lib/gcc-lib 2>&1 || true") >> ${WRKDIR}/PLIST.gcc-lib
${ECHO_CMD} "r ${TMPPLIST}" > ${WRKDIR}/ex.script
${ECHO_CMD} "/Insert PLIST.gcc-lib" >> ${WRKDIR}/ex.script
${ECHO_CMD} "d" >> ${WRKDIR}/ex.script
${ECHO_CMD} "r ${WRKDIR}/PLIST.gcc-lib" >> ${WRKDIR}/ex.script
${ECHO_CMD} "x!" >> ${WRKDIR}/ex.script
${CP} -p ${TMPPLIST} ${TMPPLIST}.pre-gcc-lib
cd ${WRKDIR} ; ex < ex.script
.include <bsd.port.post.mk>

View File

@ -1,12 +0,0 @@
MD5 (gcc-core-3.2.3.tar.bz2) = 66664a84b383ba8d68612cd89b9478b2
SHA256 (gcc-core-3.2.3.tar.bz2) = fb320c4351a35dc0d99cf764a27d52dd51d1822f022e876cd826e94253412c58
SIZE (gcc-core-3.2.3.tar.bz2) = 10324429
MD5 (gcc-g++-3.2.3.tar.bz2) = ebb7932d0dc526b10c222a22cc02f180
SHA256 (gcc-g++-3.2.3.tar.bz2) = 170dd3e43cc80e8d6074ec0e28dc3ae5a31ebfd3852510d2d621527bba5ff965
SIZE (gcc-g++-3.2.3.tar.bz2) = 1947960
MD5 (gcc-g77-3.2.3.tar.bz2) = 8bea8cf9734995738552d90cf3f80b62
SHA256 (gcc-g77-3.2.3.tar.bz2) = 335880339fb6ca685f71a80fa2cb5c8dc943e0ff8366df1087363516bb6e733c
SIZE (gcc-g77-3.2.3.tar.bz2) = 1144165
MD5 (gcc-objc-3.2.3.tar.bz2) = eaca8b22d4ef2b42b84b877edbdf896b
SHA256 (gcc-objc-3.2.3.tar.bz2) = b8f3aa06893a74919e35c1a460f2cfb2803a62bf72bfaf56d4e3f985db818b97
SIZE (gcc-objc-3.2.3.tar.bz2) = 204251

View File

@ -1,24 +0,0 @@
/* FreeBSD version number setting for FreeBSD 6.x systems.
Copyright (C) 2001 Free Software Foundation, Inc.
Contributed by David E. O'Brien <obrien@FreeBSD.org> and BSDi.
This file is part of GNU CC.
GNU CC is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU CC is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU CC; see the file COPYING. If not, write to
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#define FBSD_MAJOR 7
/* $FreeBSD$ */

View File

@ -1,11 +0,0 @@
--- gcc/bounds/lib/Makefile.orig Tue May 20 16:35:05 2003
+++ gcc/bounds/lib/Makefile Tue May 20 16:35:19 2003
@@ -14,7 +14,7 @@
SUBDIR_INCLUDES = -I../.. -I$(srcdir)/bounds/lib -I$(srcdir) -I$(srcdir)/config -I$(srcdir)/../include
# Use this on System V.
-CPPFLAGS = -DUSG
+CPPFLAGS = -DBSD4_2
.c.o:
$(GCC_FOR_TARGET) -Wall $(OPTIMIZE) $(CPPFLAGS) \

View File

@ -1,70 +0,0 @@
--- gcc/config/i386/freebsd-aout.h.orig Tue Jan 22 16:56:28 2002
+++ gcc/config/i386/freebsd-aout.h Sat Feb 2 13:30:32 2002
@@ -76,14 +76,6 @@
/* FreeBSD using a.out does not support DWARF2 unwinding mechanisms. */
#define DWARF2_UNWIND_INFO 0
-/* Don't default to pcc-struct-return, because in FreeBSD we prefer the
- superior nature of the older gcc way. */
-#define DEFAULT_PCC_STRUCT_RETURN 0
-
-/* Ensure we the configuration knows our system correctly so we can link with
- libraries compiled with the native cc. */
-#undef NO_DOLLAR_IN_LABEL
-
/* i386 freebsd still uses old binutils that don't insert nops by default
when the .align directive demands to insert extra space in the text
segment. */
@@ -93,19 +85,18 @@
/* Profiling routines, partially copied from i386/osfrose.h. */
-/* Redefine this to use %eax instead of %edx. */
+/* Tell final.c that we don't need a label passed to mcount. */
+#define NO_PROFILE_DATA
+
#undef FUNCTION_PROFILER
#define FUNCTION_PROFILER(FILE, LABELNO) \
{ \
if (flag_pic) \
{ \
- fprintf (FILE, "\tleal %sP%d@GOTOFF(%%ebx),%%eax\n", \
- LPREFIX, (LABELNO)); \
fprintf (FILE, "\tcall *mcount@GOT(%%ebx)\n"); \
} \
else \
{ \
- fprintf (FILE, "\tmovl $%sP%d,%%eax\n", LPREFIX, (LABELNO)); \
fprintf (FILE, "\tcall mcount\n"); \
} \
}
@@ -123,6 +114,7 @@
#define TYPE_ASM_OP "\t.type\t"
#define SIZE_ASM_OP "\t.size\t"
+#define SET_ASM_OP "\t.set\t"
/* The following macro defines the format used to output the second
operand of the .type assembler directive. Different svr4 assemblers
@@ -132,6 +124,12 @@
#define TYPE_OPERAND_FMT "@%s"
+#define HANDLE_SYSV_PRAGMA 1
+
+#define ASM_WEAKEN_LABEL(FILE,NAME) \
+ do { fputs ("\t.weak\t", FILE); assemble_name (FILE, NAME); \
+ fputc ('\n', FILE); } while (0)
+
/* 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. */
@@ -233,6 +231,8 @@
#define STARTFILE_SPEC \
"%{shared:c++rt0.o%s} \
%{!shared:%{pg:gcrt0.o%s}%{!pg:%{static:scrt0.o%s}%{!static:crt0.o%s}}}"
+
+#define MD_STARTFILE_PREFIX "/usr/lib/aout/"
/* Define this so we can compile MS code for use with WINE. */
#define HANDLE_PRAGMA_PACK_PUSH_POP

View File

@ -1,50 +0,0 @@
--- gcc/config/i386/freebsd.h.orig Wed May 30 16:05:31 2001
+++ gcc/config/i386/freebsd.h Mon Jun 18 17:47:30 2001
@@ -76,6 +76,14 @@
#undef WCHAR_TYPE_SIZE
#define WCHAR_TYPE_SIZE BITS_PER_WORD
+
+#undef CC1_SPEC
+#define CC1_SPEC "\
+ %{gline:%{!g:%{!g0:%{!g1:%{!g2: -g1}}}}} \
+ %{maout: %{!mno-underscores: %{!munderscores: -munderscores }}}"
+
+#undef ASM_SPEC
+#define ASM_SPEC "%{v*: -v} %{maout: %{fpic:-k} %{fPIC:-k}}"
/* Provide a STARTFILE_SPEC appropriate for FreeBSD. Here we add
the magical crtbegin.o file (see crtstuff.c) which provides part
@@ -84,11 +92,18 @@
#undef STARTFILE_SPEC
#define STARTFILE_SPEC \
- "%{!shared: \
- %{pg:gcrt1.o%s} %{!pg:%{p:gcrt1.o%s} \
- %{!p:%{profile:gcrt1.o%s} \
- %{!profile:crt1.o%s}}}} \
- crti.o%s %{!shared:crtbegin.o%s} %{shared:crtbeginS.o%s}"
+ "%{maout: %{shared:c++rt0.o%s} \
+ %{!shared:%{pg:gcrt0.o%s}%{!pg:%{static:scrt0.o%s}%{!static:crt0.o%s}}}} \
+ %{!maout: \
+ %{!shared: \
+ %{pg:gcrt1.o%s} \
+ %{!pg:%{p:gcrt1.o%s} \
+ %{!p:%{profile:gcrt1.o%s} \
+ %{!profile:crt1.o%s}}}} \
+ crti.o%s \
+ %{!shared:crtbegin.o%s} \
+ %{shared:crtbeginS.o%s} \
+ }"
/* Provide a ENDFILE_SPEC appropriate for FreeBSD. Here we tack on
the magical crtend.o file (see crtstuff.c) which provides part of
@@ -98,7 +113,7 @@
#undef ENDFILE_SPEC
#define ENDFILE_SPEC \
- "%{!shared:crtend.o%s} %{shared:crtendS.o%s} crtn.o%s"
+ "%{!maout: %{!shared:crtend.o%s} %{shared:crtendS.o%s} crtn.o%s}"
/* Provide a LINK_SPEC appropriate for FreeBSD. Here we provide support
for the special GCC options -static and -shared, which allow us to

View File

@ -1,14 +0,0 @@
--- gcc/config/freebsd-spec.h.orig Tue Nov 20 18:06:45 2001
+++ gcc/config/freebsd-spec.h Sat Feb 2 13:37:38 2002
@@ -79,7 +82,10 @@
#define FBSD_CPP_SPEC " \
%(cpp_cpu) \
%{fPIC:-D__PIC__ -D__pic__} %{fpic:-D__PIC__ -D__pic__} \
- %{posix:-D_POSIX_SOURCE}"
+ %{posix:-D_POSIX_SOURCE} \
+ %{!maout: -D__ELF__} \
+ %{munderscores: -D__UNDERSCORES__} \
+ %{maout: %{!mno-underscores: -D__UNDERSCORES__}}"
/* Provide a STARTFILE_SPEC appropriate for FreeBSD. Here we add
the magical crtbegin.o file (see crtstuff.c) which provides part

View File

@ -1,188 +0,0 @@
--- gcc/c-format.c.orig Wed Feb 20 14:54:32 2002
+++ gcc/c-format.c Mon May 27 20:42:37 2002
@@ -19,6 +19,8 @@
Software Foundation, 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA. */
+/* $FreeBSD: /tmp/pcvs/ports/lang/gcc32/files/Attic/patch-fa,v 1.11 2002-05-28 03:43:59 obrien Exp $ */
+
#include "config.h"
#include "system.h"
#include "tree.h"
@@ -75,6 +77,7 @@
last. */
enum format_type { printf_format_type, scanf_format_type,
strftime_format_type, strfmon_format_type,
+ printf0_format_type,
format_type_error };
typedef struct function_format_info
@@ -82,6 +85,7 @@
enum format_type format_type; /* type of format (printf, scanf, etc.) */
unsigned HOST_WIDE_INT format_num; /* number of format argument */
unsigned HOST_WIDE_INT first_arg_num; /* number of first arg (zero for varargs) */
+ int null_format_ok; /* TRUE if the format string may be NULL */
} function_format_info;
static bool decode_format_attr PARAMS ((tree,
@@ -249,7 +253,7 @@
{
if (validated_p)
abort ();
- error ("unrecognized format specifier");
+ error_with_decl (getdecls (), "unrecognized format specifier");
return false;
}
else
@@ -540,6 +544,7 @@
/* Pointer to type of argument expected if '*' is used for a precision,
or NULL if '*' not used for precisions. */
tree *const precision_type;
+ const int null_format_ok;
} format_kind_info;
@@ -783,6 +788,18 @@
{ "S", 1, STD_EXT, { TEX_W, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN }, "-wp", "R" },
/* GNU conversion specifiers. */
{ "m", 0, STD_EXT, { T89_V, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN }, "-wp", "" },
+ /* BSD conversion specifiers. */
+ /* FreeBSD kernel extensions (src/sys/kern/subr_prf.c).
+ The format %b is supported to decode error registers.
+ Its usage is: printf("reg=%b\n", regval, "<base><arg>*");
+ which produces: reg=3<BITTWO,BITONE>
+ The format %D provides a hexdump given a pointer and separator string:
+ ("%6D", ptr, ":") -> XX:XX:XX:XX:XX:XX
+ ("%*D", len, ptr, " ") -> XX XX XX XX ...
+ */
+ { "D", 1, STD_EXT, { T89_C, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN }, "-wp", "cR" },
+ { "b", 1, STD_EXT, { T89_C, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN }, "-wp", "" },
+ { "rz", 0, STD_EXT, { T89_I, BADLEN, BADLEN, T89_L, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN }, "-wp0 +#", "i" },
{ NULL, 0, 0, NOLENGTHS, NULL, NULL }
};
@@ -847,23 +864,29 @@
printf_flag_specs, printf_flag_pairs,
FMT_FLAG_ARG_CONVERT|FMT_FLAG_DOLLAR_MULTIPLE|FMT_FLAG_USE_DOLLAR|FMT_FLAG_EMPTY_PREC_OK,
'w', 0, 'p', 0, 'L',
- &integer_type_node, &integer_type_node
+ &integer_type_node, &integer_type_node, 0
},
{ "scanf", scanf_length_specs, scan_char_table, "*'I", NULL,
scanf_flag_specs, scanf_flag_pairs,
FMT_FLAG_ARG_CONVERT|FMT_FLAG_SCANF_A_KLUDGE|FMT_FLAG_USE_DOLLAR|FMT_FLAG_ZERO_WIDTH_BAD|FMT_FLAG_DOLLAR_GAP_POINTER_OK,
'w', 0, 0, '*', 'L',
- NULL, NULL
+ NULL, NULL, 0
},
{ "strftime", NULL, time_char_table, "_-0^#", "EO",
strftime_flag_specs, strftime_flag_pairs,
FMT_FLAG_FANCY_PERCENT_OK, 'w', 0, 0, 0, 0,
- NULL, NULL
+ NULL, NULL, 0
},
{ "strfmon", strfmon_length_specs, monetary_char_table, "=^+(!-", NULL,
strfmon_flag_specs, strfmon_flag_pairs,
FMT_FLAG_ARG_CONVERT, 'w', '#', 'p', 0, 'L',
- NULL, NULL
+ NULL, NULL, 0
+ },
+ { "printf0", printf_length_specs, print_char_table, " +#0-'I", NULL,
+ printf_flag_specs, printf_flag_pairs,
+ FMT_FLAG_ARG_CONVERT|FMT_FLAG_DOLLAR_MULTIPLE|FMT_FLAG_USE_DOLLAR|FMT_FLAG_EMPTY_PREC_OK,
+ 'w', 0, 'p', 0, 'L',
+ &integer_type_node, &integer_type_node, 1
}
};
@@ -917,6 +940,14 @@
static void check_format_types PARAMS ((int *, format_wanted_type *));
+
+inline static int get_null_fmt_ok (fmttype)
+ enum format_type fmttype;
+{
+ return format_types[(int)fmttype].null_format_ok;
+}
+
+
/* Decode a format type from a string, returning the type, or
format_type_error if not valid, in which case the caller should print an
error message. */
@@ -1475,7 +1506,7 @@
specially if info == NULL and add a res->number_null entry for
that case, or maybe add a function pointer to be called at
the end instead of hardcoding check_format_info_main. */
- status_warning (status, "null format string");
+ if (!info->null_format_ok) status_warning (status, "null format string");
/* Skip to first argument to check, so we can see if this format
has any arguments (it shouldn't). */
@@ -1986,6 +2017,57 @@
}
}
+ if (*format_chars == 'b')
+ {
+ /* There should be an int arg to control the string arg. */
+ if (params == 0)
+ {
+ status_warning (status, "too few arguments for format");
+ 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))
+ {
+ status_warning (status, "bitmap is not type int (arg %d)",
+ arg_num);
+ }
+ }
+ }
+ if (*format_chars == 'D')
+ {
+ /* There should be an unsigned char * arg before the string arg. */
+ if (params == 0)
+ {
+ status_warning (status, "too few arguments for format");
+ return;
+ }
+ if (info->first_arg_num != 0)
+ {
+ tree cur_type;
+
+ 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)
+ {
+ status_warning (status,
+ "ethernet address is not type unsigned char * (arg %d)",
+ arg_num);
+ }
+ }
+ }
+
format_char = *format_chars;
if (format_char == 0
|| (!(fki->flags & (int) FMT_FLAG_FANCY_PERCENT_OK)
@@ -2112,7 +2194,7 @@
else if (strchr (fci->flags2, '2') != 0)
y2k_level = 2;
if (y2k_level == 3)
- status_warning (status, "`%%%c' yields only last 2 digits of year in some locales",
+ status_warning (status, "`%%%c' yields only last 2 digits of year in some locales on non-BSD systems",
format_char);
else if (y2k_level == 2)
status_warning (status, "`%%%c' yields only last 2 digits of year", format_char);

View File

@ -1,13 +0,0 @@
--- gcc/flags.h.orig Sun Jan 31 09:46:18 1999
+++ gcc/flags.h Tue Mar 30 13:17:11 1999
@@ -137,6 +137,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;

View File

@ -1,21 +0,0 @@
--- gcc/toplev.c.orig Tue Jun 6 13:11:39 2000
+++ gcc/toplev.c Mon Jun 26 20:19:31 2000
@@ -787,6 +787,9 @@
/* Tag all structures with __attribute__(packed) */
int flag_pack_struct = 0;
+/* Nonzero means that -Wformat accepts certain system-dependent formats. */
+int flag_format_extensions = 0;
+
/* Emit code to check for stack overflow; also may cause large objects
to be allocated dynamically. */
int flag_stack_check;
@@ -1064,6 +1067,8 @@
"Do the full regmove optimization pass"},
{"pack-struct", &flag_pack_struct, 1,
N_("Pack structure members together without holes") },
+ {"format-extensions", &flag_format_extensions, 1,
+ N_("-Wformat accepts certain FreeBSD system-dependent formats") },
{"stack-check", &flag_stack_check, 1,
N_("Insert stack checking code into the program") },
{"argument-alias", &flag_argument_noalias, 0,

View File

@ -1,14 +0,0 @@
--- gcc/config/freebsd-spec.h.org Sat Aug 13 10:18:00 2005
+++ gcc/config/freebsd-spec.h Sat Aug 13 18:40:03 2005
@@ -48,6 +48,11 @@
|| !strcmp ((STR), "soname") || !strcmp ((STR), "defsym") \
|| !strcmp ((STR), "assert") || !strcmp ((STR), "dynamic-linker"))
+#if FBSD_MAJOR == 7
+#define FBSD_CPP_PREDEFINES \
+ "-D__FreeBSD__=7 -Dunix -D__ELF__ -D__KPRINTF_ATTRIBUTE__ -Asystem=unix -Asystem=bsd -Asystem=FreeBSD"
+#endif
+
#if FBSD_MAJOR == 6
#define FBSD_CPP_PREDEFINES \
"-D__FreeBSD__=6 -Dunix -D__ELF__ -D__KPRINTF_ATTRIBUTE__ -Asystem=unix -Asystem=bsd -Asystem=FreeBSD"

View File

@ -1,10 +0,0 @@
--- gcc/config.gcc.org Sat Mar 1 03:38:19 2003
+++ gcc/config.gcc Sat Aug 13 10:11:06 2005
@@ -445,6 +445,7 @@
*-*-freebsd4 | *-*-freebsd[4].*) fbsd_tm_file="freebsd4.h";;
*-*-freebsd5 | *-*-freebsd[5].*) fbsd_tm_file="freebsd5.h";;
*-*-freebsd6 | *-*-freebsd[6].*) fbsd_tm_file="freebsd6.h";;
+ *-*-freebsd7 | *-*-freebsd[7].*) fbsd_tm_file="freebsd7.h";;
*) echo 'Please update *-*-freebsd* in gcc/config.gcc'; exit 1;;
esac
tmake_file="t-slibgcc-elf-ver t-freebsd"

View File

@ -1,23 +0,0 @@
--- gcc/config/freebsd-spec.h.orig Tue Mar 2 14:34:55 2004
+++ gcc/config/freebsd-spec.h Fri Dec 17 11:22:26 2004
@@ -130,11 +130,20 @@
}"
#else
#if FBSD_MAJOR >= 5
+#include <sys/param.h>
+#if __FreeBSD_version < 502102 /* upto FreeBSD 5.2.1 */
#define FBSD_LIB_SPEC " \
%{!shared: \
%{!pg: %{pthread:-lc_r} -lc} \
%{pg: %{pthread:-lc_r_p} -lc_p} \
}"
+#else
+#define FBSD_LIB_SPEC " \
+ %{!shared: \
+ %{!pg: %{pthread:-lpthread} -lc} \
+ %{pg: %{pthread:-lpthread_p} -lc_p} \
+ }"
+#endif /* deal with FreeBSD 5.0 - 5.2.1 */
#else
#define FBSD_LIB_SPEC " \
%{!shared: \

View File

@ -1,52 +0,0 @@
$FreeBSD$
http://gcc.gnu.org/ml/gcc-patches/2003-05/msg00629.html
Date: Wed, 7 May 2003 17:52:21 -0700
From: Richard Henderson <rth@redhat.com>
Subject: fix amd64 xfmode splits
Message-ID: <20030508005221.GX27351@redhat.com>
Test case for this is FreeBSD vfprintf.c (i.e. a tad big) and
I wasn't able to reduce the test. The cause is evident though:
the second part of a 12-byte quantity is SImode, not DImode,
and so is invalid as a base address.
r~
* config/i386/i386.c (ix86_split_long_move): Fix base register
mode for XFmode splits for TARGET_64BIT.
--- gcc/config/i386/i386.c.orig Wed Mar 12 01:04:01 2003
+++ gcc/config/i386/i386.c Sun Dec 19 10:39:53 2004
@@ -8828,15 +8828,24 @@
Do an lea to the last part and use only one colliding move. */
else if (collisions > 1)
{
+ rtx base;
+
collisions = 1;
- emit_insn (gen_rtx_SET (VOIDmode, part[0][nparts - 1],
- XEXP (part[1][0], 0)));
- part[1][0] = change_address (part[1][0],
- TARGET_64BIT ? DImode : SImode,
- part[0][nparts - 1]);
- part[1][1] = adjust_address (part[1][0], VOIDmode, UNITS_PER_WORD);
+
+ base = part[0][nparts - 1];
+
+ /* Handle the case when the last part isn't valid for lea.
+ Happens in 64-bit mode storing the 12-byte XFmode. */
+ if (GET_MODE (base) != Pmode)
+ base = gen_rtx_REG (Pmode, REGNO (base));
+
+ emit_insn (gen_rtx_SET (VOIDmode, base, XEXP (part[1][0], 0)));
+ part[1][0] = replace_equiv_address (part[1][0], base);
+ part[1][1] = replace_equiv_address (part[1][1],
+ plus_constant (base, UNITS_PER_WORD));
if (nparts == 3)
- part[1][2] = adjust_address (part[1][0], VOIDmode, 8);
+ part[1][2] = replace_equiv_address (part[1][2],
+ plus_constant (base, 8));
}
}

View File

@ -1,99 +0,0 @@
--- llvm-gcc/include/obstack.h:1.1.1.1 Thu Jan 8 15:59:16 2004
+++ include/obstack.h Fri Jun 18 12:52:45 2004
@@ -343,7 +343,7 @@
#endif
-#define obstack_1grow_fast(h,achar) (*((h)->next_free)++ = achar)
+#define obstack_1grow_fast(h,achar) (*((h)->next_free)++ = (achar))
#define obstack_blank_fast(h,n) ((h)->next_free += (n))
@@ -411,7 +411,7 @@
({ struct obstack *__o = (OBSTACK); \
if (__o->next_free + 1 > __o->chunk_limit) \
_obstack_newchunk (__o, 1); \
- *(__o->next_free)++ = (datum); \
+ obstack_1grow_fast (__o, datum); \
(void) 0; })
/* These assume that the obstack alignment is good enough for pointers or ints,
@@ -423,19 +423,28 @@
({ struct obstack *__o = (OBSTACK); \
if (__o->next_free + sizeof (void *) > __o->chunk_limit) \
_obstack_newchunk (__o, sizeof (void *)); \
- *((void **)__o->next_free)++ = ((void *)datum); \
- (void) 0; })
+ obstack_ptr_grow_fast (__o, datum); })
# define obstack_int_grow(OBSTACK,datum) \
__extension__ \
({ struct obstack *__o = (OBSTACK); \
if (__o->next_free + sizeof (int) > __o->chunk_limit) \
_obstack_newchunk (__o, sizeof (int)); \
- *((int *)__o->next_free)++ = ((int)datum); \
+ obstack_int_grow_fast (__o, datum); })
+
+# define obstack_ptr_grow_fast(OBSTACK,aptr) \
+__extension__ \
+({ struct obstack *__o1 = (OBSTACK); \
+ *(const void **) __o1->next_free = (aptr); \
+ __o1->next_free += sizeof (const void *); \
(void) 0; })
-# define obstack_ptr_grow_fast(h,aptr) (*((void **) (h)->next_free)++ = (void *)aptr)
-# define obstack_int_grow_fast(h,aint) (*((int *) (h)->next_free)++ = (int) aint)
+# define obstack_int_grow_fast(OBSTACK,aint) \
+__extension__ \
+({ struct obstack *__o1 = (OBSTACK); \
+ *(int *) __o1->next_free = (aint); \
+ __o1->next_free += sizeof (int); \
+ (void) 0; })
# define obstack_blank(OBSTACK,length) \
__extension__ \
@@ -443,7 +452,7 @@
int __len = (length); \
if (__o->chunk_limit - __o->next_free < __len) \
_obstack_newchunk (__o, __len); \
- __o->next_free += __len; \
+ obstack_blank_fast (__o, __len); \
(void) 0; })
# define obstack_alloc(OBSTACK,length) \
@@ -530,26 +539,29 @@
# define obstack_1grow(h,datum) \
( (((h)->next_free + 1 > (h)->chunk_limit) \
? (_obstack_newchunk ((h), 1), 0) : 0), \
- (*((h)->next_free)++ = (datum)))
+ obstack_1grow_fast (h, datum))
# define obstack_ptr_grow(h,datum) \
( (((h)->next_free + sizeof (char *) > (h)->chunk_limit) \
? (_obstack_newchunk ((h), sizeof (char *)), 0) : 0), \
- (*((char **) (((h)->next_free+=sizeof(char *))-sizeof(char *))) = ((char *) datum)))
+ obstack_ptr_grow_fast (h, datum))
# define obstack_int_grow(h,datum) \
( (((h)->next_free + sizeof (int) > (h)->chunk_limit) \
? (_obstack_newchunk ((h), sizeof (int)), 0) : 0), \
- (*((int *) (((h)->next_free+=sizeof(int))-sizeof(int))) = ((int) datum)))
+ obstack_int_grow_fast (h, datum))
+
+# define obstack_ptr_grow_fast(h,aptr) \
+ (((const void **) ((h)->next_free += sizeof (void *)))[-1] = (aptr))
-# define obstack_ptr_grow_fast(h,aptr) (*((char **) (h)->next_free)++ = (char *) aptr)
-# define obstack_int_grow_fast(h,aint) (*((int *) (h)->next_free)++ = (int) aint)
+# define obstack_int_grow_fast(h,aint) \
+ (((int *) ((h)->next_free += sizeof (int)))[-1] = (aptr))
# define obstack_blank(h,length) \
( (h)->temp = (length), \
(((h)->chunk_limit - (h)->next_free < (h)->temp) \
? (_obstack_newchunk ((h), (h)->temp), 0) : 0), \
- ((h)->next_free += (h)->temp))
+ obstack_blank_fast (h, (h)->temp))
# define obstack_alloc(h,length) \
(obstack_blank ((h), (length)), obstack_finish ((h)))

View File

@ -1,11 +0,0 @@
--- Makefile.in.orig Mon Oct 7 13:47:05 2002
+++ Makefile.in Fri Nov 22 14:23:28 2002
@@ -154,7 +154,7 @@
then echo $$r/texinfo/makeinfo/makeinfo ; \
else if (makeinfo --version \
| egrep 'texinfo[^0-9]*([1-3][0-9]|[4-9])') >/dev/null 2>&1; \
- then echo makeinfo; else echo $$s/missing makeinfo; fi; fi`
+ then echo makeinfo --no-split ; else echo $$s/missing makeinfo; fi; fi`
# This just becomes part of the MAKEINFO definition passed down to
# sub-makes. It lets flags be given on the command line while still

View File

@ -1,9 +0,0 @@
GCC, the GNU Compiler Collection includes gcc, g++, gcj, and g77.
This port installs the various front ends as gcc32, g++32, gcj32,
and g77-32 into the ${PREFIX}/bin directory.
WWW: http://gcc.gnu.org/
- Gerald Pfeifer
gerald@FreeBSD.org

View File

@ -1,13 +0,0 @@
@comment $FreeBSD$
bin/cpp32
bin/g++filt32
bin/g++32
bin/g77-32
bin/gcc32
bin/gcov32
bin/%%GNU_HOST%%-gcc32
bin/%%GNU_HOST%%-g++32
bin/gccbug-%%PORTVERSION%%
@comment Insert PLIST.gcc-lib here
@comment -=[ begin PLIST.gcc-lib ]=-
@comment -=[ end PLIST.gcc-lib ]=-