HomeFreeBSD

Do not clean (in buildworld/buildkernel) by default

Description

Do not clean (in buildworld/buildkernel) by default

As discussed on the freebsd-arch mailing list[1]. For historical
reasons FreeBSD's buildworld and buildkernel targets started by cleaning
the object tree, for traditional (non-metamode) builds.

Cleaning is not necessary when dependencies are properly tracked, and we
have a somewhat kludgey script[2] to handle some known cases where deps
were mishandled by traditional builds. Be consistent with the vast
majority of open source build systems by default, and do not clean at
the beginning of buildworld or buildkernel.

Users may set WITH_CLEAN in src.conf(5) to restore the previous
behaviour, or run make cleanworld and/or make cleankernel before
starting a build.

[1] https://lists.freebsd.org/archives/freebsd-arch/2024-July/000727.html
[2] tools/build/depend-cleanup.sh

Reviewed by: jhb, imp
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D46172

Details

Provenance
emasteAuthored on Jul 29 2024, 12:00 AM
Reviewer
jhb
Differential Revision
D46172: Do not clean (in buildworld/buildkernel) by default
Parents
rGf933363a81d6: ObsoleteFiles.inc: Include the default compression suffix for man pages
Branches
Unknown
Tags
Unknown