coreboot-kgpe-d16/util/scripts/description.md
Martin Roth 298b00776a utils: Add initial version of "remove_unused_code" script
This script creates a patch to remove all of the coreboot code that a
platform doesn't use.  This is useful for auditing the codebase for an
individual platform or releasing a platform's code.

Unlike the script that Sage used that did something similar, this keeps
the entire Kconfig tree (Though in a single file), all makefiles that
are required to build, and the standard build tools can still be used.
This will allow for much easier re-integration back into the coreboot
codebase if code is released after running this.

This is just the initial version and more features needed to be added to
make it fully functional.
- It should be able to build multiple configurations to retain the code
for all of those configurations.
- Flag to remove submodules files as well
- Additional variable flags to replace hardcoded values.
- The list of makefiles that need to be kept is pretty long, and could
be updated so that they aren't needed by the top level makefiles.
- Add flag to show changed files
- Show number of files before and after script is run

Signed-off-by: Martin Roth <gaumless@gmail.com>
Change-Id: Iec69db2ad1358846d649db627b6d60ac8c2204e4
Reviewed-on: https://review.coreboot.org/c/coreboot/+/59169
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Raul Rangel <rrangel@chromium.org>
2022-08-09 19:22:31 +00:00

29 lines
1.7 KiB
Markdown

__scripts__
* _config_ - Manipulate options in a .config file from the command
line `Bash`
* _cross-repo-cherrypick_ - Pull in patches from another tree from a
gerrit repository. `Shell`
* _decode_spd.sh_ - Decodes Serial Presence Detect (SPD) files into
various human readable formats. `Bash`
* _dts-to-fmd.sh_ -Converts a depthcharge fmap.dts into an fmaptool
compatible .fmd format `Bash`
* _find-unused-kconfig-symbols.sh_ - Points out Kconfig variables
that may be unused. There are
some false positives, but it
serves as a starting point
`Shell`
* _gerrit-rebase_ - Applies all commits that from-branch has over
to-branch, based on a common ancestor and gerrit
meta-data `Bash`
* _get_maintainer.pl_ - Print selected MAINTAINERS information for
the files modified in a patch or for a file
`Perl`
* _maintainers.go_ - Build subsystem Maintainers `Go`
* _no-fsf-addresses.sh_ - Removes various FSF addresses from license
headers `Shell`
* _parse-maintainers.pl_ - Script to alphabetize MAINTAINERS file
`Perl`
* _rm_unused_code_ - Remove all code not used for a platform from the local
git repository for auditing or release `Bash`
* _ucode_h_to_bin.sh_ - Microcode conversion tool `Bash`
* _update_submodules_ - Check all submodules for updates `Bash`