Friday's release wranglers call

Alan Coopersmith Alan.Coopersmith at Sun.COM
Sat Jul 10 13:34:11 PDT 2004


Daniel Stone wrote:
> On Thu, Jul 08, 2004 at 08:00:23PM -0700, Alan Coopersmith wrote:
> 
>>Keith Packard wrote:
>>
>>>Around 8 o'clock on Jul 8, Paul Anderson wrote:
>>>
>>>>If you know you definitely can or cannot make this Friday's call (8:00AM
>>>>PDT/11:00AM EDT), please let me know, and I'll plan to host or cancel the
>>>>meeting accordingly.
>>>
>>>I can attend.
>>>
>>>I'd like to discuss the state of the experimental work on allowing .so 
>>>modules in the X server.
>>
>>I can't make it (Sun shutdown all US offices this week, so I'm off doing
>>other things), but I can point out that we've had absolutely no problems
>>using the dlopen() loader support currently in the Xorg tree on Solaris.
>>Just had to enable it and hack the builds to set the right dependency
>>flags in the modules at build time.
> 
> 
> Your ATI driver will not work.

On the contrary - it works fine.  I use it on my laptop with the ATI
Radeon Mobility 9000, and have done so for several months - since around
the time of the 6.7.0 release.

I did have to use the obscure Solaris linker flag -N to list the other
ATI modules as dependencies without renaming them to "lib___.so" format
and without having to verify them at link time.

I don't know if other platforms have similar flags or not.  (Also, the
Solaris loader, when used with lazy loading as done in the dlopen loader,
only requires that dependencies be present for symbols that refer to
objects (including pointers to functions) but not for function calls.
I also don't know if other linker/loaders allow that.)

For the ATI drivers, these flags were used to establish the dependencies
for all the .so modules:

ati_drv.so:-R /usr/X11/lib/modules -R /usr/X11/lib/modules/drivers -Wl,-N,atimisc_drv.so -Wl,-N,r128_drv.so -Wl,-N,radeon_drv.so
atimisc_drv.so:-R /usr/X11/lib/modules -R /usr/X11/lib/modules/drivers -Wl,-N,ati_drv.so
r128_drv.so:-R /usr/X11/lib/modules -R /usr/X11/lib/modules/drivers -R /usr/X11/lib/modules/linux/ -Wl,-N,ati_drv.so -Wl,-N,libfbdevhw.so
radeon_drv.so:-R /usr/X11/lib/modules -R /usr/X11/lib/modules/drivers -R /usr/X11/lib/modules/linux/ -Wl,-N,ati_drv.so -Wl,-N,libfbdevhw.so

I was too lazy to work out all the dependencies by hand for all the drivers
though, so I just wrote a perl script to compute them at build time (which
is the really hackish part of the whole thing) - I checked it into CVS a
while ago as xc/programs/Xserver/hw/xfree86/os-support/sunos/find_deps.pl


-- 
	-Alan Coopersmith-           alan.coopersmith at sun.com
	 Sun Microsystems, Inc. - X Window System Engineering




More information about the release-wranglers mailing list