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.
Instances For

    Parse the header of a Lean file from its source.

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

      The ModuleFacetConfig for the builtin leanFacet.

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

        The ModuleFacetConfig for the builtin headerFacet.

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

          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.
          Instances For

            Recursively compute a module's transitive imports.

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

              Recursively compute a module's precompiled imports.

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

                The ModuleFacetConfig for the builtin importInfoFacet.

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

                  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.
                  Instances For

                    The ModuleFacetConfig for the builtin importArtsFacet.

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

                      The ModuleFacetConfig for the builtin importAllArtsFacet.

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

                        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.
                        Instances For

                          The ModuleFacetConfig for the builtin depsFacet.

                          Equations
                          Instances For

                            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.
                            Instances For

                              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.
                              Instances For

                                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.
                                Instances For

                                  The ModuleFacetConfig for the builtin oleanFacet.

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

                                    The ModuleFacetConfig for the builtin oleanPrivateFacet.

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

                                      The ModuleFacetConfig for the builtin ileanFacet.

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

                                        The ModuleFacetConfig for the builtin cFacet.

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

                                          The ModuleFacetConfig for the builtin bcFacet.

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

                                            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.
                                            Instances For

                                              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.
                                              Instances For

                                                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.
                                                Instances For

                                                  The ModuleFacetConfig for the builtin oExportFacet.

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

                                                    The ModuleFacetConfig for the builtin oNoExportFacet.

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

                                                      The ModuleFacetConfig for the builtin oFacet.

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

                                                        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.
                                                        Instances For

                                                          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.
                                                          Instances For
                                                            @[reducible, inline]

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

                                                            Equations
                                                            Instances For

                                                              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.
                                                              Instances For

                                                                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.
                                                                Instances For
                                                                  Equations
                                                                  • One or more equations did not get rendered due to their size.
                                                                  Instances For
                                                                    Equations
                                                                    • One or more equations did not get rendered due to their size.
                                                                    Instances For