Bug 8930 - xserver/GL/glx/glcontextmodes.c does not compile because of wrong struct members
Summary: xserver/GL/glx/glcontextmodes.c does not compile because of wrong struct members
Status: RESOLVED INVALID
Alias: None
Product: xorg
Classification: Unclassified
Component: Server/General (show other bugs)
Version: 7.1 (2006.05)
Hardware: PowerPC Mac OS X (All)
: high normal
Assignee: Xorg Project Team
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-11-07 04:52 UTC by Peter Dyballa
Modified: 2007-03-11 14:19 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Peter Dyballa 2006-11-07 04:52:34 UTC
While compiling the X server these errors are reported:

glcontextmodes.c: In function '_gl_copy_visual_to_context_mode':
glcontextmodes.c:186: error: 'struct __GLcontextModesRec' has no member named 'bindToTextureRgb'
glcontextmodes.c:187: error: 'struct __GLcontextModesRec' has no member named 'bindToTextureRgba'
glcontextmodes.c:189: error: 'struct __GLcontextModesRec' has no member named 
'bindToMipmapTexture'
glcontextmodes.c:190: error: 'struct __GLcontextModesRec' has no member named 
'bindToTextureTargets'
glcontextmodes.c:193: error: 'struct __GLcontextModesRec' has no member named 'yInverted'
glcontextmodes.c: In function '_gl_get_context_mode_data':
glcontextmodes.c:326: error: 'struct __GLcontextModesRec' has no member named 'bindToTextureRgb'
glcontextmodes.c:329: error: 'struct __GLcontextModesRec' has no member named 'bindToTextureRgba'
glcontextmodes.c:332: error: 'struct __GLcontextModesRec' has no member named 
'bindToMipmapTexture'
glcontextmodes.c:335: error: 'struct __GLcontextModesRec' has no member named 
'bindToTextureTargets'
glcontextmodes.c:338: error: 'struct __GLcontextModesRec' has no member named 'yInverted'
glcontextmodes.c: In function '_gl_context_modes_create':
glcontextmodes.c:410: error: 'struct __GLcontextModesRec' has no member named 'bindToTextureRgb'
glcontextmodes.c:411: error: 'struct __GLcontextModesRec' has no member named 'bindToTextureRgba'
glcontextmodes.c:412: error: 'struct __GLcontextModesRec' has no member named 
'bindToMipmapTexture'
glcontextmodes.c:413: error: 'struct __GLcontextModesRec' has no member named 
'bindToTextureTargets'
glcontextmodes.c:414: error: 'struct __GLcontextModesRec' has no member named 'yInverted'
glcontextmodes.c: In function '_gl_context_modes_are_same':
glcontextmodes.c:528: error: 'struct __GLcontextModesRec' has no member named 'bindToTextureRgb'
glcontextmodes.c:528: error: 'struct __GLcontextModesRec' has no member named 'bindToTextureRgb'
glcontextmodes.c:529: error: 'struct __GLcontextModesRec' has no member named 'bindToTextureRgba'
glcontextmodes.c:529: error: 'struct __GLcontextModesRec' has no member named 'bindToTextureRgba'
glcontextmodes.c:530: error: 'struct __GLcontextModesRec' has no member named 
'bindToMipmapTexture'
glcontextmodes.c:530: error: 'struct __GLcontextModesRec' has no member named 
'bindToMipmapTexture'
glcontextmodes.c:531: error: 'struct __GLcontextModesRec' has no member named 
'bindToTextureTargets'
glcontextmodes.c:531: error: 'struct __GLcontextModesRec' has no member named 
'bindToTextureTargets'
glcontextmodes.c:532: error: 'struct __GLcontextModesRec' has no member named 'yInverted'
glcontextmodes.c:532: error: 'struct __GLcontextModesRec' has no member named 'yInverted'
glcontextmodes.c:533: warning: control reaches end of non-void function
make[2]: *** [glcontextmodes.lo] Error 1

gcc -v [...] tells this, when invoked from xserver/GL/glx:

ignoring duplicate directory "/usr/X11R7/include"
ignoring duplicate directory "/sw/lib/freetype219/include/freetype2"
ignoring duplicate directory "../../include"
ignoring duplicate directory "../../include"
ignoring duplicate directory "../../mi"
#include "..." search starts here:
#include <...> search starts here:
 .
 ../../include
 ../../hw/xfree86/os-support
 ../../hw/xfree86/os-support/bus
 ../../hw/xfree86/common
 ../../hw/xfree86/dri
 ../../mi
 /usr/include/openssl
 /usr/X11R7/include
 /sw/include/pango-1.0
 /sw/lib/freetype219/include
 /sw/lib/freetype219/include/freetype2
 /sw/lib/fontconfig2/include
 /sw/include/libpng12
 /sw/include
 /Users/pete/Quellen/X11R7.1/Mesa-6.5.2/include
 /Users/pete/Quellen/X11R7.1/Mesa-6.5.2/src/mesa/glapi
 /Users/pete/Quellen/X11R7.1/Mesa-6.5.2/src/mesa/main
 ../../Xext
 ../../composite
 ../../damageext
 ../../xfixes
 ../../Xi
 ../../miext/shadow
 ../../miext/damage
 ../../render
 ../../randr
 ../../fb
 /usr/local/include
 /usr/lib/gcc/powerpc-apple-darwin8/4.0.1/include
 /usr/include
 /System/Library/Frameworks
 /Library/Frameworks

The struct __GLcontextModesRec is defined in /usr/X11R7/include/GL/internal/glcore.h.

Mac OS X 10.4.8
GCC 4.0.1
Release 7.1.99.2
Comment 1 Peter Dyballa 2006-11-07 15:18:49 UTC
While building glproto a glcore.h file is installed. This file is younger than that from the Mesa 
distribution. It has lost the missing members. I'm going to report this to Protocol/Core.


-rw-r--r--   1 pete  pete   17258 12 Aug 00:26 Mesa-6.5.2/include/GL/internal/glcore.h
-rw-r--r--   1 pete  admin  16476  2 Nov 12:04 /usr/X11R7/include/GL/internal/glcore.h
-rw-r--r--   1 pete  pete   16476 25 Sep 19:19 proto/glproto/glcore.h
Comment 2 Dan Nicholson 2007-02-07 08:05:44 UTC
Hmm, those members have been in Mesa's glcore.h for a while with this commit:

http://gitweb.freedesktop.org/?p=mesa/mesa.git;a=commitdiff;h=ba23f699f03e45a7519cb41cc853deba686ff8d9

Apparently, the X build should be using the copy from Mesa in order to build glcontexmodes (there used to be a comment in the header that said it, too).

Is there any reason why the glcore.h from Mesa and glproto are out of sync?
Comment 3 Daniel Stone 2007-02-27 01:34:30 UTC
Sorry about the phenomenal bug spam, guys.  Adding xorg-team@ to the QA contact so bugs don't get lost in future.
Comment 4 Peter Dyballa 2007-03-11 14:19:06 UTC
This is GLX related, which is not supported in XDarwin, so it's a faulty bug report.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.