This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: current hpux status
- To: "David Korn" <dkorn at pixelpower dot com>,"'David Edelsohn'" <dje at watson dot ibm dot com>
- Subject: Re: current hpux status
- From: "Dave Korn" <davek-ml at ntlworld dot com>
- Date: Sat, 27 Jan 2001 03:38:52 -0000
- Cc: "'Alexandre Oliva'" <aoliva at redhat dot com>,"gcc" <gcc at gcc dot gnu dot org>
- References: <718D38CAB6E0D011B2C90060970C28A5642635@EXCHANGESERVER>
[continuing from earlier]
> >David> Thank you very much :) The config/rs6000 assumes at the
> >moment that
> >David> all platforms support shared libs, so I feel confident
> >that I've chosen
> >David> a valid solution. (If there's ever a 2.95.4, I may
> >even submit a patch! :)
> >
> > Huh?! What do you mean by "all platoforms support shared libs".
> >To what platforms are you referring? Your statement is very ambiguous.
>
> I meant all rs6000 based platforms; my comment is based on a memory of
> reading a ChangeLog entry (rth, perhaps?) saying that all the t- files
> were changed to use -mrelocatable when building gcc. However this was
off
> the top of my head and may be inaccurate; so perhaps I merely needed to
> select a different t- file rather than add one; I am about to miss my
bus
> home after work and will finish this reply in more detail later!!!
Right, having looked up the FSFChangeLog.11, the patch I was
misremembering is
----------------
Tue Aug 13 11:36:02 1996 Michael Meissner <meissner@tiktok.cygnus.com>
[snips]
* rs6000/t-ppcgas (MULTILIB_*): Build far fewer multilib
libraries. Build all libraries with -mrelocatable-lib and
-mno-eabi. Build special GNU/Linux and Solaris libraries.
* rs6000/eabi{,aix,le}.h (MULTILIB_DEFAULTS): Adapt to changes in
t-ppcgas.
* rs6000/(linux,sol2,sysv4,sysv4le).h (MULTILIB_DEFAULTS): Likewise.
----------------
so I reckon the 'all' got detached from the concept 'libraries' and
mistakenly attached to the concept 'targets' in my memory. Or perhaps I
misunderstood the second two comments (which seem to refer to more or less
all rs6000 derived targets) as meaning that they were adapted to use
t-ppcgas with it's new 'all libs relocatable'. Sorry for the shock.
Anyway, the point was that I needed libgcc built non-relocatable, so I
created t-ppcgas-nonpic which is a copy of t-ppcgas but with the
mrelocatable flag removed, and patched the powerc-wrs-vxworks case in the
switch in config.in that selects the target files to choose
t-ppcgas-nonpic instead of t-ppcgas. I imagine someone will tell me that
there's a target macro I should have used instead, but although mildly
wasteful I knew that my solution was at least guaranteed safe (couldn't
damage other targets) and would work correctly.
$ diff t-ppcgas t-ppcgas-nonpic
12c12
< MULTILIB_EXTRA_OPTS = mrelocatable-lib mno-eabi mstrict-align
---
> MULTILIB_EXTRA_OPTS = mno-eabi mstrict-align
Maybe I should have called it t-ppcgas-vx, since that's what I made it
for, and vxworks has no use for most of the multilibs (doesn't support le,
ca or lin, but very much does need nof), so I could specialise it even
more. Or perhaps I should just have patched config.in to select t-ppc,
which does the right thing (modulo not specifying an endian flag, but I
believe I could allow the specs file to default to -mbig), albeit for the
wrong reason?
DaveK