gen-compile-commands

Crates.iogen-compile-commands
lib.rsgen-compile-commands
version0.4.0
sourcesrc
created_at2024-07-25 17:17:38.707557
updated_at2024-10-30 16:37:26.458016
descriptionSimple compile_commands.json generator
homepage
repositoryhttps://github.com/mikea/gen-compile-commands
max_upload_size
id1315291
size16,108
Mike Aizatsky (mikea)

documentation

README

gen-compile-commands

Simple utility to generate compile_commands.json based on compile_flags.txt.

Without compile_commands.json clangd can't enumerate project files. While include/symbol resolution works, find references and other features that require full project scanning do not work.

gen-compile-commands uses single compile_flags.txt file as a template for all source files discovered in --src-dir.

Installation

cargo install gen-compile-commands

Usage

Usage: gen-compile-commands [OPTIONS] --root <ROOT> --compile-flags <COMPILE_FLAGS> --out <OUT>

Options:
      --root <ROOT>                    Root project directory, all files in `compile_commands.json` will be specified relative to this path
      --compile-flags <COMPILE_FLAGS>  Path to the `compile_flags.txt`. Used for every file in `compile_commands.json`
      --out <OUT>                      Path to the resulting `compile_commands.json`
      --src-dir <SRC_DIR>              Directory to scan for source files
      --ext <EXT>                      Source file extensions to include in `compile_commands.json` [default: c++ cc]
      --compiler <COMPILER>            Path to the compiler [default: /usr/bin/clang++]
  -h, --help                           Print help
Commit count: 12

cargo fmt