Re: how do I use the make universe machines?

From: Chris H <bsd-lists_at_BSDforge.com>
Date: Tue, 05 Jun 2018 19:50:23 -0700
On Tue, 5 Jun 2018 20:12:18 -0500 "Benjamin Kaduk" <kaduk_at_mit.edu> 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?
> > 
> > Thanks, rick
> > ps: I'll admit I haven't looked at the developer's guide in a long time.
> 
> I think https://www.freebsd.org/internal/machines.html sounds like
> the page you're looking for.  (universe is just a top-level make
> target like buildworld, but will take a while on non-beefy
> hardware.)
> 
> -Ben

I was surprised to discover there was no mention in /usr/src/UPDATING,
nor /usr/src/README. So in case anyone might be wondering;

/usr/src/Makefile

# universe            - *Really* build *everything* (buildworld and
#                       all kernels on all architectures).
# tinderbox           - Same as universe, but presents a list of failed build
#                       targets and exits with an error if there were any.

following, an excerpt by Allan Jude (FreeBSD developer && bsdnow.tv):

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 rules
and testing requirements: e.g., 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.

“The ZFS repo has to be in production quality at all times,” Allan elaborated.
“FreeBSD itself has a test suite, a set of regression tests, and then continuous
integration with Jenkins.” The trick there is the multiple platform conundrum.
You make a commit, the code is seemingly perfect, but then you realize you only
know how it runs on your x86 hardware. Maybe its functionality on ARM is a
different story.

“We have this concept called the Universe Build where you build FreeBSD for
every different processor environment that’s supported,” Allan shared. That way
no matter how well it works on your system, you also know it’ll work for everyone
else.

As is to be expected, Allan told us the Universe Build can take a while to
develop to perfection — “especially if you don’t have all the hardware, but
the FreeBSD Foundation provides servers to the developers of the project.” So
thankfully, they’ve got access to really big servers, some 36 cores, and a boat
load of RAM. “If you had to do a Universe Build on your laptop, it might take a
day and a half,” Allan added, with a laugh.

--Chris
Received on Wed Jun 06 2018 - 00:50:12 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:16 UTC