Hi, I don't have access to a Solaris box, but here are some suggestions.
There are two issues: ABI conformance and API performance. The intent of disabling macro wrappers is to ensure ABI conformance, so examine the generated OSG .so files to ensure no undesired platform-specific symbols are being referenced. Then there's an assessment of the impact on performance from disabling the wrapper macros. That depends on what GL APIs are affected by the macros (immediate-mode only, or others too?). OSG can select different render algorithms based on GL version/extensions/etc, so need to ensure those APIs are actually being measured. cheers -- mew > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:osg-users- > [EMAIL PROTECTED] On Behalf Of Andy Skinner > Sent: Wednesday, March 26, 2008 7:22 AM > To: OpenSceneGraph Users > Subject: Re: [osg-users] OpenGL API RE: Mac OpenGL integration / > CGLMacro.h > > I've build 2.3.6 on solaris with and without this define that disables > the macros. > > What are suggested examples to compare? We don't run the examples or > osgviewer often, so spelling out suggested steps and examples and data > might be useful. > > thanks > andy > > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Mike > Weiblen > Sent: Friday, March 21, 2008 6:57 PM > To: OpenSceneGraph Users > Subject: Re: [osg-users] OpenGL API RE: Mac OpenGL integration / > CGLMacro.h > > Hi Andy, > > Yikes! Yes, pls test w/ those Sun vertex macros disabled, and send to > osg-submissions as appropriate. > > It's one thing for a developer to decide to use macro wrappers in > their end application, but portable middleware libraries like OSG must > avoid such trickery. > > cheers > -- mew > > > > On Fri, Mar 21, 2008 at 7:12 AM, Andy Skinner > <[EMAIL PROTECTED]> wrote: > > Thanks, Mike, for putting it in this perspective. Now that you > mention > > it, we agree that this would break things that we use. > > > > This raises an issue found recently as we were building OSG on > Solaris. > > On our Solaris machines, /usr/include/GL/gl.h has, near the bottom, > a > > bit of code like: > > #ifndef SUN_OGL_NO_VERTEX_MACROS > > #ifndef LINUX > > #include <GL/glmacros.h> > > #endif /* LINUX */ > > #endif /* SUN_OGL_NO_VERTEX_MACROS */ > > > > glmacros.h contains defines for things like glVertex2f, calling a > > function from a function table and passing a current context in. > > > > This broke a bit of code in OSG that was defining a class with > methods > > with the names of OpenGL functions. Those functions declarations > had > > the Sun define applied, so wouldn't compile. Robert had to change > the > > names of the methods. > > > > Maybe we should be compiling OSG with SUN_OGL_NO_VERTEX_MACROS. If > I > > get time, I may try it both ways and see if I can compare. > > > > Thoughts from people who know more about this? > > > > thanks, > > andy > > > -- > Mike Weiblen -- Austin Texas USA -- http://mew.cx/ > _______________________________________________ > osg-users mailing list > [email protected] > http://lists.openscenegraph.org/listinfo.cgi/osg-users- > openscenegraph.or > g > _______________________________________________ > osg-users mailing list > [email protected] > http://lists.openscenegraph.org/listinfo.cgi/osg-users- > openscenegraph.org _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

