at [Khronos Gitlab](https://gitlab.khronos.org/) to be able to download
Khronos Confidential CTS.
It is possible to run and build the CTS without the Khronos Confidential CTS.
-Khronos Confidential CTS is mandatory only if you plan to make a
+For OpenGL CTS releases, and OpenGL ES CTS releases prior to opengl-es-cts-3.2.4.0
+Khronos Confidential CTS is mandatory if you plan to make a
conformance submission (see [Creating a Submission Package](#creating-a-submission-package)).
+For opengl-es-cts-3.2.4.0 and later OpenGL ES CTS releases Khronos Confidential CTS
+results must not be included in a submission package.
+
With CMake out-of-source builds are always recommended. Create a build directory
of your choosing, and in that directory generate Makefiles or IDE project
* be lost! Modify the generating script instead.
*/-->
<TestPackage name="Khronos Mustpass ES NoContext">
- <Configuration caseListFile="gles2-khr-master.txt" commandLine="--deqp-screen-rotation=unspecified --deqp-surface-width=64 --deqp-surface-height=64 --deqp-base-seed=1 --deqp-watchdog=disable" name="khr-master" os="any" useForFirstEGLConfig="True"/>
- <Configuration caseListFile="gles32-khr-master.txt" commandLine="--deqp-screen-rotation=unspecified --deqp-surface-width=64 --deqp-surface-height=64 --deqp-base-seed=1 --deqp-watchdog=disable" name="khr-master" os="any" useForFirstEGLConfig="True"/>
+ <Configuration caseListFile="gles2-khr-noctx-master.txt" commandLine="--deqp-screen-rotation=unspecified --deqp-surface-width=64 --deqp-surface-height=64 --deqp-base-seed=1 --deqp-watchdog=disable" name="khr-noctx-master" os="any" useForFirstEGLConfig="True"/>
+ <Configuration caseListFile="gles32-khr-noctx-master.txt" commandLine="--deqp-screen-rotation=unspecified --deqp-surface-width=64 --deqp-surface-height=64 --deqp-base-seed=1 --deqp-watchdog=disable" name="khr-noctx-master" os="any" useForFirstEGLConfig="True"/>
</TestPackage>
</Mustpass>
* be lost! Modify the generating script instead.
*/-->
<TestPackage name="Khronos Mustpass ES NoContext">
- <Configuration caseListFile="gles2-khr-master.txt" commandLine="--deqp-screen-rotation=unspecified --deqp-surface-width=64 --deqp-surface-height=64 --deqp-base-seed=1 --deqp-watchdog=disable" name="khr-master" os="any" useForFirstEGLConfig="True"/>
- <Configuration caseListFile="gles32-khr-master.txt" commandLine="--deqp-screen-rotation=unspecified --deqp-surface-width=64 --deqp-surface-height=64 --deqp-base-seed=1 --deqp-watchdog=disable" name="khr-master" os="any" useForFirstEGLConfig="True"/>
+ <Configuration caseListFile="gles2-khr-noctx-master.txt" commandLine="--deqp-screen-rotation=unspecified --deqp-surface-width=64 --deqp-surface-height=64 --deqp-base-seed=1 --deqp-watchdog=disable" name="khr-noctx-master" os="any" useForFirstEGLConfig="True"/>
+ <Configuration caseListFile="gles32-khr-noctx-master.txt" commandLine="--deqp-screen-rotation=unspecified --deqp-surface-width=64 --deqp-surface-height=64 --deqp-base-seed=1 --deqp-watchdog=disable" name="khr-noctx-master" os="any" useForFirstEGLConfig="True"/>
</TestPackage>
</Mustpass>
const char* mustpassDir = "gl_cts/data/mustpass/gles/khronos_mustpass_noctx/3.2.4.x/";
static const RunParams khronos_mustpass_es_nocontext_first_cfg[] = {
- { glu::ApiType::es(2, 0), "khr-master", DE_NULL, "unspecified", 1, DE_NULL, 64, 64 },
- { glu::ApiType::es(3, 2), "khr-master", DE_NULL, "unspecified", 1, DE_NULL, 64, 64 },
+ { glu::ApiType::es(2, 0), "khr-noctx-master", DE_NULL, "unspecified", 1, DE_NULL, 64, 64 },
+ { glu::ApiType::es(3, 2), "khr-noctx-master", DE_NULL, "unspecified", 1, DE_NULL, 64, 64 },
};
#endif // _GLCKHRONOSMUSTPASSESNOCONTEXT_HPP
GLCTS_NOCTX_ES2_KHR_PKG = Package(module = NOCTX_ES2_KHR_MODULE, configurations = [
# Master
- Configuration(name = "khr-master",
+ Configuration(name = "khr-noctx-master",
surfacewidth = "64",
surfaceheight = "64",
baseseed = "1",
GLCTS_NOCTX_ES32_KHR_PKG = Package(module = NOCTX_ES32_KHR_MODULE, configurations = [
# Master
- Configuration(name = "khr-master",
+ Configuration(name = "khr-noctx-master",
surfacewidth = "64",
surfaceheight = "64",
baseseed = "1",
# Khronos OpenGL CTS
# ------------------
#
-# Copyright (c) 2016 The Khronos Group Inc.
+# Copyright (c) 2017 The Khronos Group Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
return messages
+def numGitLogStatusFile (releaseTag):
+ KC_CTS_RELEASE = ["opengl-es-cts-3\.2\.[2-3]\.[0-9]*", "opengl-cts-4\.6\.[0-9]*\.[0-9]*"]
+ for r in KC_CTS_RELEASE:
+ if re.match(r, releaseTag):
+ return 2
+
+ return 1
+
def verifyConfigFile (filename, type):
messages = []
caseNames = getConfigCaseName(type)
def verifyGitStatusFiles (package):
messages = []
- if len(package.gitStatus) != 2:
- messages.append(error(package.basePath, "Exactly two git status files must be present, found %s" % len(package.gitStatus)))
+ errorDict = {1 : 'one git status file', 2 : 'two git status files'}
+ numFiles = numGitLogStatusFile(package.conformVersion)
+
+ if len(package.gitStatus) != numFiles:
+ messages.append(error(package.basePath, "Exactly %s must be present, found %s" % (errorDict[numFiles], len(package.gitStatus))))
messages += verifyGitStatus(package)
def verifyGitLogFiles (package):
messages = []
- if len(package.gitLog) != 2:
- messages.append(error(package.basePath, "Exactly two git log file must be present, found %s" % len(package.gitLog)))
+ errorDict = {1 : 'one git log file', 2 : 'two git log files'}
+ numFiles = numGitLogStatusFile(package.conformVersion)
+
+ if len(package.gitLog) != numFiles:
+ messages.append(error(package.basePath, "Exactly %s must be present, found %s" % (errorDict[numFiles], len(package.gitLog))))
for i, gitLog in enumerate(package.gitLog):
- if "kc-cts" in gitLog[0]:
+ if "kc-cts" in gitLog[0] and numFiles > 1:
package.gitLog[i] = gitLog[:1] + ("external/kc-cts/src",) + gitLog[2:]
messages += verifyGitLogFile(package)