Re: Wow: Building the likes of devel/llvm16 now requires building rust first (when rust is out of date). . .

From: Mark Millard <>
Date: Thu, 14 Sep 2023 14:25:48 UTC
On Sep 14, 2023, at 01:37, Tatsuki Makino <> wrote:

> Hello.


> If it's on poudriere, then it's the one where the saving of computer resources is converted into human labor :)
> Mark Millard wrote on 2023/09/14 15:20:
>> Building devel/llvm16 requires building textproc/py-recommonmark@py39
>> Building textproc/py-recommonmark@py39 requires building textproc/py-sphinx@py39
>> Building textproc/py-sphinx@py39 requires building www/py-requests@py39
>> Building www/py-requests@py39 requires building net/py-urllib3@py39
>> Building net/py-urllib3@py39 requires building security/py-openssl@py39
>> Building security/py-openssl@py39 requires building security/py-cryptography@py39
>> Building security/py-cryptography@py39 requires building devel/py-setuptools-rust@py39
>> Building devel/py-setuptools-rust@py39 requires building lang/rust
> If devel/llvm16 has already been built, -S or -n option in poudriere bulk can be used to determine that devel/py-setuptools-rust@py39 is the last to be built.
> However, it is very tedious to read the output of poudriere to determine it :)

I showed working backwards from the last to be built (devel/llvm16) to
the earlier things that need to be built first, step by step. So if 
lang/rust has an update, it builds before devel/py-setuptools-rust@py39
would build, for example. (All based on only having requested
devel/llvm16 directly via the poudriere bulk command.)

I'm not sure if your wording's coverage matches that ordering.

I did not try to document manually overriding poudriere bulk
behavior to minimize rebuilds more completely than it does.

Mark Millard
marklmi at