Jon Cinque
d54ec406df
sdk: Add --jobs parameter in build/test bpf ( #24359 )
2022-04-15 13:49:43 +02:00
Dmitri Makarov
6b611e1c52
Bump bpf-tools to v1.25
...
- Tweak linker script
Ensure that all read only sections end up in one segment, and
everything else in other segments. Discard .eh_frame, .hash and
.gnu.hash since they are unused.
- Don't create invalid string slices in stdout/stderr on Solana
- Report exceeded stack size as a warning if dynamic frames are off
- Native support for signed division in SBF
Adds BPF_SDIV, which is enabled only for the SBF subtarget.
- Introduce dynamic stack frames and the SBFv2 flag
Dynamic stack frames are currently opt-in and enabled setting
cpu=sbfv2. When sbfv2 is used, ELF files are flagged with
e_flags=EF_SBF_V2 so the runtime can detect it and react
accordingly.
2022-04-12 10:51:15 -07:00
Dmitri Makarov
689064a4f4
Bump sbf-tools version to v1.24
2022-04-08 09:06:40 -07:00
Will Hickey
c4ecfa5716
Bump version to v1.11 ( #23807 )
...
* Revert crossbeam_epoch to stable. 0.9.8 only works with nightly
* Remove unneeded unit expression
2022-03-21 17:40:50 -05:00
Will Hickey
2f58c9e501
Bump version to 1.10.4 ( #23743 )
2022-03-17 14:02:13 -05:00
Will Hickey
63bf0f66af
Bump version to 1.10.3 ( #23648 )
2022-03-14 11:18:45 -05:00
Brooks Prumo
d20dd21600
Sort tables in Cargo.toml files ( #23602 )
2022-03-11 11:05:57 -06:00
Will Hickey
b444836a97
Bump version to 1.10.2 ( #23597 )
2022-03-10 16:41:06 -06:00
klykov
8abaa5d350
update clap to v3: bpf-tools
2022-03-09 17:53:06 +01:00
Will Hickey
1a99251498
Bump version to 1.10.1 ( #23453 )
2022-03-02 13:47:01 -06:00
dependabot[bot]
fe18ea35a2
chore: bump cargo_metadata from 0.14.1 to 0.14.2 ( #23365 )
...
Bumps [cargo_metadata](https://github.com/oli-obk/cargo_metadata ) from 0.14.1 to 0.14.2.
- [Release notes](https://github.com/oli-obk/cargo_metadata/releases )
- [Commits](https://github.com/oli-obk/cargo_metadata/compare/0.14.1...0.14.2 )
---
updated-dependencies:
- dependency-name: cargo_metadata
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-28 05:46:47 +00:00
Justin Starry
c97f34a0fd
Add script for running nightly rustfmt on all workspaces ( #23244 )
...
* Add script for running nightly rustfmt on all workspaces
* invalidate ci cache
2022-02-22 11:59:06 +08:00
Dmitri Makarov
c7aa7fb66b
Add sbf-tools version to cargo target cache name on CI agents
2022-02-09 03:26:56 +00:00
Dmitri Makarov
a9d9a5095b
Bump bpf-tools to v1.23
2022-02-03 15:50:18 -08:00
Michael Vines
6d5bbca630
Pacify clippy
2022-01-21 19:12:57 -08:00
Alessandro Decina
0459f0a4c0
cargo-build-bpf: don't set -C linker on windows ( #22314 )
...
* cargo-build-bpf: don't set -C linker on windows
Since we're now linking using rust-lld
(87ba5c61a5
)
which is guaranteed to always be in the sysroot, hardcoding the linker path
shouldn't be needed anymore.
* Update Cargo.lock
2022-01-07 07:41:13 +11:00
Alessandro Decina
959ea26816
Re-enable LTO ( #22287 )
...
LTO seems to work fine now. It was possibly fixed by either the LLVM13 upgrade
or by b2ed47a925
,
which fixed a LTO issue with tests.
2022-01-06 09:16:50 +11:00
Jon Cinque
57986f982a
cargo-build-bpf: Add Windows support ( #20276 )
...
* cargo-build-bpf: Add Windows support
* Update error message
2021-12-28 18:37:35 -05:00
Dmitri Makarov
298c2d0f62
Display bpf-tools version in cargo-build-bpf version string ( #22061 )
...
* Display bpf-tools version in cargo-build-bpf version string
* Print cargo-build-bpf version in CI for reference in stable-bpf jobs
2021-12-22 23:10:25 +00:00
Dmitri Makarov
7cc6262b5a
Bump bpf-tools to v1.21
2021-12-21 16:40:42 -08:00
dependabot[bot]
a5769c029f
chore: bump tar from 0.4.37 to 0.4.38 ( #21921 )
...
* chore: bump tar from 0.4.37 to 0.4.38
Bumps [tar](https://github.com/alexcrichton/tar-rs ) from 0.4.37 to 0.4.38.
- [Release notes](https://github.com/alexcrichton/tar-rs/releases )
- [Commits](https://github.com/alexcrichton/tar-rs/compare/0.4.37...0.4.38 )
---
updated-dependencies:
- dependency-name: tar
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2021-12-16 15:06:56 -07:00
Trent Nelson
d6f22433d0
Bump version to v1.10.0
2021-12-04 20:17:54 +00:00
Michael Vines
b8837c04ec
Reformat imports to a consistent style for imports
...
rustfmt.toml configuration:
imports_granularity = "One"
group_imports = "One"
2021-12-03 09:19:13 -08:00
Michael Vines
dd12d90eac
Upgrade to Rust 2021
2021-11-30 20:43:46 -08:00
Dmitri Makarov
bae5dae61d
Bump bpf-tools to v1.20
...
- Fix C standard library to include only reentrant versions of functions
- Use a version of solana_rbpf with fixed relocations handling
- Add a test of using C standard library functions in on-chain program
2021-11-18 20:50:58 -08:00
Dmitri Makarov
3f4f05865d
Bump bpf-tools to v1.19 ( #21256 )
...
Toolchain upgrade to rust 1.56.0 and clang 13.0.
2021-11-13 19:36:28 +00:00
Dmitri Makarov
55d19e61da
Make cargo-build-bpf clean up after failed installation of bpf-tools ( #21143 )
2021-11-03 21:06:14 +00:00
Dmitri Makarov
b9eee66f94
Add cargo-build-bpf logic to recover from failed package downloads ( #21138 )
2021-11-02 22:41:06 +00:00
dependabot[bot]
d5104d95d1
chore: bump cargo_metadata from 0.14.0 to 0.14.1 ( #21042 )
...
Bumps [cargo_metadata](https://github.com/oli-obk/cargo_metadata ) from 0.14.0 to 0.14.1.
- [Release notes](https://github.com/oli-obk/cargo_metadata/releases )
- [Commits](https://github.com/oli-obk/cargo_metadata/compare/v0.14.0...0.14.1 )
---
updated-dependencies:
- dependency-name: cargo_metadata
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-10-28 18:43:26 +00:00
Dmitri Makarov
4287bf6b8b
Bump bpf-tools to v1.18 ( #20991 )
...
- added newlib standard C library to clang toolchain
- fixed BPF backend bug that accidentally deleted code, issue #20538
2021-10-26 22:51:44 +00:00
Brian Anderson
d9b0fc0e3e
Remove @brief annotations from Rust API docs ( #20769 )
2021-10-19 15:48:15 -06:00
Trent Nelson
767f740305
Bump version to 1.9.0
2021-10-06 17:57:41 -07:00
Justin Starry
76176a4620
Recover from interrupted bpf sdk installs ( #19651 )
2021-09-06 01:59:58 -07:00
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
Jack May
a89f180145
Allow closing upgradeable program accounts ( #19319 )
2021-08-24 10:05:54 -07:00
Jeff Washington (jwash)
89a31ff473
change untar to use unpack instead of unpack_in ( #19216 )
...
* change untar to use unpack instead of unpack_in
* hacky, but maybe passes tests
* chore: bump tar from 0.4.35 to 0.4.37
Bumps [tar](https://github.com/alexcrichton/tar-rs ) from 0.4.35 to 0.4.37.
- [Release notes](https://github.com/alexcrichton/tar-rs/releases )
- [Commits](https://github.com/alexcrichton/tar-rs/compare/0.4.35...0.4.37 )
---
updated-dependencies:
- dependency-name: tar
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
* [auto-commit] Update all Cargo lock files
* cleanup
* cleanup, add validate_inside_dst
* collapse use
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* delete comment line
* add comments
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
2021-08-18 15:49:02 -05:00
Dmitri Makarov
d6a2b70438
Bump bpf-tools to v1.15 ( #19117 )
...
- update to rust 1.54.0
2021-08-10 07:21:14 +00:00
Dmitri Makarov
cde1461555
Bump bpf-tools to v1.14 ( #19023 )
...
- improved memory operations performance
- minor fixes
2021-08-03 09:13:58 +00:00
Dmitri Makarov
d117be6792
Reword help of generate-child-script-on-failure cargo bpf tools option ( #18685 )
2021-07-15 03:31:33 +00:00
Dmitri Makarov
6f72f8b1fc
Generate a script to rerun the failed sub-command in cargo-test-bpf ( #18582 )
...
* Generate a script to rerun the failed sub-command in cargo-test-bpf
* Generate a script to rerun the failed sub-command in cargo-build-bpf
* Add cargo-build-bpf test for generate-child-script-on-failure option
2021-07-15 01:02:42 +00:00
Dmitri Makarov
cf9a4575ae
Prevent duplication of RUSTFLAGS settings in cargo-build-bpf subprocesses ( #18576 )
2021-07-11 01:24:26 +00:00
dependabot[bot]
31443c5c61
chore: bump cargo_metadata from 0.13.1 to 0.14.0 ( #18544 )
...
Bumps [cargo_metadata](https://github.com/oli-obk/cargo_metadata ) from 0.13.1 to 0.14.0.
- [Release notes](https://github.com/oli-obk/cargo_metadata/releases )
- [Commits](https://github.com/oli-obk/cargo_metadata/compare/v0.13.1...v0.14.0 )
---
updated-dependencies:
- dependency-name: cargo_metadata
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-09 16:28:24 +00:00
Dmitri Makarov
e752299ac5
Bump bpf-tools version
...
Update Rust BPF to version 1.53
2021-07-07 05:08:40 -07:00
Dmitri Makarov
25ac664106
Add a command to install rustfilt for a cargo-build-bpf test
2021-07-01 21:09:16 -07:00
dependabot[bot]
0426c2d28e
chore: bump bzip2 from 0.3.3 to 0.4.3 ( #18361 )
...
* chore: bump bzip2 from 0.3.3 to 0.4.3
Bumps [bzip2](https://github.com/alexcrichton/bzip2-rs ) from 0.3.3 to 0.4.3.
- [Release notes](https://github.com/alexcrichton/bzip2-rs/releases )
- [Commits](https://github.com/alexcrichton/bzip2-rs/commits )
---
updated-dependencies:
- dependency-name: bzip2
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
* [auto-commit] Update all Cargo lock files
* Update to new api
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
Co-authored-by: Tyera Eulberg <tyera@solana.com>
2021-07-01 13:10:52 -06:00
Dmitri Makarov
cf25729eaa
Add cargo-build-bpf integration tests
2021-07-01 06:47:25 -07:00
Dmitri Makarov
e98a7504f2
Bump bpf-tools version to 1.12
2021-06-25 18:00:44 -07:00
Dmitri Makarov
d6bad60c1b
Bump bpf-tools version to 1.11 ( #18079 )
...
Avoid including local paths in compiler generated ELF files
2021-06-19 01:00:59 +00:00
Alexander Meißner
6514096a67
chore: cargo +nightly clippy --fix -Z unstable-options
2021-06-18 10:42:46 -07:00
Dmitri Makarov
3570b00560
Make cargo-build-bpf pass additional options to cargo build command
...
Users need to be able to pass additional command line options such as
-p that are not supported by 'cargo build-bpf' but are meaningful for
the 'cargo build' command. This change allows cargo-build-bpf to pass
all command line options specified after '--' option to 'cargo build'.
2021-06-18 10:20:35 -07:00