loadble module
Sean Middleditch
elanthis@awesomeplay.com
Tue, 13 Jan 2004 23:33:10 -0500
On Tue, 2004-01-13 at 23:15, Keith Packard wrote:
> Using dlopen will require more work; I believe the only way to get it
> working will be to place the rest of the X server into a giant .so file so
> that the drivers can locate their symbols. Perhaps a job for some other
> day.
I'm probably a complete moron and missing something here, but please
humour me: why does the server need to be a shared object for dlopen'd
files to see the symbols? You need only compile your binary properly (I
forget the exact flags; -shared for gcc?) and any loaded libraries will
see all symbols in the binary. Additionally, if that isn't possible due
to limitations on particular platforms, you can simply pass a custom
symbol table (struct with function points) to a driver. I know at least
on Linux x86 the former works (done it many times myself), and the
latest is guaranteed to work, albeit perhaps with a performance penalty
(given the convenience granted to real-life users, it would seem worth
it - the current one-binary-per-driver makes things like multi-display
servers using different cards impossible, no?)
>
> -keith
>
>
>
> _______________________________________________
> Xserver mailing list
> Xserver@pdx.freedesktop.org
> http://pdx.freedesktop.org/cgi-bin/mailman/listinfo/xserver
--
Sean Middleditch <elanthis@awesomeplay.com>
AwesomePlay Productions, Inc.