e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync/* Copyright (c) 2001, Stanford University
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync * All rights reserved.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync * See the file LICENSE.txt for information on redistributing this software.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync */
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#ifndef CR_VERSION_H
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_VERSION_H
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
7c465e80d0699fab71706c8a013a3327ec7034dcvboxsync#define SHCROGL_SSM_VERSION_BEFORE_CTXUSAGE_BITS 28
4e9f070a55a9ab37758f11adff5ca15d0498bcffvboxsync/* version which might have context usage bits saved */
7c465e80d0699fab71706c8a013a3327ec7034dcvboxsync#define SHCROGL_SSM_VERSION_WITH_SAVED_CTXUSAGE_BITS SHCROGL_SSM_VERSION_BEFORE_CTXUSAGE_BITS
7c465e80d0699fab71706c8a013a3327ec7034dcvboxsync#define SHCROGL_SSM_VERSION_BEFORE_FRONT_DRAW_TRACKING 29
4e9f070a55a9ab37758f11adff5ca15d0498bcffvboxsync/* version that might have corrupted state data */
7c465e80d0699fab71706c8a013a3327ec7034dcvboxsync#define SHCROGL_SSM_VERSION_WITH_CORUPTED_STATE 30
4e9f070a55a9ab37758f11adff5ca15d0498bcffvboxsync/* version with invalid glGetError state */
7c465e80d0699fab71706c8a013a3327ec7034dcvboxsync#define SHCROGL_SSM_VERSION_WITH_INVALID_ERROR_STATE 30
e2f182ec6538ad3eec9aab9c682296e044063200vboxsync/* VBox 4.2.12 had a bug that incorrectly CRMuralInfo data
e2f182ec6538ad3eec9aab9c682296e044063200vboxsync * in a different format without changing the state version,
e2f182ec6538ad3eec9aab9c682296e044063200vboxsync * i.e. 30 version can have both "correct" and "incorrect" CRMuralInfo data */
e2f182ec6538ad3eec9aab9c682296e044063200vboxsync#define SHCROGL_SSM_VERSION_WITH_BUGGY_MURAL_INFO 30
e85b92d4df013df97a72864a412eb94eb3f70acevboxsync/* the saved state has incorrect front and back buffer image data */
7c465e80d0699fab71706c8a013a3327ec7034dcvboxsync#define SHCROGL_SSM_VERSION_WITH_BUGGY_FB_IMAGE_DATA 31
7c465e80d0699fab71706c8a013a3327ec7034dcvboxsync#define SHCROGL_SSM_VERSION_WITH_STATE_BITS 33
7c465e80d0699fab71706c8a013a3327ec7034dcvboxsync#define SHCROGL_SSM_VERSION_WITH_WINDOW_CTX_USAGE 33
7c465e80d0699fab71706c8a013a3327ec7034dcvboxsync#define SHCROGL_SSM_VERSION_WITH_FIXED_STENCIL 34
7c465e80d0699fab71706c8a013a3327ec7034dcvboxsync#define SHCROGL_SSM_VERSION_WITH_SAVED_DEPTH_STENCIL_BUFFER 35
b9c7eaa5e444d11199b5fceda5662dc5e7452f70vboxsync/* some ogl drivers fail to Read/DrawPixels for DEPTH and STENCIL separately
b9c7eaa5e444d11199b5fceda5662dc5e7452f70vboxsync * from DEPTH_STENCIL renderbuffer we used for offscreen rendering
b9c7eaa5e444d11199b5fceda5662dc5e7452f70vboxsync * this is why we switched to glReadDrawPixels(GL_DEPTH_STENCIL) in one run */
b9c7eaa5e444d11199b5fceda5662dc5e7452f70vboxsync#define SHCROGL_SSM_VERSION_WITH_SINGLE_DEPTH_STENCIL 36
8a1c8030e7ec543d637b7c206c99044ded25d1f7vboxsync#define SHCROGL_SSM_VERSION_WITH_PRESENT_STATE 37
9d60c2d3e53e65bb430517a9b7335061bc508b09vboxsync/* older state did not have glPointParameter ( GL_POINT_SPRITE_COORD_ORIGIN ) implementation */
9d60c2d3e53e65bb430517a9b7335061bc508b09vboxsync#define SHCROGL_SSM_VERSION_WITH_SPRITE_COORD_ORIGIN 38
9d60c2d3e53e65bb430517a9b7335061bc508b09vboxsync/* dirty bits are not needed for now, remove */
9d60c2d3e53e65bb430517a9b7335061bc508b09vboxsync#define SHCROGL_SSM_VERSION_WITHOUT_DIRTY_BITS 38
6034392134865ffc1f0d2453a8ddd11b84d03db2vboxsync/* dummy windows and contexts have 0 external IDs, so never get stored to the state */
6034392134865ffc1f0d2453a8ddd11b84d03db2vboxsync#define SHCROGL_SSM_VERSION_WITH_FIXED_DUMMYIDS 39
3ea1dbf096240fc221aea99352a74c17a367a9b6vboxsync#define SHCROGL_SSM_VERSION_WITH_SCREEN_INFO 40
bff361262f6f9bda1094fc5f754259b8e0404718vboxsync#define SHCROGL_SSM_VERSION_WITH_ALLOCATED_KEYS 41
01df41f7a4e5f7de195a059541d1c89676da9673vboxsync#define SHCROGL_SSM_VERSION_WITH_FB_INFO 42
4252e037570a3c8d943552edb7858c9889aaca1dvboxsync#define SHCROGL_SSM_VERSION_WITH_BUGGY_KEYS 42
34f95fc7cf8cd158233f0596a26e88d588226271vboxsync#define SHCROGL_SSM_VERSION_CRCMD 44
359416647a711739d1b14addbf399178949a1a60vboxsync#define SHCROGL_SSM_VERSION_WITH_SCREEN_MAP 45
47b6f2e161ff99e6ab1b4f6090798276954b4a78vboxsync#define SHCROGL_SSM_VERSION_WITH_SCREEN_MAP_REORDERED 46
b33adb47420a64d534fc2e956e6db5ba363bcb3fvboxsync#define SHCROGL_SSM_VERSION_WITH_PEND_CMD_INFO 47
b33adb47420a64d534fc2e956e6db5ba363bcb3fvboxsync#define SHCROGL_SSM_VERSION 47
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync/* These define the Chromium release number.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync * Alpha Release = 0.1.0, Beta Release = 0.2.0
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync */
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_MAJOR_VERSION 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_MINOR_VERSION 9
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_PATCH_VERSION 0
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_VERSION_STRING "1.9" /* Chromium version, not OpenGL version */
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync/* These define the OpenGL version that Chromium supports.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync * This lets users easily recompile Chromium with/without OpenGL 1.x support.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync * We use OpenGL's GL_VERSION_1_x convention.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync */
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_OPENGL_VERSION_1_0 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_OPENGL_VERSION_1_1 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_OPENGL_VERSION_1_2 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_OPENGL_VERSION_1_2_1 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_OPENGL_VERSION_1_3 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_OPENGL_VERSION_1_4 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_OPENGL_VERSION_1_5 1
7e032664d31552364e83b411950d6e7c96b0b880vboxsync#define CR_OPENGL_VERSION_2_0 1
49ad08ab15f3b96d2d5ba5134a0506dd7b27fdf1vboxsync#define CR_OPENGL_VERSION_2_1 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
ad27e1d5e48ca41245120c331cc88b50464813cevboxsync/* Version (string) of OpenGL functionality supported by Chromium */
49ad08ab15f3b96d2d5ba5134a0506dd7b27fdf1vboxsync#ifdef CR_OPENGL_VERSION_2_1
49ad08ab15f3b96d2d5ba5134a0506dd7b27fdf1vboxsync# define CR_OPENGL_VERSION_STRING "2.1"
49ad08ab15f3b96d2d5ba5134a0506dd7b27fdf1vboxsync#elif defined(CR_OPENGL_VERSION_2_0)
f22cba796fd7499bf85058671a1af7cbe491c622vboxsync# define CR_OPENGL_VERSION_STRING "2.0"
f22cba796fd7499bf85058671a1af7cbe491c622vboxsync#else
f22cba796fd7499bf85058671a1af7cbe491c622vboxsync# define CR_OPENGL_VERSION_STRING "1.5"
f22cba796fd7499bf85058671a1af7cbe491c622vboxsync#endif
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync/* These define the OpenGL extensions that Chromium supports.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync * Users can enable/disable support for particular OpenGL extensions here.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync * Again, use OpenGL's convention.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync * WARNING: if you add new extensions here, also update this file:
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync * state_tracker/state_limits.c
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync */
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync/*#define CR_ARB_imaging 1 not yet */
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_depth_texture 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_fragment_program 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_multitexture 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_multisample 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_occlusion_query 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_point_parameters 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_point_sprite 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_shadow 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_shadow_ambient 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_texture_border_clamp 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_texture_compression 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_texture_cube_map 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_texture_env_add 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_texture_env_combine 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_texture_env_crossbar 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_texture_env_dot3 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_texture_mirrored_repeat 1
7dfba437bd13a51c7e3ff98ca483289fbdbf8df1vboxsync#define CR_ATI_texture_mirror_once 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_texture_non_power_of_two 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_transpose_matrix 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_vertex_buffer_object 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_vertex_program 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_ARB_window_pos 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_blend_color 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_blend_equation 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_blend_minmax 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_blend_logic_op 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_blend_subtract 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_blend_func_separate 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_clip_volume_hint 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_fog_coord 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_multi_draw_arrays 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_shadow_funcs 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_secondary_color 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#ifndef CR_OPENGL_VERSION_1_2
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_separate_specular_color 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#endif
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_stencil_wrap 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_texture_cube_map 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_texture_edge_clamp 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_texture_env_add 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_texture_filter_anisotropic 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_texture_lod_bias 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_texture_object 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_EXT_texture3D 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_IBM_rasterpos_clip 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_NV_fog_distance 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_NV_register_combiners 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_NV_register_combiners2 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_NV_texgen_reflection 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_NV_texture_rectangle 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_NV_vertex_program 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_NV_vertex_program1_1 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_NV_vertex_program2 1
a82a728a5cd1d52145a3ca7406d8e84ba6e5b2d2vboxsync#define CR_NV_vertex_program2_option 1
a82a728a5cd1d52145a3ca7406d8e84ba6e5b2d2vboxsync#define CR_NV_vertex_program3 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_NV_fragment_program 1
a82a728a5cd1d52145a3ca7406d8e84ba6e5b2d2vboxsync#define CR_NV_fragment_program_option 1
a82a728a5cd1d52145a3ca7406d8e84ba6e5b2d2vboxsync#define CR_NV_fragment_program2 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_SGIS_texture_border_clamp 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_SGIS_texture_edge_clamp 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_SGIS_generate_mipmap 1
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
bf5c9a8b30aeef751e52cfe8a66250caab2fd6a2vboxsync#define CR_EXT_texture_from_pixmap 1
71c944130c141978d2c36c720ff831a2105a63d0vboxsync#define CR_EXT_draw_range_elements 1
71c944130c141978d2c36c720ff831a2105a63d0vboxsync#define CR_EXT_texture_compression_s3tc 1
bf5c9a8b30aeef751e52cfe8a66250caab2fd6a2vboxsync
7e032664d31552364e83b411950d6e7c96b0b880vboxsync#define CR_ARB_shader_objects 1
f22cba796fd7499bf85058671a1af7cbe491c622vboxsync#define CR_ARB_vertex_shader 1
f22cba796fd7499bf85058671a1af7cbe491c622vboxsync#define CR_ARB_fragment_shader 1
71c944130c141978d2c36c720ff831a2105a63d0vboxsync#define CR_ARB_shading_language_100 1
f22cba796fd7499bf85058671a1af7cbe491c622vboxsync
ca551aca153d6df494985b5281c573ba2e3eb474vboxsync#define CR_EXT_framebuffer_object 1
10183353efa12aa94e0f3dc78e0f1c47f7928e8dvboxsync#define CR_EXT_compiled_vertex_array 1
ca551aca153d6df494985b5281c573ba2e3eb474vboxsync
af8d59d05d72f134aeea62712f1286b369807d52vboxsync#define CR_ARB_pixel_buffer_object 1
49ad08ab15f3b96d2d5ba5134a0506dd7b27fdf1vboxsync#define CR_EXT_texture_sRGB 1
af8d59d05d72f134aeea62712f1286b369807d52vboxsync
c113f3435253eb5c01a17f6b599c280d505663f7vboxsync#define CR_EXT_framebuffer_blit 1
c12885bf3de22fa504a7b9ddc41473b485d9ab25vboxsync#define CR_EXT_blend_equation_separate 1
c12885bf3de22fa504a7b9ddc41473b485d9ab25vboxsync#define CR_EXT_stencil_two_side 1
c113f3435253eb5c01a17f6b599c280d505663f7vboxsync
28471851c9621fb51b7968142cce9791928d65d1vboxsync#define CR_GREMEDY_string_marker 1
28471851c9621fb51b7968142cce9791928d65d1vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#endif /* CR_VERSION_H */