st/mesa: turn on OES_viewport_array when dependencies are met

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
diff --git a/docs/features.txt b/docs/features.txt
index cb62286..fbb3952 100644
--- a/docs/features.txt
+++ b/docs/features.txt
@@ -319,7 +319,7 @@
   GL_OES_texture_half_float                             DONE (i965, r300, r600, radeonsi, nv30, nv50, nvc0, softpipe, llvmpipe)
   GL_OES_texture_half_float_linear                      DONE (i965, r300, r600, radeonsi, nv30, nv50, nvc0, softpipe, llvmpipe)
   GL_OES_texture_view                                   not started - based on GL_ARB_texture_view
-  GL_OES_viewport_array                                 not started - based on GL_ARB_viewport_array and GL_ARB_fragment_layer_viewport
+  GL_OES_viewport_array                                 DONE (nvc0, radeonsi)
   GLX_ARB_context_flush_control                         not started
   GLX_ARB_robustness_application_isolation              not started
   GLX_ARB_robustness_share_group_isolation              not started
diff --git a/docs/relnotes/12.1.0.html b/docs/relnotes/12.1.0.html
index fb1d714..cdd8909 100644
--- a/docs/relnotes/12.1.0.html
+++ b/docs/relnotes/12.1.0.html
@@ -65,6 +65,7 @@
 <li>GL_OES_primitive_bounding_box on i965/gen7+, nvc0, radeonsi</li>
 <li>GL_OES_texture_cube_map_array on i965/gen8+, nvc0, radeonsi</li>
 <li>GL_OES_tessellation_shader on i965/gen7+, nvc0, radeonsi</li>
+<li>GL_OES_viewport_array on nvc0, radeonsi</li>
 <li>GL_ANDROID_extension_pack_es31a on i965/gen9+</li>
 </ul>
 
diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c
index 807fbfb..ef17aba 100644
--- a/src/mesa/state_tracker/st_extensions.c
+++ b/src/mesa/state_tracker/st_extensions.c
@@ -1226,6 +1226,11 @@
       extensions->OES_geometry_shader &&
       extensions->ARB_texture_cube_map_array;
 
+   extensions->OES_viewport_array =
+      extensions->ARB_ES3_1_compatibility &&
+      extensions->OES_geometry_shader &&
+      extensions->ARB_viewport_array;
+
    extensions->OES_primitive_bounding_box = extensions->ARB_ES3_1_compatibility;
    consts->NoPrimitiveBoundingBoxOutput = true;
 }