From ed2326b1577865df7854a4fee6442c4f1148339b Mon Sep 17 00:00:00 2001 From: Ehsan Akhgari Date: Sun, 13 Sep 2015 12:16:47 -0400 Subject: [PATCH] Bug 1208794 - Add support for MacOSX64 Static Analysis opt builds using TaskCluster; r=ted,dustin --- .../mozconfigs/macosx64/opt-static-analysis | 19 +++++++++ .../releng_sub_mac_configs/64_cross_opt.py | 40 +++++++++++++++++++ .../mozharness/mozilla/building/buildbase.py | 1 + .../tasks/branches/base_job_flags.yml | 1 + .../taskcluster/tasks/branches/base_jobs.yml | 6 +++ .../tasks/branches/try/job_flags.yml | 6 +++ .../tasks/builds/opt_macosx64_st-an.yml | 28 +++++++++++++ .../builds/opt_macosx64_st-an_clobber.yml | 23 +++++++++++ 8 files changed, 124 insertions(+) create mode 100644 browser/config/mozconfigs/macosx64/opt-static-analysis create mode 100644 testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_opt.py create mode 100644 testing/taskcluster/tasks/builds/opt_macosx64_st-an.yml create mode 100644 testing/taskcluster/tasks/builds/opt_macosx64_st-an_clobber.yml diff --git a/browser/config/mozconfigs/macosx64/opt-static-analysis b/browser/config/mozconfigs/macosx64/opt-static-analysis new file mode 100644 index 000000000000..90f9f9269c18 --- /dev/null +++ b/browser/config/mozconfigs/macosx64/opt-static-analysis @@ -0,0 +1,19 @@ +MOZ_AUTOMATION_BUILD_SYMBOLS=0 +MOZ_AUTOMATION_PACKAGE_TESTS=0 +MOZ_AUTOMATION_L10N_CHECK=0 + +. $topsrcdir/build/macosx/mozconfig.common + +ac_add_options --disable-debug +ac_add_options --enable-optimize +ac_add_options --enable-dmd + +# Treat warnings as errors (modulo ALLOW_COMPILER_WARNINGS). +ac_add_options --enable-warnings-as-errors + +ac_add_options --enable-clang-plugin + +. "$topsrcdir/build/macosx/mozconfig.rust" +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" + diff --git a/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_opt.py b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_opt.py new file mode 100644 index 000000000000..4fec687cc29c --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_opt.py @@ -0,0 +1,40 @@ +import os + +MOZ_OBJDIR = 'obj-firefox' + +config = { + 'default_actions': [ + 'clobber', + 'clone-tools', + 'checkout-sources', + # 'setup-mock', + 'build', + ], + 'stage_platform': 'macosx64-st-an', + 'debug_build': False, + 'objdir': 'obj-firefox', + 'enable_talos_sendchange': False, + #### 64 bit build specific ##### + 'env': { + 'MOZBUILD_STATE_PATH': os.path.join(os.getcwd(), '.mozbuild'), + 'MOZ_AUTOMATION': '1', + 'HG_SHARE_BASE_DIR': '/builds/hg-shared', + 'MOZ_OBJDIR': 'obj-firefox', + 'TINDERBOX_OUTPUT': '1', + 'TOOLTOOL_CACHE': '/builds/tooltool_cache', + 'TOOLTOOL_HOME': '/builds', + 'MOZ_CRASHREPORTER_NO_REPORT': '1', + 'CCACHE_DIR': '/builds/ccache', + 'CCACHE_COMPRESS': '1', + 'CCACHE_UMASK': '002', + 'LC_ALL': 'C', + 'XPCOM_DEBUG_BREAK': 'stack-and-abort', + ## 64 bit specific + 'PATH': '/tools/python/bin:/tools/buildbot/bin:/opt/local/bin:/usr/bin:' + '/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin', + ## + }, + 'src_mozconfig': 'browser/config/mozconfigs/macosx64/opt-static-analysis', + 'purge_minsize': 10, + ####################### +} diff --git a/testing/mozharness/mozharness/mozilla/building/buildbase.py b/testing/mozharness/mozharness/mozilla/building/buildbase.py index e652299bbf2d..c170906076d0 100755 --- a/testing/mozharness/mozharness/mozilla/building/buildbase.py +++ b/testing/mozharness/mozharness/mozilla/building/buildbase.py @@ -310,6 +310,7 @@ class BuildOptionParser(object): 'tsan': 'builds/releng_sub_%s_configs/%s_tsan.py', 'b2g-debug': 'b2g/releng_sub_%s_configs/%s_debug.py', 'cross-debug': 'builds/releng_sub_%s_configs/%s_cross_debug.py', + 'cross-opt': 'builds/releng_sub_%s_configs/%s_cross_opt.py', 'debug': 'builds/releng_sub_%s_configs/%s_debug.py', 'asan-and-debug': 'builds/releng_sub_%s_configs/%s_asan_and_debug.py', 'stat-and-debug': 'builds/releng_sub_%s_configs/%s_stat_and_debug.py', diff --git a/testing/taskcluster/tasks/branches/base_job_flags.yml b/testing/taskcluster/tasks/branches/base_job_flags.yml index 46bd89041c3b..dc4a181f4806 100644 --- a/testing/taskcluster/tasks/branches/base_job_flags.yml +++ b/testing/taskcluster/tasks/branches/base_job_flags.yml @@ -41,6 +41,7 @@ flags: - linux64 - linux64-st-an - macosx64 + - macosx64-st-an tests: - cppunit diff --git a/testing/taskcluster/tasks/branches/base_jobs.yml b/testing/taskcluster/tasks/branches/base_jobs.yml index 6982ff0412ee..34445e185645 100644 --- a/testing/taskcluster/tasks/branches/base_jobs.yml +++ b/testing/taskcluster/tasks/branches/base_jobs.yml @@ -158,6 +158,12 @@ builds: types: debug: task: tasks/builds/dbg_macosx64.yml + macosx64-st-an: + platforms: + - MacOSX64 Static Analysis + types: + opt: + task: tasks/builds/opt_macosx64_st-an.yml android-b2gdroid: platforms: - Android diff --git a/testing/taskcluster/tasks/branches/try/job_flags.yml b/testing/taskcluster/tasks/branches/try/job_flags.yml index 00ba48697022..620d6bfc1f35 100644 --- a/testing/taskcluster/tasks/branches/try/job_flags.yml +++ b/testing/taskcluster/tasks/branches/try/job_flags.yml @@ -215,6 +215,12 @@ builds: types: debug: task: tasks/builds/dbg_macosx64_clobber.yml + macosx64-st-an: + platforms: + - MacOSX64 Static Analysis + types: + opt: + task: tasks/builds/opt_macosx64_st-an_clobber.yml post-build: upload-symbols: diff --git a/testing/taskcluster/tasks/builds/opt_macosx64_st-an.yml b/testing/taskcluster/tasks/builds/opt_macosx64_st-an.yml new file mode 100644 index 000000000000..16480bb4b614 --- /dev/null +++ b/testing/taskcluster/tasks/builds/opt_macosx64_st-an.yml @@ -0,0 +1,28 @@ +$inherits: + from: 'tasks/builds/opt_macosx64_clobber.yml' + variables: + build_name: 'macosx64-st-an' +task: + metadata: + name: '[TC] MacOSX64 Static Analysis Opt' + description: 'MacOSX64 Static Analysis Opt' + + scopes: + - 'docker-worker:cache:build-macosx64-st-an-workspace' + + routes: + - 'index.buildbot.branches.{{project}}.macosx64-st-an' + - 'index.buildbot.revisions.{{head_rev}}.{{project}}.macosx64-st-an' + + payload: + cache: + build-macosx64-st-an-workspace: '/home/worker/workspace' + env: + MH_CUSTOM_BUILD_VARIANT_CFG: 'cross-opt' + DIST_UPLOADS: '' + DIST_TARGET_UPLOADS: '' + extra: + treeherder: + groupSymbol: "?" + groupName: Submitted by taskcluster + symbol: S diff --git a/testing/taskcluster/tasks/builds/opt_macosx64_st-an_clobber.yml b/testing/taskcluster/tasks/builds/opt_macosx64_st-an_clobber.yml new file mode 100644 index 000000000000..7df2505d64ab --- /dev/null +++ b/testing/taskcluster/tasks/builds/opt_macosx64_st-an_clobber.yml @@ -0,0 +1,23 @@ +$inherits: + from: 'tasks/builds/opt_macosx64_clobber.yml' + variables: + build_name: 'macosx64-st-an' +task: + metadata: + name: '[TC] MacOSX64 Static Analysis Opt' + description: 'MacOSX64 Static Analysis Opt' + + routes: + - 'index.buildbot.branches.{{project}}.macosx64-st-an' + - 'index.buildbot.revisions.{{head_rev}}.{{project}}.macosx64-st-an' + + payload: + env: + MH_CUSTOM_BUILD_VARIANT_CFG: 'cross-opt' + DIST_UPLOADS: '' + DIST_TARGET_UPLOADS: '' + extra: + treeherder: + groupSymbol: "?" + groupName: Submitted by taskcluster + symbol: S