OSDN Git Service

Merge "Add dom/xhtml/level3 layout tests at WebKit r63173"
[android-x86/external-webkit.git] / WebKit / chromium / WebKit.gyp
1 #
2 # Copyright (C) 2010 Google Inc. All rights reserved.
3 #
4 # Redistribution and use in source and binary forms, with or without
5 # modification, are permitted provided that the following conditions are
6 # met:
7 #
8 #         * Redistributions of source code must retain the above copyright
9 # notice, this list of conditions and the following disclaimer.
10 #         * Redistributions in binary form must reproduce the above
11 # copyright notice, this list of conditions and the following disclaimer
12 # in the documentation and/or other materials provided with the
13 # distribution.
14 #         * Neither the name of Google Inc. nor the names of its
15 # contributors may be used to endorse or promote products derived from
16 # this software without specific prior written permission.
17 #
18 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21 # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22 # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23 # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24 # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 #
30
31 {
32     'includes': [
33         '../../WebCore/WebCore.gypi',
34         '../../WebKitTools/DumpRenderTree/DumpRenderTree.gypi',
35         'WebKit.gypi',
36         'features.gypi',
37     ],
38     'variables': {
39         'webkit_target_type': 'static_library',
40         'conditions': [
41             # Location of the chromium src directory and target type is different
42             # if webkit is built inside chromium or as standalone project.
43             ['inside_chromium_build==0', {
44                 # Webkit is being built outside of the full chromium project.
45                 # e.g. via build-webkit --chromium
46                 'chromium_src_dir': '../../WebKit/chromium',
47
48                 # List of DevTools source files, ordered by dependencies. It is used both
49                 # for copying them to resource dir, and for generating 'devtools.html' file.
50                 'devtools_files': [
51                     '<@(devtools_css_files)',
52                     '../../WebKit/chromium/v8/tools/codemap.js',
53                     '../../WebKit/chromium/v8/tools/consarray.js',
54                     '../../WebKit/chromium/v8/tools/csvparser.js',
55                     '../../WebKit/chromium/v8/tools/logreader.js',
56                     '../../WebKit/chromium/v8/tools/profile.js',
57                     '../../WebKit/chromium/v8/tools/profile_view.js',
58                     '../../WebKit/chromium/v8/tools/splaytree.js',
59                     '<@(devtools_js_files)',
60                 ],
61             },{
62                 # WebKit is checked out in src/chromium/third_party/WebKit
63                 'chromium_src_dir': '../../../..',
64
65                 'devtools_files': [
66                     '<@(devtools_css_files)',
67                     '../../../../v8/tools/codemap.js',
68                     '../../../../v8/tools/consarray.js',
69                     '../../../../v8/tools/csvparser.js',
70                     '../../../../v8/tools/logreader.js',
71                     '../../../../v8/tools/profile.js',
72                     '../../../../v8/tools/profile_view.js',
73                     '../../../../v8/tools/splaytree.js',
74                     '<@(devtools_js_files)',
75                 ],
76             }],
77         ],
78         'ahem_path': '../../WebKitTools/DumpRenderTree/qt/fonts/AHEM____.TTF',
79
80         # If debug_devtools is set to 1, JavaScript files for DevTools are
81         # stored as is. Otherwise, a concatenated file is stored.
82         'debug_devtools%': 0,
83     },
84     'targets': [
85         {
86             'target_name': 'webkit',
87             'msvs_guid': '5ECEC9E5-8F23-47B6-93E0-C3B328B3BE65',
88             'dependencies': [
89                 '../../WebCore/WebCore.gyp/WebCore.gyp:webcore',
90                 '<(chromium_src_dir)/skia/skia.gyp:skia',
91                 '<(chromium_src_dir)/third_party/npapi/npapi.gyp:npapi',
92             ],
93             'export_dependent_settings': [
94                 '<(chromium_src_dir)/skia/skia.gyp:skia',
95                 '<(chromium_src_dir)/third_party/npapi/npapi.gyp:npapi',
96             ],
97             'include_dirs': [
98                 'public',
99                 'src',
100             ],
101             'defines': [
102                 'WEBKIT_IMPLEMENTATION=1',
103             ],
104             'sources': [
105                 'public/gtk/WebInputEventFactory.h',
106                 'public/linux/WebFontRendering.h',
107                 'public/linux/WebFontRenderStyle.h',
108                 'public/linux/WebRenderTheme.h',
109                 'public/x11/WebScreenInfoFactory.h',
110                 'public/mac/WebInputEventFactory.h',
111                 'public/mac/WebSandboxSupport.h',
112                 'public/mac/WebScreenInfoFactory.h',
113                 'public/WebAccessibilityCache.h',
114                 'public/WebAccessibilityObject.h',
115                 'public/WebAccessibilityRole.h',
116                 'public/WebAnimationController.h',
117                 'public/WebApplicationCacheHost.h',
118                 'public/WebApplicationCacheHostClient.h',
119                 'public/WebBindings.h',
120                 'public/WebCache.h',
121                 'public/WebCanvas.h',
122                 'public/WebClipboard.h',
123                 'public/WebColor.h',
124                 'public/WebColorName.h',
125                 'public/WebCommon.h',
126                 'public/WebCommonWorkerClient.h',
127                 'public/WebCompositionUnderline.h',
128                 'public/WebConsoleMessage.h',
129                 'public/WebContextMenuData.h',
130                 'public/WebCookie.h',
131                 'public/WebCookieJar.h',
132                 'public/WebCrossOriginPreflightResultCache.h',
133                 'public/WebCString.h',
134                 'public/WebCursorInfo.h',
135                 'public/WebDOMStringList.h',
136                 'public/WebData.h',
137                 'public/WebDatabase.h',
138                 'public/WebDatabaseObserver.h',
139                 'public/WebDataSource.h',
140                 'public/WebDevToolsAgent.h',
141                 'public/WebDevToolsAgentClient.h',
142                 'public/WebDevToolsFrontend.h',
143                 'public/WebDevToolsFrontendClient.h',
144                 'public/WebDevToolsMessageData.h',
145                 'public/WebDevToolsMessageTransport.h',
146                 'public/WebDocument.h',
147                 'public/WebDragData.h',
148                 'public/WebEditingAction.h',
149                 'public/WebElement.h',
150                 'public/WebEvent.h',
151                 'public/WebEventListener.h',
152                 'public/WebFileChooserCompletion.h',
153                 'public/WebFileChooserParams.h',
154                 'public/WebFileInfo.h',
155                 'public/WebFileSystem.h',
156                 'public/WebFindOptions.h',
157                 'public/WebFrame.h',
158                 'public/WebFrameClient.h',
159                 'public/WebFontCache.h',
160                 'public/WebFormControlElement.h',
161                 'public/WebFormElement.h',
162                 'public/WebGeolocationService.h',
163                 'public/WebGeolocationServiceBridge.h',
164                 'public/WebGeolocationServiceMock.h',
165                 'public/WebGlyphCache.h',
166                 'public/WebGLES2Context.h',
167                 'public/WebGraphicsContext3D.h',
168                 'public/WebHistoryItem.h',
169                 'public/WebHTTPBody.h',
170                 'public/WebImage.h',
171                 'public/WebImageDecoder.h',
172                 'public/WebIDBCallbacks.h',
173                 'public/WebIDBDatabase.h',
174                 'public/WebIDBDatabaseError.h',
175                 'public/WebIDBIndex.h',
176                 'public/WebIDBKey.h',
177                 'public/WebIDBObjectStore.h',
178                 'public/WebIndexedDatabase.h',
179                 'public/WebInputElement.h',
180                 'public/WebInputEvent.h',
181                 'public/WebKit.h',
182                 'public/WebKitClient.h',
183                 'public/WebLabelElement.h',
184                 'public/WebLocalizedString.h',
185                 'public/WebMediaElement.h',
186                 'public/WebMediaPlayer.h',
187                 'public/WebMediaPlayerAction.h',
188                 'public/WebMediaPlayerClient.h',
189                 'public/WebMenuItemInfo.h',
190                 'public/WebMessagePortChannel.h',
191                 'public/WebMessagePortChannelClient.h',
192                 'public/WebMimeRegistry.h',
193                 'public/WebMutationEvent.h',
194                 'public/WebNavigationType.h',
195                 'public/WebNode.h',
196                 'public/WebNodeCollection.h',
197                 'public/WebNodeList.h',
198                 'public/WebNonCopyable.h',
199                 'public/WebNotification.h',
200                 'public/WebNotificationPresenter.h',
201                 'public/WebNotificationPermissionCallback.h',
202                 'public/WebOptionElement.h',
203                 'public/WebPageSerializer.h',
204                 'public/WebPageSerializerClient.h',
205                 'public/WebPasswordAutocompleteListener.h',
206                 'public/WebPasswordFormData.h',
207                 'public/WebPlugin.h',
208                 'public/WebPluginContainer.h',
209                 'public/WebPluginDocument.h',
210                 'public/WebPluginListBuilder.h',
211                 'public/WebPoint.h',
212                 'public/WebPopupMenu.h',
213                 'public/WebPopupMenuInfo.h',
214                 'public/WebPopupType.h',
215                 'public/WebPrivatePtr.h',
216                 'public/WebRange.h',
217                 'public/WebRect.h',
218                 'public/WebRegularExpression.h',
219                 'public/WebRuntimeFeatures.h',
220                 'public/WebScrollbar.h',
221                 'public/WebScrollbarClient.h',
222                 'public/WebScreenInfo.h',
223                 'public/WebScriptController.h',
224                 'public/WebScriptSource.h',
225                 'public/WebSearchableFormData.h',
226                 'public/WebSecurityOrigin.h',
227                 'public/WebSecurityPolicy.h',
228                 'public/WebSelectElement.h',
229                 'public/WebSerializedScriptValue.h',
230                 'public/WebSettings.h',
231                 'public/WebSharedWorker.h',
232                 'public/WebSharedWorkerRepository.h',
233                 'public/WebSize.h',
234                 'public/WebSocketStreamError.h',
235                 'public/WebSocketStreamHandle.h',
236                 'public/WebSocketStreamHandleClient.h',
237                 'public/WebStorageArea.h',
238                 'public/WebStorageEventDispatcher.h',
239                 'public/WebStorageNamespace.h',
240                 'public/WebString.h',
241                 'public/WebTextAffinity.h',
242                 'public/WebTextCaseSensitivity.h',
243                 'public/WebTextDirection.h',
244                 'public/WebTextInputType.h',
245                 'public/WebThemeEngine.h',
246                 'public/WebURL.h',
247                 'public/WebURLError.h',
248                 'public/WebURLLoader.h',
249                 'public/WebURLLoadTiming.h',
250                 'public/WebURLLoaderClient.h',
251                 'public/WebURLRequest.h',
252                 'public/WebURLResponse.h',
253                 'public/WebVector.h',
254                 'public/WebView.h',
255                 'public/WebViewClient.h',
256                 'public/WebWidget.h',
257                 'public/WebWidgetClient.h',
258                 'public/WebWorker.h',
259                 'public/WebWorkerClient.h',
260                 'public/win/WebInputEventFactory.h',
261                 'public/win/WebSandboxSupport.h',
262                 'public/win/WebScreenInfoFactory.h',
263                 'public/win/WebScreenInfoFactory.h',
264                 'src/APUAgentDelegate.h',
265                 'src/ApplicationCacheHost.cpp',
266                 'src/ApplicationCacheHostInternal.h',
267                 'src/AssertMatchingEnums.cpp',
268                 'src/AutoFillPopupMenuClient.cpp',
269                 'src/AutoFillPopupMenuClient.h',
270                 'src/BackForwardListClientImpl.cpp',
271                 'src/BackForwardListClientImpl.h',
272                 'src/BoundObject.cpp',
273                 'src/BoundObject.h',
274                 'src/ChromeClientImpl.cpp',
275                 'src/ChromeClientImpl.h',
276                 'src/ChromiumBridge.cpp',
277                 'src/ChromiumCurrentTime.cpp',
278                 'src/ChromiumThreading.cpp',
279                 'src/CompositionUnderlineBuilder.h',
280                 'src/CompositionUnderlineVectorBuilder.cpp',
281                 'src/CompositionUnderlineVectorBuilder.h',
282                 'src/ContextMenuClientImpl.cpp',
283                 'src/ContextMenuClientImpl.h',
284                 'src/DatabaseObserver.cpp',
285                 'src/DebuggerAgent.h',
286                 'src/DebuggerAgentImpl.cpp',
287                 'src/DebuggerAgentImpl.h',
288                 'src/DebuggerAgentManager.cpp',
289                 'src/DebuggerAgentManager.h',
290                 'src/DevToolsRPC.h',
291                 'src/DevToolsRPCJS.h',
292                 'src/DOMUtilitiesPrivate.cpp',
293                 'src/DOMUtilitiesPrivate.h',
294                 'src/DragClientImpl.cpp',
295                 'src/DragClientImpl.h',
296                 'src/DragScrollTimer.cpp',
297                 'src/DragScrollTimer.h',
298                 'src/EditorClientImpl.cpp',
299                 'src/EditorClientImpl.h',
300                 'src/EventListenerWrapper.cpp',
301                 'src/EventListenerWrapper.h',
302                 'src/FrameLoaderClientImpl.cpp',
303                 'src/FrameLoaderClientImpl.h',
304                 'src/GLES2Context.cpp',
305                 'src/GLES2ContextInternal.cpp',
306                 'src/GLES2ContextInternal.h',
307                 'src/gtk/WebFontInfo.cpp',
308                 'src/gtk/WebFontInfo.h',
309                 'src/gtk/WebInputEventFactory.cpp',
310                 'src/IDBCallbacksProxy.cpp',
311                 'src/IDBCallbacksProxy.h',
312                 'src/IDBDatabaseProxy.cpp',
313                 'src/IDBDatabaseProxy.h',
314                 'src/IDBIndexProxy.cpp',
315                 'src/IDBIndexProxy.h',
316                 'src/IDBObjectStoreProxy.cpp',
317                 'src/IDBObjectStoreProxy.h',
318                 'src/IndexedDatabaseProxy.cpp',
319                 'src/IndexedDatabaseProxy.h',
320                 'src/InspectorClientImpl.cpp',
321                 'src/InspectorClientImpl.h',
322                 'src/InspectorFrontendClientImpl.cpp',
323                 'src/InspectorFrontendClientImpl.h',
324                 'src/linux/WebFontRendering.cpp',
325                 'src/linux/WebFontRenderStyle.cpp',
326                 'src/linux/WebRenderTheme.cpp',
327                 'src/x11/WebScreenInfoFactory.cpp',
328                 'src/mac/WebInputEventFactory.mm',
329                 'src/mac/WebScreenInfoFactory.mm',
330                 'src/LocalizedStrings.cpp',
331                 'src/MediaPlayerPrivateChromium.cpp',
332                 'src/NotificationPresenterImpl.h',
333                 'src/NotificationPresenterImpl.cpp',
334                 'src/PlatformMessagePortChannel.cpp',
335                 'src/PlatformMessagePortChannel.h',
336                 'src/ProfilerAgent.h',
337                 'src/ProfilerAgentImpl.cpp',
338                 'src/ProfilerAgentImpl.h',
339                 'src/ResourceHandle.cpp',
340                 'src/SharedWorkerRepository.cpp',
341                 'src/SocketStreamHandle.cpp',
342                 'src/StorageAreaProxy.cpp',
343                 'src/StorageAreaProxy.h',
344                 'src/StorageEventDispatcherChromium.cpp',
345                 'src/StorageEventDispatcherImpl.cpp',
346                 'src/StorageEventDispatcherImpl.h',
347                 'src/StorageNamespaceProxy.cpp',
348                 'src/StorageNamespaceProxy.h',
349                 'src/TemporaryGlue.h',
350                 'src/ToolsAgent.h',
351                 'src/WebAccessibilityCache.cpp',
352                 'src/WebAccessibilityCacheImpl.cpp',
353                 'src/WebAccessibilityCacheImpl.h',
354                 'src/WebAccessibilityObject.cpp',
355                 'src/WebAnimationControllerImpl.cpp',
356                 'src/WebAnimationControllerImpl.h',
357                 'src/WebBindings.cpp',
358                 'src/WebCache.cpp',
359                 'src/WebColor.cpp',
360                 'src/WebCommon.cpp',
361                 'src/WebCrossOriginPreflightResultCache.cpp',
362                 'src/WebCString.cpp',
363                 'src/WebCursorInfo.cpp',
364                 'src/WebDOMStringList.cpp',
365                 'src/WebData.cpp',
366                 'src/WebDatabase.cpp',
367                 'src/WebDataSourceImpl.cpp',
368                 'src/WebDataSourceImpl.h',
369                 'src/WebDevToolsAgentImpl.cpp',
370                 'src/WebDevToolsAgentImpl.h',
371                 'src/WebDevToolsFrontendImpl.cpp',
372                 'src/WebDevToolsFrontendImpl.h',
373                 'src/WebDocument.cpp',
374                 'src/WebDragData.cpp',
375                 'src/WebElement.cpp',
376                 'src/WebEntities.cpp',
377                 'src/WebEntities.h',
378                 'src/WebEvent.cpp',
379                 'src/WebEventListener.cpp',
380                 'src/WebEventListenerPrivate.cpp',
381                 'src/WebEventListenerPrivate.h',
382                 'src/WebFileChooserCompletionImpl.cpp',
383                 'src/WebFileChooserCompletionImpl.h',
384                 'src/WebFontCache.cpp',
385                 'src/WebFormControlElement.cpp',
386                 'src/WebFormElement.cpp',
387                 'src/WebFrameImpl.cpp',
388                 'src/WebFrameImpl.h',
389                 'src/WebGeolocationServiceBridgeImpl.cpp',
390                 'src/WebGeolocationServiceBridgeImpl.h',
391                 'src/WebGeolocationServiceMock.cpp',
392                 'src/WebGlyphCache.cpp',
393                 'src/WebGraphicsContext3D.cpp',
394                 'src/WebGraphicsContext3DDefaultImpl.cpp',
395                 'src/WebGraphicsContext3DDefaultImpl.h',
396                 'src/WebHistoryItem.cpp',
397                 'src/WebHTTPBody.cpp',
398                 'src/WebIDBCallbacksImpl.cpp',
399                 'src/WebIDBCallbacksImpl.h',
400                 'src/WebIDBDatabaseError.cpp',
401                 'src/WebIDBDatabaseImpl.cpp',
402                 'src/WebIDBDatabaseImpl.h',
403                 'src/WebIDBIndexImpl.cpp',
404                 'src/WebIDBIndexImpl.h',
405                 'src/WebIDBKey.cpp',
406                 'src/WebIDBObjectStoreImpl.cpp',
407                 'src/WebIDBObjectStoreImpl.h',
408                 'src/WebImageCG.cpp',
409                 'src/WebImageDecoder.cpp',
410                 'src/WebImageSkia.cpp',
411                 'src/WebIndexedDatabaseImpl.cpp',
412                 'src/WebIndexedDatabaseImpl.h',
413                 'src/WebInputElement.cpp',
414                 'src/WebInputEvent.cpp',
415                 'src/WebInputEventConversion.cpp',
416                 'src/WebInputEventConversion.h',
417                 'src/WebKit.cpp',
418                 'src/WebLabelElement.cpp',
419                 'src/WebMediaElement.cpp',
420                 'src/WebMediaPlayerClientImpl.cpp',
421                 'src/WebMediaPlayerClientImpl.h',
422                 'src/WebMutationEvent.cpp',
423                 'src/WebNode.cpp',
424                 'src/WebNodeCollection.cpp',
425                 'src/WebNodeList.cpp',
426                 'src/WebNotification.cpp',
427                 'src/WebOptionElement.cpp',
428                 'src/WebPageSerializer.cpp',
429                 'src/WebPageSerializerImpl.cpp',
430                 'src/WebPageSerializerImpl.h',
431                 'src/WebPasswordFormData.cpp',
432                 'src/WebPasswordFormUtils.cpp',
433                 'src/WebPasswordFormUtils.h',
434                 'src/WebPluginContainerImpl.h',
435                 'src/WebPluginContainerImpl.cpp',
436                 'src/WebPluginDocument.cpp',
437                 'src/WebPluginListBuilderImpl.cpp',
438                 'src/WebPluginListBuilderImpl.h',
439                 'src/WebPluginLoadObserver.cpp',
440                 'src/WebPluginLoadObserver.h',
441                 'src/WebPopupMenuImpl.cpp',
442                 'src/WebPopupMenuImpl.h',
443                 'src/WebRange.cpp',
444                 'src/WebRegularExpression.cpp',
445                 'src/WebRuntimeFeatures.cpp',
446                 'src/WebScriptController.cpp',
447                 'src/WebScrollbarImpl.cpp',
448                 'src/WebScrollbarImpl.h',
449                 'src/WebSearchableFormData.cpp',
450                 'src/WebSecurityOrigin.cpp',
451                 'src/WebSecurityPolicy.cpp',
452                 'src/WebSelectElement.cpp',
453                 'src/WebSerializedScriptValue.cpp',
454                 'src/WebSettingsImpl.cpp',
455                 'src/WebSettingsImpl.h',
456                 'src/WebSharedWorkerImpl.cpp',
457                 'src/WebSharedWorkerImpl.h',
458                 'src/WebStorageAreaImpl.cpp',
459                 'src/WebStorageAreaImpl.h',
460                 'src/WebStorageEventDispatcherImpl.cpp',
461                 'src/WebStorageEventDispatcherImpl.h',
462                 'src/WebStorageNamespaceImpl.cpp',
463                 'src/WebStorageNamespaceImpl.h',
464                 'src/WebString.cpp',
465                 'src/WebURL.cpp',
466                 'src/WebURLLoadTiming.cpp',
467                 'src/WebURLRequest.cpp',
468                 'src/WebURLRequestPrivate.h',
469                 'src/WebURLResponse.cpp',
470                 'src/WebURLResponsePrivate.h',
471                 'src/WebURLError.cpp',
472                 'src/WebViewImpl.cpp',
473                 'src/WebViewImpl.h',
474                 'src/WebWorkerBase.cpp',
475                 'src/WebWorkerBase.h',
476                 'src/WebWorkerClientImpl.cpp',
477                 'src/WebWorkerClientImpl.h',
478                 'src/WebWorkerImpl.cpp',
479                 'src/WebWorkerImpl.h',
480                 'src/WrappedResourceRequest.h',
481                 'src/WrappedResourceResponse.h',
482                 'src/win/WebInputEventFactory.cpp',
483                 'src/win/WebScreenInfoFactory.cpp',
484             ],
485             'conditions': [
486                 ['inside_chromium_build==1 and OS=="win"', {
487                     'type': '<(component)',
488
489                     'conditions': [
490                         ['component=="shared_library"', {
491                             'defines': [
492                                 'WEBKIT_DLL',
493                             ],
494                             'dependencies': [
495                                 '../../WebCore/WebCore.gyp/WebCore.gyp:webcore_bindings',
496                                 '<(chromium_src_dir)/build/temp_gyp/googleurl.gyp:googleurl',
497                                 '<(chromium_src_dir)/gpu/gpu.gyp:gles2_c_lib',
498                                 '<(chromium_src_dir)/third_party/icu/icu.gyp:*',
499                                 '<(chromium_src_dir)/third_party/libjpeg/libjpeg.gyp:libjpeg',
500                                 '<(chromium_src_dir)/third_party/libpng/libpng.gyp:libpng',
501                                 '<(chromium_src_dir)/third_party/libxml/libxml.gyp:libxml',
502                                 '<(chromium_src_dir)/third_party/libxslt/libxslt.gyp:libxslt',
503                                 '<(chromium_src_dir)/third_party/modp_b64/modp_b64.gyp:modp_b64',
504                                 '<(chromium_src_dir)/third_party/nss/nss.gyp:*',
505                                 '<(chromium_src_dir)/third_party/ots/ots.gyp:ots',
506                                 '<(chromium_src_dir)/third_party/zlib/zlib.gyp:zlib',
507                                 '<(chromium_src_dir)/v8/tools/gyp/v8.gyp:v8',
508                             ],
509                             'direct_dependent_settings': {
510                                 'defines': [
511                                     'WEBKIT_DLL',
512                                 ],
513                             },
514                             'export_dependent_settings': [
515                                 '<(chromium_src_dir)/build/temp_gyp/googleurl.gyp:googleurl',
516                                 '<(chromium_src_dir)/v8/tools/gyp/v8.gyp:v8',
517                             ],
518                         }],
519                     ],
520                 }, {
521                     'type': '<(webkit_target_type)'
522                 }],
523                 ['OS=="linux" or OS=="freebsd"', {
524                     'dependencies': [
525                         '<(chromium_src_dir)/build/linux/system.gyp:fontconfig',
526                         '<(chromium_src_dir)/build/linux/system.gyp:gtk',
527                         '<(chromium_src_dir)/build/linux/system.gyp:x11',
528                     ],
529                     'include_dirs': [
530                         'public/x11',
531                         'public/gtk',
532                         'public/linux',
533                     ],
534                 }, { # else: OS!="linux" and OS!="freebsd"
535                     'sources/': [
536                         ['exclude', '/gtk/'],
537                         ['exclude', '/x11/'],
538                         ['exclude', '/linux/'],
539                     ],
540                 }],
541                 ['OS=="mac"', {
542                     'include_dirs': [
543                         'public/mac',
544                     ],
545                     'sources/': [
546                         ['exclude', 'Skia\\.cpp$'],
547                     ],
548                     'variables': {
549                         # FIXME: Turn on warnings on other platforms and for
550                         # other targets.
551                         'chromium_code': 1,
552                     }
553                 }, { # else: OS!="mac"
554                     'sources/': [
555                         ['exclude', '/mac/'],
556                         ['exclude', 'CG\\.cpp$'],
557                     ],
558                 }],
559                 ['OS=="win"', {
560                     'include_dirs': [
561                         'public/win',
562                     ],
563                 }, { # else: OS!="win"
564                     'sources/': [['exclude', '/win/']],
565                 }],
566                 ['"ENABLE_3D_CANVAS=1" in feature_defines', {
567                     # Conditionally compile in GLEW and our GraphicsContext3D implementation.
568                     'sources+': [
569                         'src/GraphicsContext3D.cpp',
570                         '<(chromium_src_dir)/third_party/glew/src/glew.c'
571                     ],
572                     'include_dirs+': [
573                         '<(chromium_src_dir)/third_party/glew/include'
574                     ],
575                     'defines+': [
576                         'GLEW_STATIC=1',
577                         'GLEW_NO_GLU=1',
578                     ],
579                     'conditions': [
580                         ['OS=="mac"', {
581                             'link_settings': {
582                                 'libraries': [
583                                     '$(SDKROOT)/System/Library/Frameworks/OpenGL.framework',
584                                 ],
585                             },
586                         }],
587                     ],
588                 }],
589             ],
590         },
591
592         {
593             'target_name': 'inspector_resources',
594             'type': 'none',
595             'dependencies': ['devtools_html'],
596             'conditions': [
597                 ['debug_devtools==0', {
598                     'dependencies': ['concatenated_devtools_js'],
599                 }],
600             ],
601             'copies': [
602                 {
603                     'destination': '<(PRODUCT_DIR)/resources/inspector',
604                     'files': [
605                         '<@(devtools_files)',
606                         '<@(webinspector_files)',
607                     ],
608                     'conditions': [
609                         ['debug_devtools==0', {
610                             'files/': [['exclude', '\\.js$']],
611                         }],
612                     ],
613                 },
614                 {
615                     'destination': '<(PRODUCT_DIR)/resources/inspector/Images',
616                     'files': [
617                         '<@(webinspector_image_files)',
618                         '<@(devtools_image_files)',
619                     ],
620                },
621             ],
622         },
623         {
624             'target_name': 'devtools_html',
625             'type': 'none',
626             'sources': ['<(PRODUCT_DIR)/resources/inspector/devtools.html'],
627             'actions': [{
628                 'action_name': 'devtools_html',
629                 'inputs': [
630                     '<(chromium_src_dir)/webkit/build/generate_devtools_html.py',
631                     # See issue 29695: WebKit.gypi is a source file for devtools.html.
632                     'WebKit.gypi',
633                     '../../WebCore/inspector/front-end/inspector.html',
634                 ],
635                 'outputs': ['<(PRODUCT_DIR)/resources/inspector/devtools.html'],
636                 'action': ['python', '<@(_inputs)', '<@(_outputs)', '<@(devtools_files)'],
637             }],
638         },
639         {
640             'target_name': 'concatenated_devtools_js',
641             'type': 'none',
642             'dependencies': ['devtools_html'],
643             'sources': ['<(PRODUCT_DIR)/resources/inspector/DevTools.js'],
644             'actions': [{
645                 'action_name': 'concatenate_devtools_js',
646                 'script_name': '<(chromium_src_dir)/webkit/build/concatenate_js_files.py',
647                 'input_page': '<(PRODUCT_DIR)/resources/inspector/devtools.html',
648                 'inputs': [
649                     '<@(_script_name)',
650                     '<@(_input_page)',
651                     '<@(webinspector_files)',
652                     '<@(devtools_files)',
653                 ],
654                 'search_path': [
655                     '../../WebCore/inspector/front-end',
656                     'src/js',
657                     '<(chromium_src_dir)/v8/tools',
658                 ],
659                 'outputs': ['<(PRODUCT_DIR)/resources/inspector/DevTools.js'],
660                 'action': ['python', '<@(_script_name)', '<@(_input_page)', '<@(_search_path)', '<@(_outputs)'],
661             }],
662         },
663
664         {
665             'target_name': 'webkit_unit_tests',
666             'conditions': [
667                 # FIXME: make webkit unit tests working for multi dll build.
668                 ['inside_chromium_build==1 and OS=="win" and component=="shared_library"', {
669                     'type': 'none',
670                 }, {
671                     'type': 'executable',
672                     'msvs_guid': '7CEFE800-8403-418A-AD6A-2D52C6FC3EAD',
673                     'dependencies': [
674                         'webkit',
675                         '../../WebCore/WebCore.gyp/WebCore.gyp:webcore',
676                         '<(chromium_src_dir)/testing/gtest.gyp:gtest',
677                         '<(chromium_src_dir)/base/base.gyp:base',
678                         '<(chromium_src_dir)/base/base.gyp:base_i18n',
679                         '<(chromium_src_dir)/gpu/gpu.gyp:gles2_c_lib',
680                     ],
681                     'include_dirs': [
682                         'public',
683                         'src',
684                     ],
685                     'sources': [
686                         'tests/DragImageTest.cpp',
687                         'tests/KeyboardTest.cpp',
688                         'tests/KURLTest.cpp',
689                         'tests/RunAllTests.cpp',
690                     ],
691                     'conditions': [
692                         ['OS=="win"', {
693                             'sources': [
694                                 # FIXME: Port PopupMenuTest to Linux and Mac.
695                                 'tests/PopupMenuTest.cpp',
696                                 'tests/TransparencyWinTest.cpp',
697                                 'tests/UniscribeHelperTest.cpp',
698                             ],
699                         }],
700                         ['OS=="mac"', {
701                             'sources!': [
702                                 # FIXME: Port DragImageTest to Mac.
703                                 'tests/DragImageTest.cpp',
704                             ],
705                         }],
706                     ],
707                 }],
708             ],
709         },
710         {
711             'target_name': 'ImageDiff',
712             'type': 'executable',
713             'dependencies': [
714                 'webkit',
715                 '../../JavaScriptCore/JavaScriptCore.gyp/JavaScriptCore.gyp:wtf',
716                 '<(chromium_src_dir)/gfx/gfx.gyp:gfx',
717             ],
718             'include_dirs': [
719                 '../../JavaScriptCore',
720                 '<(DEPTH)',
721             ],
722             'sources': [
723                 '../../WebKitTools/DumpRenderTree/chromium/ImageDiff.cpp',
724             ],
725         },
726         {
727             'target_name': 'DumpRenderTree',
728             'type': 'executable',
729             'mac_bundle': 1,
730             'dependencies': [
731                 'ImageDiff',
732                 'inspector_resources',
733                 'webkit',
734                 '../../JavaScriptCore/JavaScriptCore.gyp/JavaScriptCore.gyp:wtf_config',
735                 '<(chromium_src_dir)/third_party/icu/icu.gyp:icuuc',
736                 '<(chromium_src_dir)/webkit/support/webkit_support.gyp:copy_npapi_layout_test_plugin',
737                 '<(chromium_src_dir)/webkit/support/webkit_support.gyp:webkit_support',
738                 '<(chromium_src_dir)/gpu/gpu.gyp:gles2_c_lib'
739             ],
740             'include_dirs': [
741                 '.',
742                 '../../JavaScriptCore',
743                 '../../JavaScriptCore/wtf', # wtf/text/*.h refers headers in wtf/ without wtf/.
744                 '<(DEPTH)',
745             ],
746             'defines': [
747                 # Technically not a unit test but require functions available only to
748                 # unit tests.
749                 'UNIT_TEST',
750             ],
751             'sources': [
752                 '<@(drt_files)',
753             ],
754             'conditions': [
755                 ['OS=="win"', {
756                     'dependencies': ['LayoutTestHelper'],
757
758                     'resource_include_dirs': ['<(SHARED_INTERMEDIATE_DIR)/webkit'],
759                     'sources': [
760                         '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.rc',
761                         '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_chromium_resources.rc',
762                         '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_resources.rc',
763                         '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_strings_en-US.rc',
764                     ],
765                     'conditions': [
766                         ['inside_chromium_build==1 and component=="shared_library"', {
767                             'sources': [
768                                 'src/ChromiumCurrentTime.cpp',
769                                 'src/ChromiumThreading.cpp',
770                             ],
771                             'include_dirs': [
772                                 'public',
773                             ],
774                             'dependencies': [
775                                 '../../JavaScriptCore/JavaScriptCore.gyp/JavaScriptCore.gyp:wtf',
776                             ],
777                         }],
778                     ],
779                     'copies': [{
780                         'destination': '<(PRODUCT_DIR)',
781                         'files': ['<(ahem_path)'],
782                     }],
783                 },{ # OS!="win"
784                     'sources/': [
785                         ['exclude', 'Win\\.cpp$'],
786                     ],
787                     'actions': [
788                         {
789                             'action_name': 'repack_locale',
790                             'variables': {
791                                 'repack_path': '<(chromium_src_dir)/tools/data_pack/repack.py',
792                                 'pak_inputs': [
793                                     '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.pak',
794                                     '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_chromium_resources.pak',
795                                     '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_strings_en-US.pak',
796                                     '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_resources.pak',
797                             ]},
798                             'inputs': [
799                                 '<(repack_path)',
800                                 '<@(pak_inputs)',
801                             ],
802                             'outputs': [
803                                 '<(INTERMEDIATE_DIR)/repack/DumpRenderTree.pak',
804                             ],
805                             'action': ['python', '<(repack_path)', '<@(_outputs)', '<@(pak_inputs)'],
806                             'process_outputs_as_mac_bundle_resources': 1,
807                         },
808                     ], # actions
809                 }],
810                 ['OS=="mac"', {
811                     'dependencies': ['LayoutTestHelper'],
812
813                     'mac_bundle_resources': [
814                         '<(ahem_path)',
815                         '../../WebKitTools/DumpRenderTree/fonts/WebKitWeightWatcher100.ttf',
816                         '../../WebKitTools/DumpRenderTree/fonts/WebKitWeightWatcher200.ttf',
817                         '../../WebKitTools/DumpRenderTree/fonts/WebKitWeightWatcher300.ttf',
818                         '../../WebKitTools/DumpRenderTree/fonts/WebKitWeightWatcher400.ttf',
819                         '../../WebKitTools/DumpRenderTree/fonts/WebKitWeightWatcher500.ttf',
820                         '../../WebKitTools/DumpRenderTree/fonts/WebKitWeightWatcher600.ttf',
821                         '../../WebKitTools/DumpRenderTree/fonts/WebKitWeightWatcher700.ttf',
822                         '../../WebKitTools/DumpRenderTree/fonts/WebKitWeightWatcher800.ttf',
823                         '../../WebKitTools/DumpRenderTree/fonts/WebKitWeightWatcher900.ttf',
824                         '<(SHARED_INTERMEDIATE_DIR)/webkit/textAreaResizeCorner.png',
825                     ],
826                 },{ # OS!="mac"
827                     'sources/': [
828                         # .mm is already excluded by common.gypi
829                         ['exclude', 'Mac\\.cpp$'],
830                     ]
831                 }],
832                 ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris"', {
833                     'copies': [{
834                         'destination': '<(PRODUCT_DIR)',
835                         'files': [
836                             '<(ahem_path)',
837                             '../../WebKitTools/DumpRenderTree/chromium/fonts.conf',
838                             '<(INTERMEDIATE_DIR)/repack/DumpRenderTree.pak',
839                         ]
840                     }],
841                 },{ # OS!="linux" and OS!="freebsd" and OS!="openbsd" and OS!="solaris"
842                     'sources/': [
843                         ['exclude', '(Gtk|Linux)\\.cpp$']
844                     ]
845                 }],
846             ],
847         },
848     ], # targets
849     'conditions': [
850         ['OS=="win"', {
851             'targets': [{
852                 'target_name': 'LayoutTestHelper',
853                 'type': 'executable',
854                 'sources': ['../../WebKitTools/DumpRenderTree/chromium/LayoutTestHelperWin.cpp'],
855             }],
856         }],
857         ['OS=="mac"', {
858             'targets': [
859                 {
860                     'target_name': 'LayoutTestHelper',
861                     'type': 'executable',
862                     'sources': ['../../WebKitTools/DumpRenderTree/chromium/LayoutTestHelper.mm'],
863                     'link_settings': {
864                         'libraries': [
865                             '$(SDKROOT)/System/Library/Frameworks/AppKit.framework',
866                         ],
867                     },
868                 },
869             ],
870         }],
871     ], # conditions
872 }
873
874 # Local Variables:
875 # tab-width:2
876 # indent-tabs-mode:nil
877 # End:
878 # vim: set expandtab tabstop=2 shiftwidth=2: