summaryrefslogtreecommitdiff
path: root/scripts/gen_compile_commands.py
diff options
context:
space:
mode:
authorMasahiro Yamada <masahiroy@kernel.org>2020-08-22 23:56:13 +0900
committerMasahiro Yamada <masahiroy@kernel.org>2020-08-27 00:44:33 +0900
commit6fca36f1d82ad5bc385187f0aed93bbaefaa2172 (patch)
tree91428edf9cfde9f5f51a2566f47636357a1c7640 /scripts/gen_compile_commands.py
parent0a7d376d04a3c84b503f1efecde8f9d9a7430269 (diff)
downloadlwn-6fca36f1d82ad5bc385187f0aed93bbaefaa2172.tar.gz
lwn-6fca36f1d82ad5bc385187f0aed93bbaefaa2172.zip
gen_compile_commands: make -o option independent of -d option
Change the -o option independent of the -d option, which is I think clearer behavior. Some people may like to use -d to specify a separate output directory, but still output the compile_commands.py in the source directory (unless the source tree is read-only) because it is the default location Clang Tools search for the compilation database. Also, move the default parameter to the default= argument of the .add_argument(). Signed-off-by: Masahiro Yamada <masahiroy@kernel.org> Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Diffstat (limited to 'scripts/gen_compile_commands.py')
-rwxr-xr-xscripts/gen_compile_commands.py18
1 files changed, 9 insertions, 9 deletions
diff --git a/scripts/gen_compile_commands.py b/scripts/gen_compile_commands.py
index f37c1dac8db4..71a0630ae188 100755
--- a/scripts/gen_compile_commands.py
+++ b/scripts/gen_compile_commands.py
@@ -39,11 +39,13 @@ def parse_arguments():
directory_help = ('specify the output directory used for the kernel build '
'(defaults to the working directory)')
- parser.add_argument('-d', '--directory', type=str, help=directory_help)
+ parser.add_argument('-d', '--directory', type=str, default='.',
+ help=directory_help)
- output_help = ('The location to write compile_commands.json (defaults to '
- 'compile_commands.json in the search directory)')
- parser.add_argument('-o', '--output', type=str, help=output_help)
+ output_help = ('path to the output command database (defaults to ' +
+ _DEFAULT_OUTPUT + ')')
+ parser.add_argument('-o', '--output', type=str, default=_DEFAULT_OUTPUT,
+ help=output_help)
log_level_help = ('the level of log messages to produce (defaults to ' +
_DEFAULT_LOG_LEVEL + ')')
@@ -52,11 +54,9 @@ def parse_arguments():
args = parser.parse_args()
- directory = args.directory or os.getcwd()
- output = args.output or os.path.join(directory, _DEFAULT_OUTPUT)
- directory = os.path.abspath(directory)
-
- return args.log_level, directory, output
+ return (args.log_level,
+ os.path.abspath(args.directory),
+ args.output)
def process_line(root_directory, command_prefix, file_path):