The savi info subcommand is intended for cleanly getting one piece of information about the Savi compiler/environment per call, without requiring the caller to use grep or similar for filtering.
Currently, the following three information items are supported:
version - the release tag of Savi, or unknown if not a tagged release.
llvm-version - the release tag of Savi's statically-linked LLVM, as given by llvm-config --version.
bin-path - the absolute path to the savi binary on disk.
The main motivation for adding this feature at the moment is a desire to automate installation of built Savi programs into the same bin-path as the location where the savi binary is installed, because this location is likely to either be in the user's PATH or shimmed by asdf, and is the most appropriate place for installed application binaries to go.
Think use cases like Savi-built CLI tools in the Savi ecosystem, such as the capnpc-savi plugin in the CapnProto library, which the capnp tool will invoke for compiling .capnp files to .savi.
The
savi info
subcommand is intended for cleanly getting one piece of information about the Savi compiler/environment per call, without requiring the caller to use grep or similar for filtering.Currently, the following three information items are supported:
version
- the release tag of Savi, orunknown
if not a tagged release.llvm-version
- the release tag of Savi's statically-linked LLVM, as given byllvm-config --version
.bin-path
- the absolute path to thesavi
binary on disk.The main motivation for adding this feature at the moment is a desire to automate installation of built Savi programs into the same bin-path as the location where the
savi
binary is installed, because this location is likely to either be in the user's PATH or shimmed byasdf
, and is the most appropriate place for installed application binaries to go.Think use cases like Savi-built CLI tools in the Savi ecosystem, such as the
capnpc-savi
plugin in theCapnProto
library, which thecapnp
tool will invoke for compiling.capnp
files to.savi
.