summaryrefslogtreecommitdiff
path: root/Source/web/web.gyp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/web/web.gyp')
-rw-r--r--Source/web/web.gyp320
1 files changed, 320 insertions, 0 deletions
diff --git a/Source/web/web.gyp b/Source/web/web.gyp
new file mode 100644
index 000000000..de6124ae5
--- /dev/null
+++ b/Source/web/web.gyp
@@ -0,0 +1,320 @@
+#
+# Copyright (C) 2011 Google Inc. All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+
+{
+ 'includes': [
+ '../build/win/precompile.gypi',
+ '../bindings/bindings.gypi',
+ '../core/core.gypi',
+ '../core/features.gypi',
+ '../modules/modules.gypi',
+ '../wtf/wtf.gypi',
+ 'web.gypi',
+ ],
+ 'targets': [
+ {
+ 'target_name': 'webkit',
+ 'type': '<(component)',
+ 'variables': { 'enable_wexit_time_destructors': 1, },
+ 'dependencies': [
+ '../core/core.gyp:webcore',
+ '../modules/modules.gyp:modules',
+ '<(DEPTH)/skia/skia.gyp:skia',
+ '<(DEPTH)/third_party/angle_dx11/src/build_angle.gyp:translator_glsl',
+ '<(DEPTH)/third_party/icu/icu.gyp:icuuc',
+ '<(DEPTH)/third_party/npapi/npapi.gyp:npapi',
+ '<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
+ 'blink_common',
+ ],
+ 'export_dependent_settings': [
+ '<(DEPTH)/skia/skia.gyp:skia',
+ '<(DEPTH)/third_party/icu/icu.gyp:icuuc',
+ '<(DEPTH)/third_party/npapi/npapi.gyp:npapi',
+ '<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
+ ],
+ 'include_dirs': [
+ '../../public/web',
+ '../web',
+ '<(DEPTH)/third_party/angle_dx11/include',
+ '<(DEPTH)/third_party/skia/include/utils',
+ ],
+ 'defines': [
+ 'WEBKIT_IMPLEMENTATION=1',
+ 'INSIDE_WEBKIT',
+ ],
+ 'sources': [
+ '<@(webcore_platform_support_files)',
+ '<@(web_files)',
+ ],
+ 'conditions': [
+ ['component=="shared_library"', {
+ 'dependencies': [
+ '../core/core.gyp:webcore_derived',
+ '../core/core.gyp:webcore_test_support',
+ '<(DEPTH)/base/base.gyp:test_support_base',
+ '<(DEPTH)/testing/gmock.gyp:gmock',
+ '<(DEPTH)/testing/gtest.gyp:gtest',
+ '<(DEPTH)/third_party/icu/icu.gyp:*',
+ '<(libjpeg_gyp_path):libjpeg',
+ '<(DEPTH)/third_party/libpng/libpng.gyp:libpng',
+ '<(DEPTH)/third_party/libwebp/libwebp.gyp:libwebp',
+ '<(DEPTH)/third_party/libxml/libxml.gyp:libxml',
+ '<(DEPTH)/third_party/libxslt/libxslt.gyp:libxslt',
+ '<(DEPTH)/third_party/modp_b64/modp_b64.gyp:modp_b64',
+ '<(DEPTH)/third_party/ots/ots.gyp:ots',
+ '<(DEPTH)/third_party/zlib/zlib.gyp:zlib',
+ '<(DEPTH)/url/url.gyp:url_lib',
+ '<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
+ # We must not add webkit_support here because of cyclic dependency.
+ ],
+ 'export_dependent_settings': [
+ '<(DEPTH)/url/url.gyp:url_lib',
+ '<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
+ ],
+ 'include_dirs': [
+ # WARNING: Do not view this particular case as a precedent for
+ # including WebCore headers in DumpRenderTree project.
+ '../core/testing/v8', # for WebCoreTestSupport.h, needed to link in window.internals code.
+ ],
+ 'sources': [
+ '<@(bindings_unittest_files)',
+ '<@(core_unittest_files)',
+ '<@(modules_unittest_files)',
+ '<@(web_unittest_files)',
+ 'WebTestingSupport.cpp',
+ 'tests/WebUnitTests.cpp', # Components test runner support.
+ ],
+ 'conditions': [
+ ['OS=="win" or OS=="mac"', {
+ 'dependencies': [
+ '<(DEPTH)/third_party/nss/nss.gyp:*',
+ ],
+ }],
+ ['clang==1', {
+ # FIXME: It would be nice to enable this in shared builds too,
+ # but the test files have global constructors from the GTEST macro
+ # and we pull in the test files into the webkit target in the
+ # shared build.
+ 'cflags!': ['-Wglobal-constructors'],
+ 'xcode_settings': {
+ 'WARNING_CFLAGS!': ['-Wglobal-constructors'],
+ },
+ }],
+ ],
+ 'msvs_settings': {
+ 'VCLinkerTool': {
+ 'conditions': [
+ ['incremental_chrome_dll==1', {
+ 'UseLibraryDependencyInputs': "true",
+ }],
+ ],
+ },
+ },
+ }],
+ ['OS == "linux"', {
+ 'dependencies': [
+ '<(DEPTH)/build/linux/system.gyp:fontconfig',
+ ],
+ 'include_dirs': [
+ '../../public/web/linux',
+ ],
+ }, {
+ 'sources/': [
+ ['exclude', 'linux/'],
+ ],
+ }],
+ ['use_x11 == 1', {
+ 'dependencies': [
+ '<(DEPTH)/build/linux/system.gyp:x11',
+ ],
+ 'include_dirs': [
+ '../../public/web/x11',
+ ],
+ }, {
+ 'sources/': [
+ ['exclude', 'x11/'],
+ ]
+ }],
+ ['toolkit_uses_gtk == 1', {
+ 'dependencies': [
+ '<(DEPTH)/build/linux/system.gyp:gtk',
+ ],
+ 'include_dirs': [
+ '../../public/web/gtk',
+ ],
+ }, { # else: toolkit_uses_gtk != 1
+ 'sources/': [
+ ['exclude', 'gtk/'],
+ ],
+ }],
+ ['OS=="android"', {
+ 'include_dirs': [
+ '../../public/web/android',
+ '../../public/web/linux', # We need linux/WebFontRendering.h on Android.
+ ],
+ }, { # else: OS!="android"
+ 'sources/': [
+ ['exclude', 'android/'],
+ ],
+ }],
+ ['OS=="mac"', {
+ 'include_dirs': [
+ '../../public/web/mac',
+ ],
+ 'link_settings': {
+ 'libraries': [
+ '$(SDKROOT)/System/Library/Frameworks/Accelerate.framework',
+ '$(SDKROOT)/System/Library/Frameworks/OpenGL.framework',
+ ],
+ },
+ }, { # else: OS!="mac"
+ 'sources/': [
+ ['exclude', 'mac/'],
+ ],
+ }],
+ ['OS=="win"', {
+ 'include_dirs': [
+ '../../public/web/win',
+ ],
+ }, { # else: OS!="win"
+ 'sources/': [
+ ['exclude', 'win/']
+ ],
+ 'variables': {
+ # FIXME: Turn on warnings on Windows.
+ 'chromium_code': 1,
+ }
+ }],
+ ['use_default_render_theme==1', {
+ 'include_dirs': [
+ '../../public/web/default',
+ ],
+ }, { # else use_default_render_theme==0
+ 'sources/': [
+ ['exclude', 'default/WebRenderTheme.cpp'],
+ ],
+ }],
+ ],
+ 'direct_dependent_settings': {
+ 'include_dirs': [
+ '../../',
+ ],
+ },
+ 'target_conditions': [
+ ['OS=="android"', {
+ 'sources/': [
+ ['include', '^linux/WebFontRendering\\.cpp$'],
+ ['include', '^linux/WebFontRenderStyle\\.cpp$'],
+ ],
+ }],
+ ],
+ },
+ {
+ 'target_name': 'webkit_test_support',
+ 'conditions': [
+ ['component=="shared_library"', {
+ 'type': 'none',
+ }, {
+ 'type': 'static_library',
+ 'dependencies': [
+ '../core/core.gyp:webcore_test_support',
+ '../wtf/wtf.gyp:wtf',
+ '<(DEPTH)/skia/skia.gyp:skia',
+ ],
+ 'include_dirs': [
+ '../../public/web',
+ '../core/testing/v8', # for WebCoreTestSupport.h, needed to link in window.internals code.
+ '../../',
+ ],
+ 'sources': [
+ 'WebTestingSupport.cpp',
+ ],
+ }],
+ ],
+ },
+ {
+ 'target_name': 'blink_common',
+ 'type': '<(component)',
+ 'variables': { 'enable_wexit_time_destructors': 1 },
+ 'dependencies': [
+ '../wtf/wtf.gyp:wtf',
+ '<(DEPTH)/skia/skia.gyp:skia',
+ '<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
+ ],
+ 'export_dependent_settings': [
+ '<(DEPTH)/skia/skia.gyp:skia',
+ '<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
+ ],
+ 'defines': [
+ 'INSIDE_WEBKIT',
+ 'BLINK_COMMON_IMPLEMENTATION=1',
+ ],
+ 'include_dirs': [
+ '..',
+ '../..',
+ ],
+ 'sources': [
+ '../core/platform/chromium/support/WebCString.cpp',
+ '../core/platform/chromium/support/WebString.cpp',
+ 'WebCommon.cpp',
+ ],
+ },
+ ], # targets
+ 'conditions': [
+ ['gcc_version>=46', {
+ 'target_defaults': {
+ # Disable warnings about c++0x compatibility, as some names (such
+ # as nullptr) conflict with upcoming c++0x types.
+ 'cflags_cc': ['-Wno-c++0x-compat'],
+ },
+ }],
+ ['OS=="mac"', {
+ 'targets': [
+ {
+ 'target_name': 'copy_mesa',
+ 'type': 'none',
+ 'dependencies': ['<(DEPTH)/third_party/mesa/mesa.gyp:osmesa'],
+ 'copies': [{
+ 'destination': '<(PRODUCT_DIR)/DumpRenderTree.app/Contents/MacOS/',
+ 'files': ['<(PRODUCT_DIR)/osmesa.so'],
+ }],
+ },
+ ],
+ }],
+ ['clang==1', {
+ 'target_defaults': {
+ 'cflags': ['-Wglobal-constructors'],
+ 'xcode_settings': {
+ 'WARNING_CFLAGS': ['-Wglobal-constructors'],
+ },
+ },
+ }],
+ ], # conditions
+}