Bugzilla – Bug 1221744
Mesa 24.0.3 breaks texlive build
Last modified: 2024-03-20 14:15:18 UTC
Update from mesa 23.3.6 to Mesa 24.0.3 breaks texlive build [ 544s] In file included from glrender.h:64, [ 544s] from drawelement.h:22, [ 544s] from drawpath.h:11, [ 544s] from drawpath.cc:12: [ 544s] /usr/include/GL/osmesa.h:125:1: error: expected initializer before ‘OSMesaCreateContext’ [ 544s] 125 | OSMesaCreateContext( GLenum format, OSMesaContext sharelist ); [ 544s] | ^~~~~~~~~~~~~~~~~~~ [ 544s] /usr/include/GL/osmesa.h:138:1: error: expected initializer before ‘OSMesaCreateContextExt’ [ 544s] 138 | OSMesaCreateContextExt( GLenum format, GLint depthBits, GLint stencilBits, [ 544s] | ^~~~~~~~~~~~~~~~~~~~~~ [ 544s] /usr/include/GL/osmesa.h:167:1: error: expected initializer before ‘OSMesaCreateContextAttribs’ [ 544s] 167 | OSMesaCreateContextAttribs( const int *attribList, OSMesaContext sharelist ); [ 544s] | ^~~~~~~~~~~~~~~~~~~~~~~~~~
Seems related to this change https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26561 (changes GLAPIENTRY to APIENTRY) But I don't understand why this change is an issue. osmesa.h includes gl.h which does #define GLAPIENTRY and later #ifndef APIENTRY #define APIENTRY GLAPIENTRY #endif
https://build.opensuse.org/request/show/1159577
A simple #ifndef APIENTRY # error XXX #endif before line 124 in /usr/include/GL/osmesa.h shows In file included from glrender.h:64, from drawelement.h:22, from drawpath.h:11, from drawpath.cc:12: /usr/include/GL/osmesa.h:125:3: error: #error XXX 125 | # error XXX | ^~~~~ /usr/include/GL/osmesa.h:128:1: error: expected initializer before 'OSMesaCreateContext' 128 | OSMesaCreateContext( GLenum format, OSMesaContext sharelist );
The problem seems to be glew-devel with its header /usr/include/GL/glew.h which defines __gl_h_ #define __gl_h_ causing in /usr/include/GL/osmesa.h that the line #include <GL/gl.h> becomes ignored due to the __gl_h_ check in gl.h Beside this in line 26423 of /usr/include/GL/glew.h there is #ifdef GLEW_APIENTRY_DEFINED #undef GLEW_APIENTRY_DEFINED #undef APIENTRY #endif breaking any previous define of APIENTRY
Why is request rq#1146491 for glew still pending?
(In reply to Dr. Werner Fink from comment #5) > Why is request rq#1146491 for glew still pending? Apparently changelog is missing. But I claim that rq#1146491 will not fix the issue.
Request #1159837
Thanks a lot Werner. Could you still add the bugnumber to the changelog, please?
(In reply to Stefan Dirsch from comment #8) > Thanks a lot Werner. Could you still add the bugnumber to the changelog, > please? rq#1159858 Also the patch in rq#1159837 wasn't applied at all. It was not mentioned in specfile.
Closing as fixed.