rust-bitcoin-unsafe-fast/bitcoin/embedded
Tobin C. Harding 9a586987d1
Move opcodes to primitives
Move the `opcodes` module to the new `primitives` crate. This is pretty
straight forward, some things to note:

- Are we ok with the public wildcard re-export from `blockdata`? I think
so because the whole `blockdata` module should, IMO, be deleted after
everything in it is moved to `primitives`.

- `decode_pushnum` becomes public.

Includes addition of a `patch` section for `primitives` in the
`bitcoin/embedded` crate.
2024-07-09 15:26:33 +10:00
..
scripts ci: shellcheck checks 2024-05-11 18:08:53 +00:00
src Pass keys by value 2024-06-14 14:16:28 +10:00
Cargo.toml Move opcodes to primitives 2024-07-09 15:26:33 +10:00
README.md embedded: Document how to clean up linker flags 2023-05-26 14:39:14 +10:00
memory.x Import bitcoin_hashes crate into hashes 2022-11-08 08:58:09 +11:00

README.md

Running

To run the embedded test, first prepare your environment:

sudo ./scripts/install-deps
rustup +nightly target add thumbv7m-none-eabi

Then:

source ./scripts/env.sh && cargo +nightly run --target thumbv7m-none-eabi

Output should be something like:

heap size 524288
secp buf size 66240
Seed WIF: L1HKVVLHXiUhecWnwFYF6L3shkf1E12HUmuZTESvBXUdx3yqVP1D
Address: bc1qpx9t9pzzl4qsydmhyt6ctrxxjd4ep549np9993

Note that this heap size is required because of the amount of stack used by libsecp256k1 when initializing a context.

Cleanup

After sourcing scripts/env.sh and before building again using another target you'll want to unset RUSTFLAGS otherwise you'll get linker errors.

unset RUSTFLAGS