[MacPorts] #16981: openvrml-0.17.9: new port

MacPorts noreply at macports.org
Mon Nov 3 12:34:11 PST 2008


#16981: openvrml-0.17.9: new port
---------------------------------+------------------------------------------
  Reporter:  raphael at ira.uka.de  |       Owner:  macports-tickets at lists.macosforge.org
      Type:  enhancement         |      Status:  new                                  
  Priority:  Normal              |   Milestone:  Port Submissions                     
 Component:  ports               |     Version:  1.6.0                                
Resolution:                      |    Keywords:  vrml new port                        
      Port:  openvrml            |  
---------------------------------+------------------------------------------

Comment(by raphael at ira.uka.de):

 Replying to [comment:8 braden@…]:
 > Could someone running 10.4 check out http://autoconf-gl-
 macros.googlecode.com/svn/trunk and test the patch I've just attached
 here?

 I don't think that the patch works, because the compiler error
 {{{
 ISO C requires a named argument before '...'
 }}}
 means that there must be a named argument in the definition of {{{func}}},
 not in the arguments of {{{gluTessCallback}}}. The patched configure check
 gives the same error on 10.5. If I try to compile something like
 {{{
 GLvoid (*func)(int, ...); gluTessCallback(0, 0, func);
 }}}
 I get the correct error
 {{{
 warning: passing argument 3 of ‘gluTessCallback’ from incompatible pointer
 type
 }}}

 I checked the definition of {{{glueTessCallback}}} in
 {{{/System/Library/Frameworks/OpenGL.framework/Headers/glu.h}}}, which is
 {{{
 void gluTessCallback (GLUtesselator* tess, GLenum which, GLvoid
 (*CallBackFunc)());
 }}}
 both on 10.5.5 and 10.4.11 (I had access to a 10.4 machine, but couldn't
 compile OpenVRML because of too little memory.).

 So, our problem is not the header in the OpenGL framework. I think the
 problem is the X11 header in {{{/usr/X11R6/include/GL/glu.h}}}. On 10.5 it
 says:
 {{{
 typedef void (GLAPIENTRYP _GLUfuncptr)();
 }}}
 whereas on 10.4.11 it says:
 {{{
 /* Internal convenience typedefs */
 #ifdef __cplusplus
 typedef GLvoid (*_GLUfuncptr)();
 #else
 typedef GLvoid (*_GLUfuncptr)(GLvoid);
 #endif
 }}}
 So, it seems that {{{...}}} in the compiler error message really means
 {{{GLvoid}}} (not a variadic function) and that the problem is that
 {{{configure}}} uses the OpenGL framework headers, but later, during the
 compilation of OpenVRML, the X11 GLX headers are used.

-- 
Ticket URL: <http://trac.macports.org/ticket/16981#comment:10>
MacPorts <http://www.macports.org/>
Ports system for Mac OS


More information about the macports-tickets mailing list