summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Albert <danalbert@google.com>2015-01-09 22:40:48 -0800
committerDan Albert <danalbert@google.com>2015-01-09 22:45:33 -0800
commit64390f940c321201fb8a866e80f44ced11ff07c8 (patch)
treea6166e904a2b92e9c7de01254310e97ed12ebf2c
parentd7f935a05b25d003a721565ba64a015b3a341fbe (diff)
downloadbionic-64390f940c321201fb8a866e80f44ced11ff07c8.zip
bionic-64390f940c321201fb8a866e80f44ced11ff07c8.tar.gz
bionic-64390f940c321201fb8a866e80f44ced11ff07c8.tar.bz2
Add support for building other architectures.
Since we often make changes that might break on other architectures, let the buildbot deal with some of these for us. They can be invoked by `bionicbb:ARCH`, where `ARCH` is one of: * arm * aarch64 * mips * mips64 * x86 * x86_64 Specifying arm isn't particularly interesting (since the default target for the buildbot is hammerhead), but there are some differences in the math instructions available for the default ARM target, so it could be helpful for testing changes to the compiler-rt builtins. Change-Id: I94018fd3c30d26fcf405e747fc633cbdd08ff4e5
-rw-r--r--tools/bionicbb/gmail_listener.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/tools/bionicbb/gmail_listener.py b/tools/bionicbb/gmail_listener.py
index 8718484..1dc82fa 100644
--- a/tools/bionicbb/gmail_listener.py
+++ b/tools/bionicbb/gmail_listener.py
@@ -130,7 +130,7 @@ def clean_project(gerrit_info, dry_run):
return True
-def build_project(gerrit_info, dry_run):
+def build_project(gerrit_info, dry_run, lunch_target=None):
project_to_jenkins_map = {
'platform/bionic': 'bionic-presubmit',
'platform/build': 'bionic-presubmit',
@@ -177,6 +177,8 @@ def build_project(gerrit_info, dry_run):
'CHANGE_ID': change_id,
'PROJECT': project_path
}
+ if lunch_target is not None:
+ params['LUNCH_TARGET'] = lunch_target
if not dry_run:
job = jenkins[build].invoke(build_params=params)
url = job.get_build().baseurl
@@ -233,6 +235,19 @@ def handle_comment(gerrit_info, body, dry_run):
command_map = {
'clean': lambda: clean_project(gerrit_info, dry_run),
'retry': lambda: build_project(gerrit_info, dry_run),
+
+ 'arm': lambda: build_project(gerrit_info, dry_run,
+ lunch_target='aosp_arm-eng'),
+ 'aarch64': lambda: build_project(gerrit_info, dry_run,
+ lunch_target='aosp_arm64-eng'),
+ 'mips': lambda: build_project(gerrit_info, dry_run,
+ lunch_target='aosp_mips-eng'),
+ 'mips64': lambda: build_project(gerrit_info, dry_run,
+ lunch_target='aosp_mips64-eng'),
+ 'x86': lambda: build_project(gerrit_info, dry_run,
+ lunch_target='aosp_x86-eng'),
+ 'x86_64': lambda: build_project(gerrit_info, dry_run,
+ lunch_target='aosp_x86_64-eng'),
}
def handle_unknown_command():