summaryrefslogtreecommitdiff
path: root/tools/buildman
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2014-12-01 17:33:54 -0700
committerSimon Glass <sjg@chromium.org>2015-01-14 21:16:52 -0800
commit2a9e2c6a0962cb04a12d833cc5c1c0920fa3b4f5 (patch)
treee924ed1920811a80eba92fe066cf6ae0a1ac8a03 /tools/buildman
parent1a915675104771e8afea399a62778c598289775f (diff)
downloadu-boot-imx-2a9e2c6a0962cb04a12d833cc5c1c0920fa3b4f5.zip
u-boot-imx-2a9e2c6a0962cb04a12d833cc5c1c0920fa3b4f5.tar.gz
u-boot-imx-2a9e2c6a0962cb04a12d833cc5c1c0920fa3b4f5.tar.bz2
buildman: Try to guess the upstream commit
Buildman normally obtains the upstream commit by asking git. Provided that the branch was created with 'git checkout -b <branch> <some_upstream>' then this normally works. When there is no upstream, we can try to guess one, by looking up through the commits until we find a branch. Add a function to try this and print a warning if buildman ends up relying on it. Also update the documentation to match. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Wolfgang Denk <wd@denx.de>
Diffstat (limited to 'tools/buildman')
-rw-r--r--tools/buildman/README5
-rw-r--r--tools/buildman/control.py10
2 files changed, 8 insertions, 7 deletions
diff --git a/tools/buildman/README b/tools/buildman/README
index 0f8ea20..8e7a68c 100644
--- a/tools/buildman/README
+++ b/tools/buildman/README
@@ -310,8 +310,9 @@ branch with a valid upstream)
$ ./tools/buildman/buildman -b <branch> -n
If it can't detect the upstream branch, try checking out the branch, and
-doing something like 'git branch --set-upstream <branch> upstream/master'
-or something similar.
+doing something like 'git branch --set-upstream-to upstream/master'
+or something similar. Buildman will try to guess a suitable upstream branch
+if it can't find one (you will see a message like" Guessing upstream as ...).
As an example:
diff --git a/tools/buildman/control.py b/tools/buildman/control.py
index 48797e9..cec02c6 100644
--- a/tools/buildman/control.py
+++ b/tools/buildman/control.py
@@ -127,12 +127,12 @@ def DoBuildman(options, args, toolchains=None, make_func=None, boards=None,
if not options.branch:
count = 1
else:
- count = gitutil.CountCommitsInBranch(options.git_dir,
- options.branch)
+ count, msg = gitutil.CountCommitsInBranch(options.git_dir,
+ options.branch)
if count is None:
- str = ("Branch '%s' not found or has no upstream" %
- options.branch)
- sys.exit(col.Color(col.RED, str))
+ sys.exit(col.Color(col.RED, msg))
+ if msg:
+ print col.Color(col.YELLOW, msg)
count += 1 # Build upstream commit also
if not count: