1
0
mirror of https://review.coreboot.org/flashrom.git synced 2025-10-13 22:10:23 +02:00
Files
flashrom/bindings/rust
Anastasia Klimchuk e681de4286 bindings/rust: Use SPDX in headers
Change-Id: I795a23ef228062c5d876dc1824aa473cbbbf0698
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/89419
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Reviewed-by: Antonio Vázquez Blanco <antoniovazquezblanco@gmail.com>
2025-10-11 06:02:53 +00:00
..

-------------------------------------------------------------------------------
flashrom rust bindings README
-------------------------------------------------------------------------------

Included within this folder are rust foreign function interface bindings for the
libflashrom API. libflashrom-sys is an automatically generated binding built
from the header file by the rust `bindgen` utility. It can be used for 'unsafe'
raw access to the libflashrom API. libflashrom is a library built on
libflashrom-sys, exporting a convential rust API.

See the /util/flashrom_tester/flashrom/src/flashromlib.rs file for an example of
usage.

Build Instructions
------------------

A rust toolchain is required, rustup is one source for that: https://rustup.rs/

From within child folders of this directory, where the Cargo.toml files live,
run:

 cargo build
 cargo test
 cargo doc --open

The build process uses pkg-config to find the installed version of libflashrom.
To override the desired version you wish to compile against pkg-config can be
told where to find the desired header and library, for example:

 env PKG_CONFIG_PATH=$HOME/src/flashrom/build/install/lib/x86_64-linux-gnu/pkgconfig \
    LD_LIBRARY_PATH=$HOME/src/flashrom/build/install/lib/x86_64-linux-gnu \
    cargo test