[MacPorts] #69198: rust-bootstrap needs a lot of disk space to build
MacPorts
noreply at macports.org
Sat Jan 27 00:51:22 UTC 2024
#69198: rust-bootstrap needs a lot of disk space to build
-----------------------------+---------------------------------
Reporter: ryandesign | Owner: MarcusCalhoun-Lopez
Type: defect | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version: 2.9.0
Resolution: | Keywords:
Port: rust-bootstrap |
-----------------------------+---------------------------------
Comment (by ryandesign):
`{darwin >= 16}` means it can be built on darwin 16 and later and that it
builds differently on each darwin version. For example, usually the
deployment target matches the OS version.
`{darwin any >= 16}` would mean it can be built on darwin 16 and later and
that it builds essentially identically on each darwin version. For
example, a port that installs only documentation, or game assets, or a
precompiled binary downloaded from the developer's site would be identical
on any OS version. `any` changes the archive filename so that it ends with
`.darwin_any.tbz2` instead of e.g. `.darwin_16.tbz2`. It means MacPorts on
any user's system, regardless of OS version, will download the same
archive. It means we only need to store one file on the packages server
instead of one file per OS version. It also means that only one buildbot
worker needs to build that archive. In practice, it isn't quite as
efficient as that: if the buildbot was idle when a commit came through,
all wokers will get notified to start their jobs at about the same time.
They'll all check if the archive already exists on the server, which it
doesn't, so they'll all do the build. But if the workers are busy when the
commit comes through, maybe only the first worker to become available
needs to build it because maybe by the time the second worker becomes
available, the first one has already finished and uploaded the archive to
the server.
So if it is true that rust-bootstrap builds essentially identically
regardless of the OS version (e.g. it forces the same deployment target
and it does nothing else that varies by OS version) then adding `any`
would be correct and would save build time and server space.
--
Ticket URL: <https://trac.macports.org/ticket/69198#comment:11>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list