Re: Debian/sparc problems (and solutions?)
Hi,
I'm the guy who started to make a mess by uploading new stuff ;-)
I've uploaded glibc, egcs and some by glibc 2.0.95 broken c++ stuff
like dpkg :-/
egcs seems reasonably ok and glibc has some quirks (see below). I will work
on a fixed glibc, recompile the latest egcs and provide a recent kernel-patch
and kernel package to cover the basics. Afterwards I will look into the
essential and base outdated packages (which should be few) and try to get
something done in the bootdisks area.
On Fri, Sep 25, 1998 at 01:01:06AM -0500, Michael Shuey wrote:
> The menu package will finally compile now, assuming you fix what is (I think)
> a bug in libc6-dev. As near as I can tell it works just fine, as do several
> other c++ programs that weren't compiling before.
>
> Several things written in C++, including menu and apt, weren't compilable last
> I checked. I had some time and I think I know why. In
> /usr/include/bits/sigaction.h there is a function pointer declared as a
> member of a struct:
> void (*sa_restorer) __P ((void));
> __P is defined as a macro to recognize function prototypes. Normally this just
> returns its arguments, resulting in valid code. However, with glibc2.1 a C++
> compiler that supports exceptions (currently only g++ 2.8 and up and egcs) the
> __P macro is defined as:
> #define __P(args) args throw ()
> This is an attempt at making the compiler do some exception optimization for
> function prototypes and is normally a good thing (well, presumably). However,
> a function pointer isn't a function prototype, so throw() isn't really valid
> in that syntax. The __P probably shouldn't be used. If you're having trouble
> compiling something with sigaction.h, try changing that line (line 37) to:
> void (*sa_restorer) (void);
> This has been working fine for me.
It's a bug in the Sparc part of glibc 2.0.95. David Miller hasn't updated the
sigaction.h file yet. The other architectures read __PMT in their sigaction.h
I update sigaction.h to use __PMT too.
Additionally I will change the conflicts with libc5 to use our special libc5
5.3.12 instead of 5.4.33. This should take care of the annoying libc5
conflict.
Greetings,
Christian
--
Christian Meder, email: meder@isr.uni-stuttgart.de
What's the railroad to me ?
I never go to see
Where it ends.
It fills a few hollows,
And makes banks for the swallows,
It sets the sand a-blowing,
And the blackberries a-growing.
(Henry David Thoreau)
Reply to: