1*0d6140beSAndroid Build Coastguard Worker------------------------------------------------------------------------------- 2*0d6140beSAndroid Build Coastguard Workerflashrom rust bindings README 3*0d6140beSAndroid Build Coastguard Worker------------------------------------------------------------------------------- 4*0d6140beSAndroid Build Coastguard Worker 5*0d6140beSAndroid Build Coastguard WorkerIncluded within this folder are rust foreign function interface bindings for the 6*0d6140beSAndroid Build Coastguard Workerlibflashrom API. libflashrom-sys is an automatically generated binding built 7*0d6140beSAndroid Build Coastguard Workerfrom the header file by the rust `bindgen` utility. It can be used for 'unsafe' 8*0d6140beSAndroid Build Coastguard Workerraw access to the libflashrom API. libflashrom is a library built on 9*0d6140beSAndroid Build Coastguard Workerlibflashrom-sys, exporting a convential rust API. 10*0d6140beSAndroid Build Coastguard Worker 11*0d6140beSAndroid Build Coastguard WorkerSee the /util/flashrom_tester/flashrom/src/flashromlib.rs file for an example of 12*0d6140beSAndroid Build Coastguard Workerusage. 13*0d6140beSAndroid Build Coastguard Worker 14*0d6140beSAndroid Build Coastguard WorkerBuild Instructions 15*0d6140beSAndroid Build Coastguard Worker------------------ 16*0d6140beSAndroid Build Coastguard Worker 17*0d6140beSAndroid Build Coastguard WorkerA rust toolchain is required, rustup is one source for that: https://rustup.rs/ 18*0d6140beSAndroid Build Coastguard Worker 19*0d6140beSAndroid Build Coastguard WorkerFrom within child folders of this directory, where the Cargo.toml files live, 20*0d6140beSAndroid Build Coastguard Workerrun: 21*0d6140beSAndroid Build Coastguard Worker 22*0d6140beSAndroid Build Coastguard Worker cargo build 23*0d6140beSAndroid Build Coastguard Worker cargo test 24*0d6140beSAndroid Build Coastguard Worker cargo doc --open 25*0d6140beSAndroid Build Coastguard Worker 26*0d6140beSAndroid Build Coastguard WorkerThe build process uses pkg-config to find the installed version of libflashrom. 27*0d6140beSAndroid Build Coastguard WorkerTo override the desired version you wish to compile against pkg-config can be 28*0d6140beSAndroid Build Coastguard Workertold where to find the desired header and library, for example: 29*0d6140beSAndroid Build Coastguard Worker 30*0d6140beSAndroid Build Coastguard Worker env PKG_CONFIG_PATH=$HOME/src/flashrom/build/install/lib/x86_64-linux-gnu/pkgconfig \ 31*0d6140beSAndroid Build Coastguard Worker LD_LIBRARY_PATH=$HOME/src/flashrom/build/install/lib/x86_64-linux-gnu \ 32*0d6140beSAndroid Build Coastguard Worker cargo test 33