Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 25 Sep 2023 14:58:23 -0700
From:      Dan Mahoney <freebsd@gushi.org>
To:        Robert Clausecker <fuz@fuz.su>
Cc:        "Edward Sanford Sutton, III" <mirror176@hotmail.com>, ports@freebsd.org
Subject:   Re: dns/bind916 builds rust unexpectedly
Message-ID:  <EFB82025-AC46-48A6-ADDE-7909E53DEFB7@gushi.org>
In-Reply-To: <ZRH-c12w8fr0J0Df@fuz.su>
References:  <ZRGiDj-esOAc9K_Z@lordcow.org> <1e05be67-cb15-964e-c78b-e74e714257a9@FreeBSD.org> <11aede54-89d0-9b46-28f8-1931571b8917@m5p.com> <F2CB5355-F2EC-405D-80FC-0F3C18AE9A57@punkt.de> <6fd5dbf4-3fc5-a728-d751-d58deeabe933@m5p.com> <CO1PR11MB477089BE963870D088C1A7C3E6FCA@CO1PR11MB4770.namprd11.prod.outlook.com> <ZRH-c12w8fr0J0Df@fuz.su>

next in thread | previous in thread | raw e-mail | index | archive | help


> On Sep 25, 2023, at 14:41, Robert Clausecker <fuz@fuz.su> wrote:
>=20
> Am Mon, Sep 25, 2023 at 02:15:19PM -0700 schrieb Edward Sanford =
Sutton, III:
>>  Poudriere still causes crashes in my experience depending on =
hardware,
>> poudriere configuration, and what you tell it to build; I have to =
change
>> defaults to use it and then it is fine. With only 32GB of RAM, if I =
have it
>> operate the whole build process in RAM
>> (USE_TMPFS=3Dall>/usr/local/etc/poudriere) then I have to limit =
myself to 2
>> build jobs (PARALLEL_JOBS=3D2, though I specify it on the poudriere =
command
>> line) or I 'may' have issues. Within that I can have multiple jobs =
per build
>> (ALLOW_MAKE_JOBS=3Dyes>/usr/local/etc/poudriere,
>> MAKE_JOBS_NUMBER=3D4>/usr/local/etc/poudriere.d/make.conf) which gets =
through
>> each compile job much faster so no one job is as likely to be running
>> 'alone' holding up other jobs while cores sit idle.
>=20
> Ports tend to eat more and more storage for their source and =
dependencies these
> days.  I encountered the same issue you had.  A simple fix is to =
switch to
> USE_TMPFS=3D"data localbase" which keeps the source code and objects =
of the package
> to be built on disk while placing dependencies into RAM.  This does =
not actually
> reduce performance by much as the biggest spike in disk usage is when =
dependencies
> are installed and the distfile is extracted.  This setting helps with =
the former
> while not doing much to the latter.  During the build, compilers =
infrequently
> write small objects to disk, which gets handled very well by the write =
cache, so
> having the WRKDIR on disk doesn't hurt.  The cache also quickly picks =
up on
> frequently needed source files, so there's little penalty in having to =
read them
> from disk every once in a while.

I really, really wish the ports tree supported the option of:

"I am building package X, but it requires dependency A, B, and C, which =
I will build as completely standard, so pretty friggin please, just pkg =
install them."

So often have I done the dance of "Make...crap, ^c^c^c, pkg install =
autoconf...Make, ...dammit... pkg install =
dialog4ports....make....dammit, crap install bison...."

pkg, as far as I know, has no concept of tracking the build-dependencies =
of a thing, but I would love the option of pkg =
--install-all-build-deps-for foo.

"Just run poudriere" is a really crappy option when you just have a =
single box on an AWS t2-tiny install.

-Dan=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?EFB82025-AC46-48A6-ADDE-7909E53DEFB7>