Upload upstream chromium 67.0.3396
[platform/framework/web/chromium-efl.git] / third_party / angle / util / util.gyp
1 # Copyright (c) 2014 The ANGLE Project 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     # Everything below  this is duplicated in the GN build, except Mac support.
7     # If you change anything also change angle/BUILD.gn
8     'variables':
9     {
10         'util_sources':
11         [
12             'com_utils.h',
13             'keyboard.h',
14             'geometry_utils.cpp',
15             'geometry_utils.h',
16             'mouse.h',
17             'random_utils.cpp',
18             'random_utils.h',
19             'shader_utils.cpp',
20             'shader_utils.h',
21             'system_utils.h',
22             'Event.h',
23             'EGLWindow.cpp',
24             'EGLWindow.h',
25             'Matrix.cpp',
26             'Matrix.h',
27             'OSPixmap.h',
28             'OSWindow.cpp',
29             'OSWindow.h',
30             'Timer.h',
31         ],
32         'util_win32_sources':
33         [
34             'windows/win32/Win32_system_utils.cpp',
35             'windows/win32/Win32Pixmap.cpp',
36             'windows/win32/Win32Pixmap.h',
37             'windows/win32/Win32Window.cpp',
38             'windows/win32/Win32Window.h',
39             'windows/Windows_system_utils.cpp',
40             'windows/WindowsTimer.cpp',
41             'windows/WindowsTimer.h',
42         ],
43         'util_winrt_sources':
44         [
45             'windows/winrt/WinRT_system_utils.cpp',
46             'windows/winrt/WinRTPixmap.cpp',
47             'windows/winrt/WinRTWindow.cpp',
48             'windows/winrt/WinRTWindow.h',
49             'windows/Windows_system_utils.cpp',
50             'windows/WindowsTimer.cpp',
51             'windows/WindowsTimer.h',
52         ],
53         'util_linux_sources':
54         [
55             'linux/LinuxTimer.cpp',
56             'linux/LinuxTimer.h',
57             'posix/Posix_system_utils.cpp',
58         ],
59         'util_x11_sources':
60         [
61             'x11/X11Pixmap.cpp',
62             'x11/X11Pixmap.h',
63             'x11/X11Window.cpp',
64             'x11/X11Window.h',
65         ],
66         'util_ozone_sources':
67         [
68             'ozone/OzonePixmap.cpp',
69             'ozone/OzoneWindow.cpp',
70             'ozone/OzoneWindow.h',
71         ],
72         'util_osx_sources':
73         [
74             'osx/OSXTimer.cpp',
75             'osx/OSXTimer.h',
76             'osx/OSXPixmap.mm',
77             'osx/OSXPixmap.h',
78             'osx/OSXWindow.mm',
79             'osx/OSXWindow.h',
80             'posix/Posix_system_utils.cpp',
81         ],
82         'util_android_sources':
83         [
84             'android/AndroidPixmap.cpp',
85             'android/AndroidWindow.cpp',
86             'android/AndroidWindow.h',
87             'android/third_party/android_native_app_glue.c',
88             'android/third_party/android_native_app_glue.h',
89         ],
90     },
91     'target_defaults':
92     {
93         'dependencies':
94         [
95             '../gyp/warnings.gyp:gyp_deprecation',
96         ],
97     },
98     'targets':
99     [
100         {
101             'target_name': 'angle_util_config',
102             'type': 'none',
103             'direct_dependent_settings':
104             {
105                 'include_dirs':
106                 [
107                     '<(angle_path)/include',
108                     '<(angle_path)/util',
109                 ],
110                 'sources':
111                 [
112                     '<@(util_sources)',
113                 ],
114                 'defines':
115                 [
116                     'GL_GLEXT_PROTOTYPES',
117                     'EGL_EGLEXT_PROTOTYPES',
118                     'LIBANGLE_UTIL_IMPLEMENTATION',
119                 ],
120                 'conditions':
121                 [
122                     ['OS=="win" and angle_build_winrt==0',
123                     {
124                         'sources':
125                         [
126                             '<@(util_win32_sources)',
127                         ],
128                     }],
129                     ['OS=="win" and angle_build_winrt==1',
130                     {
131                         'sources':
132                         [
133                             '<@(util_winrt_sources)',
134                         ],
135                     }],
136                     ['OS=="linux"',
137                     {
138                         'sources':
139                         [
140                             '<@(util_linux_sources)',
141                         ],
142                         'link_settings':
143                         {
144                             'libraries':
145                             [
146                                 '-ldl',
147                             ],
148                         },
149                     }],
150                     ['use_x11==1',
151                     {
152                         'sources':
153                         [
154                             '<@(util_x11_sources)',
155                         ],
156                         'link_settings':
157                         {
158                             'ldflags':
159                             [
160                                 '<!@(<(pkg-config) --libs-only-L --libs-only-other x11 xi)',
161                             ],
162                             'libraries':
163                             [
164                                 '<!@(<(pkg-config) --libs-only-l x11 xi)',
165                             ],
166                         },
167                     }],
168                     ['use_ozone==1',
169                     {
170                         'sources':
171                         [
172                             '<@(util_ozone_sources)',
173                         ],
174                     }],
175                     ['OS=="mac"',
176                     {
177                         'sources':
178                         [
179                             '<@(util_osx_sources)',
180                         ],
181                         'xcode_settings':
182                         {
183                             'DYLIB_INSTALL_NAME_BASE': '@rpath',
184                         },
185                         'link_settings':
186                         {
187                             'libraries':
188                             [
189                                 '$(SDKROOT)/System/Library/Frameworks/AppKit.framework',
190                                 '$(SDKROOT)/System/Library/Frameworks/QuartzCore.framework',
191                             ],
192                         },
193                     }],
194                 ],
195             },
196         },
197
198         {
199             'target_name': 'angle_util',
200             'type': 'shared_library',
201             'includes': [ '../gyp/common_defines.gypi', ],
202             'dependencies':
203             [
204                 'angle_util_config',
205                 '<(angle_path)/src/angle.gyp:angle_common',
206                 '<(angle_path)/src/angle.gyp:libEGL',
207                 '<(angle_path)/src/angle.gyp:libGLESv2',
208             ],
209             'export_dependent_settings':
210             [
211                 '<(angle_path)/src/angle.gyp:angle_common',
212             ],
213             'direct_dependent_settings':
214             {
215                 'include_dirs':
216                 [
217                     '<(angle_path)/include',
218                     '<(angle_path)/util',
219                 ],
220                 'defines':
221                 [
222                     'GL_GLEXT_PROTOTYPES',
223                     'EGL_EGLEXT_PROTOTYPES',
224                 ],
225             },
226         },
227
228         {
229             'target_name': 'angle_util_static',
230             'type': 'static_library',
231             'includes': [ '../gyp/common_defines.gypi', ],
232             'dependencies':
233             [
234                 'angle_util_config',
235                 '<(angle_path)/src/angle.gyp:angle_common',
236                 '<(angle_path)/src/angle.gyp:libEGL_static',
237                 '<(angle_path)/src/angle.gyp:libGLESv2_static',
238             ],
239             'export_dependent_settings':
240             [
241                 '<(angle_path)/src/angle.gyp:angle_common',
242             ],
243             'direct_dependent_settings':
244             {
245                 'include_dirs':
246                 [
247                     '<(angle_path)/include',
248                     '<(angle_path)/util',
249                 ],
250                 'defines':
251                 [
252                     'GL_GLEXT_PROTOTYPES',
253                     'EGL_EGLEXT_PROTOTYPES',
254                 ],
255             },
256         },
257     ],
258 }