[PATCH v5 00/16] buildman: Correct various issues with missing blobs

Simon Glass sjg at chromium.org
Thu Nov 10 03:14:38 CET 2022


This series attempts to tidy up the problem of missing blobs, making
U-Boot default to failing the build, but providing ways to configure this
so that buildman can still be used for build testing by people who don't
have the blobs or don't care about them.

This is based on discussion in [1] as well as some experimentation.

It also moves the buildman docs to rST and tidies up some toolchain
settings and documentation.

[1] https://patchwork.ozlabs.org/project/uboot/patch/20221010151831.3376759-2-trini@konsulko.com/

Changes in v5:
- Add a note that -W requires -M
- Update ftest use of -W to avoid confusion
- Update exit-status docs to mention -W also
- Rename flag to --ignore-missing
- Update commit message
- Correct help for -M flag
- Correct --- Warning --- section
- Convert the buildman args to a list
- Add new patch with a separate section about environment variables
- Add new patch to ensure config_fname is inited
- Add new patch to reinstate removal of temp output dir in tests
- Split out config_fname change into a separate patch
- Rename GetGlobalValue to GetGlobalItemValue
- Fix 'items' typo
- Simplify implementation of GetGlobalItemValue()
- Use '[global]' for the doc heading
- Use double tick for arguments
- Drop redundant allow_missing code
- Split out the tests more
- Add new patch with documentation for the command line args

Changes in v4:
- Add a patch to update the arc toolchain
- Add new patch to update the default settings file
- Leave the arc toolchain in there
- Various changes that were unfortunately not recorded

Changes in v3:
- Add new patch to convert documentation to rST
- Add new patch to drop mention of MAKEALL
- Add new patch to drop mention of old architectures
- Add tests docs and a settings-file option

Changes in v2:
- Use a separate rule for running binman

Simon Glass (14):
  image: Correct strncpy() warning with image_set_name()
  Makefile: Correct the binman rule
  doc: Correct the path to the Makefile documentation
  binman: Use an exit code when blobs are missing
  buildman: Convert documentation to rST
  buildman: Drop mention of MAKEALL
  buildman: Update the arc toolchain
  buildman: Update the default settings file
  buildman: Drop mention of old architectures
  buildman: Detect binman reporting missing blobs
  binman: Add a separate section about environment variables
  buildman: Ensure config_fname is inited
  buildman: Reinstate removal of temp output dir in tests
  binman: Add documentation for the command line args

Tom Rini (2):
  global: Do not default to faking missing binaries for buildman
  buildman: Add --allow-missing flag to allow missing blobs

 .azure-pipelines.yml            |    2 +-
 .gitlab-ci.yml                  |    6 +-
 Makefile                        |   15 +-
 doc/build/buildman.rst          |    1 +
 doc/build/index.rst             |    1 +
 include/image.h                 |    8 +-
 scripts/Kbuild.include          |    2 +-
 tools/binman/binman.rst         |  352 +++++++-
 tools/binman/cmdline.py         |    5 +-
 tools/binman/control.py         |    9 +-
 tools/binman/ftest.py           |   19 +-
 tools/buildman/README           | 1349 -------------------------------
 tools/buildman/README.rst       |    1 +
 tools/buildman/bsettings.py     |   17 +-
 tools/buildman/builder.py       |    5 +-
 tools/buildman/builderthread.py |    8 +-
 tools/buildman/buildman.rst     | 1328 ++++++++++++++++++++++++++++++
 tools/buildman/cmdline.py       |    6 +
 tools/buildman/control.py       |   28 +-
 tools/buildman/func_test.py     |  112 ++-
 20 files changed, 1893 insertions(+), 1381 deletions(-)
 create mode 120000 doc/build/buildman.rst
 delete mode 100644 tools/buildman/README
 create mode 120000 tools/buildman/README.rst
 create mode 100644 tools/buildman/buildman.rst

-- 
2.38.1.431.g37b22c650d-goog



More information about the U-Boot mailing list