- add sources.
[platform/framework/web/crosswalk.git] / src / gpu / gles2_conform_support / gles2_conform_support.gyp
1 # Copyright (c) 2012 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.
4
5 {
6   'variables': {
7     'chromium_code': 1,
8     # These are defined here because we want to be able to compile them on
9     # the buildbots without needed the OpenGL ES 2.0 conformance tests
10     # which are not open source.
11     'bootstrap_sources_native': [
12       'native/main.cc',
13     ],
14    'conditions': [
15      ['OS=="linux"', {
16        'bootstrap_sources_native': [
17          'native/egl_native_aura.cc',
18          'native/egl_native.cc',
19          'native/egl_native_gtk.cc',
20          'native/egl_native_x11.cc',
21        ],
22      }],
23      ['OS=="win"', {
24        'bootstrap_sources_native': [
25          'native/egl_native.cc',
26          'native/egl_native_win.cc',
27        ],
28      }],
29    ],
30
31   },
32   'targets': [
33     {
34       'target_name': 'egl_native',
35       'type': 'static_library',
36       'dependencies': [
37         '../../base/base.gyp:base',
38         '../../gpu/gpu.gyp:gpu',
39         '../../gpu/gpu.gyp:gles2_implementation_client_side_arrays_no_check',
40         '../../gpu/gpu.gyp:command_buffer_service',
41         '../../third_party/khronos/khronos.gyp:khronos_headers',
42         '../../ui/gfx/gfx.gyp:gfx',
43         '../../ui/gl/gl.gyp:gl',
44         '../../ui/ui.gyp:ui',
45       ],
46       'sources': [
47         'egl/config.cc',
48         'egl/config.h',
49         'egl/display.cc',
50         'egl/display.h',
51         'egl/egl.cc',
52         'egl/surface.cc',
53         'egl/surface.h',
54       ],
55       'defines': [
56         'EGLAPI=',
57         'EGLAPIENTRY=',
58       ],
59       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
60       'msvs_disabled_warnings': [ 4267, ],
61     },
62     {
63       'target_name': 'egl_main_native',
64       'type': 'static_library',
65       'dependencies': [
66         'egl_native',
67         '../../third_party/khronos/khronos.gyp:khronos_headers',
68       ],
69       'conditions': [
70         ['toolkit_uses_gtk == 1', {
71           'dependencies': ['../../build/linux/system.gyp:gtk'],
72         }],
73       ],
74       'sources': [
75         '<@(bootstrap_sources_native)',
76       ],
77       'defines': [
78         'GLES2_CONFORM_SUPPORT_ONLY',
79         'GTF_GLES20',
80         'EGLAPI=',
81         'EGLAPIENTRY=',
82       ],
83     },
84     {
85       'target_name': 'egl_main_windowless',
86       'type': 'static_library',
87       'dependencies': [
88         'egl_native',
89         '../../third_party/khronos/khronos.gyp:khronos_headers',
90       ],
91       'conditions': [
92         ['toolkit_uses_gtk == 1', {
93           'dependencies': ['../../build/linux/system.gyp:gtk'],
94         }],
95       ],
96       'sources': [
97         'native/main.cc',
98         'native/egl_native.cc',
99         'native/egl_native_windowless.cc',
100         '<@(bootstrap_sources_native)',
101       ],
102       'defines': [
103         'GLES2_CONFORM_SUPPORT_ONLY',
104         'GTF_GLES20',
105         'EGLAPI=',
106         'EGLAPIENTRY=',
107       ],
108     },
109     {
110       'target_name': 'gles2_conform_support',
111       'type': 'executable',
112       'dependencies': [
113         'egl_native',
114         '../../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
115         '../../gpu/gpu.gyp:gles2_c_lib_nocheck',
116         '../../third_party/expat/expat.gyp:expat',
117       ],
118       'conditions': [
119         ['toolkit_uses_gtk == 1', {
120           'dependencies': ['../../build/linux/system.gyp:gtk'],
121         }],
122         # See http://crbug.com/162998#c4 for why this is needed.
123         ['OS=="linux" and linux_use_tcmalloc==1', {
124           'dependencies': [
125             '../../base/allocator/allocator.gyp:allocator',
126           ],
127         }],
128       ],
129       'defines': [
130         'GLES2_CONFORM_SUPPORT_ONLY',
131         'GTF_GLES20',
132         'EGLAPI=',
133         'EGLAPIENTRY=',
134       ],
135       'sources': [
136         '<@(bootstrap_sources_native)',
137         'gles2_conform_support.c'
138       ],
139     },
140   ],
141 }