delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2001/04/11/09:49:41

Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT sources DOT redhat DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT sources DOT redhat DOT com>
List-Help: <mailto:cygwin-help AT sources DOT redhat DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT sources DOT redhat DOT com
Delivered-To: mailing list cygwin AT sources DOT redhat DOT com
Message-Id: <4.3.2.7.0.20010411090013.00b57630@irispavp.igb.umontreal.ca>
X-Sender: bleau2 AT irispavp DOT igb DOT umontreal DOT ca
X-Mailer: QUALCOMM Windows Eudora Version 4.3.2
Date: Wed, 11 Apr 2001 09:48:25 -0400
To: Roger Sayle <roger AT metaphorics DOT com>
From: Andre Bleau <bleau AT igb DOT umontreal DOT ca>
Subject: Re: GL/gl.h in w32api
Cc: cygwin AT cygwin DOT com
In-Reply-To: <Pine.SOL.4.20.0104102320220.1074-100000@daylight.daylight.
com>
References: <3AD36F13 DOT EA650143 AT yahoo DOT com>
Mime-Version: 1.0
X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id JAA21200

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 -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019