- pkg : Lake.Package
The package the library belongs to.
- name : Lake.Name
The external library's name.
- config : Lake.ExternLibConfig (Lake.Package.name s.pkg) s.name
The library's user-defined configuration.
An external library -- its package plus its configuration.
Instances For
@[inline]
The external libraries of the package (as an Array).
Equations
- Lake.Package.externLibs self = Lake.DRBMap.fold (fun a x v => Array.push a { pkg := self, name := x, config := v }) #[] self.externLibConfigs
Instances For
@[inline]
Try to find a external library in the package with the given name.
Equations
- Lake.Package.findExternLib? name self = Option.map (fun x => { pkg := self, name := name, config := x }) (Lake.DRBMap.find? self.externLibConfigs name)
Instances For
@[inline]
The arguments to pass to leanc
when linking the external library.
That is, the package's moreLinkArgs
.
Equations
- Lake.ExternLib.linkArgs self = Lake.Package.moreLinkArgs self.pkg
Instances For
@[inline]
The name of the package target used to build the external library's static binary.
Equations
- Lake.ExternLib.staticTargetName self = Lean.Name.str self.name "static"