scripts/tags.sh: Invoke 'realpath' via 'xargs'
When COMPILED_SOURCE is set, running make ARCH=x86_64 COMPILED_SOURCE=1 cscope tags could throw the following errors: scripts/tags.sh: line 98: /usr/bin/realpath: Argument list too long cscope: no source files found scripts/tags.sh: line 98: /usr/bin/realpath: Argument list too long ctags: No files specified. Try "ctags --help". This is most likely to happen when the kernel is configured to build a large number of modules, which has the consequence of passing too many arguments when calling 'realpath' in 'all_compiled_sources()'. Let's improve this by invoking 'realpath' through 'xargs', which takes care of properly limiting the argument list. Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com> Link: https://lore.kernel.org/r/20220516234646.531208-1-cristian.ciocaltea@collabora.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
aed86f8add
commit
7394d2ebb6
|
@ -95,10 +95,13 @@ all_sources()
|
|||
|
||||
all_compiled_sources()
|
||||
{
|
||||
realpath -es $([ -z "$KBUILD_ABS_SRCTREE" ] && echo --relative-to=.) \
|
||||
include/generated/autoconf.h $(find $ignore -name "*.cmd" -exec \
|
||||
grep -Poh '(?(?=^source_.* \K).*|(?=^ \K\S).*(?= \\))' {} \+ |
|
||||
awk '!a[$0]++') | sort -u
|
||||
{
|
||||
echo include/generated/autoconf.h
|
||||
find $ignore -name "*.cmd" -exec \
|
||||
grep -Poh '(?(?=^source_.* \K).*|(?=^ \K\S).*(?= \\))' {} \+ |
|
||||
awk '!a[$0]++'
|
||||
} | xargs realpath -es $([ -z "$KBUILD_ABS_SRCTREE" ] && echo --relative-to=.) |
|
||||
sort -u
|
||||
}
|
||||
|
||||
all_target_sources()
|
||||
|
|
Loading…
Reference in New Issue