.. rocm-cmake documentation master file, created by
   sphinx-quickstart on Thu Sep 16 18:46:06 2021.
   You can adapt this file completely to your liking, but it should at least
   contain the root `toctree` directive.
.. highlight:: cmake

ROCm CMake Build Tools
======================

Summary
-------

ROCm CMake Build Tools (also stylized as "ROCmCMakeBuildTools" and previously
known as "rocm-cmake") is a collection of functions that unify and simplify the
CMake code of the ROCm components, as well as ensuring consistency across these
components.

Usage
-----

The ROCm CMake Build Tools are primarily used at build time of a library, and
as such are not runtime dependencies for any generated libraries, packages,
or executables.

The tools can be included into a CMake project by running::

   find_package(ROCmCMakeBuildTools)
   # or
   find_package(ROCM) # deprecated, but included for backwards compatibility

Once the tools have been included in this manner, individual files may be
included by running ``include(<file_name>)``. The file names, and the
functions, variables, and macros accessible using each file are listed below.

Files & Contents
~~~~~~~~~~~~~~~~

- :any:`ROCMAnalyzers`
   + :any:`rocm_mark_as_analyzer`
   + :any:`ROCM_ENABLE_GH_ANNOTATIONS`
- :any:`ROCMCheckTargetIds`
   + :any:`rocm_check_target_ids`
- :any:`ROCMClangTidy`
   + :any:`rocm_enable_clang_tidy`
   + :any:`rocm_clang_tidy_check`
   + :any:`CLANG_TIDY_EXE`
   + :any:`CLANG_TIDY_CACHE`
   + :any:`CLANG_TIDY_CACHE_SIZE`
   + :any:`CLANG_TIDY_DEPEND_ON_TARGET`
- :any:`ROCMClients`
   + :any:`rocm_package_setup_client_component`
- :any:`ROCMCppCheck`
   + :any:`rocm_enable_cppcheck`
   + :any:`CPPCHECK_EXE`
   + :any:`CPPCHECK_BUILD_DIR`
- :any:`ROCMCreatePackage`
   + :any:`rocm_create_package`
   + :any:`rocm_package_add_rpm_dependencies`
   + :any:`rocm_package_add_deb_dependencies`
   + :any:`rocm_package_add_dependencies`
   + :any:`rocm_package_setup_component`
- :any:`ROCMDocs`
   + :any:`rocm_mark_as_doc`
   + :any:`rocm_clean_doc_output`
- :any:`ROCMDoxygenDoc`
   + :any:`rocm_add_doxygen_doc`
   + :any:`DOXYGEN_EXECUTABLE`
   + :any:`DOT_EXECUTABLE`
- :any:`ROCMInstallSymlinks`
   + :any:`rocm_install_symlink_subdir`
- :any:`ROCMInstallTargets`
   + :any:`rocm_install`
   + :any:`rocm_install_targets`
   + :any:`rocm_export_targets`
- :any:`ROCMPackageConfigHelpers`
   + :any:`rocm_configure_package_config_file`
- :any:`ROCMSetupVersion`
   + :any:`rocm_get_version`
   + :any:`rocm_setup_version`
- :any:`ROCMSphinxDoc`
   + :any:`rocm_add_doxygen_doc`
   + :any:`SPHINX_EXECUTABLE`
   + :any:`SPHINX_${BUILDER}_DIR`
- :any:`ROCMTest`
   + :any:`rocm_enable_test_package`
   + :any:`rocm_add_test`
   + :any:`rocm_add_test_executable`
   + :any:`rocm_test_header`
   + :any:`rocm_test_headers`
   + :any:`rocm_install_test`
   + :any:`rocm_mark_as_test`
   + :any:`rocm_link_test_dependencies`
   + :any:`rocm_test_link_libraries`
   + :any:`CTEST_PARALLEL_LEVEL`
   + :any:`CTEST_TIMEOUT`
   + :any:`ROCM_TEST_GDB`
- :any:`ROCMUtilities`
   + :any:`rocm_join_if_set`
   + :any:`rocm_defer`
   + :any:`rocm_find_program_version`

Indices and tables
==================

* :ref:`genindex`
* :ref:`search`
