This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Patch to make trunk compile on m68k-next-nextstep3 with 3 = 3.2


I wrote:

>> Egcs (and gcc) throw all NEXTSTEP 3.x versions together.  This is
>> probably caused by the fact that NEXTSTEP doesn't have `uname'.
>> Unfortunately, there are large differences between the *development*
>> version of NEXTSTEP 3.2 (which I have) and that of NEXTSTEP 3.3
>> (and a price differential - in 1994 - of Dfl 1,500, approximately
>> $900).

and you replied:

>  Well, it's definitely possible to to use the `hostinfo'
>  command to find out which OS version you're running.
>  Something like this would probably work:
>
>      hostinfo | grep 'NeXT Mach' | sed -e 's,.*Mach ,,'
>      -e 's,:.*,,'
>
>      (this yields '3.3' on my machine)

And also on mine ;-)  Really, the system that I have is a strange  
hybrid, but possibly quite widespread because of NeXT's pricing  
strategy:  The kernel and User Programs are 3.3, but the Development  
Programs (cc, as, ld, gdb, etc) are 3.2:

% cc -v
Reading specs from /lib/m68k/specs
NeXT Computer, Inc. version cc-216.obj~13, gcc version 2.2.2
% as -v
NeXT Computer, Inc. version cctools-28.obj~39, GNU assembler version 1.38
% gdb
GDB is free software and you are welcome to distribute copies of it
 under certain conditions; type "show copying" to see the conditions.
There is absolutely no warranty for GDB; type "show warranty" for  
details.
GDB 4.7 (NeXT 3.1), Copyright 1992 Free Software Foundation, Inc.
% strings /bin/ld | head -1
@(#)PROGRAM:ld  PROJECT:cctools-28.obj~39  DEVELOPER:mflynn   
BUILT:Wed Sep 1 17:36:48 PDT 1993

>  It would certainly help to know exactly how the build
>  failed with this code though, so I can fix it. As it is,
>  you've just backed out the changes, so this means that
>  exceptions in C++ are once again broken in your
>  installation.

It failed because the above mentioned `as' can't handle `.section';  
from my September 20 message on the egcs list:

QUOTE
In the mean time (snapshot CVS'd at 199809201100UTC) I ran into a  
new problem:

_eh
../../egcs/gcc/libgcc2.c: In function `in_reg_window':
../../egcs/gcc/libgcc2.c:3527: warning: unused parameter `reg'
../../egcs/gcc/libgcc2.c:3527: warning: unused parameter `udata'
/usr/tmp/ccbbsZ0U.s:987:Unknown pseudo-op: .section
/usr/tmp/ccbbsZ0U.s:987:Rest of line ignored. 1st junk character  
valued 95 (_).
UNQUOTE

Note that I, personally, do not particularly pine for loosing C++  
capabilities; however, some other users of this 3.2/3.3 hybrid  
might.

>  P.S. Sometimes you can find someone who has installed
>  Openstep 4.2 and has a copy of 3.3 they'll sell you for
>  next to nothing. Similarly, you can pick up an old machine
>  with 3.3 installed for next to nothing too.

Thanks for pointing this out, but I'm not hanging onto NEXTSTEP out  
of desperation, but simply because I'm waiting for quad-21264's  
running Linux to become affordable :-)

And:

>> It would be interesting to think up a method to have autoconf
>> discern between NEXTSTEP 3.2 and 3.3; perhaps by reading `as -v'
>> output ?

>  This is one of the least reliable indicators. NEXTSTEP's
>  assembler is based on GAS (although NeXT's changes don't
>  appear to have been folded into the mainline GAS sources).

You bet - the mainline binutils doesn't know a thing about the  
Mach-O format - if it did I would have upgraded years ago ...

>  So, because /lib/m68k/as (or whatever) is free software,
>  someone with 3.2 can legally copy the 3.3 version off
>  the CD-ROM, or compile it themselves using the
>  GNUSource.pkg NeXT provides.

[ Hmm, that's an option I hadn't thought of yet - wonder how
  that interferes with the rest of the system, i.e. `ld' which
  is not free. ]

The reason I was thinking about `as -v' output is that it is `as'  
that's failing on your construct, so somehow its version number is  
important.

Regards,

--
Toon Moene (mailto:toon@moene.indiv.nluug.nl)
Saturnushof 14, 3738 XG  Maartensdijk, The Netherlands
Phone: +31 346 214290; Fax: +31 346 214286
g77 Support: mailto:fortran@gnu.org; egcs:  
mailto:egcs-bugs@cygnus.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]