emscripten build failure
VTK fails to build with emscripten after commit 11fbec70 (found using git bisect).
In file included from /work/src/Rendering/ContextOpenGL2/vtkOpenGLContextDevice2D.cxx:60: /work/src/Rendering/ContextOpenGL2/vtkOpenGLContextDevice2DPrivate.h:312:32: error: use of undeclared identifier 'GL_DRAW_BUFFER' ostate->vtkglGetIntegerv(GL_DRAW_BUFFER, &this->SavedDrawBuffer); ^ /work/src/Rendering/ContextOpenGL2/vtkOpenGLContextDevice2D.cxx:1125:16: error: use of undeclared identifier 'GL_POINT_SPRITE' glEnable(GL_POINT_SPRITE); ^ /work/src/Rendering/ContextOpenGL2/vtkOpenGLContextDevice2D.cxx:1126:17: error: use of undeclared identifier 'GL_POINT_SPRITE' glTexEnvi(GL_POINT_SPRITE, GL_COORD_REPLACE, GL_TRUE); ^ /work/src/Rendering/ContextOpenGL2/vtkOpenGLContextDevice2D.cxx:1126:34: error: use of undeclared identifier 'GL_COORD_REPLACE' glTexEnvi(GL_POINT_SPRITE, GL_COORD_REPLACE, GL_TRUE); ^ /work/src/Rendering/ContextOpenGL2/vtkOpenGLContextDevice2D.cxx:1128:23: error: use of undeclared identifier 'GL_POINT_SPRITE_COORD_ORIGIN' glPointParameteri(GL_POINT_SPRITE_COORD_ORIGIN, GL_LOWER_LEFT); ^ /work/src/Rendering/ContextOpenGL2/vtkOpenGLContextDevice2D.cxx:1128:53: error: use of undeclared identifier 'GL_LOWER_LEFT' glPointParameteri(GL_POINT_SPRITE_COORD_ORIGIN, GL_LOWER_LEFT); ^ /work/src/Rendering/ContextOpenGL2/vtkOpenGLContextDevice2D.cxx:1134:17: error: use of undeclared identifier 'GL_POINT_SPRITE' glTexEnvi(GL_POINT_SPRITE, GL_COORD_REPLACE, GL_FALSE); ^ /work/src/Rendering/ContextOpenGL2/vtkOpenGLContextDevice2D.cxx:1134:34: error: use of undeclared identifier 'GL_COORD_REPLACE' glTexEnvi(GL_POINT_SPRITE, GL_COORD_REPLACE, GL_FALSE); ^ /work/src/Rendering/ContextOpenGL2/vtkOpenGLContextDevice2D.cxx:1135:17: error: use of undeclared identifier 'GL_POINT_SPRITE' glDisable(GL_POINT_SPRITE); ^ 9 errors generated.
11fbec70 is the first bad commit commit 11fbec70 Author: David Gobbi david.gobbi@gmail.com Date: Thu Feb 18 19:12:01 2021 -0700
Add more OpenGL2 modules to Rendering group
The RenderingVolumeOpenGL2 module was in the Rendering group,
but not RenderingContextOpenGL2 or DomainsChemistryOpenGL2.
As a result, the latter two modules were not part of the
default build, even though they implement the backends for
modules that are part of the default build (DomainsChemistry,
RenderingContext2D, Charts, etc).
The fact that the VTK Python wheels provided modules without
backends has caused trouble for several users.
The RenderingOpenGL2 module itself was not part of the Rendering
group, either, but seems to have been brought in as a dependency
of RenderingVolumeOpenGL2.
:040000 040000 2f7f41b6ea352b18f1243a452b45e44ddecb3faa 149cbae580bb2520e54f8a2b1b9bfb9a1c40ac6e M Domains :040000 040000 162253902ce889156dd7bd18293b211c1ab0c0ef 0fcbba42dec6ed13d64450301261210b7b384cba M Rendering