Re: [PATCH v3 09/10] gen_compile_commands: remove the warning about too few .cmd files

Nick Desaulniers
2020-08-23T00:47:42Z

On Sat, Aug 22, 2020 at 7:56 AM Masahiro Yamada <masahiroy@kernel.org> wrote:
>
> This warning was useful when users previously needed to manually
> build the kernel and run this script.
>
> Now you can simply do 'make compile_commands.json', which updates
> all the necessary build artifacts and automatically creates the
> compilation database. There is no more worry for a mistake like
> "Oh, I forgot to build the kernel".
>
> Now, this warning is rather annoying.
>
> You can create compile_commands.json for an external module:
>
> $ make M=/path/to/your/external/module compile_commands.json
>
> Then, this warning is displayed since there are usually less than
> 300 files in a single module.
>
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>

Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>

> ---
>
> Changes in v3:
> - New patch
>
> scripts/gen_compile_commands.py | 10 ----------
> 1 file changed, 10 deletions(-)
>
> diff --git a/scripts/gen_compile_commands.py b/scripts/gen_compile_commands.py
> index f370375b2f70..1de745577e6d 100755
> --- a/scripts/gen_compile_commands.py
> +++ b/scripts/gen_compile_commands.py
> @@ -21,11 +21,6 @@ _FILENAME_PATTERN = r'^\..*\.cmd$'
> _LINE_PATTERN = r'^cmd_[^ ]*\.o := (.* )([^ ]*\.c)$'
> _VALID_LOG_LEVELS = ['DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL']
>
> -# A kernel build generally has over 2000 entries in its compile_commands.json
> -# database. If this code finds 300 or fewer, then warn the user that they might
> -# not have all the .cmd files, and they might need to compile the kernel.
> -_LOW_COUNT_THRESHOLD = 300
> -
>
> def parse_arguments():
> """Sets up and parses command-line arguments.
> @@ -236,11 +231,6 @@ def main():
> with open(output, 'wt') as f:
> json.dump(compile_commands, f, indent=2, sort_keys=True)
>
> - count = len(compile_commands)
> - if count < _LOW_COUNT_THRESHOLD:
> - logging.warning(
> - 'Found %s entries. Have you compiled the kernel?', count)
> -
>
> if __name__ == '__main__':
> main()
> --
> 2.25.1
>

--
Thanks,
~Nick Desaulniers