logo       

Re: ebuild update for Xorg-x11: msg#00023

linux.gentoo.alpha

Subject: Re: ebuild update for Xorg-x11

Just to clear up any possible confusion regarding both -mieee and PIC code.

Alpha processors prior to ev6 require a little help from libc / the kernel to
be IEEE compatible. Most code require this as Aron already mentioned. You need
to add -mieee to CFLAGS and it's cousin CXXFLAGS as well as enable floating
point completion in the kernel for this to work. Stuff like opengl will
probably break without this support.

Regarding the possible PIC issues: shared libraries should be compiled -fPIC
(or -fpic) or you'll get linking errors on some archs. x86 is mostly unaffected
by this but you'll find that alpha complains loudly if you'll try to link PIC
and non-PIC code. Usually this results in errors during the compilation
aborting your emerge. Xfree and xorg-x11 is a little different as it loads the
driver modules dynamically at run-time using it's own elf loader. This is also
the reason that you'll see 'unsupported elf relocation type' errors - the
built-in elf loader doesn't support all the relocation types that binutils does.

There's basically two ways to solve this:
1. Patch the X elf loader to support all relocation types. There's some patches
floating around already that does this - at least to some extent.
2. Use dlload() instead of the built-in elf loader. You can turn on this
behaviour using USE="dlloader" and remerging xfree / xorg-x11. Beware that this
hasn't received as much testing yet as the built-in elf loader but it's used by
the Gentoo hardened project at least.

Hope this clears up the confusion (if any).

Regards,
Bryan Østergaard
Gentoo/Alpha developer

--
gentoo-alpha@xxxxxxxxxx mailing list




<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise