553 Commits

Author SHA1 Message Date
andreas
0ec6169bea Import GNU bc 1.04
PR:		4183
1998-04-29 21:53:01 +00:00
ache
470efec49a Fix merge errors 1998-04-28 07:37:54 +00:00
ache
f66beda6a7 Merge local changes 1998-04-28 06:49:42 +00:00
ache
57352a1b33 This commit was generated by cvs2svn to compensate for changes in r35486,
which included commits to RCS files with non-trunk default branches.
1998-04-28 06:22:20 +00:00
ache
27ef633cd3 V2.2 import 1998-04-28 06:22:20 +00:00
peter
9527a97222 -pg was causing a link with -lc_r... :-]
Submitted by:  Dmitry Khrustalev <dima@xyzzy.machaon.ru>
PR: 6287
1998-04-13 14:12:34 +00:00
peter
05ae376d90 Argh!.. Spot the deliberate mistake that was probably causing the
leftover files in /tmp..  (this commit brought to you by 'cvs update -j')
1998-04-11 16:12:07 +00:00
jb
035d92130a Document the FreeBSD specific options from LIB_SPEC. 1998-04-10 09:19:11 +00:00
bde
9a3bc82878 Removed yacc output files so that it is impossible to mix them with
new ones that we generate.
1998-03-27 11:14:12 +00:00
bde
bba68a1ec1 Removed yacc output files so that it is impossible to mix them with
new ones that we generate.  We used to always mix the old header with
the new .cc file.  This worked because Cygnus's yacc is surprisingly
compatible with our yacc.
1998-03-27 11:13:47 +00:00
peter
8643af65b3 Some tweaks to get this to compile for the userland tools. 1998-03-21 13:39:11 +00:00
peter
58e3555d88 Import ipfilter 3.2.3 1998-03-21 10:04:55 +00:00
peter
02d7d423ae This commit was generated by cvs2svn to compensate for changes in r34739,
which included commits to RCS files with non-trunk default branches.
1998-03-21 10:04:55 +00:00
jb
813e1f6dac Ouch, my local cvs walloped the version I thought I was committing.
Here is what I intended.
1998-03-14 03:02:19 +00:00
jb
7b1976eca5 On i386, freebsd.h and freebsd-elf.h have been merged to combine
aout and elf support. freebsd-elf.h died as a result, so the BINFORMAT
test for elf in src/gnu/usr.bin/cc/cc_tool/Makefile will need to
use freebsd.h, not freebsd-elf.h. That means that alpha will have to
go the same way. The new alpha/freebsd.h has the alpha/freebsd-elf.h
definitions merged in.
1998-03-13 21:12:12 +00:00
jb
cb348fd0d5 Nuke crti.o from the STARTFILE_SPEC again. No asm code is needed on alpha.
Add the define that lets gas know how to ".set" and enable pragmas
so that #pragma weak will work.
1998-03-11 20:56:24 +00:00
peter
d0208572aa Tweak from the cvs sources just after the 1.9.26 release:
1998-03-07  Tim Pierce  <twp@skepsis.com>
    * rcs.c (RCS_checkout): Negation bug when checking out symlinks:
    existence_error should be !existence_error.

This shouldn't cause any major merge problems later.
1998-03-11 09:30:51 +00:00
jraynard
400707d96e Remove test sub-directory. 1998-03-10 19:28:47 +00:00
peter
6b449debea Merge changes from vendor branch into mainline 1998-03-10 13:58:02 +00:00
peter
a194b78bd2 This commit was generated by cvs2svn to compensate for changes in r34461,
which included commits to RCS files with non-trunk default branches.
1998-03-10 13:40:57 +00:00
peter
0c111e2b51 Import cvs-1.9.26 onto vendor branch 1998-03-10 13:40:57 +00:00
jb
c736173442 Change the LINK_SPEC to specify the same runtime loader as used on
i386-elf because that is what will be used for FreeBSD/Alpha.

Change the STARTFILE_SPEC to match the non-aout version of i386 so
that the csu files can be built in exactly the same way as i386-elf.
This means that FreeBSD/Alpha departs from NetBSD/Alpha which uses
crt0 and crtbegin/crtend. Since i386-aout uses crt0, I guess it was
decided that i386-elf should use crt1. i386-elf also references
crti and with this change, so does FreeBAS/Alpha.

I think it is important for FreeBSD to have a consistent implementation
across architectures and since ELF is quite compatible (ignoring
differences in 32 and 64 bits), gcc might as well be configured the
same.

Another change is that the entry symbol is _start, not __start as
in NetBSD.
1998-03-10 06:47:14 +00:00
peter
b0d1291cc8 Both our a.out (hacked) gas and the binutils gas support .weak
Prompted by: bde
1998-03-09 04:47:58 +00:00
peter
b4375c6592 Only do a.out/elf switching on i386 family 1998-03-09 04:13:31 +00:00
jb
dce663f91f This commit was generated by cvs2svn to compensate for changes in r34351,
which included commits to RCS files with non-trunk default branches.
1998-03-09 03:38:19 +00:00
jb
31cb88078d Import an extra source file from binutils 2.8.1 that is included on
alpha.
1998-03-09 03:38:19 +00:00
jb
64938d6e9c Add a FreeBSD entry for alpha-elf. 1998-03-09 03:34:53 +00:00
peter
b13939a64c Don't disable the use of $ in assembler labels.. It changes libstdc++
and libg++ so that they won't work with existing binaries (including
netscape!!).
1998-03-09 03:26:57 +00:00
jb
875cc1421c Our default rules tend to shove asm code through cpp, so comments
starting with hashes have a sub-optimal impact. This change adds
/* */ around the block comment in the header of each file to make
them friendly to cpp. Also added an Id keyword cause I like to
see revision numbers in source.
1998-03-08 21:09:04 +00:00
peter
075f262da2 Spell -Bshareable correctly... :-] 1998-03-08 16:09:57 +00:00
peter
5a58d42fe2 svr4.h defines ASM_IDENTIFY_GCC, but neglects to define
ASM_IDENTIFY_LANGUAGE.  Use the osfrose.h method, because gdb assumes
'C' by default, so there's no need to further clutter the symbol table.
1998-03-08 13:26:15 +00:00
peter
d616a733c3 Cosmetic cleanup for a.out asm generation.. Don't put the end-of-file
markers that the stabs-in-elf system uses.
1998-03-08 12:47:45 +00:00
peter
89f7f39c2e Put the function stabs in traditional order on a.out, or gdb doesn't see
function local variables.
1998-03-08 11:54:04 +00:00
peter
69d046431c Add hooks for John Birrell's kernel thread support library.
Submitted by: John Birrell <jb@cimlogic.com.au>
1998-03-08 05:33:24 +00:00
peter
c39aed21a8 First round of changes to support generation of assembler for the old
a.out gas and the binutils gas (elf or a.out) with a single compiler.

This uses other infrastructure not yet committed, in order to support
both a.out and elf it needs to be able to get to both a.out and elf
gas, ld, libs, crt* etc.  So for now, the support is pretty much dormant.

The new freebsd.h file is based on the old freebsd-elf.h file (which has a
long lineage, right back through linux and svr4 files).  The change is
pretty dramatic from a gcc internals standpoint as it overrides a lot of
definitions in order to generate different output based on target mode.
There is potential for screw-ups, so please be on the lookout - gcc's
configuration mechanism wasn't really meant for this kind of thing.
It's believed to compile world etc just fine under both a.out and elf, can
handle global constructors and destructors, handles the differences in
a.out and elf stabs, and what sections things like exceptions go in.

The initial idea came from i386/osfrose.h which is a dual rose/elf format
target.  These two are not as diverse as a.out and elf it would seem.

The cc front-end uses external configuration to determine default object
format (still being thrashed out, so read the source if you want to see
it so far), and has a '-aout' and '-elf' override command line switch.
There are some other internal switches that can be accessed, namely -maout,
-mno-aout, -munderscores and -mnounderscores.  The underscore and local
symbol prefixing rules are controllable seperately to the output format.
(ie: it's possible to generate a.out without the _ prefixes on symbols and
also to generate elf with the _ prefixes.  This isn't quite optimal, but
does seem to work pretty well, except the linkers don't always recognise
the local symbols without their normal names)

The default format is a.out (still), nobody should see any major changes.

With both elf and a.out tools and libraries installed:

[1:26pm]/tmp-223> cc -elf -o hello hello.c
peter@beast[1:27pm]/tmp-224> file hello
hello: ELF 32-bit LSB executable, Intel 80386, version 1 (FreeBSD), dynamically linked, not stripped
[1:27pm]/tmp-225> ./hello
hello world!

[1:27pm]/tmp-226> cc -aout -o hello hello.c
[1:27pm]/tmp-227> file hello
hello: FreeBSD/i386 compact demand paged dynamically linked executable not stripped
1:27pm]/tmp-228> ./hello
hello world!

Since my co-conspirators put a lot of effort into this too, I'll add them
so they can share the blame^H^H^H^H^Hglory. :-)

Reviewed by: sos, jdp
1998-03-08 05:29:49 +00:00
jb
ab602aeb26 This commit was generated by cvs2svn to compensate for changes in r34204,
which included commits to RCS files with non-trunk default branches.
1998-03-07 21:27:49 +00:00
jb
7fbf66313a Import of the mpn asm source files for alpha from V2.0.2 which
appears to match the other libgmp files in the repository.
1998-03-07 21:27:49 +00:00
cvs2svn
8bd66fa336 This commit was manufactured by cvs2svn to create branch
'VENDOR-binutils'.
1998-03-01 23:26:33 +00:00
jdp
082b767ff5 Configuration changes to support FreeBSD. The linker only works for
ELF, not a.out.  But all the other tools support both.  I'm not so
sure about the assembler -- it might need more work.
1998-03-01 23:26:32 +00:00
jdp
96d45f0ff6 Don't use "/" as a comment starter. In some FreeBSD sources, "/"
means divide (duh).
1998-03-01 23:22:00 +00:00
jdp
cb17504105 Fix the output format of "nm" so that it works properly for FreeBSD's
"lorder" command.

GNU rejected this change because they felt it would be an unacceptable
incompatibility to change the output format at this point -- even
though it was wrong to begin with.
1998-03-01 23:20:03 +00:00
jdp
cad024a2ba Fix a bug which incorrectly caused files to be labeled as having
text relocations in certain situations.
1998-03-01 23:17:03 +00:00
jdp
d26a0cda03 Add automatic branding of FreeBSD ELF files. 1998-03-01 23:15:09 +00:00
jdp
5fa431f4cf Add upgrade instructions and helper file. 1998-03-01 23:13:26 +00:00
jdp
2cbd0590cd Initial import of GNU binutils version 2.8.1. Believe it or not,
this is heavily stripped down.
1998-03-01 22:58:51 +00:00
jdp
d0ed6da52d This commit was generated by cvs2svn to compensate for changes in r33965,
which included commits to RCS files with non-trunk default branches.
1998-03-01 22:58:51 +00:00
jb
7dedbef2ef Add #include <string.h> to get prototypes. 1998-02-20 07:48:36 +00:00
peter
d5c5dbdaff A hack to work around the sleep prior to calling the built-in diff. This
affects speed of doing 'cvs diff' (in all modes) and 'cvs update' over the
network.

1: don't pause at all unless running in server protocol mode.
2: if running in server protocol mode, do a kludge that intercepts the
   stdout and stderr write functions and diverts them to cvs_output() and
   cvs_outerr().  Yes, this might be done with fwopen() etc, but that also
   requires copying "FILE" structs since you can't freopen stdout etc and
   specify functions at the same time.

This HACK will go away once the cvs folks have done their changes to the
library version of gnu diff to use the callbacks as mentioned in the
comments.
1998-02-14 09:47:14 +00:00
peter
d7aa12e045 Reduce the sleep(1) inbetween each diff, as suggested by bde some time
ago.  The real fix is rather large.
1998-02-08 06:48:37 +00:00
cwt
94da1d663c Painless merge... 1998-02-02 05:42:16 +00:00