rules/odin/toolchain.js

Developer reference: this page includes exported implementation details. BUILD authors should prefer the User API reference.

ODIN_TOOL

const ODIN_TOOL

Undocumented.

odinCacheKey()

odinCacheKey(version, plat)

Return the named-cache key for an Odin toolchain version and platform.

ParameterTypeDescription
versionstring
plat{ os: string, arch: string }

Returns: string

odinArtifactName()

odinArtifactName(version, plat)

Return the Odin release artifact filename for a version and platform.

ParameterTypeDescription
versionstring
plat{ os: string, arch: string }

Returns: string

odinDownloadUrl()

odinDownloadUrl(version, plat)

Return the Odin release download URL for a version and platform.

ParameterTypeDescription
versionstring
plat{ os: string, arch: string }

Returns: string

odinSupportedPlatforms()

odinSupportedPlatforms()

Return the platforms Odin publishes release archives for.

Returns: Array<{ os: string, arch: string }>

OdinToolchain (implementation class)

class OdinToolchain

Implementation class. BUILD files should use odinToolchain().

Undocumented.

odinToolchain()

odinToolchain(version, opts = {})

Declare an Odin toolchain version and optionally set it as the default. matching lockfile entry (warns instead of failing). registering an "odin-linker" product. If omitted, Odin links with whatever ld the gcc toolchain's clang wrapper selects by default.

ParameterTypeDescription
versionstringOdin release version (matches .odin-version).
[opts]object
[opts.default=false]booleanSet as the default toolchain.
[opts.unverified=false]booleanAllow downloading without a
[opts.linker]objectLinker toolchain handle (e.g. moldToolchain())

Returns: object Target handle for this Odin toolchain.

acquireOdinToolchain

const acquireOdinToolchain

Acquire (download, verify, and extract) an Odin toolchain, caching it in the named cache. Odin binary.

ParameterTypeDescription
versionstringOdin release version, e.g. "dev-2026-03".

Returns: Promise<string> Local path to the toolchain root containing the

resolveOdinToolchainVersion()

resolveOdinToolchainVersion(version)

Resolve an explicit or default Odin toolchain version.

ParameterTypeDescription
[version]string

Returns: string

defaultOdinToolchainVersion()

defaultOdinToolchainVersion()

Return the currently configured default Odin toolchain version.

Returns: string|null

defaultOdinToolchain()

defaultOdinToolchain()

Return the currently configured default Odin toolchain target handle.

Returns: object|null