<div dir="ltr">Tested-by: <span class="gmail-il">Andriy</span>.Khulap <<a href="mailto:andriy.khulap@globallogic.com" target="_blank"><span class="gmail-il">andriy</span>.khulap@globallogic.com</a><wbr>><br><div class="gmail_extra"><br></div><div class="gmail_extra">With the corresponding mesa patch (a553c54abf "mesa: add glsl version query (v4)") the test passes.<br clear="all"></div><div class="gmail_extra">
Without that patch fails with error message:<br>Unexpected GL error: GL_INVALID_ENUM 0x500<br>(Error at ***/piglit/tests/spec/gl-4.3/get_glsl_versions.c:43)<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Feb 13, 2018 at 10:26 PM, Brian Paul <span dir="ltr"><<a href="mailto:brianp@vmware.com" target="_blank">brianp@vmware.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">and glGetStringi(GL_SHADING_<wbr>LANGUAGE_VERSION, i) queries in GL 4.3.<br>
Until recently, these queries were not implemented in Mesa.<br>
---<br>
tests/all.py | 5 +++<br>
tests/spec/CMakeLists.txt | 1 +<br>
tests/spec/gl-4.3/CMakeLists.<wbr>gl.txt | 13 ++++++<br>
tests/spec/gl-4.3/CMakeLists.<wbr>txt | 1 +<br>
tests/spec/gl-4.3/get_glsl_<wbr>versions.c | 76 ++++++++++++++++++++++++++++++<wbr>+++++<br>
5 files changed, 96 insertions(+)<br>
create mode 100644 tests/spec/gl-4.3/CMakeLists.<wbr>gl.txt<br>
create mode 100644 tests/spec/gl-4.3/CMakeLists.<wbr>txt<br>
create mode 100644 tests/spec/gl-4.3/get_glsl_<wbr>versions.c<br>
<br>
diff --git a/tests/all.py b/tests/all.py<br>
index 310161a..8236d5a 100644<br>
--- a/tests/all.py<br>
+++ b/tests/all.py<br>
@@ -1208,6 +1208,11 @@ with profile.test_list.group_<wbr>manager(<br>
<br>
with profile.test_list.group_<wbr>manager(<br>
PiglitGLTest,<br>
+ grouptools.join('spec', '!opengl 4.3')) as g:<br>
+ g(['get_glsl_versions'])<br>
+<br>
+with profile.test_list.group_<wbr>manager(<br>
+ PiglitGLTest,<br>
grouptools.join('spec', '!opengl 4.4')) as g:<br>
g(['tex-errors'])<br>
<br>
diff --git a/tests/spec/CMakeLists.txt b/tests/spec/CMakeLists.txt<br>
index 1f9d810..e57e8d7 100644<br>
--- a/tests/spec/CMakeLists.txt<br>
+++ b/tests/spec/CMakeLists.txt<br>
@@ -134,6 +134,7 @@ add_subdirectory (gl-3.0)<br>
add_subdirectory (gl-3.1)<br>
add_subdirectory (gl-3.2)<br>
add_subdirectory (gl-3.3)<br>
+add_subdirectory (gl-4.3)<br>
add_subdirectory (gl-4.4)<br>
add_subdirectory (gl-4.5)<br>
add_subdirectory (gles-2.0)<br>
diff --git a/tests/spec/gl-4.3/<wbr>CMakeLists.gl.txt b/tests/spec/gl-4.3/<wbr>CMakeLists.gl.txt<br>
new file mode 100644<br>
index 0000000..4d81c84<br>
--- /dev/null<br>
+++ b/tests/spec/gl-4.3/<wbr>CMakeLists.gl.txt<br>
@@ -0,0 +1,13 @@<br>
+include_directories(<br>
+ ${GLEXT_INCLUDE_DIR}<br>
+ ${OPENGL_INCLUDE_PATH}<br>
+)<br>
+<br>
+link_libraries (<br>
+ piglitutil_${piglit_target_<wbr>api}<br>
+ ${OPENGL_gl_LIBRARY}<br>
+)<br>
+<br>
+piglit_add_executable (gl-4.3-get_glsl_versions get_glsl_versions.c)<br>
+<br>
+# vim: ft=cmake:<br>
diff --git a/tests/spec/gl-4.3/<wbr>CMakeLists.txt b/tests/spec/gl-4.3/<wbr>CMakeLists.txt<br>
new file mode 100644<br>
index 0000000..144a306<br>
--- /dev/null<br>
+++ b/tests/spec/gl-4.3/<wbr>CMakeLists.txt<br>
@@ -0,0 +1 @@<br>
+piglit_include_target_api()<br>
diff --git a/tests/spec/gl-4.3/get_glsl_<wbr>versions.c b/tests/spec/gl-4.3/get_glsl_<wbr>versions.c<br>
new file mode 100644<br>
index 0000000..4a6d42d<br>
--- /dev/null<br>
+++ b/tests/spec/gl-4.3/get_glsl_<wbr>versions.c<br>
@@ -0,0 +1,76 @@<br>
+/*<br>
+ * Copyright 2017 VMware, Inc.<br>
+ *<br>
+ * Permission is hereby granted, free of charge, to any person obtaining a<br>
+ * copy of this software and associated documentation files (the "Software"),<br>
+ * to deal in the Software without restriction, including without limitation<br>
+ * on the rights to use, copy, modify, merge, publish, distribute, sub<br>
+ * license, and/or sell copies of the Software, and to permit persons to whom<br>
+ * the Software is furnished to do so, subject to the following conditions:<br>
+ *<br>
+ * The above copyright notice and this permission notice (including the next<br>
+ * paragraph) shall be included in all copies or substantial portions of the<br>
+ * Software.<br>
+ *<br>
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,<br>
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF<br>
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND<br>
+ * NON-INFRINGEMENT. IN NO EVENT SHALL AUTHORS AND/OR THEIR SUPPLIERS<br>
+ * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN<br>
+ * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN<br>
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE<br>
+ * SOFTWARE.<br>
+ */<br>
+<br>
+<br>
+#include "piglit-util-gl.h"<br>
+#include "minmax-test.h"<br>
+<br>
+<br>
+PIGLIT_GL_TEST_CONFIG_BEGIN<br>
+ config.supports_gl_core_<wbr>version = 43;<br>
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;<br>
+PIGLIT_GL_TEST_CONFIG_END<br>
+<br>
+<br>
+void<br>
+piglit_init(int argc, char *argv[])<br>
+{<br>
+ GLint num = -1;<br>
+ GLint i;<br>
+<br>
+ glGetIntegerv(GL_NUM_SHADING_<wbr>LANGUAGE_VERSIONS, &num);<br>
+ if (!piglit_check_gl_error(GL_NO_<wbr>ERROR)) {<br>
+ piglit_report_result(PIGLIT_<wbr>FAIL);<br>
+ }<br>
+ if (num < 1) {<br>
+ printf("Invalid number of shading language versions\n");<br>
+ piglit_report_result(PIGLIT_<wbr>FAIL);<br>
+ }<br>
+<br>
+ for (i = 0; i < num; i++) {<br>
+ const GLubyte *v = glGetStringi(GL_SHADING_<wbr>LANGUAGE_VERSION, i);<br>
+ if (!v) {<br>
+ printf("Invalid glGetStringi(index=%d) result\n", i);<br>
+ piglit_report_result(PIGLIT_<wbr>FAIL);<br>
+ }<br>
+ if (v[0] != 0 && !(v[0] >= '1' && v[0] <= '9')) {<br>
+ printf("Invalid GLSL version string: %s\n", v);<br>
+ piglit_report_result(PIGLIT_<wbr>FAIL);<br>
+ }<br>
+ //printf("%d: %s\n", i, (const char *) v);<br>
+ }<br>
+<br>
+ if (!piglit_check_gl_error(GL_NO_<wbr>ERROR)) {<br>
+ piglit_report_result(PIGLIT_<wbr>FAIL);<br>
+ }<br>
+<br>
+ piglit_report_result(PIGLIT_<wbr>PASS);<br>
+}<br>
+<br>
+<br>
+enum piglit_result<br>
+piglit_display(void)<br>
+{<br>
+ return PIGLIT_PASS;<br>
+}<br>
<span class="gmail-HOEnZb"><font color="#888888">--<br>
2.7.4<br>
<br>
</font></span></blockquote></div><br></div></div>