blob: 3eb298881bae1ba0fa63f46a358fd8de435a7c2a [file] [log] [blame]
Jamie Madill1cfaaf82014-08-21 10:04:04 -04001# 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{
Corentin Wallezbeb81582015-09-02 10:30:55 -04006 # Everything below this is duplicated in the GN build, except Mac support.
7 # If you change anything also change angle/BUILD.gn
Corentin Wallezfe2f3d62015-05-05 17:37:39 -04008 'variables':
9 {
10 'util_sources':
11 [
12 'com_utils.h',
13 'keyboard.h',
Jamie Madillad60e8e2015-09-22 12:40:31 -040014 'geometry_utils.cpp',
15 'geometry_utils.h',
Corentin Wallezfe2f3d62015-05-05 17:37:39 -040016 'mouse.h',
Corentin Wallezfe2f3d62015-05-05 17:37:39 -040017 'random_utils.cpp',
18 'random_utils.h',
19 'shader_utils.cpp',
20 'shader_utils.h',
Corentin Wallezdb39e7f2015-05-25 09:51:24 -040021 'system_utils.h',
22 'Event.h',
Corentin Wallezfe2f3d62015-05-05 17:37:39 -040023 'EGLWindow.cpp',
24 'EGLWindow.h',
Jamie Madillad60e8e2015-09-22 12:40:31 -040025 'Matrix.cpp',
26 'Matrix.h',
Corentin Wallez52445282015-06-09 09:15:54 +020027 'OSPixmap.h',
Corentin Wallezfe2f3d62015-05-05 17:37:39 -040028 'OSWindow.cpp',
29 'OSWindow.h',
30 'Timer.h',
Jamie Madillad60e8e2015-09-22 12:40:31 -040031 'Vector.cpp',
32 'Vector.h',
Corentin Wallezfe2f3d62015-05-05 17:37:39 -040033 ],
34 'util_win32_sources':
35 [
Austin Kinross9f2fd2b2015-09-02 12:29:07 -070036 'windows/win32/Win32_system_utils.cpp',
37 'windows/win32/Win32Pixmap.cpp',
38 'windows/win32/Win32Pixmap.h',
39 'windows/win32/Win32Window.cpp',
40 'windows/win32/Win32Window.h',
41 'windows/Windows_system_utils.cpp',
42 'windows/WindowsTimer.cpp',
43 'windows/WindowsTimer.h',
44 ],
45 'util_winrt_sources':
46 [
47 'windows/winrt/WinRT_system_utils.cpp',
48 'windows/winrt/WinRTPixmap.cpp',
49 'windows/winrt/WinRTWindow.cpp',
50 'windows/winrt/WinRTWindow.h',
51 'windows/Windows_system_utils.cpp',
52 'windows/WindowsTimer.cpp',
53 'windows/WindowsTimer.h',
Corentin Wallezfe2f3d62015-05-05 17:37:39 -040054 ],
55 'util_linux_sources':
56 [
Corentin Wallezdb39e7f2015-05-25 09:51:24 -040057 'linux/Linux_system_utils.cpp',
Corentin Wallezfe2f3d62015-05-05 17:37:39 -040058 'linux/LinuxTimer.cpp',
59 'linux/LinuxTimer.h',
Corentin Wallez5c798fe2015-05-25 10:03:35 -040060 'posix/Posix_system_utils.cpp',
Corentin Wallez51e2ad12015-05-26 11:32:58 -040061 ],
62 'util_x11_sources':
63 [
Corentin Wallez52445282015-06-09 09:15:54 +020064 'x11/X11Pixmap.cpp',
65 'x11/X11Pixmap.h',
Corentin Wallezfe2f3d62015-05-05 17:37:39 -040066 'x11/X11Window.cpp',
67 'x11/X11Window.h',
Corentin Wallez51e2ad12015-05-26 11:32:58 -040068 ],
Frank Henigman538281f2016-04-13 23:36:55 -040069 'util_ozone_sources':
70 [
71 'ozone/OzonePixmap.cpp',
72 'ozone/OzoneWindow.cpp',
73 'ozone/OzoneWindow.h',
74 ],
Corentin Wallez87bef772015-06-19 15:42:09 -070075 'util_osx_sources':
76 [
77 'osx/OSX_system_utils.cpp',
78 'osx/OSXTimer.cpp',
79 'osx/OSXTimer.h',
Corentin Wallez27593e02015-09-15 08:19:09 -070080 'osx/OSXPixmap.mm',
81 'osx/OSXPixmap.h',
Corentin Wallez31658f92015-07-15 12:57:34 -070082 'osx/OSXWindow.mm',
Corentin Wallez87bef772015-06-19 15:42:09 -070083 'osx/OSXWindow.h',
84 'posix/Posix_system_utils.cpp',
85 ],
Yuly Novikova6426d62016-06-03 00:18:38 -040086 'util_android_sources':
87 [
Yuly Novikovca05a082016-08-12 14:46:30 -040088 'android/AndroidPixmap.cpp',
Yuly Novikova6426d62016-06-03 00:18:38 -040089 'android/AndroidWindow.cpp',
90 'android/AndroidWindow.h',
91 'android/third_party/android_native_app_glue.c',
92 'android/third_party/android_native_app_glue.h',
93 ],
Corentin Wallezfe2f3d62015-05-05 17:37:39 -040094 },
95 'targets':
Jamie Madill1cfaaf82014-08-21 10:04:04 -040096 [
Jamie Madill1cfaaf82014-08-21 10:04:04 -040097 {
Corentin Wallezfe2f3d62015-05-05 17:37:39 -040098 'target_name': 'angle_util',
99 'type': 'static_library',
100 'includes': [ '../build/common_defines.gypi', ],
101 'dependencies':
Jamie Madill1cfaaf82014-08-21 10:04:04 -0400102 [
Corentin Wallezfe2f3d62015-05-05 17:37:39 -0400103 '<(angle_path)/src/angle.gyp:angle_common',
104 '<(angle_path)/src/angle.gyp:libEGL',
105 '<(angle_path)/src/angle.gyp:libGLESv2',
106 ],
107 'export_dependent_settings':
108 [
109 '<(angle_path)/src/angle.gyp:angle_common',
110 ],
111 'include_dirs':
112 [
113 '<(angle_path)/include',
114 '<(angle_path)/util',
115 ],
116 'sources':
117 [
118 '<@(util_sources)',
119 ],
Geoff Langee483762015-09-15 13:12:07 -0400120 'defines':
121 [
122 'GL_GLEXT_PROTOTYPES',
123 'EGL_EGLEXT_PROTOTYPES',
124 ],
Corentin Wallezfe2f3d62015-05-05 17:37:39 -0400125 'direct_dependent_settings':
126 {
127 'include_dirs':
128 [
129 '<(angle_path)/include',
130 '<(angle_path)/util',
131 ],
Geoff Langee483762015-09-15 13:12:07 -0400132 'defines':
133 [
134 'GL_GLEXT_PROTOTYPES',
135 'EGL_EGLEXT_PROTOTYPES',
136 ],
Corentin Wallezfe2f3d62015-05-05 17:37:39 -0400137 },
138 'conditions':
139 [
Austin Kinross9f2fd2b2015-09-02 12:29:07 -0700140 ['OS=="win" and angle_build_winrt==0',
Jamie Madill1cfaaf82014-08-21 10:04:04 -0400141 {
Jamie Madill1cfaaf82014-08-21 10:04:04 -0400142 'sources':
143 [
Corentin Wallezfe2f3d62015-05-05 17:37:39 -0400144 '<@(util_win32_sources)',
Jamie Madill1cfaaf82014-08-21 10:04:04 -0400145 ],
Corentin Wallezfe2f3d62015-05-05 17:37:39 -0400146 }],
Austin Kinross9f2fd2b2015-09-02 12:29:07 -0700147 ['OS=="win" and angle_build_winrt==1',
148 {
149 'sources':
150 [
151 '<@(util_winrt_sources)',
152 ],
153 }],
Corentin Wallezfe2f3d62015-05-05 17:37:39 -0400154 ['OS=="linux"',
155 {
156 'sources':
157 [
158 '<@(util_linux_sources)',
159 ],
Yuly Novikov87ae8cd2016-05-19 17:59:55 -0400160 'link_settings':
161 {
162 'libraries':
163 [
164 '-ldl',
165 ],
166 },
Corentin Wallez51e2ad12015-05-26 11:32:58 -0400167 }],
168 ['use_x11==1',
169 {
170 'sources':
171 [
172 '<@(util_x11_sources)',
173 ],
Geoff Lang4031b992015-05-29 10:57:55 -0400174 'link_settings':
175 {
176 'ldflags':
177 [
Sam Clegg31aabdf2015-12-16 10:53:46 -0800178 '<!@(<(pkg-config) --libs-only-L --libs-only-other x11 xi)',
Corentin Wallezfe2f3d62015-05-05 17:37:39 -0400179 ],
Geoff Lang4031b992015-05-29 10:57:55 -0400180 'libraries':
181 [
Frank Henigman7d52be02016-03-24 14:40:58 -0400182 '<!@(<(pkg-config) --libs-only-l x11 xi)',
Jamie Madill1cfaaf82014-08-21 10:04:04 -0400183 ],
184 },
Corentin Wallezfe2f3d62015-05-05 17:37:39 -0400185 }],
Frank Henigman538281f2016-04-13 23:36:55 -0400186 ['use_ozone==1',
187 {
188 'sources':
189 [
190 '<@(util_ozone_sources)',
191 ],
192 }],
Corentin Wallez87bef772015-06-19 15:42:09 -0700193 ['OS=="mac"',
194 {
195 'sources':
196 [
197 '<@(util_osx_sources)',
198 ],
Corentin Wallez31658f92015-07-15 12:57:34 -0700199 'link_settings':
200 {
201 'libraries':
202 [
Corentin Wallez2f29d782015-09-14 12:15:53 -0700203 '$(SDKROOT)/System/Library/Frameworks/AppKit.framework',
204 '$(SDKROOT)/System/Library/Frameworks/QuartzCore.framework',
Corentin Wallez31658f92015-07-15 12:57:34 -0700205 ],
206 },
Corentin Wallez87bef772015-06-19 15:42:09 -0700207 }],
Jamie Madill1cfaaf82014-08-21 10:04:04 -0400208 ],
Corentin Wallezfe2f3d62015-05-05 17:37:39 -0400209 },
Jamie Madill1cfaaf82014-08-21 10:04:04 -0400210 ],
211}