Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
[platform/upstream/VK-GL-CTS.git] / external / openglcts / scripts / build_mustpass.py
1 # -*- coding: utf-8 -*-
2
3 #-------------------------------------------------------------------------
4 #
5 # Copyright 2015 The Android Open Source Project
6 # Copyright (C) 2016 The Khronos Group Inc
7 #
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
11 #
12 #      http://www.apache.org/licenses/LICENSE-2.0
13 #
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.
19 #
20 #-------------------------------------------------------------------------
21
22 import os
23 import sys
24
25 from collections import OrderedDict
26
27 from build_caselists import Module, getModuleByName, DEFAULT_BUILD_DIR, DEFAULT_TARGET
28 from mustpass import Project, Package, Mustpass, Configuration, include, exclude, genMustpassLists
29
30 sys.path.append(os.path.join(os.path.dirname(__file__), "..", "..", "..", "scripts"))
31
32 from build.common import DEQP_DIR
33 from build.config import ANY_GENERATOR, BuildConfig
34
35
36 COPYRIGHT_DECLARATION = """\
37 /*     Copyright (C) 2016-2017 The Khronos Group Inc
38  *
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
42  *
43  *          http://www.apache.org/licenses/LICENSE-2.0
44  *
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.
50 */"""
51
52 buildPath                                               = DEFAULT_BUILD_DIR.format(targetName = DEFAULT_TARGET, buildType = "Release")
53
54 #-------------------------------------------------- ES MUSTPASS----------------------------------------------------------------------
55
56 CTS_AOSP_MP_DATA_DIR                    = os.path.join(DEQP_DIR, "external", "openglcts", "data", "mustpass", "gles", "aosp_mustpass")
57
58 CTS_AOSP_MP_DEVICE_DIR                  = "gl_cts/data/mustpass/gles/aosp_mustpass"
59
60 CTS_MP_INC_DIR                                  = os.path.join(DEQP_DIR, "external", "openglcts", "modules", "runner")
61
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)
63
64 CTS_KHR_MP_DATA_DIR                             = os.path.join(DEQP_DIR, "external", "openglcts", "data", "mustpass", "gles", "khronos_mustpass")
65
66 CTS_KHR_MP_DEVICE_DIR                   = "gl_cts/data/mustpass/gles/khronos_mustpass"
67
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)
69
70 CTS_AOSP_MP_EGL_DEVICE_DIR              = "gl_cts/data/mustpass/egl/aosp_mustpass"
71
72 CTS_AOSP_MP_EGL_DATA_DIR                = os.path.join(DEQP_DIR, "external", "openglcts", "data", "mustpass", "egl", "aosp_mustpass")
73
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)
75
76 CTS_KHR_MP_NOCTX_DATA_DIR               = os.path.join(DEQP_DIR, "external", "openglcts", "data", "mustpass", "gles", "khronos_mustpass_noctx")
77
78 CTS_KHR_MP_NOCTX_DEVICE_DIR             = "gl_cts/data/mustpass/gles/khronos_mustpass_noctx"
79
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)
81
82 EGL_MODULE                                              = getModuleByName("dEQP-EGL")
83 ES2CTS_MODULE                                   = getModuleByName("dEQP-GLES2")
84 ES3CTS_MODULE                                   = getModuleByName("dEQP-GLES3")
85 ES31CTS_MODULE                                  = getModuleByName("dEQP-GLES31")
86
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 NOCTX_ES2_KHR_MODULE                    = getModuleByName("KHR-NOCTX-ES2")
92 NOCTX_ES32_KHR_MODULE                   = getModuleByName("KHR-NOCTX-ES32")
93
94 ES2GTF_MODULE                                   = getModuleByName("GTF-GLES2")
95 ES3GTF_MODULE                                   = getModuleByName("GTF-GLES3")
96 ES31GTF_MODULE                                  = getModuleByName("GTF-GLES31")
97
98 GLCTS_GLES2_PKG                                         = Package(module = ES2CTS_MODULE, configurations = [
99                 # Master
100                 Configuration(name                      = "master",
101                                         glconfig                = "rgba8888d24s8ms0",
102                                         rotation                = "unspecified",
103                                         surfacewidth    = "256",
104                                         surfaceheight   = "256",
105                                         filters                 = [include("gles2-master.txt")]),
106         ])
107 GLCTS_3_2_2_GLES3_PKG                                   = Package(module = ES3CTS_MODULE, configurations = [
108                 # Master
109                 Configuration(name                      = "master",
110                                         glconfig                = "rgba8888d24s8ms0",
111                                         rotation                = "unspecified",
112                                         surfacewidth    = "256",
113                                         surfaceheight   = "256",
114                                         filters                 = [include("gles3-master.txt")]),
115
116                 # Rotations
117                 Configuration(name                      = "rotate-portrait",
118                                         glconfig                = "rgba8888d24s8ms0",
119                                         rotation                = "0",
120                                         surfacewidth    = "256",
121                                         surfaceheight   = "256",
122                                         os                              = "android",
123                                         filters                 = [include("gles3-master.txt"), include("gles3-rotation.txt")]),
124                 Configuration(name                      = "rotate-landscape",
125                                         glconfig                = "rgba8888d24s8ms0",
126                                         rotation                = "90",
127                                         surfacewidth    = "256",
128                                         surfaceheight   = "256",
129                                         os                              = "android",
130                                         filters                 = [include("gles3-master.txt"), include("gles3-rotation.txt")]),
131                 Configuration(name                      = "rotate-reverse-portrait",
132                                         glconfig                = "rgba8888d24s8ms0",
133                                         rotation                = "180",
134                                         surfacewidth    = "256",
135                                         surfaceheight   = "256",
136                                         os                              = "android",
137                                         filters                 = [include("gles3-master.txt"), include("gles3-rotation.txt")]),
138                 Configuration(name                      = "rotate-reverse-landscape",
139                                         glconfig                = "rgba8888d24s8ms0",
140                                         rotation                = "270",
141                                         surfacewidth    = "256",
142                                         surfaceheight   = "256",
143                                         os                              = "android",
144                                         filters         = [include("gles3-master.txt"), include("gles3-rotation.txt")]),
145
146                 # MSAA
147                 Configuration(name                      = "multisample",
148                                         glconfig                = "rgba8888d24s8ms4",
149                                         rotation                = "unspecified",
150                                         surfacewidth    = "256",
151                                         surfaceheight   = "256",
152                                         filters                 = [include("gles3-master.txt"),
153                                                                            include("gles3-multisample.txt"),
154                                                                            exclude("gles3-multisample-issues.txt")]),
155
156                 # Pixel format
157                 Configuration(name                      = "565-no-depth-no-stencil",
158                                         glconfig                = "rgb565d0s0ms0",
159                                         rotation                = "unspecified",
160                                         surfacewidth    = "256",
161                                         surfaceheight   = "256",
162                                         filters                 = [include("gles3-master.txt"),
163                                                                            include("gles3-pixelformat.txt"),
164                                                                            exclude("gles3-pixelformat-issues.txt")]),
165         ])
166 GLCTS_3_2_2_GLES31_PKG                                  = Package(module = ES31CTS_MODULE, configurations = [
167                 # Master
168                 Configuration(name                      = "master",
169                                         glconfig                = "rgba8888d24s8ms0",
170                                         rotation                = "unspecified",
171                                         surfacewidth    = "256",
172                                         surfaceheight   = "256",
173                                         filters                 = [include("gles31-master.txt")]),
174                 # Rotations
175                 Configuration(name                      = "rotate-portrait",
176                                         glconfig                = "rgba8888d24s8ms0",
177                                         rotation                = "0",
178                                         surfacewidth    = "256",
179                                         surfaceheight   = "256",
180                                         os                              = "android",
181                                         filters                 = [include("gles31-master.txt"), include("gles31-rotation.txt")]),
182                 Configuration(name                      = "rotate-landscape",
183                                         glconfig                = "rgba8888d24s8ms0",
184                                         rotation                = "90",
185                                         surfacewidth    = "256",
186                                         surfaceheight   = "256",
187                                         os                              = "android",
188                                         filters                 = [include("gles31-master.txt"), include("gles31-rotation.txt")]),
189                 Configuration(name                      = "rotate-reverse-portrait",
190                                         glconfig                = "rgba8888d24s8ms0",
191                                         rotation                = "180",
192                                         surfacewidth    = "256",
193                                         surfaceheight   = "256",
194                                         os                              = "android",
195                                         filters                 = [include("gles31-master.txt"), include("gles31-rotation.txt")]),
196                 Configuration(name                      = "rotate-reverse-landscape",
197                                         glconfig                = "rgba8888d24s8ms0",
198                                         rotation                = "270",
199                                         surfacewidth    = "256",
200                                         surfaceheight   = "256",
201                                         os                              = "android",
202                                         filters                 = [include("gles31-master.txt"), include("gles31-rotation.txt")]),
203
204                 # MSAA
205                 Configuration(name                      = "multisample",
206                                         glconfig                = "rgba8888d24s8ms4",
207                                         rotation                = "unspecified",
208                                         surfacewidth    = "256",
209                                         surfaceheight   = "256",
210                                         filters                 = [include("gles31-master.txt"), include("gles31-multisample.txt")]),
211
212                 # Pixel format
213                 Configuration(name                      = "565-no-depth-no-stencil",
214                                         glconfig                = "rgb565d0s0ms0",
215                                         rotation                = "unspecified",
216                                         surfacewidth    = "256",
217                                         surfaceheight   = "256",
218                                         filters                 = [include("gles31-master.txt"), include("gles31-pixelformat.txt")]),
219         ])
220
221 # 3.2.3.x
222 GLCTS_3_2_3_EGL_COMMON_FILTERS                  = [include("egl-master.txt"),
223                 exclude("egl-test-issues.txt"),
224                 exclude("egl-internal-api-tests.txt"),
225                 exclude("egl-driver-issues.txt")
226         ]
227 GLCTS_3_2_3_EGL_PKG                                             = Package(module = EGL_MODULE, configurations = [
228                 # Master
229                 Configuration(name                      = "master",
230                                         glconfig                = "rgba8888d24s8ms0",
231                                         rotation                = "unspecified",
232                                         surfacewidth    = "256",
233                     surfaceheight   = "256",
234                                         filters                 = GLCTS_3_2_3_EGL_COMMON_FILTERS),
235         ])
236
237 GLCTS_3_2_3_GLES2_COMMON_FILTERS        = [
238                 include("gles2-master.txt"),
239                 exclude("gles2-test-issues.txt"),
240                 exclude("gles2-spec-issues.txt"),
241                 exclude("gles2-driver-issues.txt"),
242                 exclude("gles2-hw-issues.txt")
243         ]
244 GLCTS_3_2_3_GLES2_PKG         = Package(module = ES2CTS_MODULE, configurations = [
245         # Master
246         Configuration(name          = "master",
247                     glconfig        = "rgba8888d24s8ms0",
248                     rotation        = "unspecified",
249                     surfacewidth    = "256",
250                     surfaceheight   = "256",
251                     filters         = GLCTS_3_2_3_GLES2_COMMON_FILTERS),
252     ])
253
254 GLCTS_3_2_3_GLES3_COMMON_FILTERS                = [
255                 include("gles3-master.txt"),
256                 exclude("gles3-test-issues.txt"),
257                 exclude("gles3-spec-issues.txt"),
258                 exclude("gles3-driver-issues.txt"),
259         ]
260
261 GLCTS_3_2_3_GLES3_PKG                           = Package(module = ES3CTS_MODULE, configurations = [
262                 # Master
263                 Configuration(name                      = "master",
264                                         glconfig        = "rgba8888d24s8ms0",
265                                         rotation        = "unspecified",
266                                         surfacewidth    = "256",
267                                         surfaceheight   = "256",
268                                         filters         = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [exclude("gles3-hw-issues.txt")]),
269                 # Rotations
270                 Configuration(name                      = "rotate-portrait",
271                                         glconfig        = "rgba8888d24s8ms0",
272                                         rotation        = "0",
273                                         surfacewidth    = "256",
274                                         surfaceheight   = "256",
275                                         os                              = "android",
276                                         filters         = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
277                 Configuration(name                      = "rotate-landscape",
278                                         glconfig        = "rgba8888d24s8ms0",
279                                         rotation        = "90",
280                                         surfacewidth    = "256",
281                                         surfaceheight   = "256",
282                                         os                              = "android",
283                                         filters         = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
284                 Configuration(name                      = "rotate-reverse-portrait",
285                                         glconfig        = "rgba8888d24s8ms0",
286                                         rotation        = "180",
287                                         surfacewidth    = "256",
288                                         surfaceheight   = "256",
289                                         os                              = "android",
290                                         filters         = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
291                 Configuration(name                      = "rotate-reverse-landscape",
292                                         glconfig        = "rgba8888d24s8ms0",
293                                         rotation        = "270",
294                                         surfacewidth    = "256",
295                                         surfaceheight   = "256",
296                                         os                              = "android",
297                                         filters         = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
298
299                 # MSAA
300                 Configuration(name                      = "multisample",
301                                         glconfig        = "rgba8888d24s8ms4",
302                                         rotation        = "unspecified",
303                                         surfacewidth    = "256",
304                                         surfaceheight   = "256",
305                                         filters         = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [include("gles3-multisample.txt"), exclude("gles3-multisample-hw-issues.txt")]),
306
307                 # Pixel format
308                 Configuration(name                      = "565-no-depth-no-stencil",
309                                         glconfig        = "rgb565d0s0ms0",
310                                         rotation        = "unspecified",
311                                         surfacewidth    = "256",
312                                         surfaceheight   = "256",
313                                         filters         = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [include("gles3-pixelformat.txt")]),
314
315         ])
316
317 GLCTS_3_2_3_GLES31_COMMON_FILTERS       = [
318                 include("gles31-master.txt"),
319                 exclude("gles31-test-issues.txt"),
320                 exclude("gles31-spec-issues.txt"),
321                 exclude("gles31-driver-issues.txt"),
322                 exclude("gles31-hw-issues.txt")
323         ]
324
325 GLCTS_3_2_3_GLES31_PKG                          = Package(module = ES31CTS_MODULE, configurations = [
326                 # Master
327                 Configuration(name                      = "master",
328                                         glconfig        = "rgba8888d24s8ms0",
329                                         rotation        = "unspecified",
330                                         surfacewidth    = "256",
331                                         surfaceheight   = "256",
332                                         filters         = GLCTS_3_2_3_GLES31_COMMON_FILTERS),
333
334                 # Rotations
335                 Configuration(name                      = "rotate-portrait",
336                                         glconfig        = "rgba8888d24s8ms0",
337                                         rotation        = "0",
338                                         surfacewidth    = "256",
339                                         surfaceheight   = "256",
340                                         os                              = "android",
341                                         filters         = GLCTS_3_2_3_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
342                 Configuration(name                      = "rotate-landscape",
343                                         glconfig        = "rgba8888d24s8ms0",
344                                         rotation        = "90",
345                                         surfacewidth    = "256",
346                                         surfaceheight   = "256",
347                                         os                              = "android",
348                                         filters         = GLCTS_3_2_3_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
349                 Configuration(name                      = "rotate-reverse-portrait",
350                                         glconfig        = "rgba8888d24s8ms0",
351                                         rotation        = "180",
352                                         surfacewidth    = "256",
353                                         surfaceheight   = "256",
354                                         os                              = "android",
355                                         filters         = GLCTS_3_2_3_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
356                 Configuration(name                      = "rotate-reverse-landscape",
357                                         glconfig        = "rgba8888d24s8ms0",
358                                         rotation        = "270",
359                                         surfacewidth    = "256",
360                                         surfaceheight   = "256",
361                                         os                              = "android",
362                                         filters         = GLCTS_3_2_3_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
363
364                 # MSAA
365                 Configuration(name                      = "multisample",
366                                         glconfig        = "rgba8888d24s8ms4",
367                                         rotation        = "unspecified",
368                                         surfacewidth    = "256",
369                                         surfaceheight   = "256",
370                                         filters         = [include("gles31-master.txt"),
371                                                                         include("gles31-multisample.txt"),
372                                                                         exclude("gles31-multisample-test-issues.txt")]),
373
374                 # Pixel format
375                 Configuration(name                      = "565-no-depth-no-stencil",
376                                         glconfig        = "rgb565d0s0ms0",
377                                         rotation        = "unspecified",
378                                         surfacewidth    = "256",
379                                         surfaceheight   = "256",
380                                         filters         = GLCTS_3_2_3_GLES31_COMMON_FILTERS + [include("gles31-pixelformat.txt")]),
381         ])
382
383 GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS   = [
384                 include("gles32-khr-master.txt"),
385                 exclude("gles32-khr-test-issues.txt"),
386                 exclude("gles32-khr-spec-issues.txt")
387         ]
388
389 GLCTS_3_2_3_GLES32_KHR_PKG_1CFG                 = Package(module = ES32KHR_MODULE, configurations = [
390                 # Master
391                 Configuration(name                      = "khr-master",
392                                         surfacewidth    = "64",
393                                         surfaceheight   = "64",
394                                         baseseed                = "1",
395                                         filters                 = GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS),
396                 Configuration(name                      = "khr-master",
397                                         surfacewidth    = "113",
398                                         surfaceheight   = "47",
399                                         baseseed                = "2",
400                                         filters                 = GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS),
401                 Configuration(name                      = "khr-master",
402                                         surfacewidth    = "64",
403                                         surfaceheight   = "-1",
404                                         baseseed                = "3",
405                                         fboconfig               = "rgba8888d24s8",
406                                         filters                 = GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS),
407                 Configuration(name                      = "khr-master",
408                                         surfacewidth    = "-1",
409                                         surfaceheight   = "64",
410                                         baseseed                = "3",
411                                         fboconfig               = "rgba8888d24s8",
412                                         filters                 = GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS),
413         ])
414
415 GLCTS_3_2_3_GLES32_KHR_PKG_N1CFG                = Package(module = ES32KHR_MODULE, useforfirsteglconfig = False, configurations = [
416                 # Master
417                 Configuration(name                      = "khr-master",
418                                         surfacewidth    = "64",
419                                         surfaceheight   = "64",
420                                         baseseed                = "1",
421                                         filters                 = GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS),
422                 Configuration(name                      = "khr-master",
423                                         surfacewidth    = "113",
424                                         surfaceheight   = "47",
425                                         baseseed                = "2",
426                                         filters                 = GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS),
427         ])
428
429
430 # master
431 MASTER_EGL_COMMON_FILTERS                       = [include("egl-master.txt"),
432                                                                                 exclude("egl-test-issues.txt"),
433                                                                                 exclude("egl-internal-api-tests.txt")]
434 MASTER_EGL_PKG                                          = Package(module = EGL_MODULE, configurations = [
435                 # Master
436                 Configuration(name                      = "master",
437                                         glconfig                = "rgba8888d24s8ms0",
438                                         rotation                = "unspecified",
439                                         surfacewidth    = "256",
440                     surfaceheight   = "256",
441                                         filters                 = MASTER_EGL_COMMON_FILTERS),
442         ])
443
444 MASTER_GLES2_COMMON_FILTERS                     = [
445                                 include("gles2-master.txt"),
446                                 exclude("gles2-test-issues.txt")
447                 ]
448 MASTER_GLES2_PKG         = Package(module = ES2CTS_MODULE, configurations = [
449         # Master
450         Configuration(name          = "master",
451                     glconfig        = "rgba8888d24s8ms0",
452                     rotation        = "unspecified",
453                     surfacewidth    = "256",
454                     surfaceheight   = "256",
455                     filters         = MASTER_GLES2_COMMON_FILTERS),
456     ])
457
458 MASTER_GLES3_COMMON_FILTERS             = [
459                 include("gles3-master.txt"),
460                 exclude("gles3-test-issues.txt"),
461                 exclude("gles3-spec-issues.txt")
462         ]
463 MASTER_GLES3_PKG                                = Package(module = ES3CTS_MODULE, configurations = [
464                 # Master
465                 Configuration(name                      = "master",
466                                         glconfig        = "rgba8888d24s8ms0",
467                                         rotation        = "unspecified",
468                                         surfacewidth    = "256",
469                                         surfaceheight   = "256",
470                                         filters         = MASTER_GLES3_COMMON_FILTERS),
471                 # Rotations
472                 Configuration(name                      = "rotate-portrait",
473                                         glconfig        = "rgba8888d24s8ms0",
474                                         rotation        = "0",
475                                         surfacewidth    = "256",
476                                         surfaceheight   = "256",
477                                         os                              = "android",
478                                         filters         = MASTER_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
479                 Configuration(name                      = "rotate-landscape",
480                                         glconfig        = "rgba8888d24s8ms0",
481                                         rotation        = "90",
482                                         surfacewidth    = "256",
483                                         surfaceheight   = "256",
484                                         os                              = "android",
485                                         filters         = MASTER_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
486                 Configuration(name                      = "rotate-reverse-portrait",
487                                         glconfig        = "rgba8888d24s8ms0",
488                                         rotation        = "180",
489                                         surfacewidth    = "256",
490                                         surfaceheight   = "256",
491                                         os                              = "android",
492                                         filters         = MASTER_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
493                 Configuration(name                      = "rotate-reverse-landscape",
494                                         glconfig        = "rgba8888d24s8ms0",
495                                         rotation        = "270",
496                                         surfacewidth    = "256",
497                                         surfaceheight   = "256",
498                                         os                              = "android",
499                                         filters         = MASTER_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
500
501                 # MSAA
502                 Configuration(name                      = "multisample",
503                                         glconfig        = "rgba8888d24s8ms4",
504                                         rotation        = "unspecified",
505                                         surfacewidth    = "256",
506                                         surfaceheight   = "256",
507                                         filters         = MASTER_GLES3_COMMON_FILTERS + [include("gles3-multisample.txt")]),
508
509                 # Pixel format
510                 Configuration(name                      = "565-no-depth-no-stencil",
511                                         glconfig        = "rgb565d0s0ms0",
512                                         rotation        = "unspecified",
513                                         surfacewidth    = "256",
514                                         surfaceheight   = "256",
515                                         filters         = MASTER_GLES3_COMMON_FILTERS + [include("gles3-pixelformat.txt")]),
516         ])
517 MASTER_GLES31_COMMON_FILTERS             = [
518                 include("gles31-master.txt"),
519                 exclude("gles31-test-issues.txt"),
520                 exclude("gles31-spec-issues.txt")
521         ]
522
523 MASTER_GLES31_PKG                               = Package(module = ES31CTS_MODULE, configurations = [
524                 # Master
525                 Configuration(name                      = "master",
526                                         glconfig        = "rgba8888d24s8ms0",
527                                         rotation        = "unspecified",
528                                         surfacewidth    = "256",
529                                         surfaceheight   = "256",
530                                         filters         = MASTER_GLES31_COMMON_FILTERS),
531
532                 # Rotations
533                 Configuration(name                      = "rotate-portrait",
534                                         glconfig        = "rgba8888d24s8ms0",
535                                         rotation        = "0",
536                                         surfacewidth    = "256",
537                                         surfaceheight   = "256",
538                                         os                              = "android",
539                                         filters         = MASTER_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
540                 Configuration(name                      = "rotate-landscape",
541                                         glconfig        = "rgba8888d24s8ms0",
542                                         rotation        = "90",
543                                         surfacewidth    = "256",
544                                         surfaceheight   = "256",
545                                         os                              = "android",
546                                         filters         = MASTER_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
547                 Configuration(name                      = "rotate-reverse-portrait",
548                                         glconfig        = "rgba8888d24s8ms0",
549                                         rotation        = "180",
550                                         surfacewidth    = "256",
551                                         surfaceheight   = "256",
552                                         os                              = "android",
553                                         filters         = MASTER_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
554                 Configuration(name                      = "rotate-reverse-landscape",
555                                         glconfig        = "rgba8888d24s8ms0",
556                                         rotation        = "270",
557                                         surfacewidth    = "256",
558                                         surfaceheight   = "256",
559                                         os                              = "android",
560                                         filters         = MASTER_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
561
562                 # MSAA
563                 Configuration(name                      = "multisample",
564                                         glconfig        = "rgba8888d24s8ms4",
565                                         rotation        = "unspecified",
566                                         surfacewidth    = "256",
567                                         surfaceheight   = "256",
568                                         filters         = MASTER_GLES31_COMMON_FILTERS + [include("gles31-multisample.txt")]),
569
570                 # Pixel format
571                 Configuration(name                      = "565-no-depth-no-stencil",
572                                         glconfig        = "rgb565d0s0ms0",
573                                         rotation        = "unspecified",
574                                         surfacewidth    = "256",
575                                         surfaceheight   = "256",
576                                         filters         = MASTER_GLES31_COMMON_FILTERS + [include("gles31-pixelformat.txt")]),
577         ])
578
579 GLCTS_GLES2_KHR_PKG_1CFG                        = Package(module = ES2KHR_MODULE, configurations = [
580                 # Master
581                 Configuration(name                      = "khr-master",
582                                         surfacewidth    = "64",
583                                         surfaceheight   = "64",
584                                         baseseed                = "1",
585                                         filters                 = [include("gles2-khr-master.txt")]),
586         ])
587
588 GLCTS_GLES2_DEQP_PKG_1CFG                       = Package(module = ES2CTS_MODULE, configurations = [
589                 # Master
590                 Configuration(name                      = "deqp-master",
591                                         surfacewidth    = "64",
592                                         surfaceheight   = "64",
593                                         baseseed                = "1",
594                                         filters                 = [include("gles2-deqp-master.txt")]),
595         ])
596
597 GLCTS_GLES2_GTF_PKG_1CFG                        = Package(module = ES2GTF_MODULE, configurations = [
598                 # Master
599                 Configuration(name                      = "gtf-master",
600                                         surfacewidth    = "64",
601                                         surfaceheight   = "64",
602                                         baseseed                = "1",
603                                         filters                 = [include("gles2-gtf-master.txt")]),
604                 Configuration(name                      = "gtf-master",
605                                         surfacewidth    = "113",
606                                         surfaceheight   = "47",
607                                         baseseed                = "2",
608                                         filters                 = [include("gles2-gtf-master.txt")]),
609                 Configuration(name                      = "gtf-master",
610                                         surfacewidth    = "64",
611                                         surfaceheight   = "-1",
612                                         baseseed                = "3",
613                                         fboconfig               = "rgba8888d24s8",
614                                         filters                 = [include("gles2-gtf-master.txt")]),
615                 Configuration(name                      = "gtf-master",
616                                         surfacewidth    = "-1",
617                                         surfaceheight   = "64",
618                                         baseseed                = "3",
619                                         fboconfig               = "rgba8888d24s8",
620                                         filters                 = [include("gles2-gtf-master.txt")]),
621                 Configuration(name                      = "gtf-egl",
622                                         surfacewidth    = "64",
623                                         surfaceheight   = "64",
624                                         baseseed                = "1",
625                                         filters                 = [include("gles2-gtf-egl.txt")]),
626                 Configuration(name                      = "gtf-egl",
627                                         surfacewidth    = "113",
628                                         surfaceheight   = "47",
629                                         baseseed                = "2",
630                                         filters                 = [include("gles2-gtf-egl.txt")]),
631         ])
632
633 GLCTS_GLES2_KHR_PKG_N1CFG                       = Package(module = ES2KHR_MODULE, useforfirsteglconfig = False, configurations = [
634                 # Master
635                 Configuration(name                      = "khr-master",
636                                         surfacewidth    = "64",
637                                         surfaceheight   = "64",
638                                         baseseed                = "1",
639                                         filters                 = [include("gles2-khr-master.txt")]),
640         ])
641
642 GLCTS_GLES2_DEQP_PKG_N1CFG                      = Package(module = ES2CTS_MODULE, useforfirsteglconfig = False, configurations = [
643                 # Master
644                 Configuration(name                      = "deqp-master",
645                                         surfacewidth    = "64",
646                                         surfaceheight   = "64",
647                                         baseseed                = "1",
648                                         filters                 = [include("gles2-deqp-master.txt")]),
649         ])
650
651 GLCTS_GLES2_GTF_PKG_N1CFG                       = Package(module = ES2GTF_MODULE, useforfirsteglconfig = False, configurations = [
652                 # Master
653                 Configuration(name                      = "gtf-master",
654                                         surfacewidth    = "64",
655                                         surfaceheight   = "64",
656                                         baseseed                = "1",
657                                         filters         = [include("gles2-gtf-master.txt")]),
658                 Configuration(name                      = "gtf-master",
659                                         surfacewidth    = "113",
660                                         surfaceheight   = "47",
661                                         baseseed                = "2",
662                                         filters                 = [include("gles2-gtf-master.txt")]),
663         ])
664
665 GLCTS_GLES3_DEQP_PKG_1CFG                       = Package(module = ES3CTS_MODULE, configurations = [
666                 # Master
667                 Configuration(name                      = "deqp-master",
668                                         surfacewidth    = "64",
669                                         surfaceheight   = "64",
670                                         baseseed                = "1",
671                                         filters                 = [include("gles3-deqp-master.txt")]),
672         ])
673
674 GLCTS_GLES3_KHR_PKG_1CFG                        = Package(module = ES3KHR_MODULE, configurations = [
675                 # Master
676                 Configuration(name                      = "khr-master",
677                                         surfacewidth    = "64",
678                                         surfaceheight   = "64",
679                                         baseseed                = "1",
680                                         filters                 = [include("gles3-khr-master.txt")]),
681         ])
682
683 GLCTS_GLES3_GTF_PKG_1CFG                        = Package(module = ES3GTF_MODULE, configurations = [
684                 # Master
685                 Configuration(name                      = "gtf-master",
686                                         surfacewidth    = "64",
687                                         surfaceheight   = "64",
688                                         baseseed                = "1",
689                                         filters                 = [include("gles3-gtf-master.txt")]),
690                 Configuration(name                      = "gtf-master",
691                                         surfacewidth    = "113",
692                                         surfaceheight   = "47",
693                                         baseseed                = "2",
694                                         filters                 = [include("gles3-gtf-master.txt")]),
695                 Configuration(name                      = "gtf-master",
696                                         surfacewidth    = "64",
697                                         surfaceheight   = "-1",
698                                         baseseed                = "3",
699                                         fboconfig               = "rgba8888d24s8",
700                                         filters                 = [include("gles3-gtf-master.txt")]),
701                 Configuration(name                      = "gtf-master",
702                                         surfacewidth    = "-1",
703                                         surfaceheight   = "64",
704                                         baseseed                = "3",
705                                         fboconfig               = "rgba8888d24s8",
706                                         filters                 = [include("gles3-gtf-master.txt")]),
707         ])
708
709 GLCTS_GLES3_DEQP_PKG_N1CFG                      = Package(module = ES3CTS_MODULE, useforfirsteglconfig = False, configurations = [
710                 # Master
711                 Configuration(name                      = "deqp-master",
712                                         surfacewidth    = "64",
713                                         surfaceheight   = "64",
714                                         baseseed                = "1",
715                                         filters                 = [include("gles3-deqp-master.txt")]),
716         ])
717
718 GLCTS_GLES3_KHR_PKG_N1CFG                       = Package(module = ES3KHR_MODULE, useforfirsteglconfig = False, configurations = [
719                 # Master
720                 Configuration(name                      = "khr-master",
721                                         surfacewidth    = "64",
722                                         surfaceheight   = "64",
723                                         baseseed                = "1",
724                                         filters                 = [include("gles3-khr-master.txt")]),
725         ])
726 GLCTS_GLES3_GTF_PKG_N1CFG                       = Package(module = ES3GTF_MODULE, useforfirsteglconfig = False, configurations = [
727                 # Master
728                 Configuration(name                      = "gtf-master",
729                                         surfacewidth    = "64",
730                                         surfaceheight   = "64",
731                                         baseseed                = "1",
732                                         filters                 = [include("gles3-gtf-master.txt")]),
733                 Configuration(name                      = "gtf-master",
734                                         surfacewidth    = "113",
735                                         surfaceheight   = "47",
736                                         baseseed                = "2",
737                                         filters                 = [include("gles3-gtf-master.txt")]),
738         ])
739
740 GLCTS_GLES31_DEQP_PKG_1CFG                      = Package(module = ES31CTS_MODULE, configurations = [
741                 # Master
742                 Configuration(name                      = "deqp-master",
743                                         surfacewidth    = "64",
744                                         surfaceheight   = "64",
745                                         baseseed                = "1",
746                                         filters                 = [include("gles31-deqp-master.txt")]),
747         ])
748
749 GLCTS_GLES31_KHR_PKG_1CFG                       = Package(module = ES31KHR_MODULE, configurations = [
750                 # Master
751                 Configuration(name                      = "khr-master",
752                                         surfacewidth    = "64",
753                                         surfaceheight   = "64",
754                                         baseseed                = "1",
755                                         filters                 = [include("gles31-khr-master.txt")]),
756         ])
757
758 GLCTS_GLES31_GTF_PKG_1CFG                       = Package(module = ES31GTF_MODULE, configurations = [
759                 # Master
760                 Configuration(name                      = "gtf-master",
761                                         surfacewidth    = "64",
762                                         surfaceheight   = "64",
763                                         baseseed                = "1",
764                                         filters                 = [include("gles31-gtf-master.txt")]),
765                 Configuration(name                      = "gtf-master",
766                                         surfacewidth    = "113",
767                                         surfaceheight   = "47",
768                                         baseseed                = "2",
769                                         filters                 = [include("gles31-gtf-master.txt")]),
770                 Configuration(name                      = "gtf-master",
771                                         surfacewidth    = "64",
772                                         surfaceheight   = "-1",
773                                         baseseed                = "3",
774                                         fboconfig               = "rgba8888d24s8",
775                                         filters                 = [include("gles31-gtf-master.txt")]),
776                 Configuration(name                      = "gtf-master",
777                                         surfacewidth    = "-1",
778                                         surfaceheight   = "64",
779                                         baseseed                = "3",
780                                         fboconfig               = "rgba8888d24s8",
781                                         filters                 = [include("gles31-gtf-master.txt")]),
782         ])
783
784 GLCTS_GLES31_KHR_PKG_N1CFG                      = Package(module = ES31KHR_MODULE, useforfirsteglconfig = False, configurations = [
785                 # Master
786                 Configuration(name                      = "khr-master",
787                                         surfacewidth    = "64",
788                                         surfaceheight   = "64",
789                                         baseseed                = "1",
790                                         filters                 = [include("gles31-khr-master.txt")]),
791         ])
792
793 GLCTS_GLES31_DEQP_PKG_N1CFG                     = Package(module = ES31CTS_MODULE, useforfirsteglconfig = False, configurations = [
794                 # Master
795                 Configuration(name                      = "deqp-master",
796                                         surfacewidth    = "64",
797                                         surfaceheight   = "64",
798                                         baseseed                = "1",
799                                         filters                 = [include("gles31-deqp-master.txt")]),
800         ])
801
802 GLCTS_GLES31_GTF_PKG_N1CFG                      = Package(module = ES31GTF_MODULE, useforfirsteglconfig = False, configurations = [
803                 # Master
804                 Configuration(name                      = "gtf-master",
805                                         surfacewidth    = "64",
806                                         surfaceheight   = "64",
807                                         baseseed                = "1",
808                                         filters                 = [include("gles31-gtf-master.txt")]),
809                 Configuration(name                      = "gtf-master",
810                                         surfacewidth    = "113",
811                                         surfaceheight   = "47",
812                                         baseseed                = "2",
813                                         filters                 = [include("gles31-gtf-master.txt")]),
814         ])
815
816 GLCTS_GLES32_KHR_PKG_1CFG                       = Package(module = ES32KHR_MODULE, configurations = [
817                 # Master
818                 Configuration(name                      = "khr-master",
819                                         surfacewidth    = "64",
820                                         surfaceheight   = "64",
821                                         baseseed                = "1",
822                                         filters                 = [include("gles32-khr-master.txt")]),
823                 Configuration(name                      = "khr-master",
824                                         surfacewidth    = "113",
825                                         surfaceheight   = "47",
826                                         baseseed                = "2",
827                                         filters                 = [include("gles32-khr-master.txt")]),
828                 Configuration(name                      = "khr-master",
829                                         surfacewidth    = "64",
830                                         surfaceheight   = "-1",
831                                         baseseed                = "3",
832                                         fboconfig               = "rgba8888d24s8",
833                                         filters                 = [include("gles32-khr-master.txt")]),
834                 Configuration(name                      = "khr-master",
835                                         surfacewidth    = "-1",
836                                         surfaceheight   = "64",
837                                         baseseed                = "3",
838                                         fboconfig               = "rgba8888d24s8",
839                                         filters                 = [include("gles32-khr-master.txt")]),
840         ])
841
842 GLCTS_GLES32_KHR_PKG_N1CFG                      = Package(module = ES32KHR_MODULE, useforfirsteglconfig = False, configurations = [
843                 # Master
844                 Configuration(name                      = "khr-master",
845                                         surfacewidth    = "64",
846                                         surfaceheight   = "64",
847                                         baseseed                = "1",
848                                         filters                 = [include("gles32-khr-master.txt")]),
849                 Configuration(name                      = "khr-master",
850                                         surfacewidth    = "113",
851                                         surfaceheight   = "47",
852                                         baseseed                = "2",
853                                         filters                 = [include("gles32-khr-master.txt")]),
854         ])
855
856 GLCTS_NOCTX_ES2_KHR_PKG                 = Package(module = NOCTX_ES2_KHR_MODULE, configurations = [
857                 # Master
858                 Configuration(name                      = "khr-master",
859                                         surfacewidth    = "64",
860                                         surfaceheight   = "64",
861                                         baseseed                = "1",
862                                         filters                 = [include("gles2-khr-master.txt")]),
863         ])
864
865 GLCTS_NOCTX_ES32_KHR_PKG                = Package(module = NOCTX_ES32_KHR_MODULE, configurations = [
866                 # Master
867                 Configuration(name                      = "khr-master",
868                                         surfacewidth    = "64",
869                                         surfaceheight   = "64",
870                                         baseseed                = "1",
871                                         filters                 = [include("gles32-khr-master.txt")]),
872         ])
873
874 ES_MUSTPASS_LISTS               = [
875         # 3.2.2.x
876         Mustpass(project = CTS_KHR_MP_ES_PROJECT,       version = "3.2.2.x", isCurrent=False,
877                         packages = [GLCTS_GLES2_KHR_PKG_1CFG,
878                                                 GLCTS_GLES2_DEQP_PKG_1CFG,
879                                                 GLCTS_GLES2_GTF_PKG_1CFG,
880                                                 GLCTS_GLES2_KHR_PKG_N1CFG,
881                                                 GLCTS_GLES2_DEQP_PKG_N1CFG,
882                                                 GLCTS_GLES2_GTF_PKG_N1CFG,
883                                                 GLCTS_GLES3_KHR_PKG_1CFG,
884                                                 GLCTS_GLES3_DEQP_PKG_1CFG,
885                                                 GLCTS_GLES3_GTF_PKG_1CFG,
886                                                 GLCTS_GLES3_KHR_PKG_N1CFG,
887                                                 GLCTS_GLES3_DEQP_PKG_N1CFG,
888                                                 GLCTS_GLES3_GTF_PKG_N1CFG,
889                                                 GLCTS_GLES31_KHR_PKG_1CFG,
890                                                 GLCTS_GLES31_DEQP_PKG_1CFG,
891                                                 GLCTS_GLES31_GTF_PKG_1CFG,
892                                                 GLCTS_GLES31_KHR_PKG_N1CFG,
893                                                 GLCTS_GLES31_DEQP_PKG_N1CFG,
894                                                 GLCTS_GLES31_GTF_PKG_N1CFG,
895                                                 GLCTS_GLES32_KHR_PKG_1CFG,
896                                                 GLCTS_GLES32_KHR_PKG_N1CFG,
897                                                 ]),
898
899         Mustpass(project = CTS_AOSP_MP_ES_PROJECT,      version = "3.2.2.x", isCurrent=False,
900                         packages = [GLCTS_GLES2_PKG, GLCTS_3_2_2_GLES3_PKG, GLCTS_3_2_2_GLES31_PKG]),
901
902         # 3.2.3.x
903         Mustpass(project = CTS_KHR_MP_ES_PROJECT,       version = "3.2.3.x", isCurrent=False,
904                         packages = [GLCTS_GLES2_KHR_PKG_1CFG,
905                                                 GLCTS_GLES2_GTF_PKG_1CFG,
906                                                 GLCTS_GLES2_KHR_PKG_N1CFG,
907                                                 GLCTS_GLES2_GTF_PKG_N1CFG,
908                                                 GLCTS_GLES3_KHR_PKG_1CFG,
909                                                 GLCTS_GLES3_GTF_PKG_1CFG,
910                                                 GLCTS_GLES3_KHR_PKG_N1CFG,
911                                                 GLCTS_GLES3_GTF_PKG_N1CFG,
912                                                 GLCTS_GLES31_KHR_PKG_1CFG,
913                                                 GLCTS_GLES31_GTF_PKG_1CFG,
914                                                 GLCTS_GLES31_KHR_PKG_N1CFG,
915                                                 GLCTS_GLES31_GTF_PKG_N1CFG,
916                                                 GLCTS_3_2_3_GLES32_KHR_PKG_1CFG,
917                                                 GLCTS_3_2_3_GLES32_KHR_PKG_N1CFG,
918                                                 ]),
919
920         Mustpass(project = CTS_AOSP_MP_ES_PROJECT, version = "3.2.3.x", isCurrent=False,
921                         packages = [GLCTS_3_2_3_GLES2_PKG, GLCTS_3_2_3_GLES3_PKG, GLCTS_3_2_3_GLES31_PKG]),
922
923         Mustpass(project = CTS_AOSP_MP_EGL_PROJECT, version = "3.2.3.x", isCurrent=False,
924                         packages = [GLCTS_3_2_3_EGL_PKG]),
925
926         # 3.2.4.x
927         Mustpass(project = CTS_KHR_MP_ES_PROJECT,       version = "3.2.4.x", isCurrent=True,
928                         packages = [GLCTS_GLES2_KHR_PKG_1CFG,
929                                                 GLCTS_GLES2_KHR_PKG_N1CFG,
930                                                 GLCTS_GLES3_KHR_PKG_1CFG,
931                                                 GLCTS_GLES3_KHR_PKG_N1CFG,
932                                                 GLCTS_GLES31_KHR_PKG_1CFG,
933                                                 GLCTS_GLES31_KHR_PKG_N1CFG,
934                                                 GLCTS_3_2_3_GLES32_KHR_PKG_1CFG,
935                                                 GLCTS_3_2_3_GLES32_KHR_PKG_N1CFG,
936                                                 ]),
937
938
939         Mustpass(project = CTS_KHR_MP_NOCTX_ES_PROJECT, version = "3.2.4.x", isCurrent=True,
940                         packages = [GLCTS_NOCTX_ES2_KHR_PKG, GLCTS_NOCTX_ES32_KHR_PKG]),
941
942         Mustpass(project = CTS_AOSP_MP_ES_PROJECT, version = "3.2.4.x", isCurrent=True,
943                         packages = [GLCTS_3_2_3_GLES2_PKG, GLCTS_3_2_3_GLES3_PKG, GLCTS_3_2_3_GLES31_PKG]),
944
945         Mustpass(project = CTS_AOSP_MP_EGL_PROJECT, version = "3.2.4.x", isCurrent=True,
946                         packages = [GLCTS_3_2_3_EGL_PKG]),
947
948         # master
949
950         Mustpass(project = CTS_KHR_MP_ES_PROJECT,       version = "master", isCurrent=False,
951                         packages = [GLCTS_GLES2_KHR_PKG_1CFG,
952                                                 GLCTS_GLES2_KHR_PKG_N1CFG,
953                                                 GLCTS_GLES3_KHR_PKG_1CFG,
954                                                 GLCTS_GLES3_KHR_PKG_N1CFG,
955                                                 GLCTS_GLES31_KHR_PKG_1CFG,
956                                                 GLCTS_GLES31_KHR_PKG_N1CFG,
957                                                 GLCTS_GLES32_KHR_PKG_1CFG,
958                                                 GLCTS_GLES32_KHR_PKG_N1CFG,
959                                                 ]),
960
961         Mustpass(project = CTS_KHR_MP_NOCTX_ES_PROJECT, version = "master", isCurrent=False,
962                         packages = [GLCTS_NOCTX_ES2_KHR_PKG, GLCTS_NOCTX_ES32_KHR_PKG]),
963
964         Mustpass(project = CTS_AOSP_MP_ES_PROJECT, version = "master", isCurrent=False,
965                         packages = [MASTER_GLES2_PKG, MASTER_GLES3_PKG, MASTER_GLES31_PKG]),
966
967         Mustpass(project = CTS_AOSP_MP_EGL_PROJECT, version = "master", isCurrent=False,
968                         packages = [MASTER_EGL_PKG])
969
970         ]
971
972 ES_BUILD_CONFIG                         = BuildConfig(buildPath, "Debug", ["-DDEQP_TARGET=%s" % DEFAULT_TARGET, "-DGLCTS_GTF_TARGET=gles32"])
973
974 #-------------------------------------------------- GL MUSTPASS----------------------------------------------------------------------
975
976 GL_CTS_MP_INC_DIR                                       = os.path.join(DEQP_DIR, "external", "openglcts", "modules", "runner")
977
978 GL_CTS_KHR_MP_DATA_DIR                          = os.path.join(DEQP_DIR, "external", "openglcts", "data", "mustpass", "gl", "khronos_mustpass")
979
980 GL_CTS_KHR_MP_DEVICE_DIR                        = "gl_cts/data/mustpass/gl/khronos_mustpass"
981
982 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)
983
984 GL_CTS_KHR_MP_NOCTX_DATA_DIR            = os.path.join(DEQP_DIR, "external", "openglcts", "data", "mustpass", "gl", "khronos_mustpass_noctx")
985
986 GL_CTS_KHR_MP_NOCTX_DEVICE_DIR          = "gl_cts/data/mustpass/gl/khronos_mustpass_noctx"
987
988 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)
989
990 GL_MODULES                                                      = OrderedDict([
991                         ('KHR-GL45',            ['master',              [include('gl45-master.txt'), exclude('gl45-test-issues.txt')]]),
992                         ('KHR-GL44',            ['master',              [include('gl44-master.txt'), exclude('gl44-test-issues.txt')]]),
993                         ('KHR-GL43',            ['master',              [include('gl43-master.txt'), exclude('gl43-test-issues.txt')]]),
994                         ('KHR-GL42',            ['master',              [include('gl42-master.txt'), exclude('gl42-test-issues.txt')]]),
995                         ('KHR-GL41',            ['master',              [include('gl41-master.txt'), exclude('gl41-test-issues.txt')]]),
996                         ('KHR-GL40',            ['master',              [include('gl40-master.txt'), exclude('gl40-test-issues.txt')]]),
997                         ('KHR-GL33',            ['master',              [include('gl33-master.txt')]]),
998                         ('KHR-GL32',            ['master',              [include('gl32-master.txt')]]),
999                         ('KHR-GL31',            ['master',              [include('gl31-master.txt')]]),
1000                         ('KHR-GL30',            ['master',              [include('gl30-master.txt')]]),
1001                         ('GTF-GL45',            ['gtf-master',  [include('gl45-gtf-master.txt')]]),
1002                         ('GTF-GL44',            ['gtf-master',  [include('gl44-gtf-master.txt')]]),
1003                         ('GTF-GL43',            ['gtf-master',  [include('gl43-gtf-master.txt')]]),
1004                         ('GTF-GL42',            ['gtf-master',  [include('gl42-gtf-master.txt')]]),
1005                         ('GTF-GL41',            ['gtf-master',  [include('gl41-gtf-master.txt')]]),
1006                         ('GTF-GL40',            ['gtf-master',  [include('gl40-gtf-master.txt')]]),
1007                         ('GTF-GL33',            ['gtf-master',  [include('gl33-gtf-master.txt')]]),
1008                         ('GTF-GL32',            ['gtf-master',  [include('gl32-gtf-master.txt')]]),
1009                         ('GTF-GL31',            ['gtf-master',  [include('gl31-gtf-master.txt')]]),
1010                         ('GTF-GL30',            ['gtf-master',  [include('gl30-gtf-master.txt')]])
1011                 ])
1012
1013 NOCTX_GL30_KHR_MODULE                   = getModuleByName("KHR-NOCTX-GL30")
1014 NOCTX_GL45_KHR_MODULE                   = getModuleByName("KHR-NOCTX-GL45")
1015
1016 GLCTS_NOCTX_GL30_KHR_PKG                        = Package(module = NOCTX_GL30_KHR_MODULE, configurations = [
1017                 # Master
1018                 Configuration(name                      = "khr-master",
1019                                         surfacewidth    = "64",
1020                                         surfaceheight   = "64",
1021                                         baseseed                = "1",
1022                                         filters                 = [include("gl30-khr-master.txt")]),
1023         ])
1024
1025 GLCTS_NOCTX_GL45_KHR_PKG                        = Package(module = NOCTX_GL45_KHR_MODULE, configurations = [
1026                 # Master
1027                 Configuration(name                      = "khr-master",
1028                                         surfacewidth    = "64",
1029                                         surfaceheight   = "64",
1030                                         baseseed                = "1",
1031                                         filters                 = [include("gl45-khr-master.txt")]),
1032         ])
1033
1034 def generateGLMustpass():
1035                 gl_packages = []
1036                 for packageName in GL_MODULES:
1037                         cfgName                 = GL_MODULES[packageName][0]
1038                         cfgFilter               = GL_MODULES[packageName][1]
1039                         config_w64xh64  = Configuration(name = cfgName, surfacewidth = "64", surfaceheight = "64", baseseed = "1", filters = cfgFilter)
1040                         config_w113xh47 = Configuration(name = cfgName, surfacewidth = "113", surfaceheight = "47", baseseed = "2", filters = cfgFilter)
1041                         config_w64              = Configuration(name = cfgName, surfacewidth = "64", surfaceheight = "-1", baseseed = "3", fboconfig = "rgba8888d24s8", filters = cfgFilter)
1042                         config_h64              = Configuration(name = cfgName, surfacewidth = "-1", surfaceheight = "64", baseseed = "3", fboconfig = "rgba8888d24s8", filters = cfgFilter)
1043
1044                         pkgModule               = getModuleByName(packageName)
1045                         pkg0                    = Package(module = pkgModule,
1046                                                                                 useforfirsteglconfig = True,
1047                                                                                 configurations = [
1048                                                                                         config_w64xh64, config_w113xh47, config_w64, config_h64
1049                                                                                 ]
1050                                                                         )
1051                         pkg1                    = Package(module = pkgModule,
1052                                                                                 useforfirsteglconfig = False,
1053                                                                                 configurations = [
1054                                                                                         config_w64xh64, config_w113xh47,
1055                                                                                 ]
1056                                                                         )
1057                         gl_packages.append(pkg0)
1058                         gl_packages.append(pkg1)
1059
1060                 mustpass = [Mustpass(project = GL_CTS_KHR_MP_PROJECT, version = "4.5.5.x", isCurrent=True, packages = gl_packages),
1061                                         Mustpass(project = GL_CTS_NOCTX_PROJECT, version = "4.5.5.x", isCurrent=True, packages = [GLCTS_NOCTX_GL30_KHR_PKG, GLCTS_NOCTX_GL45_KHR_PKG]),
1062                                         ]
1063                 return mustpass
1064
1065 GL_BUILD_CONFIG                                 = BuildConfig(buildPath, "Debug", ["-DDEQP_TARGET=%s" % DEFAULT_TARGET, "-DGLCTS_GTF_TARGET=gl"])
1066
1067 if __name__ == "__main__":
1068         gtfCMakeLists = os.path.join(DEQP_DIR, "external", "kc-cts", "src", "GTF_ES", "CMakeLists.txt")
1069         if os.path.isfile(gtfCMakeLists) == False:
1070                 raise Exception("GTF sources not found. GTF module is required to build the mustpass files")
1071         genMustpassLists(ES_MUSTPASS_LISTS, ANY_GENERATOR, ES_BUILD_CONFIG)
1072         gl_mustpass_lists = generateGLMustpass()
1073         genMustpassLists(gl_mustpass_lists, ANY_GENERATOR, GL_BUILD_CONFIG)
1074