On Mon, 14 Feb 2000, Jon Trulson wrote:

>       Hmm. I though the whole point of the Linux/OGL base was to create
> that compatibility... Certainly our OGL only links what it specifically
> needs... An easy way to find these types of things is simply (in your
> case) link a static version of Mesa into your app... The linker will tell
> you what you need ;-)
 
Well, as I see it there are only three choices:

1) The ABI specifically limits which libraries libGL can reference
   so that the application can link to them all - and hence function
   with every OpenGL on the planet.

OR:

2) The ABI requires libGL to be pre-linked against every library
   it needs - and hence it will function no matter what the
   application links to.

OR:

3) The ABI lists a minimum set of libraries that all OpenGL
   applications should link to - and requires libGL to be
   pre-linked against any additional libraries it might need.
   (Kind of a pragmatic blend of (1) and (2))

I suppose the fourth alternative is for the ABI to declare
this out of scope and do nothing - but then you could end up
with a situation where an ABI-compliant app and an ABI-compliant
libGL *might* not work together - and that's what the ABI is
supposed to prevent.

(1) is silly IMHO. We have no idea what a future OpenGL
implementation might need to link to and some of those
libraries might not exist when the application was written.
(GLIDE for example).

(2) is ugly somehow.  I can't explain why I dislike it though.

I vote for option (3).  We say that all ABI-compliant OpenGL
applications must link to some sensible set of libs that
most OpenGL's are likely to be happy with (say):

      -lX11 -lXi -lXext -lXmu -lm

...and of course, libc.  (That may not be *exactly* the
right list - but we can debate what that list should be if
the principal of the thing is ever agreed - IMHO, that list
should contain everything that Mesa and current known Linux
OpenGL's need).

Then, if libGL or libGLU depend on anything *else* then they must
be pre-linked to whatever additional things they need.

Steve Baker                (817)619-2657 (Vox/Vox-Mail)
Raytheon Systems Inc.      (817)619-2466 (Fax)
Work: [EMAIL PROTECTED]      http://www.hti.com
Home: [EMAIL PROTECTED] http://web2.airmail.net/sjbaker1

Reply via email to