blob: 08bbdc45c9665d27324d1deda0f58115543cc784 [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',
Yuly Novikove3352f92016-08-12 20:40:14 -040099 'type': 'shared_library',
Corentin Wallezfe2f3d62015-05-05 17:37:39 -0400100 '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',
Yuly Novikove3352f92016-08-12 20:40:14 -0400124 'LIBANGLE_UTIL_IMPLEMENTATION',
Geoff Langee483762015-09-15 13:12:07 -0400125 ],
Corentin Wallezfe2f3d62015-05-05 17:37:39 -0400126 'direct_dependent_settings':
127 {
128 'include_dirs':
129 [
130 '<(angle_path)/include',
131 '<(angle_path)/util',
132 ],
Geoff Langee483762015-09-15 13:12:07 -0400133 'defines':
134 [
135 'GL_GLEXT_PROTOTYPES',
136 'EGL_EGLEXT_PROTOTYPES',
137 ],
Corentin Wallezfe2f3d62015-05-05 17:37:39 -0400138 },
139 'conditions':
140 [
Austin Kinross9f2fd2b2015-09-02 12:29:07 -0700141 ['OS=="win" and angle_build_winrt==0',
Jamie Madill1cfaaf82014-08-21 10:04:04 -0400142 {
Jamie Madill1cfaaf82014-08-21 10:04:04 -0400143 'sources':
144 [
Corentin Wallezfe2f3d62015-05-05 17:37:39 -0400145 '<@(util_win32_sources)',
Jamie Madill1cfaaf82014-08-21 10:04:04 -0400146 ],
Corentin Wallezfe2f3d62015-05-05 17:37:39 -0400147 }],
Austin Kinross9f2fd2b2015-09-02 12:29:07 -0700148 ['OS=="win" and angle_build_winrt==1',
149 {
150 'sources':
151 [
152 '<@(util_winrt_sources)',
153 ],
154 }],
Corentin Wallezfe2f3d62015-05-05 17:37:39 -0400155 ['OS=="linux"',
156 {
157 'sources':
158 [
159 '<@(util_linux_sources)',
160 ],
Yuly Novikov87ae8cd2016-05-19 17:59:55 -0400161 'link_settings':
162 {
163 'libraries':
164 [
165 '-ldl',
166 ],
167 },
Corentin Wallez51e2ad12015-05-26 11:32:58 -0400168 }],
169 ['use_x11==1',
170 {
171 'sources':
172 [
173 '<@(util_x11_sources)',
174 ],
Geoff Lang4031b992015-05-29 10:57:55 -0400175 'link_settings':
176 {
177 'ldflags':
178 [
Sam Clegg31aabdf2015-12-16 10:53:46 -0800179 '<!@(<(pkg-config) --libs-only-L --libs-only-other x11 xi)',
Corentin Wallezfe2f3d62015-05-05 17:37:39 -0400180 ],
Geoff Lang4031b992015-05-29 10:57:55 -0400181 'libraries':
182 [
Frank Henigman7d52be02016-03-24 14:40:58 -0400183 '<!@(<(pkg-config) --libs-only-l x11 xi)',
Jamie Madill1cfaaf82014-08-21 10:04:04 -0400184 ],
185 },
Corentin Wallezfe2f3d62015-05-05 17:37:39 -0400186 }],
Frank Henigman538281f2016-04-13 23:36:55 -0400187 ['use_ozone==1',
188 {
189 'sources':
190 [
191 '<@(util_ozone_sources)',
192 ],
193 }],
Corentin Wallez87bef772015-06-19 15:42:09 -0700194 ['OS=="mac"',
195 {
196 'sources':
197 [
198 '<@(util_osx_sources)',
199 ],
Corentin Wallezadaeb852016-09-14 10:54:24 -0400200 'xcode_settings':
201 {
202 'DYLIB_INSTALL_NAME_BASE': '@rpath',
203 },
Corentin Wallez31658f92015-07-15 12:57:34 -0700204 'link_settings':
205 {
206 'libraries':
207 [
Corentin Wallez2f29d782015-09-14 12:15:53 -0700208 '$(SDKROOT)/System/Library/Frameworks/AppKit.framework',
209 '$(SDKROOT)/System/Library/Frameworks/QuartzCore.framework',
Corentin Wallez31658f92015-07-15 12:57:34 -0700210 ],
211 },
Corentin Wallez87bef772015-06-19 15:42:09 -0700212 }],
Jamie Madill1cfaaf82014-08-21 10:04:04 -0400213 ],
Corentin Wallezfe2f3d62015-05-05 17:37:39 -0400214 },
Jamie Madill1cfaaf82014-08-21 10:04:04 -0400215 ],
216}