diff options
author | Steve Block <steveblock@google.com> | 2009-10-08 17:19:54 +0100 |
---|---|---|
committer | Steve Block <steveblock@google.com> | 2009-10-20 00:41:58 +0100 |
commit | 231d4e3152a9c27a73b6ac7badbe6be673aa3ddf (patch) | |
tree | a6c7e2d6cd7bfa7011cc39abbb436142d7a4a7c8 /WebKit/chromium | |
parent | e196732677050bd463301566a68a643b6d14b907 (diff) | |
download | external_webkit-231d4e3152a9c27a73b6ac7badbe6be673aa3ddf.zip external_webkit-231d4e3152a9c27a73b6ac7badbe6be673aa3ddf.tar.gz external_webkit-231d4e3152a9c27a73b6ac7badbe6be673aa3ddf.tar.bz2 |
Merge webkit.org at R49305 : Automatic merge by git.
Change-Id: I8968561bc1bfd72b8923b7118d3728579c6dbcc7
Diffstat (limited to 'WebKit/chromium')
-rw-r--r-- | WebKit/chromium/DEPS | 179 | ||||
-rw-r--r-- | WebKit/chromium/features.gypi | 70 | ||||
-rw-r--r-- | WebKit/chromium/gyp_webkit | 96 | ||||
-rw-r--r-- | WebKit/chromium/webkit.gyp | 42 |
4 files changed, 387 insertions, 0 deletions
diff --git a/WebKit/chromium/DEPS b/WebKit/chromium/DEPS new file mode 100644 index 0000000..514a640 --- /dev/null +++ b/WebKit/chromium/DEPS @@ -0,0 +1,179 @@ +# +# Copyright (C) 2009 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. +# + +# This file is used by gclient to fetch the projects that the webkit +# chromium port depends on. + +vars = { + 'chromium_svn': 'http://src.chromium.org/svn/trunk/src', + 'chromium_deps_svn': 'http://src.chromium.org/svn/trunk/deps/third_party', + + # Dependencies' revisions to use: + 'chromium_rev': '27692', + 'google-url_rev': '119', + 'gyp_rev': '671', + 'icu_rev': '27687', + 'openvcdiff_rev': '26', + 'skia_rev': '341', + 'v8_rev': '2966', + + # Windows: + 'cygwin_rev': '11984', + 'ffmpeg_ia32_rev': '26428', + 'pthreads-win32_rev': '26716', + 'python_24_rev': '22967', +} + +deps = { + # build tools + 'build': + Var('chromium_svn')+'/build@'+Var('chromium_rev'), + 'webkit/build': + Var('chromium_svn')+'/webkit/build@'+Var('chromium_rev'), + 'tools/gyp': + 'http://gyp.googlecode.com/svn/trunk@'+Var('gyp_rev'), + + # Basic tools + 'base': + Var('chromium_svn')+'/base@'+Var('chromium_rev'), + + # skia dependencies + 'skia': + Var('chromium_svn')+'/skia@'+Var('chromium_rev'), + 'third_party/skia': + 'http://skia.googlecode.com/svn/trunk@'+Var('skia_rev'), + + # testing + 'testing': + Var('chromium_svn')+'/testing@'+Var('chromium_rev'), + + # v8 javascript engine + 'v8': + 'http://v8.googlecode.com/svn/trunk@'+Var('v8_rev'), + + # net dependencies + 'net': + Var('chromium_svn')+'/net@'+Var('chromium_rev'), + 'sdch': + Var('chromium_svn')+'/sdch@'+Var('chromium_rev'), + 'sdch/open-vcdiff': + 'http://open-vcdiff.googlecode.com/svn/trunk@'+Var('openvcdiff_rev'), + 'googleurl': + 'http://google-url.googlecode.com/svn/trunk@'+Var('google-url_rev'), + + # other third party + 'third_party/icu': + Var('chromium_deps_svn')+'/icu42@'+Var('icu_rev'), + + 'third_party/bzip2': + Var('chromium_svn')+'/third_party/bzip2@'+Var('chromium_rev'), + + 'third_party/libevent': + Var('chromium_svn')+'/third_party/libevent@'+Var('chromium_rev'), + + 'third_party/libjpeg': + Var('chromium_svn')+'/third_party/libjpeg@'+Var('chromium_rev'), + + 'third_party/libpng': + Var('chromium_svn')+'/third_party/libpng@'+Var('chromium_rev'), + + 'third_party/libxml': + Var('chromium_svn')+'/third_party/libxml@'+Var('chromium_rev'), + + 'third_party/libxslt': + Var('chromium_svn')+'/third_party/libxslt@'+Var('chromium_rev'), + + 'third_party/modp_b64': + Var('chromium_svn')+'/third_party/modp_b64@'+Var('chromium_rev'), + + 'third_party/npapi': + Var('chromium_svn')+'/third_party/npapi@'+Var('chromium_rev'), + + 'third_party/sqlite': + Var('chromium_svn')+'/third_party/sqlite@'+Var('chromium_rev'), + + 'third_party/zlib': + Var('chromium_svn')+'/third_party/zlib@'+Var('chromium_rev'), +} + +deps_os = { + 'win': { + 'third_party/cygwin': + Var('chromium_deps_svn')+'/cygwin@'+Var('cygwin_rev'), + + 'third_party/python_24': + Var('chromium_deps_svn')+'/python_24@'+Var('python_24_rev'), + + 'third_party/ffmpeg/binaries/chromium/win/ia32': + Var('chromium_deps_svn')+'/ffmpeg/binaries/win@'+Var('ffmpeg_ia32_rev'), + + 'third_party/pthreads-win32': + Var('chromium_deps_svn')+'/pthreads-win32@'+Var('pthreads-win32_rev'), + }, +} + +skip_child_includes = [ + # Don't look for dependencies in the following folders: + 'base', + 'build', + 'googleurl', + 'net', + 'sdch', + 'skia', + 'testing', + 'third_party', + 'tools', + 'v8', + 'webkit', +] + +include_rules = [ + # Everybody can use some things. + '+base', + '+build', + '+ipc', + + # For now, we allow ICU to be included by specifying 'unicode/...', although + # this should probably change. + '+unicode', + '+testing', + + # Allow anybody to include files from the 'public' Skia directory in the + # webkit port. This is shared between the webkit port and Chromium. + '+webkit/port/platform/graphics/skia/public', +] + + +hooks = [ + { + # A change to any file in this directory should run the gyp generator. + 'pattern': '.', + 'action': ['python', 'gyp_webkit'], + }, +] diff --git a/WebKit/chromium/features.gypi b/WebKit/chromium/features.gypi new file mode 100644 index 0000000..f91598c --- /dev/null +++ b/WebKit/chromium/features.gypi @@ -0,0 +1,70 @@ +# +# Copyright (C) 2009 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. +# + +{ + # The following defines turn webkit features on and off. + 'variables': { + 'variables': { + # We have to nest variables inside variables as a hack for variables + # override. + + # WARNING: build/features_override.gypi which is included in a full + # chromium build, overrides this list with its own values. See + # features_override.gypi inline documentation for more details. + 'feature_defines%': [ + 'ENABLE_3D_CANVAS=0', + 'ENABLE_CHANNEL_MESSAGING=1', + 'ENABLE_DATABASE=1', + 'ENABLE_DATAGRID=0', + 'ENABLE_OFFLINE_WEB_APPLICATIONS=1', + 'ENABLE_DASHBOARD_SUPPORT=0', + 'ENABLE_DOM_STORAGE=1', + 'ENABLE_JAVASCRIPT_DEBUGGER=0', + 'ENABLE_JSC_MULTIPLE_THREADS=0', + 'ENABLE_ICONDATABASE=0', + 'ENABLE_NOTIFICATIONS=0', + 'ENABLE_ORIENTATION_EVENTS=0', + 'ENABLE_XSLT=1', + 'ENABLE_XPATH=1', + 'ENABLE_SHARED_WORKERS=0', + 'ENABLE_SVG=1', + 'ENABLE_SVG_ANIMATION=1', + 'ENABLE_SVG_AS_IMAGE=1', + 'ENABLE_SVG_USE=1', + 'ENABLE_SVG_FOREIGN_OBJECT=1', + 'ENABLE_SVG_FONTS=1', + 'ENABLE_VIDEO=1', + 'ENABLE_WEB_SOCKETS=1', + 'ENABLE_WORKERS=1', + ], + }, + 'feature_defines%': '<(feature_defines)', + }, +} diff --git a/WebKit/chromium/gyp_webkit b/WebKit/chromium/gyp_webkit new file mode 100644 index 0000000..810af54 --- /dev/null +++ b/WebKit/chromium/gyp_webkit @@ -0,0 +1,96 @@ +# +# Copyright (C) 2009 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. +# + +# This file is used by gclient execute gyp with the proper command +# line arguments. + +import glob +import os +import shlex +import sys + +script_dir = os.path.dirname(__file__) + +sys.path.append(os.path.join(script_dir, 'tools', 'gyp', 'pylib')) +import gyp + +def additional_include_files(args=[]): + """ + Returns a list of additional (.gypi) files to include, without + duplicating ones that are already specified on the command line. + """ + # Determine the include files specified on the command line. + # This doesn't cover all the different option formats you can use, + # but it's mainly intended to avoid duplicating flags on the automatic + # makefile regeneration which only uses this format. + specified_includes = set() + for arg in args: + if arg.startswith('-I') and len(arg) > 2: + specified_includes.add(os.path.realpath(arg[2:])) + + result = [] + def AddInclude(path): + if os.path.realpath(path) not in specified_includes: + result.append(path) + + # Always include common.gypi + AddInclude(os.path.join(script_dir, 'build', 'common.gypi')) + + # Optionally add supplemental .gypi files if present. + supplements = glob.glob(os.path.join(script_dir, '*', 'supplement.gypi')) + for supplement in supplements: + AddInclude(supplement) + + return result + +if __name__ == '__main__': + + args = sys.argv[1:] + + # Add includes. + args.extend(['-I' + i for i in additional_include_files(args)]) + + # Other command args: + args.extend([ + # gyp variable defines. + '-Dinside_chromium_build=0', + '-Dv8_use_snapshot=false', + '-Dmsvs_use_common_release=0', + + # gyp hack: otherwise gyp assumes its in chromium's src/ dir. + '--depth=./', + + # gyp file to execute. + 'webkit.gyp']) + + print 'Updating webkit projects from gyp files...' + sys.stdout.flush() + + # Off we go... + sys.exit(gyp.main(args)) diff --git a/WebKit/chromium/webkit.gyp b/WebKit/chromium/webkit.gyp new file mode 100644 index 0000000..04d1bad --- /dev/null +++ b/WebKit/chromium/webkit.gyp @@ -0,0 +1,42 @@ +# +# Copyright (C) 2009 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. +# + +{ + 'targets': [ + { + # This target only builds webcore right now, but it will also build + # the chromium webkit api once the api is upstreamed. + 'target_name': 'webkit', + 'type': 'none', + 'dependencies': [ + '../../WebCore/WebCore.gyp/WebCore.gyp:webcore', + ], + }, + ], # targets +} |