diff options
author | obrien <obrien@FreeBSD.org> | 1998-07-20 06:03:43 +0800 |
---|---|---|
committer | obrien <obrien@FreeBSD.org> | 1998-07-20 06:03:43 +0800 |
commit | 16ec8ce4adab6d867074ba5e4050599af5fdf7ae (patch) | |
tree | 91fd61a35039c20f37fc98dc34776897a7c27ff2 /lang/gcc44 | |
parent | 7a7bf19f61528c2a1cc946f83515336ad58aa4d0 (diff) | |
download | freebsd-ports-graphics-16ec8ce4adab6d867074ba5e4050599af5fdf7ae.tar.gz freebsd-ports-graphics-16ec8ce4adab6d867074ba5e4050599af5fdf7ae.tar.zst freebsd-ports-graphics-16ec8ce4adab6d867074ba5e4050599af5fdf7ae.zip |
Sync with gcc28 port:
* Implement support for weak symbols. This solves the "___error" undefined
problem on 3.0-CURRENT systems.
* look for crt0.o in /usr/lib/aout on 3.0-CURRENT systems.
Diffstat (limited to 'lang/gcc44')
-rw-r--r-- | lang/gcc44/files/patch-ad | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/lang/gcc44/files/patch-ad b/lang/gcc44/files/patch-ad new file mode 100644 index 00000000000..f29a24efded --- /dev/null +++ b/lang/gcc44/files/patch-ad @@ -0,0 +1,32 @@ +--- gcc/config/i386/freebsd.h.orig Tue Jun 30 15:52:18 1998 ++++ gcc/config/i386/freebsd.h Sun Jul 19 14:35:14 1998 +@@ -129,6 +129,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 +@@ -138,6 +139,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. */ +@@ -239,6 +246,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/" + + /* 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. |