chromium/third_party/skia/src/gpu/ganesh/gl/GrGLDefines.h

/*
 * Copyright 2011 Google Inc.
 *
 * Use of this source code is governed by a BSD-style license that can be
 * found in the LICENSE file.
 */



#ifndef GrGLDefines_DEFINED
#define GrGLDefines_DEFINED

/* Profiles */
#define GR_GL_CONTEXT_PROFILE_MASK
#define GR_GL_CONTEXT_CORE_PROFILE_BIT
#define GR_GL_CONTEXT_COMPATIBILITY_PROFILE_BIT

// The following constants consist of the intersection of GL constants
// exported by GLES 1.0, GLES 2.0, and desktop GL required by the system.

#define GR_GL_DEPTH_BUFFER_BIT
#define GR_GL_STENCIL_BUFFER_BIT
#define GR_GL_COLOR_BUFFER_BIT

/* Boolean */
#define GR_GL_FALSE
#define GR_GL_TRUE

/* BeginMode */
#define GR_GL_POINTS
#define GR_GL_LINES
#define GR_GL_LINE_LOOP
#define GR_GL_LINE_STRIP
#define GR_GL_TRIANGLES
#define GR_GL_TRIANGLE_STRIP
#define GR_GL_TRIANGLE_FAN
#define GR_GL_PATCHES

/* AlphaFunction (not supported in ES20) */
/*      GL_NEVER */
/*      GL_LESS */
/*      GL_EQUAL */
/*      GL_LEQUAL */
/*      GL_GREATER */
/*      GL_NOTEQUAL */
/*      GL_GEQUAL */
/*      GL_ALWAYS */

/* Basic OpenGL blend equations */
#define GR_GL_FUNC_ADD
#define GR_GL_FUNC_SUBTRACT
#define GR_GL_FUNC_REVERSE_SUBTRACT

/* GL_KHR_blend_equation_advanced */
#define GR_GL_SCREEN
#define GR_GL_OVERLAY
#define GR_GL_DARKEN
#define GR_GL_LIGHTEN
#define GR_GL_COLORDODGE
#define GR_GL_COLORBURN
#define GR_GL_HARDLIGHT
#define GR_GL_SOFTLIGHT
#define GR_GL_DIFFERENCE
#define GR_GL_EXCLUSION
#define GR_GL_MULTIPLY
#define GR_GL_HSL_HUE
#define GR_GL_HSL_SATURATION
#define GR_GL_HSL_COLOR
#define GR_GL_HSL_LUMINOSITY

/* BlendingFactorDest */
#define GR_GL_ZERO
#define GR_GL_ONE
#define GR_GL_SRC_COLOR
#define GR_GL_ONE_MINUS_SRC_COLOR
#define GR_GL_SRC_ALPHA
#define GR_GL_ONE_MINUS_SRC_ALPHA
#define GR_GL_DST_ALPHA
#define GR_GL_ONE_MINUS_DST_ALPHA

/* BlendingFactorSrc */
/*      GL_ZERO */
/*      GL_ONE */
#define GR_GL_DST_COLOR
#define GR_GL_ONE_MINUS_DST_COLOR
#define GR_GL_SRC_ALPHA_SATURATE
/*      GL_SRC_ALPHA */
/*      GL_ONE_MINUS_SRC_ALPHA */
/*      GL_DST_ALPHA */
/*      GL_ONE_MINUS_DST_ALPHA */

/* ExtendedBlendFactors */
#define GR_GL_SRC1_COLOR
#define GR_GL_ONE_MINUS_SRC1_COLOR
/*      GL_SRC1_ALPHA */
#define GR_GL_ONE_MINUS_SRC1_ALPHA

/* Separate Blend Functions */
#define GR_GL_BLEND_DST_RGB
#define GR_GL_BLEND_SRC_RGB
#define GR_GL_BLEND_DST_ALPHA
#define GR_GL_BLEND_SRC_ALPHA
#define GR_GL_CONSTANT_COLOR
#define GR_GL_ONE_MINUS_CONSTANT_COLOR
#define GR_GL_CONSTANT_ALPHA
#define GR_GL_ONE_MINUS_CONSTANT_ALPHA
#define GR_GL_BLEND_COLOR

/* Buffer Objects */
#define GR_GL_ARRAY_BUFFER
#define GR_GL_ELEMENT_ARRAY_BUFFER
#define GR_GL_DRAW_INDIRECT_BUFFER
#define GR_GL_TEXTURE_BUFFER
#define GR_GL_ARRAY_BUFFER_BINDING
#define GR_GL_ELEMENT_ARRAY_BUFFER_BINDING
#define GR_GL_DRAW_INDIRECT_BUFFER_BINDING
#define GR_GL_PIXEL_PACK_BUFFER
#define GR_GL_PIXEL_UNPACK_BUFFER

#define GR_GL_PIXEL_UNPACK_TRANSFER_BUFFER_CHROMIUM
#define GR_GL_PIXEL_PACK_TRANSFER_BUFFER_CHROMIUM

#define GR_GL_STREAM_DRAW
#define GR_GL_STREAM_READ
#define GR_GL_STATIC_DRAW
#define GR_GL_STATIC_READ
#define GR_GL_DYNAMIC_DRAW
#define GR_GL_DYNAMIC_READ

#define GR_GL_BUFFER_SIZE
#define GR_GL_BUFFER_USAGE

#define GR_GL_CURRENT_VERTEX_ATTRIB

/* CullFaceMode */
#define GR_GL_FRONT
#define GR_GL_BACK
#define GR_GL_FRONT_AND_BACK

/* DepthFunction */
/*      GL_NEVER */
/*      GL_LESS */
/*      GL_EQUAL */
/*      GL_LEQUAL */
/*      GL_GREATER */
/*      GL_NOTEQUAL */
/*      GL_GEQUAL */
/*      GL_ALWAYS */

/* EnableCap */
#define GR_GL_TEXTURE_NONE
#define GR_GL_TEXTURE_2D
#define GR_GL_CULL_FACE
#define GR_GL_BLEND
#define GR_GL_DITHER
#define GR_GL_STENCIL_TEST
#define GR_GL_DEPTH_TEST
#define GR_GL_SCISSOR_TEST
#define GR_GL_POLYGON_OFFSET_FILL
#define GR_GL_SAMPLE_ALPHA_TO_COVERAGE
#define GR_GL_SAMPLE_COVERAGE
#define GR_GL_POLYGON_OFFSET_FILL
#define GR_GL_POLYGON_SMOOTH
#define GR_GL_POLYGON_STIPPLE
#define GR_GL_COLOR_LOGIC_OP
#define GR_GL_COLOR_TABLE
#define GR_GL_INDEX_LOGIC_OP
#define GR_GL_VERTEX_PROGRAM_POINT_SIZE
#define GR_GL_LINE_STIPPLE
#define GR_GL_FRAMEBUFFER_SRGB
#define GR_GL_SHADER_PIXEL_LOCAL_STORAGE
#define GR_GL_SAMPLE_SHADING

/* ErrorCode */
#define GR_GL_NO_ERROR
#define GR_GL_INVALID_ENUM
#define GR_GL_INVALID_VALUE
#define GR_GL_INVALID_OPERATION
#define GR_GL_OUT_OF_MEMORY
#define GR_GL_CONTEXT_LOST

/* FrontFaceDirection */
#define GR_GL_CW
#define GR_GL_CCW

/* GetPName */
#define GR_GL_LINE_WIDTH
#define GR_GL_ALIASED_POINT_SIZE_RANGE
#define GR_GL_ALIASED_LINE_WIDTH_RANGE
#define GR_GL_CULL_FACE_MODE
#define GR_GL_FRONT_FACE
#define GR_GL_DEPTH_RANGE
#define GR_GL_DEPTH_WRITEMASK
#define GR_GL_DEPTH_CLEAR_VALUE
#define GR_GL_DEPTH_FUNC
#define GR_GL_STENCIL_CLEAR_VALUE
#define GR_GL_STENCIL_FUNC
#define GR_GL_STENCIL_FAIL
#define GR_GL_STENCIL_PASS_DEPTH_FAIL
#define GR_GL_STENCIL_PASS_DEPTH_PASS
#define GR_GL_STENCIL_REF
#define GR_GL_STENCIL_VALUE_MASK
#define GR_GL_STENCIL_WRITEMASK
#define GR_GL_STENCIL_BACK_FUNC
#define GR_GL_STENCIL_BACK_FAIL
#define GR_GL_STENCIL_BACK_PASS_DEPTH_FAIL
#define GR_GL_STENCIL_BACK_PASS_DEPTH_PASS
#define GR_GL_STENCIL_BACK_REF
#define GR_GL_STENCIL_BACK_VALUE_MASK
#define GR_GL_STENCIL_BACK_WRITEMASK
#define GR_GL_VIEWPORT
#define GR_GL_SCISSOR_BOX
/*      GL_SCISSOR_TEST */
#define GR_GL_COLOR_CLEAR_VALUE
#define GR_GL_COLOR_WRITEMASK
#define GR_GL_UNPACK_ALIGNMENT
#define GR_GL_PACK_ALIGNMENT
#define GR_GL_PACK_REVERSE_ROW_ORDER
#define GR_GL_MAX_TEXTURE_SIZE
#define GR_GL_TEXTURE_MIN_LOD
#define GR_GL_TEXTURE_MAX_LOD
#define GR_GL_TEXTURE_BASE_LEVEL
#define GR_GL_TEXTURE_MAX_LEVEL
#define GR_GL_MAX_VIEWPORT_DIMS
#define GR_GL_SUBPIXEL_BITS
#define GR_GL_RED_BITS
#define GR_GL_GREEN_BITS
#define GR_GL_BLUE_BITS
#define GR_GL_ALPHA_BITS
#define GR_GL_DEPTH_BITS
#define GR_GL_STENCIL_BITS
#define GR_GL_POLYGON_OFFSET_UNITS
/*      GL_POLYGON_OFFSET_FILL */
#define GR_GL_POLYGON_OFFSET_FACTOR
#define GR_GL_TEXTURE_BINDING_2D
#define GR_GL_SAMPLE_BUFFERS
#define GR_GL_SAMPLES
#define GR_GL_SAMPLE_COVERAGE_VALUE
#define GR_GL_SAMPLE_COVERAGE_INVERT
#define GR_GL_RENDERBUFFER_COVERAGE_SAMPLES
#define GR_GL_RENDERBUFFER_COLOR_SAMPLES
#define GR_GL_MAX_MULTISAMPLE_COVERAGE_MODES
#define GR_GL_MULTISAMPLE_COVERAGE_MODES
#define GR_GL_MAX_TEXTURE_BUFFER_SIZE

#define GR_GL_CONTEXT_FLAGS
#define GR_GL_CONTEXT_FLAG_PROTECTED_CONTENT_BIT_EXT
#define GR_GL_TEXTURE_PROTECTED_EXT

/* GetTextureParameter */
/*      GL_TEXTURE_MAG_FILTER */
/*      GL_TEXTURE_MIN_FILTER */
/*      GL_TEXTURE_WRAP_S */
/*      GL_TEXTURE_WRAP_T */

#define GR_GL_NUM_COMPRESSED_TEXTURE_FORMATS
#define GR_GL_COMPRESSED_TEXTURE_FORMATS

/* Compressed Texture Formats */
#define GR_GL_COMPRESSED_RGB_S3TC_DXT1_EXT
#define GR_GL_COMPRESSED_RGBA_S3TC_DXT1_EXT
#define GR_GL_COMPRESSED_RGBA_S3TC_DXT3_EXT
#define GR_GL_COMPRESSED_RGBA_S3TC_DXT5_EXT

#define GR_GL_COMPRESSED_SRGB_S3TC_DXT1_EXT
#define GR_GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT
#define GR_GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT
#define GR_GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT

#define GR_GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG
#define GR_GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG
#define GR_GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG
#define GR_GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG

#define GR_GL_COMPRESSED_RGBA_PVRTC_2BPPV2_IMG
#define GR_GL_COMPRESSED_RGBA_PVRTC_4BPPV2_IMG

#define GR_GL_COMPRESSED_ETC1_RGB8

#define GR_GL_COMPRESSED_R11_EAC
#define GR_GL_COMPRESSED_SIGNED_R11_EAC
#define GR_GL_COMPRESSED_RG11_EAC
#define GR_GL_COMPRESSED_SIGNED_RG11_EAC

#define GR_GL_COMPRESSED_RGB8_ETC2
#define GR_GL_COMPRESSED_SRGB8_ETC2
#define GR_GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1
#define GR_GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1
#define GR_GL_COMPRESSED_RGBA8_ETC2_EAC
#define GR_GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC

#define GR_GL_COMPRESSED_LUMINANCE_LATC1
#define GR_GL_COMPRESSED_SIGNED_LUMINANCE_LATC1
#define GR_GL_COMPRESSED_LUMINANCE_ALPHA_LATC2
#define GR_GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2

#define GR_GL_COMPRESSED_RED_RGTC1
#define GR_GL_COMPRESSED_SIGNED_RED_RGTC1
#define GR_GL_COMPRESSED_RED_GREEN_RGTC2
#define GR_GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2

#define GR_GL_COMPRESSED_3DC_X
#define GR_GL_COMPRESSED_3DC_XY

#define GR_GL_COMPRESSED_RGBA_BPTC_UNORM
#define GR_GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM
#define GR_GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT
#define GR_GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT

#define GR_GL_COMPRESSED_RGBA_ASTC_4x4
#define GR_GL_COMPRESSED_RGBA_ASTC_5x4
#define GR_GL_COMPRESSED_RGBA_ASTC_5x5
#define GR_GL_COMPRESSED_RGBA_ASTC_6x5
#define GR_GL_COMPRESSED_RGBA_ASTC_6x6
#define GR_GL_COMPRESSED_RGBA_ASTC_8x5
#define GR_GL_COMPRESSED_RGBA_ASTC_8x6
#define GR_GL_COMPRESSED_RGBA_ASTC_8x8
#define GR_GL_COMPRESSED_RGBA_ASTC_10x5
#define GR_GL_COMPRESSED_RGBA_ASTC_10x6
#define GR_GL_COMPRESSED_RGBA_ASTC_10x8
#define GR_GL_COMPRESSED_RGBA_ASTC_10x10
#define GR_GL_COMPRESSED_RGBA_ASTC_12x10
#define GR_GL_COMPRESSED_RGBA_ASTC_12x12

#define GR_GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4
#define GR_GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4
#define GR_GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5
#define GR_GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5
#define GR_GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6
#define GR_GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5
#define GR_GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6
#define GR_GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8
#define GR_GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5
#define GR_GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6
#define GR_GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8
#define GR_GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10
#define GR_GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10
#define GR_GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12

/* HintMode */
#define GR_GL_DONT_CARE
#define GR_GL_FASTEST
#define GR_GL_NICEST

/* HintTarget */
#define GR_GL_GENERATE_MIPMAP_HINT

/* DataType */
#define GR_GL_BYTE
#define GR_GL_UNSIGNED_BYTE
#define GR_GL_SHORT
#define GR_GL_UNSIGNED_SHORT
#define GR_GL_INT
#define GR_GL_UNSIGNED_INT
#define GR_GL_FLOAT
#define GR_GL_HALF_FLOAT
#define GR_GL_FIXED
#define GR_GL_HALF_FLOAT_OES

/* Lighting */
#define GR_GL_LIGHTING
#define GR_GL_LIGHT0
#define GR_GL_LIGHT1
#define GR_GL_LIGHT2
#define GR_GL_LIGHT3
#define GR_GL_LIGHT4
#define GR_GL_LIGHT5
#define GR_GL_LIGHT6
#define GR_GL_LIGHT7
#define GR_GL_SPOT_EXPONENT
#define GR_GL_SPOT_CUTOFF
#define GR_GL_CONSTANT_ATTENUATION
#define GR_GL_LINEAR_ATTENUATION
#define GR_GL_QUADRATIC_ATTENUATION
#define GR_GL_AMBIENT
#define GR_GL_DIFFUSE
#define GR_GL_SPECULAR
#define GR_GL_SHININESS
#define GR_GL_EMISSION
#define GR_GL_POSITION
#define GR_GL_SPOT_DIRECTION
#define GR_GL_AMBIENT_AND_DIFFUSE
#define GR_GL_COLOR_INDEXES
#define GR_GL_LIGHT_MODEL_TWO_SIDE
#define GR_GL_LIGHT_MODEL_LOCAL_VIEWER
#define GR_GL_LIGHT_MODEL_AMBIENT
#define GR_GL_FRONT_AND_BACK
#define GR_GL_SHADE_MODEL
#define GR_GL_FLAT
#define GR_GL_SMOOTH
#define GR_GL_COLOR_MATERIAL
#define GR_GL_COLOR_MATERIAL_FACE
#define GR_GL_COLOR_MATERIAL_PARAMETER
#define GR_GL_NORMALIZE

/* Matrix Mode */
#define GR_GL_MATRIX_MODE
#define GR_GL_MODELVIEW
#define GR_GL_PROJECTION
#define GR_GL_TEXTURE

/* multisample */
#define GR_GL_MULTISAMPLE
#define GR_GL_SAMPLE_POSITION

/* Points */
#define GR_GL_POINT_SMOOTH
#define GR_GL_POINT_SIZE
#define GR_GL_POINT_SIZE_GRANULARITY
#define GR_GL_POINT_SIZE_RANGE

/* Lines */
#define GR_GL_LINE_SMOOTH
#define GR_GL_LINE_STIPPLE
#define GR_GL_LINE_STIPPLE_PATTERN
#define GR_GL_LINE_STIPPLE_REPEAT
#define GR_GL_LINE_WIDTH
#define GR_GL_LINE_WIDTH_GRANULARITY
#define GR_GL_LINE_WIDTH_RANGE

/* PolygonMode */
#define GR_GL_POINT
#define GR_GL_LINE
#define GR_GL_FILL

/* Unsized formats */
#define GR_GL_STENCIL_INDEX
#define GR_GL_DEPTH_COMPONENT
#define GR_GL_DEPTH_STENCIL
#define GR_GL_RED
#define GR_GL_RED_INTEGER
#define GR_GL_GREEN
#define GR_GL_BLUE
#define GR_GL_ALPHA
#define GR_GL_LUMINANCE
#define GR_GL_LUMINANCE_ALPHA
#define GR_GL_RG_INTEGER
#define GR_GL_RGB
#define GR_GL_RGB_INTEGER
#define GR_GL_SRGB
#define GR_GL_RGBA
#define GR_GL_RG
#define GR_GL_SRGB_ALPHA
#define GR_GL_RGBA_INTEGER
#define GR_GL_BGRA

/* Stencil index sized formats */
#define GR_GL_STENCIL_INDEX4
#define GR_GL_STENCIL_INDEX8
#define GR_GL_STENCIL_INDEX16

/* Depth component sized formats */
#define GR_GL_DEPTH_COMPONENT16

/* Depth stencil sized formats */
#define GR_GL_DEPTH24_STENCIL8

/* Red sized formats */
#define GR_GL_R8
#define GR_GL_R16
#define GR_GL_R16F
#define GR_GL_R32F

/* Red integer sized formats */
#define GR_GL_R8I
#define GR_GL_R8UI
#define GR_GL_R16I
#define GR_GL_R16UI
#define GR_GL_R32I
#define GR_GL_R32UI

/* Luminance sized formats */
#define GR_GL_LUMINANCE8
#define GR_GL_LUMINANCE8_ALPHA8
#define GR_GL_LUMINANCE16F

/* Alpha sized formats */
#define GR_GL_ALPHA8
#define GR_GL_ALPHA16
#define GR_GL_ALPHA16F
#define GR_GL_ALPHA32F

/* Alpha integer sized formats */
#define GR_GL_ALPHA8I
#define GR_GL_ALPHA8UI
#define GR_GL_ALPHA16I
#define GR_GL_ALPHA16UI
#define GR_GL_ALPHA32I
#define GR_GL_ALPHA32UI

/* RG sized formats */
#define GR_GL_RG8
#define GR_GL_RG16
#define GR_GL_R16F
#define GR_GL_R32F
#define GR_GL_RG16F

/* RG sized integer formats */
#define GR_GL_RG8I
#define GR_GL_RG8UI
#define GR_GL_RG16I
#define GR_GL_RG16UI
#define GR_GL_RG32I
#define GR_GL_RG32UI

/* RGB sized formats */
#define GR_GL_RGB5
#define GR_GL_RGB565
#define GR_GL_RGB8
#define GR_GL_SRGB8
#define GR_GL_RGBX8

/* RGB integer sized formats */
#define GR_GL_RGB8I
#define GR_GL_RGB8UI
#define GR_GL_RGB16I
#define GR_GL_RGB16UI
#define GR_GL_RGB32I
#define GR_GL_RGB32UI

/* RGBA sized formats */
#define GR_GL_RGBA4
#define GR_GL_RGB5_A1
#define GR_GL_RGBA8
#define GR_GL_RGB10_A2
#define GR_GL_SRGB8_ALPHA8
#define GR_GL_RGBA16F
#define GR_GL_RGBA32F
#define GR_GL_RG32F
#define GR_GL_RGBA16

/* RGBA integer sized formats */
#define GR_GL_RGBA8I
#define GR_GL_RGBA8UI
#define GR_GL_RGBA16I
#define GR_GL_RGBA16UI
#define GR_GL_RGBA32I
#define GR_GL_RGBA32UI

/* BGRA sized formats */
#define GR_GL_BGRA8

/* PixelType */
/*      GL_UNSIGNED_BYTE */
#define GR_GL_UNSIGNED_SHORT_4_4_4_4
#define GR_GL_UNSIGNED_SHORT_5_5_5_1
#define GR_GL_UNSIGNED_SHORT_5_6_5
#define GR_GL_UNSIGNED_INT_2_10_10_10_REV

/* Shaders */
#define GR_GL_FRAGMENT_SHADER
#define GR_GL_VERTEX_SHADER
#define GR_GL_TESS_CONTROL_SHADER
#define GR_GL_TESS_EVALUATION_SHADER
#define GR_GL_MAX_VERTEX_ATTRIBS
#define GR_GL_MAX_VERTEX_UNIFORM_VECTORS
#define GR_GL_MAX_VARYING_VECTORS
#define GR_GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS
#define GR_GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS
#define GR_GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS
#define GR_GL_MAX_TEXTURE_IMAGE_UNITS
#define GR_GL_MAX_FRAGMENT_UNIFORM_VECTORS
#define GR_GL_SHADER_TYPE
#define GR_GL_DELETE_STATUS
#define GR_GL_LINK_STATUS
#define GR_GL_VALIDATE_STATUS
#define GR_GL_ATTACHED_SHADERS
#define GR_GL_ACTIVE_UNIFORMS
#define GR_GL_ACTIVE_UNIFORM_MAX_LENGTH
#define GR_GL_ACTIVE_ATTRIBUTES
#define GR_GL_ACTIVE_ATTRIBUTE_MAX_LENGTH
#define GR_GL_SHADING_LANGUAGE_VERSION
#define GR_GL_CURRENT_PROGRAM
#define GR_GL_MAX_FRAGMENT_UNIFORM_COMPONENTS
#define GR_GL_MAX_VERTEX_UNIFORM_COMPONENTS
#define GR_GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_FAST_SIZE
#define GR_GL_SHADER_BINARY_FORMATS

/* StencilFunction */
#define GR_GL_NEVER
#define GR_GL_LESS
#define GR_GL_EQUAL
#define GR_GL_LEQUAL
#define GR_GL_GREATER
#define GR_GL_NOTEQUAL
#define GR_GL_GEQUAL
#define GR_GL_ALWAYS

/* StencilOp */
/*      GL_ZERO */
#define GR_GL_KEEP
#define GR_GL_REPLACE
#define GR_GL_INCR
#define GR_GL_DECR
#define GR_GL_INVERT
#define GR_GL_INCR_WRAP
#define GR_GL_DECR_WRAP

/* StringName */
#define GR_GL_VENDOR
#define GR_GL_RENDERER
#define GR_GL_VERSION
#define GR_GL_EXTENSIONS

/* StringCounts */
#define GR_GL_NUM_EXTENSIONS

/* Pixel Mode / Transfer */
#define GR_GL_UNPACK_ROW_LENGTH
#define GR_GL_PACK_ROW_LENGTH


/* TextureMagFilter */
#define GR_GL_NEAREST
#define GR_GL_LINEAR

/* TextureMinFilter */
/*      GL_NEAREST */
/*      GL_LINEAR */
#define GR_GL_NEAREST_MIPMAP_NEAREST
#define GR_GL_LINEAR_MIPMAP_NEAREST
#define GR_GL_NEAREST_MIPMAP_LINEAR
#define GR_GL_LINEAR_MIPMAP_LINEAR

/* TextureUsage */
#define GR_GL_FRAMEBUFFER_ATTACHMENT

/* TextureParameterName */
#define GR_GL_TEXTURE_MAG_FILTER
#define GR_GL_TEXTURE_MIN_FILTER
#define GR_GL_TEXTURE_WRAP_S
#define GR_GL_TEXTURE_WRAP_T
#define GR_GL_TEXTURE_USAGE
#define GR_GL_TEXTURE_MAX_ANISOTROPY
#define GR_GL_MAX_TEXTURE_MAX_ANISOTROPY

/* TextureTarget */
/*      GL_TEXTURE_2D */
#define GR_GL_TEXTURE
#define GR_GL_TEXTURE_CUBE_MAP
#define GR_GL_TEXTURE_BINDING_CUBE_MAP
#define GR_GL_TEXTURE_CUBE_MAP_POSITIVE_X
#define GR_GL_TEXTURE_CUBE_MAP_NEGATIVE_X
#define GR_GL_TEXTURE_CUBE_MAP_POSITIVE_Y
#define GR_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y
#define GR_GL_TEXTURE_CUBE_MAP_POSITIVE_Z
#define GR_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z
#define GR_GL_MAX_CUBE_MAP_TEXTURE_SIZE

/* TextureUnit */
#define GR_GL_TEXTURE0
#define GR_GL_TEXTURE1
#define GR_GL_TEXTURE2
#define GR_GL_TEXTURE3
#define GR_GL_TEXTURE4
#define GR_GL_TEXTURE5
#define GR_GL_TEXTURE6
#define GR_GL_TEXTURE7
#define GR_GL_TEXTURE8
#define GR_GL_TEXTURE9
#define GR_GL_TEXTURE10
#define GR_GL_TEXTURE11
#define GR_GL_TEXTURE12
#define GR_GL_TEXTURE13
#define GR_GL_TEXTURE14
#define GR_GL_TEXTURE15
#define GR_GL_TEXTURE16
#define GR_GL_TEXTURE17
#define GR_GL_TEXTURE18
#define GR_GL_TEXTURE19
#define GR_GL_TEXTURE20
#define GR_GL_TEXTURE21
#define GR_GL_TEXTURE22
#define GR_GL_TEXTURE23
#define GR_GL_TEXTURE24
#define GR_GL_TEXTURE25
#define GR_GL_TEXTURE26
#define GR_GL_TEXTURE27
#define GR_GL_TEXTURE28
#define GR_GL_TEXTURE29
#define GR_GL_TEXTURE30
#define GR_GL_TEXTURE31
#define GR_GL_ACTIVE_TEXTURE
#define GR_GL_MAX_TEXTURE_UNITS
#define GR_GL_MAX_TEXTURE_COORDS

/* TextureWrapMode */
#define GR_GL_REPEAT
#define GR_GL_CLAMP_TO_EDGE
#define GR_GL_MIRRORED_REPEAT
#define GR_GL_CLAMP_TO_BORDER

/* Texture Swizzle */
#define GR_GL_TEXTURE_SWIZZLE_R
#define GR_GL_TEXTURE_SWIZZLE_G
#define GR_GL_TEXTURE_SWIZZLE_B
#define GR_GL_TEXTURE_SWIZZLE_A
#define GR_GL_TEXTURE_SWIZZLE_RGBA

/* Texture mapping */
#define GR_GL_TEXTURE_ENV
#define GR_GL_TEXTURE_ENV_MODE
#define GR_GL_TEXTURE_1D
/* GL_TEXTURE_2D */
/* GL_TEXTURE_WRAP_S */
/* GL_TEXTURE_WRAP_T */
/* GL_TEXTURE_MAG_FILTER */
/* GL_TEXTURE_MIN_FILTER */
#define GR_GL_TEXTURE_ENV_COLOR
#define GR_GL_TEXTURE_GEN_S
#define GR_GL_TEXTURE_GEN_T
#define GR_GL_TEXTURE_GEN_R
#define GR_GL_TEXTURE_GEN_Q
#define GR_GL_TEXTURE_GEN_MODE
#define GR_GL_TEXTURE_BORDER_COLOR
#define GR_GL_TEXTURE_WIDTH
#define GR_GL_TEXTURE_HEIGHT
#define GR_GL_TEXTURE_BORDER
#define GR_GL_TEXTURE_COMPONENTS
#define GR_GL_TEXTURE_RED_SIZE
#define GR_GL_TEXTURE_GREEN_SIZE
#define GR_GL_TEXTURE_BLUE_SIZE
#define GR_GL_TEXTURE_ALPHA_SIZE
#define GR_GL_TEXTURE_LUMINANCE_SIZE
#define GR_GL_TEXTURE_INTENSITY_SIZE
#define GR_GL_TEXTURE_INTERNAL_FORMAT
/* GL_NEAREST_MIPMAP_NEAREST */
/* GL_NEAREST_MIPMAP_LINEAR */
/* GL_LINEAR_MIPMAP_NEAREST */
/* GL_LINEAR_MIPMAP_LINEAR */
#define GR_GL_OBJECT_LINEAR
#define GR_GL_OBJECT_PLANE
#define GR_GL_EYE_LINEAR
#define GR_GL_EYE_PLANE
#define GR_GL_SPHERE_MAP
#define GR_GL_DECAL
#define GR_GL_MODULATE
/* GL_NEAREST */
/* GL_REPEAT */
#define GR_GL_CLAMP
#define GR_GL_S
#define GR_GL_T
#define GR_GL_R
#define GR_GL_Q
#define GR_GL_TEXTURE_GEN_R
#define GR_GL_TEXTURE_GEN_Q

/* texture_env_combine */
#define GR_GL_COMBINE
#define GR_GL_COMBINE_RGB
#define GR_GL_COMBINE_ALPHA
#define GR_GL_SOURCE0_RGB
#define GR_GL_SOURCE1_RGB
#define GR_GL_SOURCE2_RGB
#define GR_GL_SOURCE0_ALPHA
#define GR_GL_SOURCE1_ALPHA
#define GR_GL_SOURCE2_ALPHA
#define GR_GL_OPERAND0_RGB
#define GR_GL_OPERAND1_RGB
#define GR_GL_OPERAND2_RGB
#define GR_GL_OPERAND0_ALPHA
#define GR_GL_OPERAND1_ALPHA
#define GR_GL_OPERAND2_ALPHA
#define GR_GL_RGB_SCALE
#define GR_GL_ADD_SIGNED
#define GR_GL_INTERPOLATE
#define GR_GL_SUBTRACT
#define GR_GL_CONSTANT
#define GR_GL_PRIMARY_COLOR
#define GR_GL_PREVIOUS
#define GR_GL_SRC0_RGB
#define GR_GL_SRC1_RGB
#define GR_GL_SRC2_RGB
#define GR_GL_SRC0_ALPHA
#define GR_GL_SRC1_ALPHA
#define GR_GL_SRC2_ALPHA

/* Uniform Types */
#define GR_GL_FLOAT_VEC2
#define GR_GL_FLOAT_VEC3
#define GR_GL_FLOAT_VEC4
#define GR_GL_INT_VEC2
#define GR_GL_INT_VEC3
#define GR_GL_INT_VEC4
#define GR_GL_BOOL
#define GR_GL_BOOL_VEC2
#define GR_GL_BOOL_VEC3
#define GR_GL_BOOL_VEC4
#define GR_GL_FLOAT_MAT2
#define GR_GL_FLOAT_MAT3
#define GR_GL_FLOAT_MAT4
#define GR_GL_SAMPLER_2D
#define GR_GL_SAMPLER_CUBE

/* Vertex Arrays */
#define GR_GL_VERTEX_ATTRIB_ARRAY_ENABLED
#define GR_GL_VERTEX_ATTRIB_ARRAY_SIZE
#define GR_GL_VERTEX_ATTRIB_ARRAY_STRIDE
#define GR_GL_VERTEX_ATTRIB_ARRAY_TYPE
#define GR_GL_VERTEX_ATTRIB_ARRAY_NORMALIZED
#define GR_GL_VERTEX_ATTRIB_ARRAY_POINTER
#define GR_GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING
#define GR_GL_VERTEX_ARRAY
#define GR_GL_NORMAL_ARRAY
#define GR_GL_COLOR_ARRAY
#define GR_GL_SECONDARY_COLOR_ARRAY
#define GR_GL_INDEX_ARRAY
#define GR_GL_TEXTURE_COORD_ARRAY
#define GR_GL_EDGE_FLAG_ARRAY
#define GR_GL_VERTEX_ARRAY_SIZE
#define GR_GL_VERTEX_ARRAY_TYPE
#define GR_GL_VERTEX_ARRAY_STRIDE
#define GR_GL_NORMAL_ARRAY_TYPE
#define GR_GL_NORMAL_ARRAY_STRIDE
#define GR_GL_COLOR_ARRAY_SIZE
#define GR_GL_COLOR_ARRAY_TYPE
#define GR_GL_COLOR_ARRAY_STRIDE
#define GR_GL_INDEX_ARRAY_TYPE
#define GR_GL_INDEX_ARRAY_STRIDE
#define GR_GL_TEXTURE_COORD_ARRAY_SIZE
#define GR_GL_TEXTURE_COORD_ARRAY_TYPE
#define GR_GL_TEXTURE_COORD_ARRAY_STRIDE
#define GR_GL_EDGE_FLAG_ARRAY_STRIDE
#define GR_GL_VERTEX_ARRAY_POINTER
#define GR_GL_NORMAL_ARRAY_POINTER
#define GR_GL_COLOR_ARRAY_POINTER
#define GR_GL_INDEX_ARRAY_POINTER
#define GR_GL_TEXTURE_COORD_ARRAY_POINTER
#define GR_GL_EDGE_FLAG_ARRAY_POINTER
#define GR_GL_V2F
#define GR_GL_V3F
#define GR_GL_C4UB_V2F
#define GR_GL_C4UB_V3F
#define GR_GL_C3F_V3F
#define GR_GL_N3F_V3F
#define GR_GL_C4F_N3F_V3F
#define GR_GL_T2F_V3F
#define GR_GL_T4F_V4F
#define GR_GL_T2F_C4UB_V3F
#define GR_GL_T2F_C3F_V3F
#define GR_GL_T2F_N3F_V3F
#define GR_GL_T2F_C4F_N3F_V3F
#define GR_GL_T4F_C4F_N3F_V4F
#define GR_GL_PRIMITIVE_RESTART_FIXED_INDEX

/* Buffer Object */
#define GR_GL_READ_ONLY
#define GR_GL_WRITE_ONLY
#define GR_GL_READ_WRITE
#define GR_GL_BUFFER_MAPPED

#define GR_GL_MAP_READ_BIT
#define GR_GL_MAP_WRITE_BIT
#define GR_GL_MAP_INVALIDATE_RANGE_BIT
#define GR_GL_MAP_INVALIDATE_BUFFER_BIT
#define GR_GL_MAP_FLUSH_EXPLICIT_BIT
#define GR_GL_MAP_UNSYNCHRONIZED_BIT

/* Read Format */
#define GR_GL_IMPLEMENTATION_COLOR_READ_TYPE
#define GR_GL_IMPLEMENTATION_COLOR_READ_FORMAT

/* Shader Source */
#define GR_GL_COMPILE_STATUS
#define GR_GL_INFO_LOG_LENGTH
#define GR_GL_SHADER_SOURCE_LENGTH
#define GR_GL_SHADER_COMPILER

/* Shader Binary */
#define GR_GL_SHADER_BINARY_FORMATS
#define GR_GL_NUM_SHADER_BINARY_FORMATS

/* Program Binary */
#define GR_GL_NUM_PROGRAM_BINARY_FORMATS
#define GR_GL_PROGRAM_BINARY_FORMATS

/* Shader Precision-Specified Types */
#define GR_GL_LOW_FLOAT
#define GR_GL_MEDIUM_FLOAT
#define GR_GL_HIGH_FLOAT
#define GR_GL_LOW_INT
#define GR_GL_MEDIUM_INT
#define GR_GL_HIGH_INT

/* Queries */
#define GR_GL_QUERY_COUNTER_BITS
#define GR_GL_CURRENT_QUERY
#define GR_GL_QUERY_RESULT
#define GR_GL_QUERY_RESULT_AVAILABLE
#define GR_GL_SAMPLES_PASSED
#define GR_GL_ANY_SAMPLES_PASSED
#define GR_GL_TIME_ELAPSED
#define GR_GL_TIMESTAMP
#define GR_GL_PRIMITIVES_GENERATED
#define GR_GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN


/* Framebuffer Object. */
#define GR_GL_FRAMEBUFFER
#define GR_GL_READ_FRAMEBUFFER
#define GR_GL_DRAW_FRAMEBUFFER

#define GR_GL_RENDERBUFFER

#define GR_GL_MAX_SAMPLES
// GL_IMG_multisampled_render_to_texture uses a different value for GL_MAX_SAMPLES
#define GR_GL_MAX_SAMPLES_IMG

#define GR_GL_RENDERBUFFER_WIDTH
#define GR_GL_RENDERBUFFER_HEIGHT
#define GR_GL_RENDERBUFFER_INTERNAL_FORMAT
#define GR_GL_RENDERBUFFER_RED_SIZE
#define GR_GL_RENDERBUFFER_GREEN_SIZE
#define GR_GL_RENDERBUFFER_BLUE_SIZE
#define GR_GL_RENDERBUFFER_ALPHA_SIZE
#define GR_GL_RENDERBUFFER_DEPTH_SIZE
#define GR_GL_RENDERBUFFER_STENCIL_SIZE

#define GR_GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE
#define GR_GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME
#define GR_GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL
#define GR_GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE
#define GR_GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER
#define GR_GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING
#define GR_GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE
#define GR_GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE
#define GR_GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE
#define GR_GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE
#define GR_GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE
#define GR_GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE
#define GR_GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE

#define GR_GL_COLOR_ATTACHMENT0
#define GR_GL_DEPTH_ATTACHMENT
#define GR_GL_STENCIL_ATTACHMENT

// GL_EXT_discard_framebuffer
#define GR_GL_COLOR
#define GR_GL_DEPTH
#define GR_GL_STENCIL

#define GR_GL_NONE
#define GR_GL_FRAMEBUFFER_DEFAULT

#define GR_GL_FRAMEBUFFER_COMPLETE
#define GR_GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT
#define GR_GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT
#define GR_GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS
#define GR_GL_FRAMEBUFFER_UNSUPPORTED

#define GR_GL_FRAMEBUFFER_BINDING
#define GR_GL_RENDERBUFFER_BINDING
#define GR_GL_MAX_RENDERBUFFER_SIZE

#define GR_GL_INVALID_FRAMEBUFFER_OPERATION

/* Path Rendering */
// commands
#define GR_GL_CLOSE_PATH
#define GR_GL_MOVE_TO
#define GR_GL_LINE_TO
#define GR_GL_QUADRATIC_CURVE_TO
#define GR_GL_CUBIC_CURVE_TO
#define GR_GL_CONIC_CURVE_TO

// path parameters
#define GR_GL_PATH_STROKE_WIDTH
#define GR_GL_PATH_END_CAPS
#define GR_GL_PATH_JOIN_STYLE
#define GR_GL_PATH_MITER_LIMIT
#define GR_GL_PATH_STROKE_BOUND

// fill modes
#define GR_GL_COUNT_UP

// cover mode
#define GR_GL_BOUNDING_BOX
#define GR_GL_BOUNDING_BOX_OF_BOUNDING_BOXES

// transform type
#define GR_GL_TRANSLATE_X
#define GR_GL_TRANSLATE_Y
#define GR_GL_TRANSLATE_2D
#define GR_GL_TRANSPOSE_AFFINE_2D

// cap/dash values
#define GR_GL_SQUARE
#define GR_GL_ROUND

// join values
#define GR_GL_BEVEL
#define GR_GL_MITER_REVERT

// glyph loading values
#define GR_GL_STANDARD_FONT_FORMAT
#define GR_GL_FONT_GLYPHS_AVAILABLE

// NV_path_rendering extension to ARB_program_interface_query:
// .. corresponds to the set of active input variables used by the fragment
// shader stage of <program> (if a fragment stage exists).
#define GR_GL_FRAGMENT_INPUT

// NV_path_rendering extension to EXT_direct_state_access:
// [the matrix functions] must support the PATH_PROJECTION_NV and
// PATH_MODELVIEW_NV tokens for matrixMode.
#define GR_GL_PATH_PROJECTION
#define GR_GL_PATH_MODELVIEW

/*  ARM specific define for MSAA support on framebuffer fetch */
#define GR_GL_FETCH_PER_SAMPLE

/* GL_KHR_debug */
#define GR_GL_DEBUG_OUTPUT
#define GR_GL_DEBUG_OUTPUT_SYNCHRONOUS
#define GR_GL_CONTEXT_FLAG_DEBUG_BIT
#define GR_GL_MAX_DEBUG_MESSAGE_LENGTH
#define GR_GL_MAX_DEBUG_LOGGED_MESSAGES
#define GR_GL_DEBUG_LOGGED_MESSAGES
#define GR_GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH
#define GR_GL_MAX_DEBUG_GROUP_STACK_DEPTH
#define GR_GL_DEBUG_GROUP_STACK_DEPTH
#define GR_GL_MAX_LABEL_LENGTH
#define GR_GL_DEBUG_SOURCE_API
#define GR_GL_DEBUG_SOURCE_WINDOW_SYSTEM
#define GR_GL_DEBUG_SOURCE_SHADER_COMPILER
#define GR_GL_DEBUG_SOURCE_THIRD_PARTY
#define GR_GL_DEBUG_SOURCE_APPLICATION
#define GR_GL_DEBUG_SOURCE_OTHER
#define GR_GL_DEBUG_TYPE_ERROR
#define GR_GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR
#define GR_GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR
#define GR_GL_DEBUG_TYPE_PORTABILITY
#define GR_GL_DEBUG_TYPE_PERFORMANCE
#define GR_GL_DEBUG_TYPE_OTHER
#define GR_GL_DEBUG_TYPE_MARKER
#define GR_GL_DEBUG_TYPE_PUSH_GROUP
#define GR_GL_DEBUG_TYPE_POP_GROUP
#define GR_GL_DEBUG_SEVERITY_HIGH
#define GR_GL_DEBUG_SEVERITY_MEDIUM
#define GR_GL_DEBUG_SEVERITY_LOW
#define GR_GL_DEBUG_SEVERITY_NOTIFICATION
#define GR_GL_STACK_UNDERFLOW
#define GR_GL_STACK_OVERFLOW
#define GR_GL_BUFFER
#define GR_GL_SHADER
#define GR_GL_PROGRAM
#define GR_GL_QUERY
#define GR_GL_PROGRAM_PIPELINE
#define GR_GL_SAMPLER

/* GL_OES_EGL_image_external */
#define GR_GL_TEXTURE_EXTERNAL
#define GR_GL_TEXTURE_BINDING_EXTERNAL

/* GL_ARB_texture_rectangle or GL_ANGLE_texture_rectangle */
#define GR_GL_TEXTURE_RECTANGLE
#define GR_GL_TEXTURE_BINDING_RECTANGLE

/* GL_EXT_window_rectangles */
#define GR_GL_MAX_WINDOW_RECTANGLES
#define GR_GL_INCLUSIVE
#define GR_GL_EXCLUSIVE

/** GL_QCOM_tiled_rendering */
#define GR_GL_COLOR_BUFFER_BIT0
#define GR_GL_COLOR_BUFFER_BIT1
#define GR_GL_COLOR_BUFFER_BIT2
#define GR_GL_COLOR_BUFFER_BIT3
#define GR_GL_COLOR_BUFFER_BIT4
#define GR_GL_COLOR_BUFFER_BIT5
#define GR_GL_COLOR_BUFFER_BIT6
#define GR_GL_COLOR_BUFFER_BIT7
#define GR_GL_DEPTH_BUFFER_BIT0
#define GR_GL_DEPTH_BUFFER_BIT1
#define GR_GL_DEPTH_BUFFER_BIT2
#define GR_GL_DEPTH_BUFFER_BIT3
#define GR_GL_DEPTH_BUFFER_BIT4
#define GR_GL_DEPTH_BUFFER_BIT5
#define GR_GL_DEPTH_BUFFER_BIT6
#define GR_GL_DEPTH_BUFFER_BIT7
#define GR_GL_STENCIL_BUFFER_BIT0
#define GR_GL_STENCIL_BUFFER_BIT1
#define GR_GL_STENCIL_BUFFER_BIT2
#define GR_GL_STENCIL_BUFFER_BIT3
#define GR_GL_STENCIL_BUFFER_BIT4
#define GR_GL_STENCIL_BUFFER_BIT5
#define GR_GL_STENCIL_BUFFER_BIT6
#define GR_GL_STENCIL_BUFFER_BIT7
#define GR_GL_MULTISAMPLE_BUFFER_BIT0
#define GR_GL_MULTISAMPLE_BUFFER_BIT1
#define GR_GL_MULTISAMPLE_BUFFER_BIT2
#define GR_GL_MULTISAMPLE_BUFFER_BIT3
#define GR_GL_MULTISAMPLE_BUFFER_BIT4
#define GR_GL_MULTISAMPLE_BUFFER_BIT5
#define GR_GL_MULTISAMPLE_BUFFER_BIT6
#define GR_GL_MULTISAMPLE_BUFFER_BIT7

/* GL_ARB_sync */
#define GR_GL_SYNC_GPU_COMMANDS_COMPLETE
#define GR_GL_ALREADY_SIGNALED
#define GR_GL_TIMEOUT_EXPIRED
#define GR_GL_CONDITION_SATISFIED
#define GR_GL_WAIT_FAILED
#define GR_GL_SYNC_FLUSH_COMMANDS_BIT
#define GR_GL_TIMEOUT_IGNORED

/* GL_EXT_geometry_shader */
#define GR_GL_LINES_ADJACENCY

#define GR_GL_PATCH_VERTICES

/* GL_ARB_internalformat_query */
#define GR_GL_NUM_SAMPLE_COUNTS

/* EGL Defines */
#define GR_EGL_NO_DISPLAY
#define GR_EGL_EXTENSIONS
#define GR_EGL_GL_TEXTURE_2D
#define GR_EGL_GL_TEXTURE_LEVEL
#define GR_EGL_IMAGE_PRESERVED
#define GR_EGL_FALSE
#define GR_EGL_TRUE
#define GR_EGL_NONE
#define GR_EGL_NO_IMAGE

/* Programs */
#define GR_GL_PROGRAM_BINARY_RETRIEVABLE_HINT
#define GL_PROGRAM_BINARY_LENGTH

/* GL_NV_conservative_raster */
#define GR_GL_CONSERVATIVE_RASTERIZATION

/* Barriers */
#define GR_GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT
#define GR_GL_ELEMENT_ARRAY_BARRIER_BIT
#define GR_GL_UNIFORM_BARRIER_BIT
#define GR_GL_TEXTURE_FETCH_BARRIER_BIT
#define GR_GL_SHADER_IMAGE_ACCESS_BARRIER_BIT
#define GR_GL_COMMAND_BARRIER_BIT
#define GR_GL_PIXEL_BUFFER_BARRIER_BIT
#define GR_GL_TEXTURE_UPDATE_BARRIER_BIT
#define GR_GL_BUFFER_UPDATE_BARRIER_BIT
#define GR_GL_FRAMEBUFFER_BARRIER_BIT
#define GR_GL_TRANSFORM_FEEDBACK_BARRIER_BIT
#define GR_GL_ATOMIC_COUNTER_BARRIER_BIT
#define GR_GL_ALL_BARRIER_BITS

/** GL_NV_fence_sync */
#define GR_GL_ALL_COMPLETED

/* Tessellation */
#define GR_GL_MAX_TESS_GEN_LEVEL_OES

/** WEBGL_debug_renderer_info */
#define GR_UNMASKED_VENDOR_WEBGL
#define GR_UNMASKED_RENDERER_WEBGL

/* GL_ANGLE_client_arrays */
#define GR_GL_CLIENT_ARRAYS_ANGLE

#endif