Revert of Cleanup: Remove remaining generated extensions APIs on Android. (patchset...
[chromium-blink-merge.git] / gpu / gles2_conform_support / gles2_conform_test.gyp
blob2faf841d9f4df6342723779091860719a06a33db
1 # Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
7   'includes': [
8     'gles2_conform.gypi',
9   ],
10   'target_defaults': {
11     'msvs_disabled_warnings': [4005, 4013, 4018, 4101, 4716],
12      'include_dirs': [
13        '<(SHARED_INTERMEDIATE_DIR)/gles2_conform_test_embedded_data',
14        '../../third_party/gles2_conform/GTF_ES/glsl/GTF/Source',
15      ],
16   },
17   'targets': [
18     {
19       'target_name': 'gles2_conform_test',
20       'type': 'executable',
21       'dependencies': [
22         '<(DEPTH)/base/base.gyp:base',
23         '<(DEPTH)/gpu/gpu.gyp:gpu',
24         '<(DEPTH)/testing/gtest.gyp:gtest',
25       ],
26       'sources': [
27         'gles2_conform_test.cc',
28       ],
29       'conditions': [
30         ['internal_gles2_conform_tests', {
31           'dependencies': [
32             'gles2_conform_test_windowless',
33           ],
34           'variables': {
35             'gles2_conform_test_output_dir': '<(SHARED_INTERMEDIATE_DIR)/gpu/gles2_conform_test',
36           },
37           'sources': [
38             '<(gles2_conform_test_output_dir)/gles2_conform_test_autogen.cc',
39           ],
40           'actions': [
41             {
42               'action_name': 'generate_gles2_conform_tests',
43               'inputs': [
44                 'generate_gles2_conform_tests.py',
45                 'gles2_conform_test.h',
46                 '<(DEPTH)/third_party/gles2_conform/GTF_ES/glsl/GTF/mustpass_es20.run',
47               ],
48               'outputs': [
49                 '<(gles2_conform_test_output_dir)/gles2_conform_test_autogen.cc',
50               ],
51               'action': [
52                 'python',
53                 'generate_gles2_conform_tests.py',
54                 '<(gles2_conform_test_output_dir)',
55               ],
56             },
57           ],
58         }], # internal_gles2_conform_tests
59       ],
60     },
61     # TODO(alokp): Add gles2_conform_test_pepper target
62   ],
63   'conditions': [
64     ['internal_gles2_conform_tests', {
65       'targets': [
66         {
67           'target_name': 'gles2_conform_test_embedded_data',
68           'type': 'none',
69           'hard_dependency': 1,
70           'actions': [
71             {
72               'action_name': 'generate_gles2_conform_embedded_files',
73               'variables': {
74                 'generator_path': 'generate_gles2_embedded_data.py',
75               },
76               'inputs': [
77                 '<(generator_path)',
78                 '<!@(python <(generator_path) ../../third_party/gles2_conform/GTF_ES/glsl/GTF)',
79               ],
80               'outputs': [
81                 #'../../third_party/gles2_conform/GTF_ES/glsl/GTF/Source/FilesDATA.c',
82                 #'../../third_party/gles2_conform/GTF_ES/glsl/GTF/Source/FilesDATA.h',
83                 #'../../third_party/gles2_conform/GTF_ES/glsl/GTF/Source/FilesTOC.c',
84                 '<(SHARED_INTERMEDIATE_DIR)/gles2_conform_test_embedded_data/FilesDATA.c',
85                 '<(SHARED_INTERMEDIATE_DIR)/gles2_conform_test_embedded_data/FilesDATA.h',
86                 '<(SHARED_INTERMEDIATE_DIR)/gles2_conform_test_embedded_data/FilesTOC.c',
87               ],
88               'action': [
89                 'python',
90                 '<(generator_path)',
91                 '../../third_party/gles2_conform/GTF_ES/glsl/GTF',
92                 '<(SHARED_INTERMEDIATE_DIR)/gles2_conform_test_embedded_data',
93               ],
94             },
95           ],
96         },
97         {
98           'target_name': 'gles2_conform_test_windowless',
99           'type': 'executable',
100           'dependencies': [
101             'gles2_conform_test_embedded_data',
102             '<(DEPTH)/gpu/gles2_conform_support/gles2_conform_support.gyp:egl_native',
103             '<(DEPTH)/gpu/gles2_conform_support/gles2_conform_support.gyp:egl_main_windowless',
104             '<(DEPTH)/gpu/gpu.gyp:gles2_c_lib_nocheck',
105             '<(DEPTH)/third_party/expat/expat.gyp:expat',
106           ],
107           'conditions': [
108             ['OS=="linux"', {
109               'conditions': [
110                 [ 'chromeos==0', {
111                   'dependencies': ['../../build/linux/system.gyp:gtk']
112                 }],
113                 [ 'clang==1', {
114                   'cflags': [
115                     '-Wno-array-bounds',
116                     '-Wno-implicit-function-declaration',
117                     '-Wno-incompatible-pointer-types',
118                     '-Wno-parentheses-equality',
119                     '-Wno-pointer-sign',
120                     '-Wno-return-type',
121                     '-Wno-sizeof-pointer-memaccess',
122                     '-Wno-tautological-compare'
123                   ]
124                 }]
125               ],
126             }],
127             ['OS=="win"', {
128               'dependencies': [
129                 '<(angle_path)/src/build_angle.gyp:libGLESv2',
130                 '<(angle_path)/src/build_angle.gyp:libEGL',
131               ],
132               'defines': [
133                 'EGLAPI=',
134                 'EGLAPIENTRY=',
135               ],
136               'msvs_disabled_warnings': [
137                 4018,  # signed/unsigned mismatch
138                 4101,  # unreferenced local variable
139                 4715,  # not all control paths return a value
140               ],
141               'msvs_settings': {
142                 'VCCLCompilerTool': {
143                   'AdditionalOptions': ['/UNOMINMAX'],
144                 },
145               },
146             }],
147             ['OS=="mac"', {
148               'defines': [
149                 '_STDINT',
150                 '_STDINT_H',
151               ],
152               'conditions': [
153                 [ 'clang==1', {
154                   'cflags': [
155                     '-Wno-pointer-sign',
156                     '-Wno-array-bounds',
157                     '-Wno-sizeof-pointer-memaccess',
158                     '-Wno-implicit-function-declaration',
159                     '-Wno-logical-op-parentheses',
160                     '-Wno-tautological-compare',
161                     '-Wno-parentheses-equality',
162                     '-Wno-return-type',
163                   ],
164                   'xcode_settings': {
165                     'LD': 'clang++',
166                     'WARNING_CFLAGS': [
167                       '-Wno-pointer-sign',
168                       '-Wno-array-bounds',
169                       '-Wno-sizeof-pointer-memaccess',
170                       '-Wno-implicit-function-declaration',
171                       '-Wno-logical-op-parentheses',
172                       '-Wno-tautological-compare',
173                       '-Wno-parentheses-equality',
174                       '-Wno-return-type',
175                     ],
176                   },
177                 }],
178               ],
179             }],
180           ],
181           'defines': [
182             'GTF_API=GTF_GLES20',
183             'HKEMBEDDEDFILESYSTEM',
184           ],
185           'sources': [
186             '<@(gtf_es_sources)',
187             # Include a dummy c++ file to force linking of libstdc++.
188             '<(DEPTH)/gpu/gles2_conform_support/dummy.cc',
189           ],
190           'run_as': {
191             'conditions': [
192               ['OS=="win"', {
193                 'action': [
194                   '$(TargetPath)',
195                   '-noimagefileio',
196                   '-run=<(DEPTH)/third_party/gles2_conform/GTF_ES/glsl/GTF/mustpass.run',
197                 ],
198               }],
199             ],
200           },
201         },
202       ],
203     }], # internal_gles2_conform_tests
204     ['OS=="win" and internal_gles2_conform_tests', {
205       'targets': [
206         {
207           'target_name': 'gles2_conform_test_angle',
208           'type': 'executable',
209           'dependencies': [
210             'gles2_conform_test_embedded_data',
211             '<(DEPTH)/base/base.gyp:base',
212             '<(DEPTH)/third_party/expat/expat.gyp:expat',
213             '<(angle_path)/src/build_angle.gyp:libGLESv2',
214             '<(angle_path)/src/build_angle.gyp:libEGL',
215             '<(DEPTH)/gpu/gles2_conform_support/gles2_conform_support.gyp:egl_main_native',
216           ],
217           'defines': [
218             'GTF_API=GTF_GLES20',
219           ],
220           'include_dirs': [
221             '<(DEPTH)/third_party/angle_dx11/include',
222           ],
223           'sources': [
224             '<@(gtf_es_sources)',
225           ],
226         },
227       ],
228     }],
230     ['chromeos==1 and internal_gles2_conform_tests', {
231       'targets': [
232         {
233           'target_name': 'gles2_conform_test_chromeos',
234           'type': 'executable',
235           'dependencies': [
236             'gles2_conform_test_embedded_data',
237             '<(DEPTH)/base/base.gyp:*',
238             '<(DEPTH)/third_party/expat/expat.gyp:expat',
239             '<(DEPTH)/gpu/gles2_conform_support/gles2_conform_support.gyp:egl_main_native',
240           ],
241           'libraries': [
242             '-lEGL',
243             '-lGLESv2',
244           ],
245           'defines': [
246             'GTF_API=GTF_GLES20',
247             'CHROMEOS_GLES2_CONFORMANCE',
248           ],
249           'sources': [
250             '<@(gtf_es_sources)',
251           ],
252         },
253       ],
254     }],
255   ],
259 # Local Variables:
260 # tab-width:2
261 # indent-tabs-mode:nil
262 # End:
263 # vim: set expandtab tabstop=2 shiftwidth=2: