1###################################################
2Additional build instructions for the IAR toolchain
3###################################################
4
5Follow the instructions in
6:doc:`software requirements <tfm_build_instruction>`, but replace the -DTFM_TOOLCHAIN_FILE setting with toolchain_IARARM.cmake.
7
8
9Notes for building with IARARM
10------------------------------
11
12    IAR Embedded Workbench for ARM (EWARM) versions 8.42 or later are required.
13
14    Currently the MUSCA_B1 and MUSCA_S1 targets are not supported with IARARM,
15    due to lack of testing.
16
17    cmake needs to be version 3.14 or newer.
18
19    The V8M IAR CMSIS_5 RTX libraries in CMSIS_5 5.5.0 has a problem and has been updated in
20    CMSIS_5 5.7.0. The updated libraries are part of the tf-m-tests repo and no special instructions
21    are needed when the libraries from this repo are used.
22
23    For all configurations and build options some of the QCBOR tests fail due to the tests not handling
24    double float NaN:s according to the Arm Runtime ABI. This should be sorted out in the future.
25
26Example: building TF-M for AN521 platform using IAR:
27====================================================
28.. code-block:: bash
29
30    cd <TF-M base folder>
31    cmake -S . -B cmake_build -DTFM_PLATFORM=arm/mps2/an521 -DTFM_TOOLCHAIN_FILE=toolchain_IARARM.cmake
32    cmake --build cmake_build -- install
33
34Alternately using traditional cmake syntax
35
36.. code-block:: bash
37
38    cd <TF-M base folder>
39    mkdir cmake_build
40    cd cmake_build
41    cmake .. -DTFM_PLATFORM=arm/mps2/an521 -DTFM_TOOLCHAIN_FILE=../toolchain_IARARM.cmake
42    make install
43
44Regression Tests for the AN521 target platform
45==============================================
46
47.. code-block:: bash
48
49    cd <TF-M base folder>
50    cmake -S . -B cmake_build -DTFM_PLATFORM=arm/mps2/an521 -DTFM_TOOLCHAIN_FILE=toolchain_IARARM.cmake -DTEST_S=ON -DTEST_NS=ON
51    cmake --build cmake_build -- install
52
53Alternately using traditional cmake syntax
54
55.. code-block:: bash
56
57    cd <TF-M base folder>
58    mkdir cmake_build
59    cd cmake_build
60    cmake .. -DTFM_PLATFORM=arm/mps2/an521 -DTFM_TOOLCHAIN_FILE=../toolchain_IARARM.cmake -DTEST_S=ON -DTEST_NS=ON
61    make install
62
63 *Copyright (c) 2020-2021, Arm Limited. All rights reserved.*
64