Documentation

Lake.Build.Module

Module Build Definitions #

Facet Builds #

Build function definitions for a module's builtin facets.

@[deprecated "Deprecated without replacement" (since := "2025-03-28")]

Compute library directories and build external library Jobs of the given packages.

Equations
  • One or more equations did not get rendered due to their size.

Parse the header of a Lean file from its source.

Equations
  • One or more equations did not get rendered due to their size.

The ModuleFacetConfig for the builtin leanFacet.

Equations
  • One or more equations did not get rendered due to their size.

The ModuleFacetConfig for the builtin headerFacet.

Equations
  • One or more equations did not get rendered due to their size.

Compute an Array of a module's direct local imports from its header.

Equations
  • One or more equations did not get rendered due to their size.

Recursively compute a module's transitive imports.

Equations
  • One or more equations did not get rendered due to their size.

Recursively compute a module's precompiled imports.

Equations
  • One or more equations did not get rendered due to their size.

The ModuleFacetConfig for the builtin importInfoFacet.

Equations
  • One or more equations did not get rendered due to their size.

Computes the import artifacts and transitive import trace of a module's imports.

Equations
  • One or more equations did not get rendered due to their size.

The ModuleFacetConfig for the builtin importArtsFacet.

Equations
  • One or more equations did not get rendered due to their size.

The ModuleFacetConfig for the builtin importAllArtsFacet.

Equations
  • One or more equations did not get rendered due to their size.

Recursively build a module's dependencies, including:

  • Transitive local imports
  • Shared libraries (e.g., extern_lib targets or precompiled modules)
  • extraDepTargets of its library
Equations
  • One or more equations did not get rendered due to their size.

Remove any cached file hashes of the module build outputs (in .hash files).

Equations
  • One or more equations did not get rendered due to their size.

Cache the file hashes of the module build outputs in .hash files.

Equations
  • One or more equations did not get rendered due to their size.

Recursively build a Lean module. Fetch its dependencies and then elaborate the Lean source file, producing all possible artifacts (e.g., .olean, .ilean, .c, .bc).

Equations
  • One or more equations did not get rendered due to their size.

The ModuleFacetConfig for the builtin oleanFacet.

Equations
  • One or more equations did not get rendered due to their size.

The ModuleFacetConfig for the builtin oleanPrivateFacet.

Equations
  • One or more equations did not get rendered due to their size.

The ModuleFacetConfig for the builtin ileanFacet.

Equations
  • One or more equations did not get rendered due to their size.

The ModuleFacetConfig for the builtin cFacet.

Equations
  • One or more equations did not get rendered due to their size.

The ModuleFacetConfig for the builtin bcFacet.

Equations
  • One or more equations did not get rendered due to their size.

Recursively build the module's object file from its C file produced by lean with -DLEAN_EXPORTING set, which exports Lean symbols defined within the C files.

Equations
  • One or more equations did not get rendered due to their size.

Recursively build the module's object file from its C file produced by lean. This version does not export any Lean symbols.

Equations
  • One or more equations did not get rendered due to their size.

Recursively build the module's object file from its bitcode file produced by lean.

Equations
  • One or more equations did not get rendered due to their size.

The ModuleFacetConfig for the builtin oExportFacet.

Equations
  • One or more equations did not get rendered due to their size.

The ModuleFacetConfig for the builtin oNoExportFacet.

Equations
  • One or more equations did not get rendered due to their size.

The ModuleFacetConfig for the builtin oFacet.

Equations
  • One or more equations did not get rendered due to their size.

Recursively build the shared library of a module (e.g., for --load-dynlib or --plugin).

Equations
  • One or more equations did not get rendered due to their size.

A name-configuration map for the initial set of Lake module facets (e.g., imports, c, o, dynlib).

Equations
  • One or more equations did not get rendered due to their size.
@[reducible, inline]

A name-configuration map for the initial set of Lake module facets (e.g., imports, c, o, dynlib).

Equations

Top-Level Builds #

Definitions to support lake setup-file and lake lean builds.

Computes the module setup of edited Lean code for the Lean language server, building its imports and other dependencies. Used by lake setup-file.

Due to its exclusive use as a top-level build, it does not construct a proper trace state.

Equations
  • One or more equations did not get rendered due to their size.

Computes the arguments required to evaluate the Lean file with lean, building its imports and other dependencies. Used by lake lean.

Due to its exclusive use as a top-level build, it does not construct a proper trace state.

Equations
  • One or more equations did not get rendered due to their size.
Equations
  • One or more equations did not get rendered due to their size.
Equations
  • One or more equations did not get rendered due to their size.