verible

verible.verible_lint(IP_LIB **kwargs)

Verible lint tool interface

Verible-lint is a SystemVerilog linter…

Verible can be found here

Function expects that IP_LIB INTERFACE_LIBRARY has SOURCES property set with a list of System Verilog files to be used as inputs. To set the SOURCES property use target_sources() CMake function:

target_sources(<your-lib> INTERFACE <sources>...)

Function will create targets for linting or formatting depending on passed option

Parameters:

IP_LIB (INTERFACE_LIBRARY) – RTL interface library, it needs to have SOURCES property set with a list of System Verilog files.

Keyword Arguments

Parameters:
  • REQUIRED (boolean) – if option REQUIRED is passed, the IP_LIB will depend on linting target, meaning that the linting will be done as soon as all the Verilog files are generated. By default only a new target <IP_LIB>_verible_lint is created and can be run optionally.

  • OUTDIR (string path) – output directory in which the files will be generated, if ommited ${BINARY_DIR}/verible will be used.

  • AUTOFIX ([no|patch-interactive|patch|inplace-interactive|inplace|generate-waiver]) – autofix the linting errors

  • RULES (List[string]) – list of rules to enable or disable for reference look at verible documentation

  • RULES_FILE (path string) – Additionally, the RULES_FILE flag can be used to read configuration stored in a file. The syntax is the same as RULES, except the rules can be also separated with the newline character

  • WAIVER_FILES (List[path string]) – (Path to waiver config files (comma-separated). Please refer to the README file for information about its format.)