l3build(1) General Commands Manual l3build(1)

l3build - Checking and building packages

l3build <target> [<options>] [<names>]

The l3build system is a Lua script for building TeX packages, with particular emphasis on regression testing. It is written in cross-platform Lua code, so can be used by any modern TeX distribution with the texlua interpreter. A package for building with l3build can be written in any TeX dialect; its defaults are set up for LaTeX packages written in the DocStrip style.

The standard l3build targets are:

Runs all automated tests
Cleans out directory tree
Creates CTAN-ready archive
Typesets all documentation files
Installs files into the local texmf tree
Creates a manifest file
Saves test validation log
Updates release tags in files
Uninstalls files from the local texmf tree
Unpacks the source files into the build tree
Sends archive to CTAN for public release

Various options apply

Sets the config(s) used for running tests
Sets the date to insert into sources
Runs target in debug mode
Skips cleaning up the test area
Dry run for install or upload
Email address of CTAN uploader
Sets the engine(s) to use for running test
Sets the epoch for tests and typesetting
Takes the upload announcement from the given file
Name of first test to run
Installs all files
Stops running tests after the first failure
Prints help message and exits
Name of last test to run
Text for upload announcement message
Suppresses TeX output when unpacking
Skips setup: simply reruns tests
Shows the full log of the failure with 'halt-on-error'
Shows the invocation to update failing .tlg files
Shuffles order of tests
Run tests with the std engine (config dependent)
Location of user texmf tree
Prints version information and exits

The LaTeX Project (latex-team@latex-project.org)

Please log issues on the GitHub homepage: https://github.com/latex3/l3build/issues.

See l3build.pdf for more details.

2024-02-08