Discussion:
reducing build times; selecting specific clang targets
(too old to reply)
Michael Butler
2017-12-09 03:57:06 UTC
Permalink
As clang builds for multiple targets unconditionally, it takes *days* to
build on one of my devices (700MHz Pentium-3).

Is there a way to restrict the build targets to i386 only? If not, can
we implement one?

imb
Ed Schouten
2017-12-09 07:50:59 UTC
Permalink
Hi Michael,
Post by Michael Butler
As clang builds for multiple targets unconditionally, it takes *days* to
build on one of my devices (700MHz Pentium-3).
Is there a way to restrict the build targets to i386 only? If not, can we
implement one?
Regardless of the discussion of how and whether this may be
implemented, do take into consideration that the target specific bits
in Clang only account for a minority of the build time. It is not as
if Clang is literally built multiple times, once for every
architecture. The build will likely still take several days, even if
this got fixed.

Have you considered doing builds on some other system and copying the
results over? According to Wikipedia, they stopped producing Pentium
III CPUs 14 years ago. Using these systems to do actual builds sounds
like a waste of electricity.
--
Ed Schouten <***@nuxi.nl>
Nuxi, 's-Hertogenbosch, the Netherlands
Michael Butler
2017-12-09 13:40:17 UTC
Permalink
Post by Ed Schouten
Hi Michael,
Post by Michael Butler
As clang builds for multiple targets unconditionally, it takes *days* to
build on one of my devices (700MHz Pentium-3).
Is there a way to restrict the build targets to i386 only? If not, can we
implement one?
Regardless of the discussion of how and whether this may be
implemented, do take into consideration that the target specific bits
in Clang only account for a minority of the build time. It is not as
if Clang is literally built multiple times, once for every
architecture. The build will likely still take several days, even if
this got fixed.
Have you considered doing builds on some other system and copying the
results over? According to Wikipedia, they stopped producing Pentium
III CPUs 14 years ago. Using these systems to do actual builds sounds
like a waste of electricity.
Far less than the electricity consumed by an entire planet's worth of
BSD systems building for targets they'll never use.

The target system is in a remote data-center to which I have limited
access and is the only remaining one of its type in my network. The old
installer used to be able to select a set of source archives from which
to update but I don't see that functionality in any of the current
tools. What did I miss?

imb
Pedro Giffuni
2017-12-09 15:27:32 UTC
Permalink
Post by Michael Butler
Post by Ed Schouten
Hi Michael,
Post by Michael Butler
As clang builds for multiple targets unconditionally, it takes *days* to
build on one of my devices (700MHz Pentium-3).
Is there a way to restrict the build targets to i386 only? If not, can we
implement one?
Regardless of the discussion of how and whether this may be
implemented, do take into consideration that the target specific bits
in Clang only account for a minority of the build time. It is not as
if Clang is literally built multiple times, once for every
architecture. The build will likely still take several days, even if
this got fixed.
Have you considered doing builds on some other system and copying the
results over? According to Wikipedia, they stopped producing Pentium
III CPUs 14 years ago. Using these systems to do actual builds sounds
like a waste of electricity.
Far less than the electricity consumed by an entire planet's worth of
BSD systems building for targets they'll never use.
The target system is in a remote data-center to which I have limited
access and is the only remaining one of its type in my network. The old
installer used to be able to select a set of source archives from which
to update but I don't see that functionality in any of the current
tools. What did I miss?
freebsd-update(8)

pkg upgrade

that would mean running a release, but it makes life so much easier.

Cheers,

Pedro.

Loading...