Mail Archives: cygwin/2001/04/11/09:49:41
Maybe there is some misunderstanding here.
The OpenGL package for Cygwin _already_ contains the headers for MS
implementation of OpenGL and GLU. There is no need for "a clean room start"
or "reverse engineering". The headers support OpenGL 1.2.1, but are fine
with 1.1.x. What version of OpenGL you have as a DLL depends on your
graphic card. MS provides 1.1.x in Windows 98/ME/NT/2000, but some graphic
cards come with a DLL for OpenGL 1.2.1.
As for -mno-cygwin support, it will be included in the next version of
Cygwin's OpenGL package (probably next week). Headers are now in
/usr/include/GL and, IMO, should stay there to maintain compatibility.
There will be a soft link from /usr/include/mingw/GL to /usr/include/GL.
Maybe there should be another from /usr/include/w32api/GL ? ...maybe not if
-mno-cygwin support is present, as mentioned above. As for OpenGL over X,
headers for X-based programs are under /usr/X11R6/include, so there is no
conflict.
What would be a useful addition is some header for MS wgl functions
referred to in libopengl32.a:
00000000 T _wglUseFontOutlinesW AT 32
00000000 T _wglUseFontOutlinesA AT 32
00000000 T _wglUseFontBitmapsW AT 16
00000000 T _wglUseFontBitmapsA AT 16
00000000 T _wglSwapLayerBuffers AT 8
00000000 T _wglSwapBuffers AT 4
00000000 T _wglShareLists AT 8
00000000 T _wglSetPixelFormat AT 12
00000000 T _wglSetLayerPaletteEntries AT 20
00000000 T _wglRealizeLayerPalette AT 12
00000000 T _wglMakeCurrent AT 8
00000000 T _wglGetProcAddress AT 4
00000000 T _wglGetPixelFormat AT 4
00000000 T _wglGetLayerPaletteEntries AT 20
00000000 T _wglGetDefaultProcAddress AT 4
00000000 T _wglGetCurrentDC AT 0
00000000 T _wglGetCurrentContext AT 0
00000000 T _wglDescribePixelFormat AT 16
00000000 T _wglDescribeLayerPlane AT 20
00000000 T _wglDeleteContext AT 4
00000000 T _wglCreateLayerContext AT 8
00000000 T _wglCreateContext AT 4
00000000 T _wglCopyContext AT 12
00000000 T _wglChoosePixelFormat AT 8
For those interested, the coming OpenGL package will also include the last
version of GLUT, GLUI and GLUIX.
At 00:16 2001-04-11 -0600, you wrote:
>Earnie Boyd wrote:
> > I would accept a "clean room" implementation of the Microsoft OpenGL
> > headers and import libraries. A clean room implementation is where you
> > use only related documentation to create the files.
>
>The w32api distribution already contains implementations of the import
>libraries, presumably clean room. All that are required are the headers
>to go with them.
>
>I also suspect that a complete "clean room" rewrite of the headers
>isn't necessary. The OpenGL Architectural Review Board states in their
>FAQ (http://www.opengl.org/developers/faqs/arb_faq.html#3) under the
>topic "What is SGI policy on 'free' implementations of APIs which resemble
>the OpenGL API?" that "SGI agrees to allow others to copy the OpenGL
>header files, as much as is necessary, for the creation of other
>implementations."
>
>Hence all that would need to be reverse engineered are the Microsoft
>modifications to Silicon Graphics' original header files. Fortunately
>this has already been done for other open source projects. Suitable
>starting points for w32api versions of the OpenGL headers are available
>from sources.redhat.com, either from the cygwin opengl package or from
>the cygwin xfree86 package (which contains Mesa). If permission can
>be obtained to use either of these as starting points for maintaining
>independent header files, the w32api maintainers can ensure that they
>remain in sync with the corresponding import libraries, reflect the
>behaviour of the Microsoft Win32 SDK headers and are installed in the
>correct locations.
>
>
> > I however will not be doing this myself.
>
>Would you be willing to ask Andre Bleau or Brian Paul for permission
>for w32api to use modifications of their OpenGL header files?
André Bleau, ing., associé de recherche
bleau AT igb DOT umontreal DOT ca
Laboratoire de recherche en Imagerie et en Orthopédie
École de Technologie Supérieure
--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple
- Raw text -