mirror of
https://review.coreboot.org/flashrom.git
synced 2025-11-16 12:40:41 +01:00
2638aafdbb0ceeefb271603f7396a9b80db074d9
Ensure ChromeOS ebuild (ecargo_test) runs all unit tests, including those under flashrom/src/cmd.rs which were previously being skipped due to not being in the default Cargo workspace. By adding flashrom/ to the [workspace] section of Cargo.toml, these tests will now be consistently included when building and testing flashrom-tester on ChromeOS. References: * ebuild of flashrom-tester: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/refs/heads/main/sys-apps/flashrom-tester/flashrom-tester-9999.ebuild * ecarg_test: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/refs/heads/main/eclass/cros-rust.eclass#765 BUG=b:338962302 TEST=(ChromeOS) FEATURES=`test emerge-corsola flashrom-tester` Could see tests like `cmd::tests::decode_io_opt ... ok` TEST=(UPSTREAM) 1. Build flashrom by `meson` 2. Build bindings/rust/libflashrom by `cargo build` 3. Build util/flashrom_tester by `cargo build` `cargo test --workspace` Could see tests like `cmd::tests::decode_io_opt ... ok` Change-Id: Ic23bc35592e6d7d8dd24c71630ea9a2eb2d58573 Signed-off-by: Hsuan Ting Chen <roccochen@chromium.org> Reviewed-on: https://review.coreboot.org/c/flashrom/+/82231 Reviewed-by: Anastasia Klimchuk <aklm@chromium.org> Reviewed-by: Angel Pons <th3fanbus@gmail.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
flashrom README
===============
flashrom is a utility for detecting, reading, writing, verifying and erasing
flash chips. It is often used to flash BIOS/EFI/coreboot/firmware images
in-system using a supported mainboard, but it also supports flashing of network
cards (NICs), SATA controller cards, and other external devices which can
program flash chips.
It supports a wide range of flash chips (most commonly found in SOIC8, DIP8,
SOIC16, WSON8, PLCC32, DIP32, TSOP32, and TSOP40 packages), which use various
protocols such as LPC, FWH, parallel flash, or SPI.
Do not use flashrom on laptops (yet)! The embedded controller (EC) present in
many laptops might interact badly with any attempts to communicate with the
flash chip and may brick your laptop.
Please make a backup of your flash chip before writing to it.
Please see the flashrom(8) manpage :doc:`classic_cli_manpage`.
Building / installing / packaging
---------------------------------
flashrom supports building with **make** and **meson**.
TLDR, building with meson
"""""""""""""""""""""""""
::
meson setup builddir
meson compile -C builddir
meson test -C builddir
meson install -C builddir
For full detailed instructions, follow the information in
:doc:`dev_guide/building_from_source`
TLDR, building with make
""""""""""""""""""""""""
::
make
make install
For full detailed instructions, follow the information in
:doc:`dev_guide/building_with_make`
Contact
-------
The official flashrom website is:
https://www.flashrom.org/
For available contact methods see :doc:`contact`
Description
Languages
C
90.2%
Rust
5%
Shell
2%
Makefile
1.6%
Meson
1.2%