path: root/CMakeLists.txt
AgeCommit message (Collapse)Author
2021-04-08Version: Update for TF-M v1.3.0 releaseDavid Hu
Update TF-M version to v1.3.0 in build system, documents and runtime log. Change-Id: I1915ab27ac67f8a5378a00f0da6161d5cdefc9f1 Signed-off-by: David Hu <david.hu@arm.com>
2021-03-19FIH: Add fault injection hardening libraryTamas Ban
Signed-off-by: Tamas Ban <tamas.ban@arm.com> Signed-off-by: Raef Coles <raef.coles@arm.com> Co-authored-by: David Hu <david.hu@arm.com> Change-Id: I188c2739a525a5d1b2aed43fd1c16063aa697297
2021-01-30Build: Support passing absolute paths to TFM_PLATFORMØyvind Rønningstad
For convenience when using out-of-tree platforms. Change-Id: I6783eabe9e13c0bdc2412cebd1ff25277cd5dda0 Signed-off-by: Øyvind Rønningstad <oyvind.ronningstad@nordicsemi.no>
2020-11-25Version: Update for TF-M v1.2.0 releaseMinos Galanakis
This patch updates the TF-M version for runtime code, build system and documentation to v1.2.0 Signed-off-by: Minos Galanakis <minos.galanakis@arm.com> Change-Id: I53b1e916a9928bac7347381d1a37c7d62bd2302a
2020-11-24Explicitly disable FPU, MVE and DSP supportRaef Coles
In the secure world. NS can be configured as normal using preload_ns. Change-Id: I0ae795792382ff56006bded9fe1c75083b8d7a6a Signed-off-by: Raef Coles <raef.coles@arm.com>
2020-11-10Build: Move config check to after compiler setupRaef Coles
To allow invalid configs to depend on the compiler version. Also, add the option for a platform check_config.cmake for platforms to specify invalid configs. Change-Id: If9081067e2804b329415193fa260702b0055e23e Signed-off-by: Raef Coles <raef.coles@arm.com>
2020-11-03Build: Add warning about absolute toolchain pathsRaef Coles
Note that CMAKE_TOOLCHAIN_FILE no longer accepts relative paths. Implemented as an error as a relative path will also cause an error. Change-Id: Ifccaef5b7738c4867031e2d1d5cd37fbf24f7cf6 Signed-off-by: Raef Coles <raef.coles@arm.com>
2020-11-03Build: Adjust configuration orderTamas Ban
Reorder the configuration steps, to provide more intuitive configuration. Invert the current order, and remove the use of FORCE to create a configuration additively instead of using overriding. Allows cmake command-line variables to override all other options as is expected. Change-Id: I64730b7db230cdaf2f86f1d27d882dc9111607be Signed-off-by: Tamas Ban <tamas.ban@arm.com> Signed-off-by: Raef Coles <raef.coles@arm.com>
2020-11-03Build: Add configuration checkingRaef Coles
Also split configuration step into a separate file. Change-Id: Iab70f4b7a7e2e3bcc19a1399523c9a4d4d5dc7f5 Signed-off-by: Raef Coles <raef.coles@arm.com>
2020-11-03Build: Refactor toolchain filesRaef Coles
Change from a CMAKE toolchain file to a TFM toolchain file, avoiding some abuses of the CMAKE_TOOLCHAIN_FILE that were used as a workaround for compiler setup. Also add the CROSS_COMPILE variable. Bump cmake required version to 3.15. Change-Id: I0948033045e2d2f34beffa807925fc7375098335 Signed-off-by: Raef Coles <raef.coles@arm.com>
2020-10-29Build: Fix typo in accelerator config loadingRaef Coles
Change-Id: Id227f442caf0703ce203ee04a2019ce8a4fcfa0b Signed-off-by: Raef Coles <raef.coles@arm.com>
2020-10-23Build: Change NS log from interface to test log systemKevin Peng
The NS binary in tf-m-tests repo should use its own log implementations. This part is missed on the new build system. This patch fixes this by: 1. Add the tfm NS library into build (the library CMake is added by the test repo) 2. Remove the build of log under interface for NS API Change-Id: Ib25758950700e819863d278f4a97dcae70bedaa1 Signed-off-by: Kevin Peng <kevin.peng@arm.com>
2020-10-19Build: Allow crypto accelerators to override configSoby Mathew
This patch allows the crypto accelerator, if selected, to override some default config via a dedicated config file. Signed-off-by: Soby Mathew <soby.mathew@arm.com> Change-Id: I7f2c7b96e0cc6da0104067455af58e81ad9be423
2020-10-19Build: Add config for PSA API testsSoby Mathew
The PSA API tests need some of the default config to be overridden. Add capability to specify override parameters for PSA API tests via a separate and dedicated config file. Signed-off-by: Soby Mathew <soby.mathew@arm.com> Change-Id: Ifb4679a5b638f87233df7351a7aabfde64cc36de
2020-10-07Build: Add error when bad options are givenRaef Coles
When either of the two required input paramters (CMAKE_TOOLCHAIN_FILE and TFM_PLATFORM) are given, validate that they are sane values and output a reasonable error message if they are not. Change-Id: Ie3a93ffed331e5ed66483f0b22c7875db469700c Signed-off-by: Raef Coles <raef.coles@arm.com>
2020-09-28Build: Remove compiler version checkRaef Coles
Not actually necessary, and has a bug in it that causes issues with armclang. Change-Id: Iec55dd1a33d03607be90b9c4552eeef9368251fc Signed-off-by: Raef Coles <raef.coles@arm.com>
2020-09-25Build: Fix minor issues with new buildsystemRaef Coles
Several minor bugfixes: * Add error messages for unsupported generators / compilers * Remove unsupported warning disablement option on IAR * Fix typo in error message Change-Id: I492872d5af5e507d52e2f9f1fbb28f39359349ee Signed-off-by: Raef Coles <raef.coles@arm.com>
2020-09-24Build: Convert docs directory to modern cmakeMinos Galanakis
Add cmake files to docs directory. Remove unneeded cmake files. By default, the targets are generated but not run by `make all` or `make`. The documentation can be generated by running `make docs` Please refer to the tfm_build_instructions document for reference examples. WARNING: This change will not build in isolation, it requires _all_ other cmake changes to successfully build. It is split out only for ease of understanding. Change-Id: I1b004a8f8ccfba2df901d91b093576fdc6bfa40d Signed-off-by: Minos Galanakis <minos.galanakis@arm.com> Signed-off-by: Raef Coles <raef.coles@arm.com>
2020-09-24Build: Convert buildsystem base to modern cmakeRaef Coles
Alters root cmake file and configuration files, and adds cmake toolchain files. WARNING: This change will not build in isolation, it requires _all_ other cmake changes to successfully build. It is split out only for clarity of changes. Signed-off-by: Raef Coles <raef.coles@arm.com> Change-Id: Iecc914859a5b1d497176ec82f0b6c22764c7b556
2020-08-13App: Remove the app codes from TF-MKevin Peng
This patch removes the app codes, they should have been in the tf-m-tests repo. The app/ is only for testing, so it's naturaly to move it to tf-m-tests. Change-Id: I1230c6e734d1891558e75643f5c5c355d5ad9af1 Signed-off-by: Kevin Peng <kevin.peng@arm.com>
2020-01-27Build: Enable building TF-M with original MCUBootDavid Vincze
Enable building TF-M with the original MCUBoot (alongside the forked one in the TF-M repository). Before building with the upstream MCUBoot repo, it must be cloned into the TF-M base folder (into which the TF-M was cloned previously) and the -DMCUBOOT_REPO=UPSTREAM option must be added to the command line at the CMake configuration step. The MCUBOOT_REPO option determines the repository from which it will use the MCUBoot. By default it will use it from the TF-M repository. Add description of how to build TF-M with upstream MCUBoot to the documentation. Change-Id: I2cfa55039943a9ac919156570120367d9603a816 Signed-off-by: David Vincze <david.vincze@arm.com>
2019-08-27Build: Move 'secure_fw' out of 'app' build territoryKen Liu
'secure_fw' should be a standalone project instead of being launched by 'app' build. Move it out of 'app' territory and correct veneer lib settings for 'app'. Change-Id: Ic50b0df234cbee0741ff9385a0c59ef87070df41 Signed-off-by: Ken Liu <ken.liu@arm.com>
2018-01-17Boot: integrate MCUBoot with TF-M to act as a BL2 bootloaderTamas Ban
Modifications in MCUBoot to be aligned with BL2 requirements in TF-M: -- OS dependency was removed, no need to copy any OS repo to build it -- CMSIS serial driver is used -- flash driver interface is aligned with original version -- S and NS images are handeled as a single binary blob -- automatic image concatenation and signing at build time -- authentication based on SHA256 and RSA-2048 digital signature -- mbedTLS library is used for cryptographic operation -- static analyser warnings fixed in some files Change-Id: I54891762eac8d0df634e954ff19a9505b16f3028 Signed-off-by: Tamas Ban <tamas.ban@arm.com>
2017-12-14Build: Cmake build systemGyorgy Szing
-- Cmake based build system -- Only armclang supported currently Change-Id: I162357439bb1c871cba3a1c614822ef0b7a73e89 Signed-off-by: Abhishek Pandit <abhishek.pandit@arm.com>