Bug 1486654 - Enable static analysis on all Linux CI builds. r=ted
authorMike Hommey <mh+mozilla@glandium.org>
Fri, 24 Aug 2018 22:16:28 +0900
changeset 433738 7acaf7396b0dbe05b241eb41973f23d29e152462
parent 433737 424d07248f36a06baad7fe75e34416eb1a4de92f
child 433739 998cf7d22736ed2197fd018e1ee28a8257e3de96
push id34521
push userebalazs@mozilla.com
push dateWed, 29 Aug 2018 09:43:53 +0000
treeherdermozilla-central@b75561ff5ffe [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersted
bugs1486654
milestone63.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1486654 - Enable static analysis on all Linux CI builds. r=ted And turn off separate static analysis build tasks.
browser/config/mozconfigs/linux64/opt-static-analysis-clang
browser/config/mozconfigs/linux64/tup
build/mozconfig.no-compile
build/unix/mozconfig.linux
taskcluster/ci/static-analysis/kind.yml
testing/mozharness/configs/builds/releng_sub_linux_configs/64_stat_and_opt.py
deleted file mode 100644
--- a/browser/config/mozconfigs/linux64/opt-static-analysis-clang
+++ /dev/null
@@ -1,20 +0,0 @@
-MOZ_AUTOMATION_BUILD_SYMBOLS=0
-MOZ_AUTOMATION_PACKAGE_TESTS=0
-MOZ_AUTOMATION_L10N_CHECK=0
-
-. "$topsrcdir/build/mozconfig.common"
-
-ac_add_options --enable-dmd
-
-. $topsrcdir/build/mozconfig.stylo
-
-# Use Clang as specified in manifest
-CC="$topsrcdir/clang/bin/clang"
-CXX="$topsrcdir/clang/bin/clang++"
-
-# Add the static checker
-ac_add_options --enable-clang-plugin
-
-. "$topsrcdir/build/unix/mozconfig.stdcxx"
-
-. "$topsrcdir/build/mozconfig.common.override"
--- a/browser/config/mozconfigs/linux64/tup
+++ b/browser/config/mozconfigs/linux64/tup
@@ -9,11 +9,12 @@ MOZ_AUTOMATION_UPLOAD_SYMBOLS=0
 TOOLTOOL_DIR=${TOOLTOOL_DIR:-$topsrcdir}
 export TUP=${TOOLTOOL_DIR}/tup/tup
 
 . "$topsrcdir/browser/config/mozconfigs/linux64/common-opt"
 . "$topsrcdir/build/mozconfig.common.override"
 
 ac_add_options --enable-build-backends=Tup
 ac_add_options --disable-js-shell
+unset ENABLE_CLANG_PLUGIN
 # To enable the option to upload the tup database, uncomment the line below
 # ac_add_options --upload-tup-db
 
--- a/build/mozconfig.no-compile
+++ b/build/mozconfig.no-compile
@@ -18,10 +18,11 @@ unset RUSTDOC
 unset RUSTFMT
 unset CBINDGEN
 unset MAKECAB
 unset TOOLCHAIN_PREFIX
 unset BINDGEN_CFLAGS
 unset LLVM_CONFIG
 unset WIN64_LINK
 unset WIN64_LIB
+unset ENABLE_CLANG_PLUGIN
 
 unset MOZ_STDCXX_COMPAT
--- a/build/unix/mozconfig.linux
+++ b/build/unix/mozconfig.linux
@@ -8,15 +8,16 @@ fi
 TOOLTOOL_DIR=${TOOLTOOL_DIR:-$topsrcdir}
 
 if [ -n "$FORCE_GCC" -o -n "$MOZ_PGO" ]; then
     CC="$TOOLTOOL_DIR/gcc/bin/gcc"
     CXX="$TOOLTOOL_DIR/gcc/bin/g++"
 else
     CC="$TOOLTOOL_DIR/clang/bin/clang"
     CXX="$TOOLTOOL_DIR/clang/bin/clang++"
+    export ENABLE_CLANG_PLUGIN=1
 fi
 
 # We want to make sure we use binutils and other binaries in the tooltool
 # package.
 mk_add_options "export PATH=$TOOLTOOL_DIR/gcc/bin:$PATH"
 
 . "$topsrcdir/build/unix/mozconfig.stdcxx"
--- a/taskcluster/ci/static-analysis/kind.yml
+++ b/taskcluster/ci/static-analysis/kind.yml
@@ -18,70 +18,16 @@ job-defaults:
     index:
         product: firefox
     treeherder:
         symbol: S
         kind: build
         tier: 1
 
 jobs:
-    linux64-st-an/debug:
-        description: "Linux64 Debug Static Analysis"
-        index:
-            job-name: linux64-st-an-debug
-        treeherder:
-            platform: linux64/debug
-        worker-type: aws-provisioner-v1/gecko-{level}-b-linux
-        worker:
-            max-run-time: 36000
-            env:
-                PERFHERDER_EXTRA_OPTIONS: static-analysis
-        run:
-            using: mozharness
-            actions: [build]
-            config:
-                - builds/releng_base_firefox.py
-                - builds/releng_sub_linux_configs/64_stat_and_debug.py
-            script: "mozharness/scripts/fx_desktop_build.py"
-            tooltool-downloads: public
-            keep-artifacts: false
-        toolchains:
-            - linux64-clang
-            - linux64-rust
-            - linux64-cbindgen
-            - linux64-sccache
-            - linux64-node
-
-    linux64-st-an/opt:
-        description: "Linux64 Opt Static Analysis"
-        index:
-            job-name: linux64-st-an-opt
-        treeherder:
-            platform: linux64/opt
-        worker-type: aws-provisioner-v1/gecko-{level}-b-linux
-        worker:
-            max-run-time: 36000
-            env:
-                PERFHERDER_EXTRA_OPTIONS: static-analysis
-        run:
-            using: mozharness
-            actions: [build]
-            config:
-                - builds/releng_base_firefox.py
-                - builds/releng_sub_linux_configs/64_stat_and_opt.py
-            script: "mozharness/scripts/fx_desktop_build.py"
-            tooltool-downloads: public
-            keep-artifacts: false
-        toolchains:
-            - linux64-clang
-            - linux64-rust
-            - linux64-cbindgen
-            - linux64-sccache
-            - linux64-node
-
     win32-st-an/debug:
         description: "Win32 Static Analysis Debug (clang-cl)"
         index:
             product: firefox
             job-name: win32-st-an-debug
         treeherder:
             platform: windows2012-32/debug
             symbol: S
deleted file mode 100644
--- a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_stat_and_opt.py
+++ /dev/null
@@ -1,40 +0,0 @@
-import os
-
-config = {
-    # note: overridden by MOZHARNESS_ACTIONS in TaskCluster tasks
-    'default_actions': [
-        'clobber',
-        'build',
-    ],
-    'app_ini_path': '%(obj_dir)s/dist/bin/application.ini',
-    # decides whether we want to use moz_sign_cmd in env
-    'vcs_share_base': '/builds/hg-shared',
-    #########################################################################
-
-
-    #########################################################################
-    ###### 64 bit specific ######
-    'base_name': 'Linux_x86-64_%(branch)s_Static_Analysis',
-    'platform': 'linux64',
-    'stage_platform': 'linux64-st-an',
-    'env': {
-        'MOZBUILD_STATE_PATH': os.path.join(os.getcwd(), '.mozbuild'),
-        'DISPLAY': ':2',
-        'HG_SHARE_BASE_DIR': '/builds/hg-shared',
-        'MOZ_OBJDIR': '%(abs_obj_dir)s',
-        'TINDERBOX_OUTPUT': '1',
-        'TOOLTOOL_CACHE': '/builds/worker/tooltool-cache',
-        'TOOLTOOL_HOME': '/builds',
-        'MOZ_CRASHREPORTER_NO_REPORT': '1',
-        'LC_ALL': 'C',
-        ## 64 bit specific
-        'PATH': '/usr/local/bin:/bin:\
-/usr/bin:/usr/local/sbin:/usr/sbin:/sbin',
-        ##
-    },
-    # This doesn't actually inherit from anything.
-    'mozconfig_platform': 'linux64',
-    'mozconfig_variant': 'opt-static-analysis-clang',
-    #######################
-    'artifact_flag_build_variant_in_try': None,
-}