HomeFreeBSD

tools: build: add a rewrite of makeman in lua

Description

tools: build: add a rewrite of makeman in lua

The primary benefit of this rewrite is that it parallelizes a number of
the make(1) jobs that it needs to do. It does so with a very naive
forking model that could likely be improved, but is sufficient for our
purposes. This version also doesn't assume that CWD is sane, and
instead operates relative to the directory the script resides in.

Note that this initial version is only intended to match the output of
the legacy script. Some work is planned afterward to refactor the
script out into various components to improve maintainability after we
have switched over to it.

In my horribly performing dev environment, this version runs in 40s
rather than the original ~2 minutes. On a Mt. Snow machine, this
version runs in ~15s rather than the original ~1m40s.

This change does not yet switch the top-level makeman target over to
the new version.

Reviewed by: bapt (earlier version), emaste
Differential Revision: https://reviews.freebsd.org/D39084

Details

Provenance
kevansAuthored on Jun 4 2025, 5:06 PM
Reviewer
bapt
Differential Revision
D39084: tools: build: add a rewrite of makeman in lua
Parents
rG5304a20ff148: cam nvme: Add nvme_command_string
Branches
Unknown
Tags
Unknown