From owner-freebsd-current@freebsd.org Wed Jun 6 02:50:12 2018 Return-Path: Delivered-To: freebsd-current@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 93134FDDAC6 for ; Wed, 6 Jun 2018 02:50:12 +0000 (UTC) (envelope-from bsd-lists@BSDforge.com) Received: from udns.ultimatedns.net (static-24-113-41-81.wavecable.com [24.113.41.81]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 08D1B7F8C5 for ; Wed, 6 Jun 2018 02:50:11 +0000 (UTC) (envelope-from bsd-lists@BSDforge.com) Received: from udns.ultimatedns.net (localhost [127.0.0.1]) by udns.ultimatedns.net (8.14.9/8.14.9) with ESMTP id w562oHxV031321; Tue, 5 Jun 2018 19:50:23 -0700 (PDT) (envelope-from bsd-lists@BSDforge.com) X-Mailer: UDNSMS MIME-Version: 1.0 Cc: "freebsd-current@freebsd.org>" , "Rick Macklem" In-Reply-To: <20180606011218.GA72167@kduck.kaduk.org> From: "Chris H" Reply-To: bsd-lists@BSDforge.com To: "Benjamin Kaduk" Subject: Re: how do I use the make universe machines? Date: Tue, 05 Jun 2018 19:50:23 -0700 Message-Id: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Jun 2018 02:50:12 -0000 On Tue, 5 Jun 2018 20:12:18 -0500 "Benjamin Kaduk" said > On Wed, Jun 06, 2018 at 12:47:17AM +0000, Rick Macklem wrote: > > I've heard mention of "make universe" machines multiple times, > > but have no idea how to use them? > > Is there doc on this? > >=20 > > Thanks, rick > > ps: I'll admit I haven't looked at the developer's guide in a long time= =2E >=20 > I think https://www=2Efreebsd=2Eorg/internal/machines=2Ehtml sounds like > the page you're looking for=2E (universe is just a top-level make > target like buildworld, but will take a while on non-beefy > hardware=2E) >=20 > -Ben I was surprised to discover there was no mention in /usr/src/UPDATING, nor /usr/src/README=2E So in case anyone might be wondering; /usr/src/Makefile # universe - *Really* build *everything* (buildworld and # all kernels on all architectures)=2E # tinderbox - Same as universe, but presents a list of failed bui= ld # targets and exits with an error if there were any=2E following, an excerpt by Allan Jude (FreeBSD developer && bsdnow=2Etv): Testing is Tricky and Rigorous, so FreeBSD Came Out with the Universe Build Further complicating things, ZFS has its own upstream repo with its own rul= es and testing requirements: e=2Eg=2E, a pull request has to be in a ZFS-running operating system like FreeBSD or Linux and used in production for a minimum= of three months before actually being committed=2E =E2=80=9CThe ZFS repo has to be in production quality at all times,= =E2=80=9D Allan elaborated=2E =E2=80=9CFreeBSD itself has a test suite, a set of regression tests, and th= en continuous integration with Jenkins=2E=E2=80=9D The trick there is the multiple platform= conundrum=2E You make a commit, the code is seemingly perfect, but then you realize you = only know how it runs on your x86 hardware=2E Maybe its functionality on ARM is a different story=2E =E2=80=9CWe have this concept called the Universe Build where you build Fre= eBSD for every different processor environment that=E2=80=99s supported,=E2=80=9D Al= lan shared=2E That way no matter how well it works on your system, you also know it=E2=80=99ll wor= k for everyone else=2E As is to be expected, Allan told us the Universe Build can take a while to develop to perfection =E2=80=94 =E2=80=9Cespecially if you don=E2=80=99t ha= ve all the hardware, but the FreeBSD Foundation provides servers to the developers of the project=2E= =E2=80=9D So thankfully, they=E2=80=99ve got access to really big servers, some 36 cores= , and a boat load of RAM=2E =E2=80=9CIf you had to do a Universe Build on your laptop, it = might take a day and a half,=E2=80=9D Allan added, with a laugh=2E --Chris