Docs: Update build instruction on project config header file
1. Add "PROJECT_CONFIG_HEADER_FILE" into the list of CMake parameters.
2. Add a brief description on Project Config Header File.
3. Add a note to remind that build folder needs to be cleaned up once
config header file is updated.
Signed-off-by: Xinyu Zhang <xinyu.zhang@arm.com>
Change-Id: I6e5656e5f0009aacb9a93794e8403409b64a360e
diff --git a/docs/building/tfm_build_instruction.rst b/docs/building/tfm_build_instruction.rst
index 93b3948..9eef380 100644
--- a/docs/building/tfm_build_instruction.rst
+++ b/docs/building/tfm_build_instruction.rst
@@ -86,25 +86,39 @@
explained in :ref:`tfm_cmake_configuration`. Several important options
are listed below.
-+---------------------+----------------------------------------+---------------+
-| Parameter | Description | Default value |
-+=====================+========================================+===============+
-| BL2 | Build level 2 secure bootloader. | ON |
-+---------------------+----------------------------------------+---------------+
-| NS | Build NS app. Required for test code. | ON |
-+---------------------+----------------------------------------+---------------+
-| TFM_ISOLATION_LEVEL | Set TFM isolation level. | 1 |
-+---------------------+----------------------------------------+---------------+
-| TFM_PROFILE | Set TFM profile. | |
-+---------------------+----------------------------------------+---------------+
-| TEST_S | Build secure regression tests. | OFF |
-+---------------------+----------------------------------------+---------------+
-| TEST_NS | Build non-secure regression tests. | OFF |
-+---------------------+----------------------------------------+---------------+
-| TEST_PSA_API | Build PSA API TESTS for the given | |
-| | suite. Takes a PSA api ``SUITE`` as an | |
-| | argument (``CRYPTO`` etc). | |
-+---------------------+----------------------------------------+---------------+
++----------------------------+------------------------------------------+---------------+
+| Parameter | Description | Default value |
++============================+==========================================+===============+
+| BL2 | Build level 2 secure bootloader. | ON |
++----------------------------+------------------------------------------+---------------+
+| NS | Build NS app. Required for test code. | ON |
++----------------------------+------------------------------------------+---------------+
+| PROJECT_CONFIG_HEADER_FILE | User defined header file for TF-M config | |
++----------------------------+------------------------------------------+---------------+
+| TFM_ISOLATION_LEVEL | Set TFM isolation level. | 1 |
++----------------------------+------------------------------------------+---------------+
+| TFM_PROFILE | Set TFM profile. | |
++----------------------------+------------------------------------------+---------------+
+| TEST_S | Build secure regression tests. | OFF |
++----------------------------+------------------------------------------+---------------+
+| TEST_NS | Build non-secure regression tests. | OFF |
++----------------------------+------------------------------------------+---------------+
+| TEST_PSA_API | Build PSA API TESTS for the given | |
+| | suite. Takes a PSA api ``SUITE`` as an | |
+| | argument (``CRYPTO`` etc). | |
++----------------------------+------------------------------------------+---------------+
+
+Project Config Header File
+--------------------------
+
+CMake variable ``PROJECT_CONFIG_HEADER_FILE`` is set by users with the full path of the
+configuration header file, which is used to fine-tune component options. The detailed reference
+for project config header file is in :ref:`Header_configuration`.
+
+.. Note::
+
+ It is recommended to clean up build folder before re-build if config header file is updated.
+ CMake is unable to automatically recognize the dependency when the header file is defined as a macro.
TF-M Profiles
-------------
@@ -329,5 +343,5 @@
--------------
-*Copyright (c) 2017-2022, Arm Limited. All rights reserved.*
+*Copyright (c) 2017-2023, Arm Limited. All rights reserved.*
*Copyright (c) 2022, Cypress Semiconductor Corporation. All rights reserved.*