mix ccxt.build_lighter_signer (bourse v0.7.0)

Copy Markdown View Source

Builds the official Lighter Go C-shared library and its generated header, then links the isolated Port helper for the current release target.

mix ccxt.build_lighter_signer

The Go module pins the exact lighter-go revision selected by Task 198.

Summary

Functions

Returns the native target identifier for the current host.

Returns the runtime output directory for a supported target.

Returns the packaged Lighter signer source directory.

Resolves a release target from an explicit host description.

Functions

host_target()

@spec host_target() :: String.t()

Returns the native target identifier for the current host.

output_dir(target)

@spec output_dir(String.t()) :: String.t()

Returns the runtime output directory for a supported target.

source_dir()

@spec source_dir() :: String.t()

Returns the packaged Lighter signer source directory.

target_for(os_type, system_architecture, env \\ %{})

@spec target_for({:unix | :win32, atom()}, String.t(), %{
  optional(String.t()) => String.t()
}) ::
  String.t()

Resolves a release target from an explicit host description.

Windows reports a :system_architecture of "win32" — the OS, not the CPU — so on that platform the architecture comes from the environment the Windows loader populates instead. Taking the host as arguments keeps every branch reachable from a test on any one machine.