Bug 1672895 - Bootstrap nasm from toolchain artifacts on mac. r=firefox-build-system-reviewers,rstewart DONTBUILD
authorMike Hommey <mh+mozilla@glandium.org>
Fri, 23 Oct 2020 13:54:18 +0000
changeset 554341 27dc52db9714a041618128ee767f1af57e398e44
parent 554340 484f408e18dd25bbb2e51f7f2cc34d6453bcf4d7
child 554342 96edc7ca2ff13743f215926dbeebdcd86d06b29d
push id37892
push usernbeleuzu@mozilla.com
push dateSun, 25 Oct 2020 21:41:16 +0000
treeherdermozilla-central@61c35792ca70 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersfirefox-build-system-reviewers, rstewart
bugs1672895
milestone84.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 1672895 - Bootstrap nasm from toolchain artifacts on mac. r=firefox-build-system-reviewers,rstewart DONTBUILD Rather than homebrew/macports. Differential Revision: https://phabricator.services.mozilla.com/D94539
python/mozboot/mozboot/nasm.py
python/mozboot/mozboot/osx.py
--- a/python/mozboot/mozboot/nasm.py
+++ b/python/mozboot/mozboot/nasm.py
@@ -1,8 +1,9 @@
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 from __future__ import absolute_import, print_function, unicode_literals
 
 WINDOWS_NASM = 'win64-nasm'
 LINUX_NASM = 'linux64-nasm'
+MACOS_NASM = 'macosx64-nasm'
--- a/python/mozboot/mozboot/osx.py
+++ b/python/mozboot/mozboot/osx.py
@@ -358,17 +358,16 @@ class OSXBootstrapper(BaseBootstrapper):
         ]
         if install_mercurial:
             packages.append('mercurial')
         self._ensure_homebrew_packages(packages)
 
     def ensure_homebrew_browser_packages(self, artifact_mode=False):
         # TODO: Figure out what not to install for artifact mode
         packages = [
-            'nasm',
             'yasm',
         ]
         self._ensure_homebrew_packages(packages)
 
     def ensure_homebrew_mobile_android_packages(self, mozconfig_builder, artifact_mode=False):
         # Multi-part process:
         # 1. System packages.
         # 2. Android SDK. Android NDK only if we are not in artifact mode. Android packages.
@@ -439,17 +438,16 @@ class OSXBootstrapper(BaseBootstrapper):
         if 'python27' not in active:
             self.run_as_root([self.port, 'select', '--set', 'python', 'python27'])
         else:
             print('The right python version is already active.')
 
     def ensure_macports_browser_packages(self, artifact_mode=False):
         # TODO: Figure out what not to install for artifact mode
         packages = [
-            'nasm',
             'yasm',
         ]
 
         self._ensure_macports_packages(packages)
 
     def ensure_macports_mobile_android_packages(self, mozconfig_builder, artifact_mode=False):
         # Multi-part process:
         # 1. System packages.
@@ -549,18 +547,18 @@ class OSXBootstrapper(BaseBootstrapper):
         self.install_toolchain_artifact(state_dir, checkout_root, fix_stacks.MACOS_FIX_STACKS)
 
     def ensure_stylo_packages(self, state_dir, checkout_root):
         from mozboot import stylo
         self.install_toolchain_artifact(state_dir, checkout_root, stylo.MACOS_CLANG)
         self.install_toolchain_artifact(state_dir, checkout_root, stylo.MACOS_CBINDGEN)
 
     def ensure_nasm_packages(self, state_dir, checkout_root):
-        # installed via ensure_browser_packages
-        pass
+        from mozboot import nasm
+        self.install_toolchain_artifact(state_dir, checkout_root, nasm.MACOS_NASM)
 
     def ensure_node_packages(self, state_dir, checkout_root):
         # XXX from necessary?
         from mozboot import node
         self.install_toolchain_artifact(state_dir, checkout_root, node.OSX)
 
     def ensure_minidump_stackwalk_packages(self, state_dir, checkout_root):
         from mozboot import minidump_stackwalk