A Lean executable's declarative configuration.
- buildType : Lake.BuildType
- leanOptions : Array Lake.LeanOption
- moreServerOptions : Array Lake.LeanOption
- backend : Lake.Backend
- name : Lake.Name
The name of the target.
- srcDir : Lake.FilePath
The subdirectory of the package's source directory containing the executable's Lean source file. Defaults simply to said
srcDir.(This will be passed to
leanas the-Roption.) - root : Lake.Name
The root module of the binary executable. Should include a
maindefinition that will serve as the entry point of the program.The root is built by recursively building its local imports (i.e., fellow modules of the workspace).
Defaults to the name of the target.
- exeName : String
The name of the binary executable. Defaults to the target name with any
.replaced with a-. An
Arrayof target names to build before the executable's modules.- supportInterpreter : Bool
Enables the executable to interpret Lean files (e.g., via
Lean.Elab.runFrontend) by exposing symbols within the executable to the Lean interpreter.Implementation-wise, on Windows, the Lean shared libraries are linked to the executable and, on other systems, the executable is linked with
-rdynamic. This increases the size of the binary on Linux and, on Windows, requireslibInit_shared.dllandlibleanshared.dllto be co-located with the executable or part ofPATH(e.g., vialake exe). Thus, this feature should only be enabled when necessary.Defaults to
false. - nativeFacets : Bool → Array (Lake.ModuleFacet (Lake.BuildJob Lake.FilePath))
The module facets to build and combine into the executable. If
shouldExportis true, the module facets should export any symbols a user may expect to lookup in the executable. For example, the Lean interpreter will use exported symbols in the executable. Thus,shouldExportwill betrueifsupportInterpreter := true.Defaults to a singleton of
Module.oExportFacet(ifshouldExport) orModule.oFacet. That is, the object file compiled from the Lean source, potentially with exported Lean symbols.
Instances For
Equations
- One or more equations did not get rendered due to their size.