cmake: sca: codechecker: Support storing results

Introduce CODECHECKER_STORE parameters to upload results to an active
CodeChecker server.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
This commit is contained in:
Pieter De Gendt 2023-08-21 11:42:51 +02:00 committed by Carles Cufí
commit 27f8c218cd
2 changed files with 31 additions and 0 deletions

View file

@ -23,6 +23,7 @@ add_custom_target(codechecker ALL
--keep-gcc-include-fixed
--keep-gcc-intrin
--output ${output_dir}/codechecker.plist
--name zephyr # Set a default metadata name
${CODECHECKER_ANALYZE_OPTS}
${CMAKE_BINARY_DIR}/compile_commands.json
DEPENDS ${CMAKE_BINARY_DIR}/compile_commands.json ${output_dir}/codechecker.ready
@ -71,3 +72,15 @@ else()
COMMAND_EXPAND_LISTS
)
endif()
if(CODECHECKER_STORE OR CODECHECKER_STORE_OPTS)
add_custom_command(
TARGET codechecker POST_BUILD
COMMAND ${CODECHECKER_EXE} store
${CODECHECKER_STORE_OPTS}
${output_dir}/codechecker.plist
VERBATIM
USES_TERMINAL
COMMAND_EXPAND_LISTS
)
endif()

View file

@ -42,6 +42,24 @@ To configure CodeChecker or analyzers used, arguments can be passed using the
-DCODECHECKER_ANALYZE_OPTS="--config;$CODECHECKER_CONFIG_FILE;--timeout;60"
Storing CodeChecker results
***************************
If a CodeChecker server is active the results can be uploaded and stored for tracking purposes.
Storing is done using the optional ``CODECHECKER_STORE=y`` or ``CODECHECKER_STORE_OPTS="arg;list"``
parameters, e.g.
.. code-block:: shell
west build -b mimxrt1064_evk samples/basic/blinky -- -DZEPHYR_SCA_VARIANT=codechecker \
-DCODECHECKER_STORE_OPTS="--name;build;--url;localhost:8001/Default"
.. note::
If ``--name`` isn't passed to either ``CODECHECKER_ANALYZE_OPTS`` or ``CODECHECKER_STORE_OPTS``,
the default ``zephyr`` is used.
Exporting CodeChecker reports
*****************************