Patch for compiling SiS statically

Matthias Hopf mhopf at suse.de
Fri Oct 28 11:34:03 PDT 2005


On Oct 28, 05 19:25:11 +0200, Thomas Winischhofer wrote:
> > the following patch is needed to compile the SiS driver (and anything
> > potentially using setjmp/longjmp) statically.
> > 
> > If noone objects, I'll commit the code at the beginning of the next week.
> > 
> > Matthias
> 
> I basically don't object, but nevertheless am surprised that noone has
> noticed this before. Is the SiS driver really the only one using
> setjmp/longjmp?

Yes. It's just the module loader in xf86cfg/loader.c that needs setjmp
as well. And that file includes <setjmp.h> itself. I'm a bit surprised
by that.

I already talked with Egbert, he has the opinion that using setjmp is
wrong in the first place, because it gives you headaches on some
architectures (don't know whether SiS is a valid gfx hardware on these,
though).

> I have not enough knowledge about the libc emulation in X. However, I
> notice that the #else you add isn't just an extension to "#if
> defined(XFree86Loader)" but that #if tests also for
> !DONT_DEFINE_WRAPPERS and DEFINE_SETJMP_WRAPPERS. No idea on the impact
> of your change on other C compilers, architectures, platforms, whatnot.

You always need a jmp_buf type, and without the #else case you won't get
that one definied.  I'm also pretty scared about the libc emulation
layer jmp_buf definition...

CU

Matthias

-- 
Matthias Hopf <mhopf at suse.de>       __        __   __
Maxfeldstr. 5 / 90409 Nuernberg    (_   | |  (_   |__         mat at mshopf.de
Phone +49-911-74053-715            __)  |_|  __)  |__  labs   www.mshopf.de



More information about the xorg mailing list