aboutsummaryrefslogtreecommitdiff
path: root/tools/buildman
Commit message (Collapse)AuthorAgeFilesLines
* tools: buildman: fix non-existing SafeConfigParser in Python 3.12+Quentin Schulz2024-01-291-1/+1
| | | | | | | | | | | | SafeConfigParser was renamed back in Python 3.2 (yes, no typo) to ConfigParser[1], but it was still working as an alias until it got removed in 3.12[2]. [1] https://docs.python.org/3.8/whatsnew/3.2.html#configparser [2] https://github.com/python/cpython/pull/92503 Cc: Quentin Schulz <foss+uboot@0leil.net> Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
* tools: binman: ti_board_cfg: Check for linting problemsNeha Malcom Francis2024-01-181-0/+1
| | | | | | | | Use yamllint for checking whether YAML configuration files are adhering to default yamllint rules. Signed-off-by: Neha Malcom Francis <n-francis@ti.com> Suggested-by: Nishanth Menon <nm@ti.com>
* buildman: type cotainingHeinrich Schuchardt2023-12-311-1/+1
| | | | | | | %s/cotaining/containing/ Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* tools: Move python tools to version 0.0.6Simon Glass2023-12-131-2/+2
| | | | | | | A new release has been done with this version, so update it. Use the version numbers in dependencies also. Signed-off-by: Simon Glass <sjg@chromium.org>
* doc: Update documentation URLSimon Glass2023-12-131-1/+1
| | | | | | Update to use the new docs.u-boot.org URL for documentation. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Use oldconfig when adjusting the configSimon Glass2023-11-073-2/+10
| | | | | | | | We cannot be sure that the new config is consistent, particularly when changing a major item like CONFIG_CMDLINE. Use 'make oldconfig' to check that and avoid any such problems. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Include symbols in the read-only data sectionSimon Glass2023-11-021-1/+5
| | | | | | | | | | | | | | | | When symbols switch between the inited data section and the read-only data section their visbility changes, at present, with the -B option. This is confusing, since adding 'const' to a variable declaration can make it look like a significant improvement in bloat. But in fact nothing has changed. Add 'r' to the list of symbols types that are recorded, to correct this problem. Add a constant to make it easier to find this code next time. Signed-off-by: Simon Glass <sjg@chromium.org> Reported-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com>
* Merge branch 'next'Tom Rini2023-10-025-10/+25
|\ | | | | | | Signed-off-by: Tom Rini <trini@konsulko.com>
| * buildman: Start the clock when the build startsSimon Glass2023-09-231-1/+2
| | | | | | | | | | | | | | | | | | The Kconfig and maintainer processing can take a while, sometimes 5 seconds or more. This skews the timing printed by buildmand when the build completes. Start the clock when the threads start to avoid this problem. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com>
| * buildman: Show progress when regenerating the board.cfg fileSimon Glass2023-09-232-4/+14
| | | | | | | | | | | | | | This can take a while, so show a message when starting. Signed-off-by: Simon Glass <sjg@chromium.org> Reported-by Tom Rini <trini@konsulko.com>
| * buildman: Keep all common output filesSimon Glass2023-09-231-4/+8
| | | | | | | | | | | | | | | | | | Make a list of common output extensions and use it to ensure that the -k option preserves all of these. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com>
| * CI: Update to gcc-13.2.0Tom Rini2023-08-261-1/+1
| | | | | | | | | | | | | | | | The latest kernel.org toolchains for gcc are now 13.2.0, so upgrade to that. Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Rini <trini@konsulko.com>
* | buildman: Fix full help for Python 3.8Simon Glass2023-09-231-2/+8
|/ | | | | | | | | | With Python versions older than 3.9 Buildman produces an error on start-up. Fix this with a workaround for importlib. There is already a workaround for v3.6 but I am not sure if that is still functioning. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Drop warning about orphaned defconfigsSimon Glass2023-08-052-14/+2
| | | | | | | | | | Some boards use a MAINTAINERS entry to specify common files without referencing any defconfigs. This is allowed and should not result in a warning. Drop the warning in this case. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Exit after reading toolchainSimon Glass2023-08-051-0/+3
| | | | | | | | | Recent refactoring changed buildman to continue operation after fetching a toolchain. Fix this. Fixes: b8680646521 ("bulidman: Move toolchain handling to a function") Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Specify the output directory in testsSimon Glass2023-07-251-8/+11
| | | | | | | | The default output directory is generally '../' in tests so we end up trying to create '../.bm-work'. This does not work with azure, so update these tests to use the temporary directory instead. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Enable test coverageSimon Glass2023-07-242-1/+16
| | | | | | | Enable measuring test coverage for buildman so we can see the gaps. It is currently at 68%. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Add an option to check maintainers and targetsSimon Glass2023-07-243-5/+16
| | | | | | | | In poking around it seems that many boards don't define a CONFIG_TARGET Kconfig variable. This is not strictly necessary, but add an option to buildman so these can be viewed. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Use -D for --debugSimon Glass2023-07-242-7/+7
| | | | | | | Change -D to mean --debug for consistency with other tools. This is not a commonly used option, so the impact should be minimal. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Add a way to print the architecture for a boardSimon Glass2023-07-243-0/+33
| | | | | | | This is useful for some tools and is easily available for buildman. Add a new --print-arch option. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Move copy_files() out ot BuilderThread classSimon Glass2023-07-241-23/+24
| | | | | | | This does not need to be in the class. Move it out to avoid a pylint warning. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Tidy up some comments in builderthreadSimon Glass2023-07-241-30/+36
| | | | | | Make sure all functions have full argument documentation. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Tidy up reporting of a toolchain errorSimon Glass2023-07-242-8/+5
| | | | | | Provide the text of the exception when something goes wrong. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Avoid passing result into _read_done_file()Simon Glass2023-07-241-8/+11
| | | | | | | Move the creating of the result object into the function which sets it up, to simplify the code. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Create a function to handle config and buildSimon Glass2023-07-241-36/+61
| | | | | | | Move this code into a _config_and_build() function, so reduce the size of run_commit(). Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Move checkout code to a separate functionSimon Glass2023-07-241-9/+21
| | | | | | | Put this in its own function to reduce the size of the run_commit() function Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Move code to decide output dirsSimon Glass2023-07-241-9/+25
| | | | | | | Put this in its own function to reduce the size of the run_commit() function. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Move code to remove old outputsSimon Glass2023-07-241-9/+19
| | | | | | | Put this in its own function to reduce the size of the run_commit() function. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Move reading of the done file into a functionSimon Glass2023-07-241-24/+42
| | | | | | | Move this logic into its own function to reduce the size of the run_commt() function. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Move bulid code into its own functionSimon Glass2023-07-241-10/+30
| | | | | | Split this into its own function so reduce the size of run_commit(). Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Move reconfigure code into its own functionSimon Glass2023-07-241-11/+30
| | | | | | Split this into its own function so reduce the size of run_commit(). Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Convert config_out to string IOSimon Glass2023-07-241-4/+5
| | | | | | | | This is probably a little more efficient and it allows passing the object to another function to write data. Convert config_out to use a string I/O device. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Move more things into _build_args()Simon Glass2023-07-241-21/+34
| | | | | | | | | Move more of the argument-building code into this function. Fix a missing assignment for out_rel_dir too. Rename the function since it now builds all the arguments. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Move setting of toolchain arguments to _build_args()Simon Glass2023-07-241-4/+5
| | | | | | Move a few more pieces to this new function. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Start a function to set up the make argumentsSimon Glass2023-07-241-15/+23
| | | | | | | Move some of this code into a new funciion, to help reduce the size of the run_commits() function. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Drop unnecessary assignment of config_outSimon Glass2023-07-241-1/+0
| | | | | | | This is already set up earlier in the function, so drop the extra assignment. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Correct invalid use of out_dir variableSimon Glass2023-07-241-2/+2
| | | | | | | This variable has a different meaning in the outer scope. Use a different name to avoid confusion, or bugs. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Export _get_output_dir() to avoid warningsSimon Glass2023-07-243-6/+6
| | | | | | Make this a public memory since it is used outside the class. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Correct most pylint warnings in builderthreadSimon Glass2023-07-241-44/+51
| | | | | | Fix the easy warnings in this file. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Convert camel case in builderthread.pySimon Glass2023-07-242-29/+29
| | | | | | Convert this file to snake case and update all files which use it. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Split parser creation in twoSimon Glass2023-07-241-11/+33
| | | | | | | Split this into two functions to avoid a warning about too many statements. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Convert camel case in builder.pySimon Glass2023-07-245-146/+145
| | | | | | Convert this file to snake case and update all files which use it. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Convert camel case in bsettings.pySimon Glass2023-07-246-24/+24
| | | | | | Convert this file to snake case and update all files which use it. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Convert to argparseSimon Glass2023-07-244-146/+148
| | | | | | Use argparse to parse the arguments, since OptionParser is deprecated now. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Add a test for --boardsSimon Glass2023-07-243-2/+14
| | | | | | | | Add a simple functional test for the --boards option. Fix the example in the docs while we are here. Also improve the docs for Builder.count so it is clearer what it contains. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Correct most pylint warnings in cmdlineSimon Glass2023-07-241-4/+11
| | | | | | Tidu up warnings in this file. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Convert camel case in cmdline.pySimon Glass2023-07-243-3/+3
| | | | | | Convert this file to snake case and update all files which use it. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Create a function to get number of built commitsSimon Glass2023-07-241-9/+25
| | | | | | | Move this code into a function. This removes the last pylint error in the control module. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Use get_alow_missing() directly to avoid varSimon Glass2023-07-241-5/+4
| | | | | | | Avoid an unnecessary local variable by moving this code to a function. This fixes the pylint warning about too many local variables. Signed-off-by: Simon Glass <sjg@chromium.org>
* buildman: Move getting the adjust_cfg into run_builder()Simon Glass2023-07-241-11/+27
| | | | | | Move this into its own function to reduce the size of do_buildman(). Signed-off-by: Simon Glass <sjg@chromium.org>