LLAR is a cloud-based multi-language package manager built with XGo. It resolves dependencies, downloads source code, and builds libraries from source using declarative formulas.
go install -ldflags="-checklinkname=0" github.com/goplus/llar/cmd/llar@latest# Build zlib
llar make madler/zlib@v1.3.1
# Build with verbose output
llar make -v madler/zlib@v1.3.1
# Build and export to a directory
llar make -o ./output madler/zlib@v1.3.1
# Build and export as a zip archive
llar make -o zlib.zip madler/zlib@v1.3.1
# Build a local formula
llar make ./@1.0.0
llar make ./madler/zlib@v1.3.1| Command | Description |
|---|---|
llar make <module@version> |
Build a module from source |
| Flag | Description |
|---|---|
-v, --verbose |
Enable verbose build output |
-o, --output <path> |
Output path (directory or .zip file) |
- Formula resolution - LLAR fetches the build formula for the requested module from the formula hub
- Dependency resolution - The formula's
onRequirecallback extracts dependencies, which are resolved using MVS (Minimum Version Selection) - Build - Dependencies are built first (leaves before roots), then the main module is built via the formula's
onBuildcallback - Caching - Build results are cached per (module, version, platform) so rebuilds are instant
compareVer (a, b) => { # version comparison
...
}See LLAR Formula.
