summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorojan@google.com <ojan@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-02-03 19:52:02 +0000
committerojan@google.com <ojan@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-02-03 19:52:02 +0000
commit3334b7d18136ec0da16ea24e40373f2da75c0e4d (patch)
tree162e0eb2f607657aa1ce33360c6fa01eaadbfbe9
parent9007f5890d7fca32d8a5403581acd67ef975b806 (diff)
downloadchromium_src-3334b7d18136ec0da16ea24e40373f2da75c0e4d.zip
chromium_src-3334b7d18136ec0da16ea24e40373f2da75c0e4d.tar.gz
chromium_src-3334b7d18136ec0da16ea24e40373f2da75c0e4d.tar.bz2
Use Vars for the webkit repo and revision number. This way
we can override the via custom_vars in .gclient on the bots and official builds updates the merge script appropriately. Also updates checkdeps to be Var-aware. Review URL: http://codereview.chromium.org/19508 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9098 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--DEPS13
-rwxr-xr-xtools/checkdeps/checkdeps.py22
-rwxr-xr-xwebkit/tools/merge/merge.py14
3 files changed, 31 insertions, 18 deletions
diff --git a/DEPS b/DEPS
index 3a1b524..bdebf54 100644
--- a/DEPS
+++ b/DEPS
@@ -1,3 +1,10 @@
+vars = {
+ "webkit_trunk":
+ "http://svn.webkit.org/repository/webkit/trunk",
+ "webkit_revision": "40464",
+}
+
+
deps = {
"src/breakpad/src":
"http://google-breakpad.googlecode.com/svn/trunk/src@285",
@@ -21,13 +28,13 @@ deps = {
"http://v8.googlecode.com/svn/trunk@1201",
"src/webkit/data/layout_tests/LayoutTests":
- "http://svn.webkit.org/repository/webkit/trunk/LayoutTests@40464",
+ Var("webkit_trunk") + "/LayoutTests@" + Var("webkit_revision"),
"src/third_party/WebKit/WebKit":
- "http://svn.webkit.org/repository/webkit/trunk/WebKit@40464",
+ Var("webkit_trunk") + "/WebKit@" + Var("webkit_revision"),
"src/third_party/WebKit/WebKitLibraries":
- "http://svn.webkit.org/repository/webkit/trunk/WebKitLibraries@40464",
+ Var("webkit_trunk") + "/WebKitLibraries@" + Var("webkit_revision"),
}
diff --git a/tools/checkdeps/checkdeps.py b/tools/checkdeps/checkdeps.py
index 4c00515..5ef4de3 100755
--- a/tools/checkdeps/checkdeps.py
+++ b/tools/checkdeps/checkdeps.py
@@ -241,18 +241,30 @@ def ApplyDirectoryRules(existing_rules, dir_name):
print "Applying rules from", dir_name
def FromImpl(unused):
pass # NOP function so "From" doesn't fail.
- scope = {"From": FromImpl}
+
+ class _VarImpl:
+ def __init__(self, local_scope):
+ self._local_scope = local_scope
+
+ def Lookup(self, var_name):
+ """Implements the Var syntax."""
+ if var_name in self._local_scope.get("vars", {}):
+ return self._local_scope["vars"][var_name]
+ raise Error("Var is not defined: %s" % var_name)
+
+ local_scope = {}
+ global_scope = {"From": FromImpl, "Var": _VarImpl(local_scope).Lookup}
deps_file = os.path.join(dir_name, "DEPS")
if not os.path.exists(deps_file):
if VERBOSE:
print " No deps file found in", dir_name
return (existing_rules, []) # Nothing to change from the input rules.
- execfile(deps_file, scope)
+ execfile(deps_file, global_scope, local_scope)
- deps = scope.get(DEPS_VAR_NAME, {})
- include_rules = scope.get(INCLUDE_RULES_VAR_NAME, [])
- skip_subdirs = scope.get(SKIP_SUBDIRS_VAR_NAME, [])
+ deps = local_scope.get(DEPS_VAR_NAME, {})
+ include_rules = local_scope.get(INCLUDE_RULES_VAR_NAME, [])
+ skip_subdirs = local_scope.get(SKIP_SUBDIRS_VAR_NAME, [])
return (ApplyRules(existing_rules, deps, include_rules, dir_name),
skip_subdirs)
diff --git a/webkit/tools/merge/merge.py b/webkit/tools/merge/merge.py
index a395a42..e5067c1 100755
--- a/webkit/tools/merge/merge.py
+++ b/webkit/tools/merge/merge.py
@@ -22,12 +22,6 @@ import xml.dom.minidom
import google.path_utils
-DEPS_PATHS_TO_UPDATE = [
- "http://svn.webkit.org/repository/webkit/trunk/LayoutTests@",
- "http://svn.webkit.org/repository/webkit/trunk/WebKit@",
- "http://svn.webkit.org/repository/webkit/trunk/WebKitLibraries@",
-]
-
class Merger(object):
""" Does svn merges. """
@@ -116,9 +110,9 @@ def UpdateWebKitMergeRevision(webkit_merge_revision_path, repository,
def UpdateDeps(deps_path, new_revision, is_dry_run):
contents = open(deps_path).read()
- for path in DEPS_PATHS_TO_UPDATE:
- pattern = re.compile(path + "\d+", re.MULTILINE)
- contents = pattern.sub(path + str(new_revision), contents)
+ path = '"webkit_revision": "'
+ pattern = re.compile(path + "\d+")
+ contents = pattern.sub(path + str(new_revision), contents)
if is_dry_run:
print "%s=%s" % (deps_path, contents)
else:
@@ -161,8 +155,8 @@ def main(options, args):
merger = Merger(repository, webkit_root, old_revision, new_revision,
options.dry_run, options.svn, options.diff3_tool)
- merger.MergeDirectory("JavaScriptCore")
merger.MergeDirectory("WebCore")
+ merger.MergeDirectory("JavaScriptCore")
UpdateWebKitMergeRevision(webkit_merge_revision_path, repository,
new_revision, options.dry_run)