tools: Check for already migrated symbols in a given file
Tom Rini
trini at konsulko.com
Wed Sep 8 15:50:28 CEST 2021
Hey all,
As I look over patchwork I see (as one would expect) platforms showing
up that will come in either to -next, or once v2021.10 is out. Given
the number of newly migrated symbols now in -next, along with my hope to
get more done soon as well has having discovered lots of already
migrated symbols showing up again in board config.h files, I want to
pass along this bit of shell script. It's heavily borrowed from
scripts/build-whitelist.sh and basically has comm providing a different
column. It's also not fool-proof as I skipped handling
CONFIG_SYS_EXTRA_OPTIONS as I just want to remove that symbol entirely.
What you do with this is:
$ check-migrated-symbols.sh include/configs/am335x_evm.h
CONFIG_SYS_I2C_EEPROM_ADDR
CONFIG_SYS_I2C_EEPROM_ADDR_LEN
CONFIG_SYS_NAND_BLOCK_SIZE
CONFIG_SYS_NAND_OOBSIZE
CONFIG_SYS_NAND_PAGE_SIZE
CONFIG_SYS_NAND_U_BOOT_OFFS
And see that oh, those symbols need to be moved to the defconfig. I'm
not posting this to complain about existing board files (but I'll be
cleaning up stuff) but rather to note that when adding new boards, it's
REALLY important to catch and fix those problems. And without a script
of some sort, it's also a pain. So here's the script:
#!/bin/bash
if [ ! -f Kconfig ]; then
echo "ERROR: Must be run from root of U-Boot directory"
exit 1
fi
# Cleanup when done.
trap "{ rm -rf ${KSYMLST} ${KUSEDLST}; }" EXIT
KSYMLST=`mktemp`
KUSEDLST=`mktemp`
# List of existing symbols
cat `find . -name "Kconfig*"` | sed -n \
-e 's/^\s*config *\([A-Za-z0-9_]*\).*$/CONFIG_\1/p' \
-e 's/^\s*menuconfig *\([A-Za-z0-9_]*\).*$/CONFIG_\1/p' \
| sort -u > $KSYMLST
# Check each argument
while test $# -ne 0; do
# Not a file
[ ! -f "$1" ] && shift 1
grep '#define[[:blank:]]CONFIG_' $1 | sed -n 's/#define.\(CONFIG_[A-Za-z0-9_]*\).*/\1/p' | sort -u > ${KUSEDLST}
comm -12 ${KSYMLST} ${KUSEDLST}
shift 1
done
rm -f ${KSYMLST} ${KUSEDLST}
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20210908/a40ab256/attachment.sig>
More information about the U-Boot
mailing list