solana/sdk
Kenta Iwasaki 4ad7069827 cargo-build-bpf: allow sdk path to be set by environment variables
In many Linux distros such as NixOS, the directory in which packages are
installed is assumed to be read-only. To work around this, it is
expected that the filepaths which packaged CLI tools take in are able to
be freely configured through either 1) command-line flags, 2)
environment variables, or 3) a configuration file.

In this commit, environment variables 'BPF_SDK_PATH' and 'BPF_OUT_PATH',
which map respectively to command-line flags '--bpf-sdk-path' and
'--bpf-out-dir', are now handled in cargo-build-bpf.

Additionally, given that arbitrary filepaths may now be set in which the
BPF SDK is located, the requirement in which
'$BPF_SDK_PATH/dependencies/bpf-tools' must strictly be a symbolic link
to the directory '$HOME/.cache/solana/${bpf-tools.version}/bpf-tools has
been relaxed.

Ideally, the directory in which bpf-tools is expected to be downloaded
to and stored should be configurable. Though, this commit serves as a
temporary fix which enables NixOS users to now start being able to build
applications with the Solana SDK.
2021-08-30 23:11:48 +02:00
..
benches Store versioned transactions in the ledger, disabled by default (#19139) 2021-08-17 15:17:56 -07:00
bpf Split solana_sdk.h (#19172) 2021-08-13 09:49:24 -07:00
cargo-build-bpf cargo-build-bpf: allow sdk path to be set by environment variables 2021-08-30 23:11:48 +02:00
cargo-test-bpf Reword help of generate-child-script-on-failure cargo bpf tools option (#18685) 2021-07-15 03:31:33 +00:00
docker-solana bump recommended maps/nofiles 2021-08-04 11:15:18 -06:00
macro Add macros for deprecacted ids (#18907) 2021-07-26 20:54:46 -07:00
program Allow closing upgradeable program accounts (#19319) 2021-08-24 10:05:54 -07:00
src removes require-stake-for-gossip feature (#19476) 2021-08-27 21:17:15 +00:00
.gitignore
Cargo.toml chore: bump serde from 1.0.129 to 1.0.130 (#19497) 2021-08-30 18:19:34 +00:00
README.md Add sdk and program READMEs (#18154) 2021-06-23 21:22:35 +00:00
Xargo.toml Initial population of solana-program-sdk 2020-10-24 08:37:55 -07:00
build.rs Remove frozen ABI modules from solana-sdk 2020-10-20 16:11:30 -07:00

README.md

Solana

Solana SDK

Use the Solana SDK Crate to write client side applications in Rust. If writing on-chain programs, use the Solana Program Crate instead.

More information about Solana is available in the Solana documentation.

The Solana Program Library provides examples of how to use this crate.

Still have questions? Ask us on Discord