1 # -*- coding: utf-8 -*-
3 #-------------------------------------------------------------------------
5 # Copyright 2015 The Android Open Source Project
6 # Copyright (C) 2016 The Khronos Group Inc
8 # Licensed under the Apache License, Version 2.0 (the "License");
9 # you may not use this file except in compliance with the License.
10 # You may obtain a copy of the License at
12 # http://www.apache.org/licenses/LICENSE-2.0
14 # Unless required by applicable law or agreed to in writing, software
15 # distributed under the License is distributed on an "AS IS" BASIS,
16 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 # See the License for the specific language governing permissions and
18 # limitations under the License.
20 #-------------------------------------------------------------------------
25 from collections import OrderedDict
27 from build_caselists import Module, getModuleByName, DEFAULT_BUILD_DIR, DEFAULT_TARGET
28 from mustpass import Project, Package, Mustpass, Configuration, include, exclude, genMustpassLists
30 sys.path.append(os.path.join(os.path.dirname(__file__), "..", "..", "..", "scripts"))
32 from build.common import DEQP_DIR
33 from build.config import ANY_GENERATOR, BuildConfig
36 COPYRIGHT_DECLARATION = """\
37 /* Copyright (C) 2016-2017 The Khronos Group Inc
39 * Licensed under the Apache License, Version 2.0 (the "License");
40 * you may not use this file except in compliance with the License.
41 * You may obtain a copy of the License at
43 * http://www.apache.org/licenses/LICENSE-2.0
45 * Unless required by applicable law or agreed to in writing, software
46 * distributed under the License is distributed on an "AS IS" BASIS,
47 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
48 * See the License for the specific language governing permissions and
49 * limitations under the License.
52 buildPath = DEFAULT_BUILD_DIR.format(targetName = DEFAULT_TARGET, buildType = "Release")
54 #-------------------------------------------------- ES MUSTPASS----------------------------------------------------------------------
56 CTS_AOSP_MP_DATA_DIR = os.path.join(DEQP_DIR, "external", "openglcts", "data", "mustpass", "gles", "aosp_mustpass")
58 CTS_AOSP_MP_DEVICE_DIR = "gl_cts/data/mustpass/gles/aosp_mustpass"
60 CTS_MP_INC_DIR = os.path.join(DEQP_DIR, "external", "openglcts", "modules", "runner")
62 CTS_AOSP_MP_ES_PROJECT = Project(name = "AOSP Mustpass ES", path = CTS_AOSP_MP_DATA_DIR, incpath = CTS_MP_INC_DIR, devicepath = CTS_AOSP_MP_DEVICE_DIR, copyright = COPYRIGHT_DECLARATION)
64 CTS_KHR_MP_DATA_DIR = os.path.join(DEQP_DIR, "external", "openglcts", "data", "mustpass", "gles", "khronos_mustpass")
66 CTS_KHR_MP_DEVICE_DIR = "gl_cts/data/mustpass/gles/khronos_mustpass"
68 CTS_KHR_MP_ES_PROJECT = Project(name = "Khronos Mustpass ES", path = CTS_KHR_MP_DATA_DIR, incpath = CTS_MP_INC_DIR, devicepath = CTS_KHR_MP_DEVICE_DIR, copyright = COPYRIGHT_DECLARATION)
70 CTS_AOSP_MP_EGL_DEVICE_DIR = "gl_cts/data/mustpass/egl/aosp_mustpass"
72 CTS_AOSP_MP_EGL_DATA_DIR = os.path.join(DEQP_DIR, "external", "openglcts", "data", "mustpass", "egl", "aosp_mustpass")
74 CTS_AOSP_MP_EGL_PROJECT = Project(name = "AOSP Mustpass EGL", path = CTS_AOSP_MP_EGL_DATA_DIR, incpath = CTS_MP_INC_DIR, devicepath = CTS_AOSP_MP_EGL_DEVICE_DIR, copyright = COPYRIGHT_DECLARATION)
76 CTS_KHR_MP_NOCTX_DATA_DIR = os.path.join(DEQP_DIR, "external", "openglcts", "data", "mustpass", "gles", "khronos_mustpass_noctx")
78 CTS_KHR_MP_NOCTX_DEVICE_DIR = "gl_cts/data/mustpass/gles/khronos_mustpass_noctx"
80 CTS_KHR_MP_NOCTX_ES_PROJECT = Project(name = "Khronos Mustpass ES NoContext", path = CTS_KHR_MP_NOCTX_DATA_DIR, incpath = CTS_MP_INC_DIR, devicepath = CTS_KHR_MP_NOCTX_DEVICE_DIR, copyright = COPYRIGHT_DECLARATION)
82 EGL_MODULE = getModuleByName("dEQP-EGL")
83 ES2CTS_MODULE = getModuleByName("dEQP-GLES2")
84 ES3CTS_MODULE = getModuleByName("dEQP-GLES3")
85 ES31CTS_MODULE = getModuleByName("dEQP-GLES31")
87 ES2KHR_MODULE = getModuleByName("KHR-GLES2")
88 ES3KHR_MODULE = getModuleByName("KHR-GLES3")
89 ES31KHR_MODULE = getModuleByName("KHR-GLES31")
90 ES32KHR_MODULE = getModuleByName("KHR-GLES32")
91 NOCTXKHR_MODULE = getModuleByName("KHR-NoContext")
93 ES2GTF_MODULE = getModuleByName("GTF-GLES2")
94 ES3GTF_MODULE = getModuleByName("GTF-GLES3")
95 ES31GTF_MODULE = getModuleByName("GTF-GLES31")
97 GLCTS_GLES2_PKG = Package(module = ES2CTS_MODULE, configurations = [
99 Configuration(name = "master",
100 glconfig = "rgba8888d24s8ms0",
101 rotation = "unspecified",
102 surfacewidth = "256",
103 surfaceheight = "256",
104 filters = [include("gles2-master.txt")]),
106 GLCTS_3_2_2_GLES3_PKG = Package(module = ES3CTS_MODULE, configurations = [
108 Configuration(name = "master",
109 glconfig = "rgba8888d24s8ms0",
110 rotation = "unspecified",
111 surfacewidth = "256",
112 surfaceheight = "256",
113 filters = [include("gles3-master.txt")]),
116 Configuration(name = "rotate-portrait",
117 glconfig = "rgba8888d24s8ms0",
119 surfacewidth = "256",
120 surfaceheight = "256",
122 filters = [include("gles3-master.txt"), include("gles3-rotation.txt")]),
123 Configuration(name = "rotate-landscape",
124 glconfig = "rgba8888d24s8ms0",
126 surfacewidth = "256",
127 surfaceheight = "256",
129 filters = [include("gles3-master.txt"), include("gles3-rotation.txt")]),
130 Configuration(name = "rotate-reverse-portrait",
131 glconfig = "rgba8888d24s8ms0",
133 surfacewidth = "256",
134 surfaceheight = "256",
136 filters = [include("gles3-master.txt"), include("gles3-rotation.txt")]),
137 Configuration(name = "rotate-reverse-landscape",
138 glconfig = "rgba8888d24s8ms0",
140 surfacewidth = "256",
141 surfaceheight = "256",
143 filters = [include("gles3-master.txt"), include("gles3-rotation.txt")]),
146 Configuration(name = "multisample",
147 glconfig = "rgba8888d24s8ms4",
148 rotation = "unspecified",
149 surfacewidth = "256",
150 surfaceheight = "256",
151 filters = [include("gles3-master.txt"),
152 include("gles3-multisample.txt"),
153 exclude("gles3-multisample-issues.txt")]),
156 Configuration(name = "565-no-depth-no-stencil",
157 glconfig = "rgb565d0s0ms0",
158 rotation = "unspecified",
159 surfacewidth = "256",
160 surfaceheight = "256",
161 filters = [include("gles3-master.txt"),
162 include("gles3-pixelformat.txt"),
163 exclude("gles3-pixelformat-issues.txt")]),
165 GLCTS_3_2_2_GLES31_PKG = Package(module = ES31CTS_MODULE, configurations = [
167 Configuration(name = "master",
168 glconfig = "rgba8888d24s8ms0",
169 rotation = "unspecified",
170 surfacewidth = "256",
171 surfaceheight = "256",
172 filters = [include("gles31-master.txt")]),
174 Configuration(name = "rotate-portrait",
175 glconfig = "rgba8888d24s8ms0",
177 surfacewidth = "256",
178 surfaceheight = "256",
180 filters = [include("gles31-master.txt"), include("gles31-rotation.txt")]),
181 Configuration(name = "rotate-landscape",
182 glconfig = "rgba8888d24s8ms0",
184 surfacewidth = "256",
185 surfaceheight = "256",
187 filters = [include("gles31-master.txt"), include("gles31-rotation.txt")]),
188 Configuration(name = "rotate-reverse-portrait",
189 glconfig = "rgba8888d24s8ms0",
191 surfacewidth = "256",
192 surfaceheight = "256",
194 filters = [include("gles31-master.txt"), include("gles31-rotation.txt")]),
195 Configuration(name = "rotate-reverse-landscape",
196 glconfig = "rgba8888d24s8ms0",
198 surfacewidth = "256",
199 surfaceheight = "256",
201 filters = [include("gles31-master.txt"), include("gles31-rotation.txt")]),
204 Configuration(name = "multisample",
205 glconfig = "rgba8888d24s8ms4",
206 rotation = "unspecified",
207 surfacewidth = "256",
208 surfaceheight = "256",
209 filters = [include("gles31-master.txt"), include("gles31-multisample.txt")]),
212 Configuration(name = "565-no-depth-no-stencil",
213 glconfig = "rgb565d0s0ms0",
214 rotation = "unspecified",
215 surfacewidth = "256",
216 surfaceheight = "256",
217 filters = [include("gles31-master.txt"), include("gles31-pixelformat.txt")]),
221 GLCTS_3_2_3_EGL_COMMON_FILTERS = [include("egl-master.txt"),
222 exclude("egl-test-issues.txt"),
223 exclude("egl-internal-api-tests.txt"),
224 exclude("egl-driver-issues.txt")
226 GLCTS_3_2_3_EGL_PKG = Package(module = EGL_MODULE, configurations = [
228 Configuration(name = "master",
229 glconfig = "rgba8888d24s8ms0",
230 rotation = "unspecified",
231 surfacewidth = "256",
232 surfaceheight = "256",
233 filters = GLCTS_3_2_3_EGL_COMMON_FILTERS),
236 GLCTS_3_2_3_GLES2_COMMON_FILTERS = [
237 include("gles2-master.txt"),
238 exclude("gles2-test-issues.txt"),
239 exclude("gles2-spec-issues.txt"),
240 exclude("gles2-driver-issues.txt"),
241 exclude("gles2-hw-issues.txt")
243 GLCTS_3_2_3_GLES2_PKG = Package(module = ES2CTS_MODULE, configurations = [
245 Configuration(name = "master",
246 glconfig = "rgba8888d24s8ms0",
247 rotation = "unspecified",
248 surfacewidth = "256",
249 surfaceheight = "256",
250 filters = GLCTS_3_2_3_GLES2_COMMON_FILTERS),
253 GLCTS_3_2_3_GLES3_COMMON_FILTERS = [
254 include("gles3-master.txt"),
255 exclude("gles3-test-issues.txt"),
256 exclude("gles3-spec-issues.txt"),
257 exclude("gles3-driver-issues.txt"),
260 GLCTS_3_2_3_GLES3_PKG = Package(module = ES3CTS_MODULE, configurations = [
262 Configuration(name = "master",
263 glconfig = "rgba8888d24s8ms0",
264 rotation = "unspecified",
265 surfacewidth = "256",
266 surfaceheight = "256",
267 filters = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [exclude("gles3-hw-issues.txt")]),
269 Configuration(name = "rotate-portrait",
270 glconfig = "rgba8888d24s8ms0",
272 surfacewidth = "256",
273 surfaceheight = "256",
275 filters = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
276 Configuration(name = "rotate-landscape",
277 glconfig = "rgba8888d24s8ms0",
279 surfacewidth = "256",
280 surfaceheight = "256",
282 filters = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
283 Configuration(name = "rotate-reverse-portrait",
284 glconfig = "rgba8888d24s8ms0",
286 surfacewidth = "256",
287 surfaceheight = "256",
289 filters = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
290 Configuration(name = "rotate-reverse-landscape",
291 glconfig = "rgba8888d24s8ms0",
293 surfacewidth = "256",
294 surfaceheight = "256",
296 filters = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
299 Configuration(name = "multisample",
300 glconfig = "rgba8888d24s8ms4",
301 rotation = "unspecified",
302 surfacewidth = "256",
303 surfaceheight = "256",
304 filters = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [include("gles3-multisample.txt"), exclude("gles3-multisample-hw-issues.txt")]),
307 Configuration(name = "565-no-depth-no-stencil",
308 glconfig = "rgb565d0s0ms0",
309 rotation = "unspecified",
310 surfacewidth = "256",
311 surfaceheight = "256",
312 filters = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [include("gles3-pixelformat.txt")]),
316 GLCTS_3_2_3_GLES31_COMMON_FILTERS = [
317 include("gles31-master.txt"),
318 exclude("gles31-test-issues.txt"),
319 exclude("gles31-spec-issues.txt"),
320 exclude("gles31-driver-issues.txt"),
321 exclude("gles31-hw-issues.txt")
324 GLCTS_3_2_3_GLES31_PKG = Package(module = ES31CTS_MODULE, configurations = [
326 Configuration(name = "master",
327 glconfig = "rgba8888d24s8ms0",
328 rotation = "unspecified",
329 surfacewidth = "256",
330 surfaceheight = "256",
331 filters = GLCTS_3_2_3_GLES31_COMMON_FILTERS),
334 Configuration(name = "rotate-portrait",
335 glconfig = "rgba8888d24s8ms0",
337 surfacewidth = "256",
338 surfaceheight = "256",
340 filters = GLCTS_3_2_3_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
341 Configuration(name = "rotate-landscape",
342 glconfig = "rgba8888d24s8ms0",
344 surfacewidth = "256",
345 surfaceheight = "256",
347 filters = GLCTS_3_2_3_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
348 Configuration(name = "rotate-reverse-portrait",
349 glconfig = "rgba8888d24s8ms0",
351 surfacewidth = "256",
352 surfaceheight = "256",
354 filters = GLCTS_3_2_3_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
355 Configuration(name = "rotate-reverse-landscape",
356 glconfig = "rgba8888d24s8ms0",
358 surfacewidth = "256",
359 surfaceheight = "256",
361 filters = GLCTS_3_2_3_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
364 Configuration(name = "multisample",
365 glconfig = "rgba8888d24s8ms4",
366 rotation = "unspecified",
367 surfacewidth = "256",
368 surfaceheight = "256",
369 filters = [include("gles31-master.txt"),
370 include("gles31-multisample.txt"),
371 exclude("gles31-multisample-test-issues.txt")]),
374 Configuration(name = "565-no-depth-no-stencil",
375 glconfig = "rgb565d0s0ms0",
376 rotation = "unspecified",
377 surfacewidth = "256",
378 surfaceheight = "256",
379 filters = GLCTS_3_2_3_GLES31_COMMON_FILTERS + [include("gles31-pixelformat.txt")]),
382 GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS = [
383 include("gles32-khr-master.txt"),
384 exclude("gles32-khr-test-issues.txt")
387 GLCTS_3_2_3_GLES32_KHR_PKG_1CFG = Package(module = ES32KHR_MODULE, configurations = [
389 Configuration(name = "khr-master",
391 surfaceheight = "64",
393 filters = GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS),
394 Configuration(name = "khr-master",
395 surfacewidth = "113",
396 surfaceheight = "47",
398 filters = GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS),
399 Configuration(name = "khr-master",
401 surfaceheight = "-1",
403 fboconfig = "rgba8888d24s8",
404 filters = GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS),
405 Configuration(name = "khr-master",
407 surfaceheight = "64",
409 fboconfig = "rgba8888d24s8",
410 filters = GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS),
413 GLCTS_3_2_3_GLES32_KHR_PKG_N1CFG = Package(module = ES32KHR_MODULE, useforfirsteglconfig = False, configurations = [
415 Configuration(name = "khr-master",
417 surfaceheight = "64",
419 filters = GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS),
420 Configuration(name = "khr-master",
421 surfacewidth = "113",
422 surfaceheight = "47",
424 filters = GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS),
429 MASTER_EGL_COMMON_FILTERS = [include("egl-master.txt"),
430 exclude("egl-test-issues.txt"),
431 exclude("egl-internal-api-tests.txt")]
432 MASTER_EGL_PKG = Package(module = EGL_MODULE, configurations = [
434 Configuration(name = "master",
435 glconfig = "rgba8888d24s8ms0",
436 rotation = "unspecified",
437 surfacewidth = "256",
438 surfaceheight = "256",
439 filters = MASTER_EGL_COMMON_FILTERS),
442 MASTER_GLES2_COMMON_FILTERS = [
443 include("gles2-master.txt"),
444 exclude("gles2-test-issues.txt")
446 MASTER_GLES2_PKG = Package(module = ES2CTS_MODULE, configurations = [
448 Configuration(name = "master",
449 glconfig = "rgba8888d24s8ms0",
450 rotation = "unspecified",
451 surfacewidth = "256",
452 surfaceheight = "256",
453 filters = MASTER_GLES2_COMMON_FILTERS),
456 MASTER_GLES3_COMMON_FILTERS = [
457 include("gles3-master.txt"),
458 exclude("gles3-test-issues.txt"),
459 exclude("gles3-spec-issues.txt")
461 MASTER_GLES3_PKG = Package(module = ES3CTS_MODULE, configurations = [
463 Configuration(name = "master",
464 glconfig = "rgba8888d24s8ms0",
465 rotation = "unspecified",
466 surfacewidth = "256",
467 surfaceheight = "256",
468 filters = MASTER_GLES3_COMMON_FILTERS),
470 Configuration(name = "rotate-portrait",
471 glconfig = "rgba8888d24s8ms0",
473 surfacewidth = "256",
474 surfaceheight = "256",
476 filters = MASTER_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
477 Configuration(name = "rotate-landscape",
478 glconfig = "rgba8888d24s8ms0",
480 surfacewidth = "256",
481 surfaceheight = "256",
483 filters = MASTER_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
484 Configuration(name = "rotate-reverse-portrait",
485 glconfig = "rgba8888d24s8ms0",
487 surfacewidth = "256",
488 surfaceheight = "256",
490 filters = MASTER_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
491 Configuration(name = "rotate-reverse-landscape",
492 glconfig = "rgba8888d24s8ms0",
494 surfacewidth = "256",
495 surfaceheight = "256",
497 filters = MASTER_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
500 Configuration(name = "multisample",
501 glconfig = "rgba8888d24s8ms4",
502 rotation = "unspecified",
503 surfacewidth = "256",
504 surfaceheight = "256",
505 filters = MASTER_GLES3_COMMON_FILTERS + [include("gles3-multisample.txt")]),
508 Configuration(name = "565-no-depth-no-stencil",
509 glconfig = "rgb565d0s0ms0",
510 rotation = "unspecified",
511 surfacewidth = "256",
512 surfaceheight = "256",
513 filters = MASTER_GLES3_COMMON_FILTERS + [include("gles3-pixelformat.txt")]),
515 MASTER_GLES31_COMMON_FILTERS = [
516 include("gles31-master.txt"),
517 exclude("gles31-test-issues.txt"),
518 exclude("gles31-spec-issues.txt")
521 MASTER_GLES31_PKG = Package(module = ES31CTS_MODULE, configurations = [
523 Configuration(name = "master",
524 glconfig = "rgba8888d24s8ms0",
525 rotation = "unspecified",
526 surfacewidth = "256",
527 surfaceheight = "256",
528 filters = MASTER_GLES31_COMMON_FILTERS),
531 Configuration(name = "rotate-portrait",
532 glconfig = "rgba8888d24s8ms0",
534 surfacewidth = "256",
535 surfaceheight = "256",
537 filters = MASTER_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
538 Configuration(name = "rotate-landscape",
539 glconfig = "rgba8888d24s8ms0",
541 surfacewidth = "256",
542 surfaceheight = "256",
544 filters = MASTER_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
545 Configuration(name = "rotate-reverse-portrait",
546 glconfig = "rgba8888d24s8ms0",
548 surfacewidth = "256",
549 surfaceheight = "256",
551 filters = MASTER_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
552 Configuration(name = "rotate-reverse-landscape",
553 glconfig = "rgba8888d24s8ms0",
555 surfacewidth = "256",
556 surfaceheight = "256",
558 filters = MASTER_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
561 Configuration(name = "multisample",
562 glconfig = "rgba8888d24s8ms4",
563 rotation = "unspecified",
564 surfacewidth = "256",
565 surfaceheight = "256",
566 filters = MASTER_GLES31_COMMON_FILTERS + [include("gles31-multisample.txt")]),
569 Configuration(name = "565-no-depth-no-stencil",
570 glconfig = "rgb565d0s0ms0",
571 rotation = "unspecified",
572 surfacewidth = "256",
573 surfaceheight = "256",
574 filters = MASTER_GLES31_COMMON_FILTERS + [include("gles31-pixelformat.txt")]),
577 GLCTS_GLES2_KHR_PKG_1CFG = Package(module = ES2KHR_MODULE, configurations = [
579 Configuration(name = "khr-master",
581 surfaceheight = "64",
583 filters = [include("gles2-khr-master.txt")]),
586 GLCTS_GLES2_DEQP_PKG_1CFG = Package(module = ES2CTS_MODULE, configurations = [
588 Configuration(name = "deqp-master",
590 surfaceheight = "64",
592 filters = [include("gles2-deqp-master.txt")]),
595 GLCTS_GLES2_GTF_PKG_1CFG = Package(module = ES2GTF_MODULE, configurations = [
597 Configuration(name = "gtf-master",
599 surfaceheight = "64",
601 filters = [include("gles2-gtf-master.txt")]),
602 Configuration(name = "gtf-master",
603 surfacewidth = "113",
604 surfaceheight = "47",
606 filters = [include("gles2-gtf-master.txt")]),
607 Configuration(name = "gtf-master",
609 surfaceheight = "-1",
611 fboconfig = "rgba8888d24s8",
612 filters = [include("gles2-gtf-master.txt")]),
613 Configuration(name = "gtf-master",
615 surfaceheight = "64",
617 fboconfig = "rgba8888d24s8",
618 filters = [include("gles2-gtf-master.txt")]),
619 Configuration(name = "gtf-egl",
621 surfaceheight = "64",
623 filters = [include("gles2-gtf-egl.txt")]),
624 Configuration(name = "gtf-egl",
625 surfacewidth = "113",
626 surfaceheight = "47",
628 filters = [include("gles2-gtf-egl.txt")]),
631 GLCTS_GLES2_KHR_PKG_N1CFG = Package(module = ES2KHR_MODULE, useforfirsteglconfig = False, configurations = [
633 Configuration(name = "khr-master",
635 surfaceheight = "64",
637 filters = [include("gles2-khr-master.txt")]),
640 GLCTS_GLES2_DEQP_PKG_N1CFG = Package(module = ES2CTS_MODULE, useforfirsteglconfig = False, configurations = [
642 Configuration(name = "deqp-master",
644 surfaceheight = "64",
646 filters = [include("gles2-deqp-master.txt")]),
649 GLCTS_GLES2_GTF_PKG_N1CFG = Package(module = ES2GTF_MODULE, useforfirsteglconfig = False, configurations = [
651 Configuration(name = "gtf-master",
653 surfaceheight = "64",
655 filters = [include("gles2-gtf-master.txt")]),
656 Configuration(name = "gtf-master",
657 surfacewidth = "113",
658 surfaceheight = "47",
660 filters = [include("gles2-gtf-master.txt")]),
663 GLCTS_GLES3_DEQP_PKG_1CFG = Package(module = ES3CTS_MODULE, configurations = [
665 Configuration(name = "deqp-master",
667 surfaceheight = "64",
669 filters = [include("gles3-deqp-master.txt")]),
672 GLCTS_GLES3_KHR_PKG_1CFG = Package(module = ES3KHR_MODULE, configurations = [
674 Configuration(name = "khr-master",
676 surfaceheight = "64",
678 filters = [include("gles3-khr-master.txt")]),
681 GLCTS_GLES3_GTF_PKG_1CFG = Package(module = ES3GTF_MODULE, configurations = [
683 Configuration(name = "gtf-master",
685 surfaceheight = "64",
687 filters = [include("gles3-gtf-master.txt")]),
688 Configuration(name = "gtf-master",
689 surfacewidth = "113",
690 surfaceheight = "47",
692 filters = [include("gles3-gtf-master.txt")]),
693 Configuration(name = "gtf-master",
695 surfaceheight = "-1",
697 fboconfig = "rgba8888d24s8",
698 filters = [include("gles3-gtf-master.txt")]),
699 Configuration(name = "gtf-master",
701 surfaceheight = "64",
703 fboconfig = "rgba8888d24s8",
704 filters = [include("gles3-gtf-master.txt")]),
707 GLCTS_GLES3_DEQP_PKG_N1CFG = Package(module = ES3CTS_MODULE, useforfirsteglconfig = False, configurations = [
709 Configuration(name = "deqp-master",
711 surfaceheight = "64",
713 filters = [include("gles3-deqp-master.txt")]),
716 GLCTS_GLES3_KHR_PKG_N1CFG = Package(module = ES3KHR_MODULE, useforfirsteglconfig = False, configurations = [
718 Configuration(name = "khr-master",
720 surfaceheight = "64",
722 filters = [include("gles3-khr-master.txt")]),
724 GLCTS_GLES3_GTF_PKG_N1CFG = Package(module = ES3GTF_MODULE, useforfirsteglconfig = False, configurations = [
726 Configuration(name = "gtf-master",
728 surfaceheight = "64",
730 filters = [include("gles3-gtf-master.txt")]),
731 Configuration(name = "gtf-master",
732 surfacewidth = "113",
733 surfaceheight = "47",
735 filters = [include("gles3-gtf-master.txt")]),
738 GLCTS_GLES31_DEQP_PKG_1CFG = Package(module = ES31CTS_MODULE, configurations = [
740 Configuration(name = "deqp-master",
742 surfaceheight = "64",
744 filters = [include("gles31-deqp-master.txt")]),
747 GLCTS_GLES31_KHR_PKG_1CFG = Package(module = ES31KHR_MODULE, configurations = [
749 Configuration(name = "khr-master",
751 surfaceheight = "64",
753 filters = [include("gles31-khr-master.txt")]),
756 GLCTS_GLES31_GTF_PKG_1CFG = Package(module = ES31GTF_MODULE, configurations = [
758 Configuration(name = "gtf-master",
760 surfaceheight = "64",
762 filters = [include("gles31-gtf-master.txt")]),
763 Configuration(name = "gtf-master",
764 surfacewidth = "113",
765 surfaceheight = "47",
767 filters = [include("gles31-gtf-master.txt")]),
768 Configuration(name = "gtf-master",
770 surfaceheight = "-1",
772 fboconfig = "rgba8888d24s8",
773 filters = [include("gles31-gtf-master.txt")]),
774 Configuration(name = "gtf-master",
776 surfaceheight = "64",
778 fboconfig = "rgba8888d24s8",
779 filters = [include("gles31-gtf-master.txt")]),
782 GLCTS_GLES31_KHR_PKG_N1CFG = Package(module = ES31KHR_MODULE, useforfirsteglconfig = False, configurations = [
784 Configuration(name = "khr-master",
786 surfaceheight = "64",
788 filters = [include("gles31-khr-master.txt")]),
791 GLCTS_GLES31_DEQP_PKG_N1CFG = Package(module = ES31CTS_MODULE, useforfirsteglconfig = False, configurations = [
793 Configuration(name = "deqp-master",
795 surfaceheight = "64",
797 filters = [include("gles31-deqp-master.txt")]),
800 GLCTS_GLES31_GTF_PKG_N1CFG = Package(module = ES31GTF_MODULE, useforfirsteglconfig = False, configurations = [
802 Configuration(name = "gtf-master",
804 surfaceheight = "64",
806 filters = [include("gles31-gtf-master.txt")]),
807 Configuration(name = "gtf-master",
808 surfacewidth = "113",
809 surfaceheight = "47",
811 filters = [include("gles31-gtf-master.txt")]),
814 GLCTS_GLES32_KHR_PKG_1CFG = Package(module = ES32KHR_MODULE, configurations = [
816 Configuration(name = "khr-master",
818 surfaceheight = "64",
820 filters = [include("gles32-khr-master.txt")]),
821 Configuration(name = "khr-master",
822 surfacewidth = "113",
823 surfaceheight = "47",
825 filters = [include("gles32-khr-master.txt")]),
826 Configuration(name = "khr-master",
828 surfaceheight = "-1",
830 fboconfig = "rgba8888d24s8",
831 filters = [include("gles32-khr-master.txt")]),
832 Configuration(name = "khr-master",
834 surfaceheight = "64",
836 fboconfig = "rgba8888d24s8",
837 filters = [include("gles32-khr-master.txt")]),
840 GLCTS_GLES32_KHR_PKG_N1CFG = Package(module = ES32KHR_MODULE, useforfirsteglconfig = False, configurations = [
842 Configuration(name = "khr-master",
844 surfaceheight = "64",
846 filters = [include("gles32-khr-master.txt")]),
847 Configuration(name = "khr-master",
848 surfacewidth = "113",
849 surfaceheight = "47",
851 filters = [include("gles32-khr-master.txt")]),
854 GLCTS_NOCTX_KHR_PKG_1CFG = Package(module = NOCTXKHR_MODULE, configurations = [
856 Configuration(name = "khr-master",
858 surfaceheight = "64",
860 filters = [include("noctx-khr-master.txt")]),
861 Configuration(name = "khr-master",
862 surfacewidth = "113",
863 surfaceheight = "47",
865 filters = [include("noctx-khr-master.txt")]),
868 ES_MUSTPASS_LISTS = [
870 Mustpass(project = CTS_KHR_MP_ES_PROJECT, version = "3.2.2.x", isCurrent=False,
871 packages = [GLCTS_GLES2_KHR_PKG_1CFG,
872 GLCTS_GLES2_DEQP_PKG_1CFG,
873 GLCTS_GLES2_GTF_PKG_1CFG,
874 GLCTS_GLES2_KHR_PKG_N1CFG,
875 GLCTS_GLES2_DEQP_PKG_N1CFG,
876 GLCTS_GLES2_GTF_PKG_N1CFG,
877 GLCTS_GLES3_KHR_PKG_1CFG,
878 GLCTS_GLES3_DEQP_PKG_1CFG,
879 GLCTS_GLES3_GTF_PKG_1CFG,
880 GLCTS_GLES3_KHR_PKG_N1CFG,
881 GLCTS_GLES3_DEQP_PKG_N1CFG,
882 GLCTS_GLES3_GTF_PKG_N1CFG,
883 GLCTS_GLES31_KHR_PKG_1CFG,
884 GLCTS_GLES31_DEQP_PKG_1CFG,
885 GLCTS_GLES31_GTF_PKG_1CFG,
886 GLCTS_GLES31_KHR_PKG_N1CFG,
887 GLCTS_GLES31_DEQP_PKG_N1CFG,
888 GLCTS_GLES31_GTF_PKG_N1CFG,
889 GLCTS_GLES32_KHR_PKG_1CFG,
890 GLCTS_GLES32_KHR_PKG_N1CFG,
893 Mustpass(project = CTS_AOSP_MP_ES_PROJECT, version = "3.2.2.x", isCurrent=False,
894 packages = [GLCTS_GLES2_PKG, GLCTS_3_2_2_GLES3_PKG, GLCTS_3_2_2_GLES31_PKG]),
897 Mustpass(project = CTS_KHR_MP_ES_PROJECT, version = "3.2.3.x", isCurrent=False,
898 packages = [GLCTS_GLES2_KHR_PKG_1CFG,
899 GLCTS_GLES2_GTF_PKG_1CFG,
900 GLCTS_GLES2_KHR_PKG_N1CFG,
901 GLCTS_GLES2_GTF_PKG_N1CFG,
902 GLCTS_GLES3_KHR_PKG_1CFG,
903 GLCTS_GLES3_GTF_PKG_1CFG,
904 GLCTS_GLES3_KHR_PKG_N1CFG,
905 GLCTS_GLES3_GTF_PKG_N1CFG,
906 GLCTS_GLES31_KHR_PKG_1CFG,
907 GLCTS_GLES31_GTF_PKG_1CFG,
908 GLCTS_GLES31_KHR_PKG_N1CFG,
909 GLCTS_GLES31_GTF_PKG_N1CFG,
910 GLCTS_3_2_3_GLES32_KHR_PKG_1CFG,
911 GLCTS_3_2_3_GLES32_KHR_PKG_N1CFG,
914 Mustpass(project = CTS_AOSP_MP_ES_PROJECT, version = "3.2.3.x", isCurrent=False,
915 packages = [GLCTS_3_2_3_GLES2_PKG, GLCTS_3_2_3_GLES3_PKG, GLCTS_3_2_3_GLES31_PKG]),
917 Mustpass(project = CTS_AOSP_MP_EGL_PROJECT, version = "3.2.3.x", isCurrent=False,
918 packages = [GLCTS_3_2_3_EGL_PKG]),
921 Mustpass(project = CTS_KHR_MP_ES_PROJECT, version = "3.2.4.x", isCurrent=True,
922 packages = [GLCTS_GLES2_KHR_PKG_1CFG,
923 GLCTS_GLES2_KHR_PKG_N1CFG,
924 GLCTS_GLES3_KHR_PKG_1CFG,
925 GLCTS_GLES3_KHR_PKG_N1CFG,
926 GLCTS_GLES31_KHR_PKG_1CFG,
927 GLCTS_GLES31_KHR_PKG_N1CFG,
928 GLCTS_3_2_3_GLES32_KHR_PKG_1CFG,
929 GLCTS_3_2_3_GLES32_KHR_PKG_N1CFG,
933 Mustpass(project = CTS_KHR_MP_NOCTX_ES_PROJECT, version = "3.2.4.x", isCurrent=True,
934 packages = [GLCTS_NOCTX_KHR_PKG_1CFG]),
936 Mustpass(project = CTS_AOSP_MP_ES_PROJECT, version = "3.2.4.x", isCurrent=True,
937 packages = [GLCTS_3_2_3_GLES2_PKG, GLCTS_3_2_3_GLES3_PKG, GLCTS_3_2_3_GLES31_PKG]),
939 Mustpass(project = CTS_AOSP_MP_EGL_PROJECT, version = "3.2.4.x", isCurrent=True,
940 packages = [GLCTS_3_2_3_EGL_PKG]),
944 Mustpass(project = CTS_KHR_MP_ES_PROJECT, version = "master", isCurrent=False,
945 packages = [GLCTS_GLES2_KHR_PKG_1CFG,
946 GLCTS_GLES2_KHR_PKG_N1CFG,
947 GLCTS_GLES3_KHR_PKG_1CFG,
948 GLCTS_GLES3_KHR_PKG_N1CFG,
949 GLCTS_GLES31_KHR_PKG_1CFG,
950 GLCTS_GLES31_KHR_PKG_N1CFG,
951 GLCTS_GLES32_KHR_PKG_1CFG,
952 GLCTS_GLES32_KHR_PKG_N1CFG,
955 Mustpass(project = CTS_KHR_MP_NOCTX_ES_PROJECT, version = "master", isCurrent=False,
956 packages = [GLCTS_NOCTX_KHR_PKG_1CFG]),
958 Mustpass(project = CTS_AOSP_MP_ES_PROJECT, version = "master", isCurrent=False,
959 packages = [MASTER_GLES2_PKG, MASTER_GLES3_PKG, MASTER_GLES31_PKG]),
961 Mustpass(project = CTS_AOSP_MP_EGL_PROJECT, version = "master", isCurrent=False,
962 packages = [MASTER_EGL_PKG])
966 ES_BUILD_CONFIG = BuildConfig(buildPath, "Debug", ["-DDEQP_TARGET=%s" % DEFAULT_TARGET, "-DGLCTS_GTF_TARGET=gles32"])
968 #-------------------------------------------------- GL MUSTPASS----------------------------------------------------------------------
970 GL_CTS_MP_INC_DIR = os.path.join(DEQP_DIR, "external", "openglcts", "modules", "runner")
972 GL_CTS_KHR_MP_DATA_DIR = os.path.join(DEQP_DIR, "external", "openglcts", "data", "mustpass", "gl", "khronos_mustpass")
974 GL_CTS_KHR_MP_DEVICE_DIR = "gl_cts/data/mustpass/gl/khronos_mustpass"
976 GL_CTS_KHR_MP_PROJECT = Project(name = "Khronos Mustpass GL", path = GL_CTS_KHR_MP_DATA_DIR, incpath = GL_CTS_MP_INC_DIR, devicepath = GL_CTS_KHR_MP_DEVICE_DIR, copyright = COPYRIGHT_DECLARATION)
978 GL_CTS_KHR_MP_NOCTX_DATA_DIR = os.path.join(DEQP_DIR, "external", "openglcts", "data", "mustpass", "gl", "khronos_mustpass_noctx")
980 GL_CTS_KHR_MP_NOCTX_DEVICE_DIR = "gl_cts/data/mustpass/gl/khronos_mustpass_noctx"
982 GL_CTS_NOCTX_PROJECT = Project(name = "Khronos Mustpass GL NoContext", path = GL_CTS_KHR_MP_NOCTX_DATA_DIR, incpath = GL_CTS_MP_INC_DIR, devicepath = GL_CTS_KHR_MP_NOCTX_DEVICE_DIR, copyright = COPYRIGHT_DECLARATION)
984 GL_MODULES = OrderedDict([
985 ('KHR-GL45', ['master', [include('gl45-master.txt')]]),
986 ('KHR-GL44', ['master', [include('gl44-master.txt')]]),
987 ('KHR-GL43', ['master', [include('gl43-master.txt')]]),
988 ('KHR-GL42', ['master', [include('gl42-master.txt')]]),
989 ('KHR-GL41', ['master', [include('gl41-master.txt')]]),
990 ('KHR-GL40', ['master', [include('gl40-master.txt')]]),
991 ('KHR-GL33', ['master', [include('gl33-master.txt')]]),
992 ('KHR-GL32', ['master', [include('gl32-master.txt')]]),
993 ('KHR-GL31', ['master', [include('gl31-master.txt')]]),
994 ('KHR-GL30', ['master', [include('gl30-master.txt')]]),
995 ('GTF-GL45', ['gtf-master', [include('gl45-gtf-master.txt')]]),
996 ('GTF-GL44', ['gtf-master', [include('gl44-gtf-master.txt')]]),
997 ('GTF-GL43', ['gtf-master', [include('gl43-gtf-master.txt')]]),
998 ('GTF-GL42', ['gtf-master', [include('gl42-gtf-master.txt')]]),
999 ('GTF-GL41', ['gtf-master', [include('gl41-gtf-master.txt')]]),
1000 ('GTF-GL40', ['gtf-master', [include('gl40-gtf-master.txt')]]),
1001 ('GTF-GL33', ['gtf-master', [include('gl33-gtf-master.txt')]]),
1002 ('GTF-GL32', ['gtf-master', [include('gl32-gtf-master.txt')]]),
1003 ('GTF-GL31', ['gtf-master', [include('gl31-gtf-master.txt')]]),
1004 ('GTF-GL30', ['gtf-master', [include('gl30-gtf-master.txt')]])
1007 def generateGLMustpass():
1009 for packageName in GL_MODULES:
1010 cfgName = GL_MODULES[packageName][0]
1011 cfgFilter = GL_MODULES[packageName][1]
1012 config_w64xh64 = Configuration(name = cfgName, surfacewidth = "64", surfaceheight = "64", baseseed = "1", filters = cfgFilter)
1013 config_w113xh47 = Configuration(name = cfgName, surfacewidth = "113", surfaceheight = "47", baseseed = "2", filters = cfgFilter)
1014 config_w64 = Configuration(name = cfgName, surfacewidth = "64", surfaceheight = "-1", baseseed = "3", fboconfig = "rgba8888d24s8", filters = cfgFilter)
1015 config_h64 = Configuration(name = cfgName, surfacewidth = "-1", surfaceheight = "64", baseseed = "3", fboconfig = "rgba8888d24s8", filters = cfgFilter)
1017 pkgModule = getModuleByName(packageName)
1018 pkg0 = Package(module = pkgModule,
1019 useforfirsteglconfig = True,
1021 config_w64xh64, config_w113xh47, config_w64, config_h64
1024 pkg1 = Package(module = pkgModule,
1025 useforfirsteglconfig = False,
1027 config_w64xh64, config_w113xh47,
1030 gl_packages.append(pkg0)
1031 gl_packages.append(pkg1)
1033 mustpass = [Mustpass(project = GL_CTS_KHR_MP_PROJECT, version = "4.5.5.x", isCurrent=True, packages = gl_packages),
1034 Mustpass(project = GL_CTS_NOCTX_PROJECT, version = "4.5.5.x", isCurrent=True, packages = [GLCTS_NOCTX_KHR_PKG_1CFG]),
1038 GL_BUILD_CONFIG = BuildConfig(buildPath, "Debug", ["-DDEQP_TARGET=%s" % DEFAULT_TARGET, "-DGLCTS_GTF_TARGET=gl"])
1040 if __name__ == "__main__":
1041 gtfCMakeLists = os.path.join(DEQP_DIR, "external", "kc-cts", "src", "GTF_ES", "CMakeLists.txt")
1042 if os.path.isfile(gtfCMakeLists) == False:
1043 raise Exception("GTF sources not found. GTF module is required to build the mustpass files")
1044 genMustpassLists(ES_MUSTPASS_LISTS, ANY_GENERATOR, ES_BUILD_CONFIG)
1045 gl_mustpass_lists = generateGLMustpass()
1046 genMustpassLists(gl_mustpass_lists, ANY_GENERATOR, GL_BUILD_CONFIG)