Bug 18902 - xorg-server 1.5.99.2 fails to compile unless --disable-dri2 is specified
Summary: xorg-server 1.5.99.2 fails to compile unless --disable-dri2 is specified
Status: RESOLVED FIXED
Alias: None
Product: xorg
Classification: Unclassified
Component: Server/General (show other bugs)
Version: git
Hardware: All All
: medium normal
Assignee: Xorg Project Team
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-12-05 09:43 UTC by Bernhard Rosenkraenzer
Modified: 2009-09-01 01:51 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Bernhard Rosenkraenzer 2008-12-05 09:43:19 UTC
Compiling xorg-server 1.5.99.2 without --disable-dri2 (dri2proto 1.99.3 and libdrm 2.4.1 are installed) results in

glxdri2.c:72: error: expected ':', ',', ';', '}' or '__attribute__' before '*' token
glxdri2.c:93: error: expected specifier-qualifier-list before '__DRIbuffer'
glxdri2.c: In function '__glXDRIbindTexImage':
glxdri2.c:215: error: '__GLXDRIscreen' has no member named 'texBuffer'
glxdri2.c: In function '__glXDRIscreenCreateContext':
glxdri2.c:304: error: '__GLXDRIscreen' has no member named 'dri2'
glxdri2.c: In function '__glXDRIscreenCreateDrawable':
glxdri2.c:347: error: '__GLXDRIscreen' has no member named 'dri2'
glxdri2.c: At top level:
glxdri2.c:353: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
glxdri2.c:386: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'loaderExtension'
glxdri2.c:393: error: 'loaderExtension' undeclared here (not in a function)
glxdri2.c: In function 'initializeExtensions':
glxdri2.c:436: error: '__GLXDRIscreen' has no member named 'glx_enable_bits'
glxdri2.c:437: warning: passing argument 1 of '__glXEnableExtension' from incompatible pointer type
glxdri2.c:443: error: '__GLXDRIscreen' has no member named 'swapControl'
glxdri2.c:444: warning: statement with no effect
glxdri2.c:445: error: '__GLXDRIscreen' has no member named 'glx_enable_bits'
glxdri2.c:446: warning: passing argument 1 of '__glXEnableExtension' from incompatible pointer type
glxdri2.c:447: error: '__GLXDRIscreen' has no member named 'glx_enable_bits'
glxdri2.c:448: warning: passing argument 1 of '__glXEnableExtension' from incompatible pointer type
glxdri2.c:456: error: '__GLXDRIscreen' has no member named 'texBuffer'
glxdri2.c:457: warning: statement with no effect
glxdri2.c: In function '__glXDRIscreenProbe':
glxdri2.c:496: error: '__GLXDRIscreen' has no member named 'glx_enable_bits'
glxdri2.c:496: warning: passing argument 1 of '__glXInitExtensionEnableBits' from incompatible pointer type
glxdri2.c:520: error: '__DRI_DRI2' undeclared (first use in this function)
glxdri2.c:520: error: (Each undeclared identifier is reported only once
glxdri2.c:520: error: for each function it appears in.)
glxdri2.c:520: warning: passing argument 1 of 'strlen' from incompatible pointer type
glxdri2.c:520: warning: passing argument 2 of '__builtin_strcmp' from incompatible pointer type
glxdri2.c:520: warning: passing argument 2 of '__builtin_strcmp' from incompatible pointer type
glxdri2.c:520: warning: passing argument 1 of 'strlen' from incompatible pointer type
glxdri2.c:520: warning: passing argument 2 of '__builtin_strcmp' from incompatible pointer type
glxdri2.c:520: warning: passing argument 2 of '__builtin_strcmp' from incompatible pointer type
glxdri2.c:521: error: '__DRI_DRI2_VERSION' undeclared (first use in this function)
glxdri2.c:521: warning: comparison between pointer and integer
glxdri2.c:522: error: '__GLXDRIscreen' has no member named 'dri2'
glxdri2.c:522: error: expected ')' before '__DRIdri2Extension'
glxdri2.c:522: warning: type defaults to 'int' in declaration of 'type name'
glxdri2.c:522: warning: statement with no effect
glxdri2.c:526: error: '__GLXDRIscreen' has no member named 'dri2'
glxdri2.c:533: error: '__GLXDRIscreen' has no member named 'dri2'
glxdri2.c:533: error: request for member 'createNewScreen' in something not a structure or union
glxdri2.c:537: error: called object '*(const struct __DRIextension **)&<erroneous-expression>' is not a function
glxdri2.c:537: warning: assignment from incompatible pointer type
glxdri2.c:551: error: '__GLXDRIscreen' has no member named 'glx_enable_bits'
glxdri2.c:551: warning: passing argument 1 of '__glXGetExtensionString' from incompatible pointer type
glxdri2.c:558: error: '__GLXDRIscreen' has no member named 'glx_enable_bits'
glxdri2.c:559: warning: passing argument 1 of '__glXGetExtensionString' from incompatible pointer type
make[1]: *** [glxdri2.lo] Error 1


With --disable-dri2, everything is ok, dri1 works.
Comment 1 Bernhard Rosenkraenzer 2008-12-17 02:54:32 UTC
Note to anyone else running into this:
The problem is that Mesa needs to be rebuilt after updating libdrm; after that, it works.

Of course, there is no official version of Mesa that actually compiles with current libdrm, and git head doesn't do the trick either, so make sure you check out the origin/mesa_7_2_branch of Mesa, that one works.
Comment 2 Michel Dänzer 2009-09-01 01:51:39 UTC
Should be fixed with current releases.


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.