home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.unix.bsd
- Path: sparky!uunet!mcsun!Germany.EU.net!pcsbst!lotus!lotus!jkh
- From: jkh@esel.lotus.com (Jordan K Hubbard)
- Subject: Re: GNUCC 2.3.1 Available [AND WHAT YOU NEED TO DO TO MAKE IT WORK]
- Organization: Lotus Ireland
- Date: Thu, 5 Nov 1992 09:04:46 GMT
- Message-ID: <JKH.92Nov5100446@esel.lotus.com>
- Lines: 50
- In-Reply-To: hand@spc9.jpl.nasa.gov's message of Tue, 3 Nov 1992 10: 01:08 GMT
- References: <1992Nov3.100108.27631@burns.jpl.nasa.gov>
- Sender: news@lotus.com
-
- Anyone try it yet? I think I'll give it a try...
-
- Yes.
-
- You'll need to do the following things, though:
-
- 1. Deal with enough ansi'isms to gag a buzzard. This means changing
- the various includes of <ansi.h> to <machine/ansi.h> (or link ansi.h
- in you /usr/include, whatever your preferences). You'll also need
- to #undef _ANSI_H in <stdio.h> or you won't pick up the size_t and
- wchar_t types, for some reason. This one is strange and I'm looking
- into it - someone is defining _ANSI_H.
-
- It also means hacking things to make sure that ptrdiff_t gets defined
- and va_list gets declared as the GCC internal type properly - I'm being
- deliberately vague on all this because I don't much like the way I've
- gotten this to happen at the moment (hack hack) and I'm looking at some way
- of neatening it up to where it follows some ANSI standard or other,
- just as soon as I figure out what that is. There are enough existing
- examples o go on that any reasonably competent person should be able to
- figure out what to do.
-
- 2. More seriously, you need to make sure that the assembler comment character
- is '#', not '/', and that APP_ON and NO_APP [sic] are set to "#APP" and
- "#NO_APP", respectively. These are NOT defined correctly in i386unx.h
- so you'll need to redefine them in i386bsd.h. Symptoms of your not having
- done this will be "Garbage character .. blah" messages from the assembler
- while you're compiling stuff from libgcc2.c.
-
- You'll also need to turn YES_UNDERSCORES on since the gas assembler
- prepends underscores. Symptoms of not doing that will be gazillions of
- undefined symbols when you try to link your first stage1 cpp.
-
-
- 3. For some reason, the new enquire.c doesn't compile with the gcc 2.x
- anymore and you'll need to compile it with the old compiler (1.39) if
- you want to be able to get further. There's some floating point expression
- in there that's 'out of range' and I have yet to find out why - the tagged
- expression looks reasonable enough (and I've tried different values for
- DBL_MIN and DBL_MAX but they're not the culprits this time). I don't know
- a whole lot about floating point, I'm afraid, so I'm not really the one
- to fix this properly. I think floating point handling under 386BSD is
- sort of generally buggered anyway, so I'm not sure putting much effort
- into just the compiler is going to net you much.
-
- After doing all this, you should have a bootstrappable gcc 2.3.1. I'm
- going to try compiling all of XFree86 1.1 with it tonite - I'll report
- back on how it works (or doesn't).
-
- Jordan
- PCS Computer Systeme GmbH, Munich, West Germany
- UUCP: pyramid!pcsbst!gj gj@meepmeep.pcs.com
- EUNET: unido!pcsbst!gj
-