Bug 1420330 - FreeBSD bootstrap: add aarch64 and testing dependencies. r?Build draft
authorJan Beich <jbeich@FreeBSD.org>
Fri, 24 Nov 2017 03:24:57 +0000
changeset 706651 2216eae756f6fef185a907084d5c9ce6237fe1c3
parent 706650 de1f7a92e8726bdd365d4bbc5e65eaa369fbc20a
child 742715 753eb4600fdbd9160e30416cd2f526091c4c212a
push id91866
push userbmo:jbeich@FreeBSD.org
push dateSun, 03 Dec 2017 00:05:43 +0000
reviewersBuild
bugs1420330
milestone59.0a1
Bug 1420330 - FreeBSD bootstrap: add aarch64 and testing dependencies. r?Build - aarch64 has GNU-free toolchain thus /usr/bin/as is N/A by default but GNU as is required to build bundled ICU. - Downstream Python splits sqlite3 C module into a separate package to reduce optional dependencies but _sqlite3 is used by mozprofile. MozReview-Commit-ID: Lh2ktcqh16f
python/mozboot/mozboot/freebsd.py
--- a/python/mozboot/mozboot/freebsd.py
+++ b/python/mozboot/mozboot/freebsd.py
@@ -1,45 +1,50 @@
 # 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
+import sys
 
 from mozboot.base import BaseBootstrapper
 
 
 class FreeBSDBootstrapper(BaseBootstrapper):
     def __init__(self, version, flavor, **kwargs):
         BaseBootstrapper.__init__(self, **kwargs)
         self.version = int(version.split('.')[0])
         self.flavor = flavor.lower()
 
         self.packages = [
             'autoconf213',
             'gmake',
             'gtar',
             'mercurial',
             'pkgconf',
+            'py%s%s-sqlite3' % sys.version_info[0:2],
             'rust',
             'watchman',
             'zip',
         ]
 
         self.browser_packages = [
             'dbus-glib',
             'gconf2',
             'gtk2',
             'gtk3',
             'llvm40',
             'pulseaudio',
             'v4l_compat',
             'yasm',
         ]
 
+        if not self.which('as'):
+            self.packages.append('binutils')
+
         if not self.which('unzip'):
             self.packages.append('unzip')
 
     def pkg_install(self, *packages):
         command = ['pkg', 'install']
         if self.no_interactive:
             command.append('-y')