Commit Graph

228 Commits (76af152fe1851c37bb80c374918e822598350c4a)

Author SHA1 Message Date
Hugues Kamba 2a9207bbe4 Address comments on workaround for Mbed OS 2 CI build after Public (#11114)
* Modify compilation API to provide a list of paths to exclude from the build.
* `_exclude_files_from_build` becomes a static method
* Replace ternary expression with simple  `if/else` statement
* Make unit test case for dirs exclusion independent of system files
2019-08-02 12:32:40 +01:00
George Psimenos 3b23edb78c Fix CI for branch feature-public-headers (#11093)
* Fix rtos include path in NRFCordioHCIDriver
* Flatten USB driver directory structure
* Add missing include for us_ticker
* Add more missing includes for us_ticker
* Fix mbed_hal_fpga_ci_test_shield/uart test
* Fix bare-metal build
* Fix Watchdog UNITTEST
* Fix Mbed OS 2 build for Public/Internal headers relocating
2019-08-02 12:32:40 +01:00
Kevin Bracey 65e0887ef3 Permit non-TrustZone ARMv8 build
Change the heuristic for selection of CMSE in the tools python, so that
a non-TrustZone ARMv8 build can happen.

Ideally we would have more direct flagging in the targets, but this
refines the heuristic so the necessary behaviour can be easily
achieved.

* DOMAIN_NS=1 is based purely on the `-NS` suffix on the core name.

* Enabling CMSE in the compiler and outputting a secure import library
  is now enabled when the core doesn't have an `-NS` suffix by either
  the target label `TFM` being present or the flag `trustzone` being set.

This covers the existing ARMv8-M behaviour - TF-M builds have the TFM
label, as per its documentation; M2351 secure builds have no explicit
flagging, so we ensure that the M2351_NS target has the trustzone flag
set, and the out-of-tree secure target inherits that.
2019-05-03 13:36:38 +03:00
Alexander Zilberkant 91505184d3 Integrate with mbeb-cli build system
PSA code generation will be called automatically upon mbed invocation.
The autogenerated files will be created under <mbed-os-root>/PSA_AUTOGEN directory.
2019-04-30 14:41:09 +03:00
Brian Daniels ee174fabef Make get_mbed_official_release return ARMC5 and ARMC6.
Previously it would return "ARM" for "ARMC5", which was quite confusing.
2019-04-12 14:45:28 -05:00
Brian Daniels 8a2836f122 Fix detection of supported targets for mbed 2 builds 2019-04-08 11:34:28 -05:00
jeromecoutant ab9890072d Build script: add explicit console log in case of linker script error 2019-04-02 18:03:32 +02:00
Brian Daniels b95732a1b5 get_mbed_official_release respects supported_toolchains 2019-03-23 18:24:59 -05:00
Brian Daniels b94c4189b7 Updating supported toolchain printing with new options 2019-03-23 18:24:58 -05:00
Brian Daniels 04e90c278c ARMC5 is supported if a target lists ARM as a supported_toolchain 2019-03-23 18:24:58 -05:00
Brian Daniels 6f5a3c3e8d Add functions to enable ARM fallback to ARMC5.
There are two new functions: get_valid_toolchain_names and
find_valid_toolchain. These functions are used to figure out if a
fallback is possible and necessary. find_valid_toolchain is expected to
be used by the front-end scripts.

get_toolchain_name was updated with some different logic and comments.
2019-03-23 18:24:58 -05:00
Brian Daniels 6e629ded84 Version check the compiler in all build functions
This enables the use of Mbed Studio's version of ARMC6.
2019-03-19 17:37:55 -05:00
Brian Daniels 9824c3ccc3 Clean up some whitespace 2019-03-19 17:37:18 -05:00
Jimmy Brisson 4cac89c22b Reorder post-build and managed bootloader mode merging
Priously, post-bulid was run before the merge from managed bootloader mode.
This renders many post-build scripts less than useful, as most of them
compute a digest of the ROM image generated in a build.

This reorders the post-build scripts to come after the managed bootloader
mode so that post-build script digests are useful again.
2019-03-04 11:30:49 -06:00
Senthil Ramakrishnan 7ced0683ad Fix for review comments and ARMC5 listing added for supported toolchain matrix output 2019-02-28 12:03:14 -06:00
Senthil Ramakrishnan f8dc7c2915 Modify tools to return ARMC5 or ARM for supported toolchain matrix 2019-02-28 12:03:14 -06:00
Senthil Ramakrishnan 51b1063195 Add right toolchains for version 2 toolchain support check 2019-02-28 12:03:14 -06:00
Senthil Ramakrishnan 8a8cff7c98 build_api.py changes to take ARMC5 into account when validating for offical target/release combination 2019-02-28 12:01:31 -06:00
Senthil Ramakrishnan 4e7d34bbb6 Review fixes for uvision exporter,build_api and arm.py 2019-02-28 12:00:11 -06:00
Senthil Ramakrishnan 200829537f Remove unwanted spaces 2019-02-28 11:58:26 -06:00
Senthil Ramakrishnan 8624fdf0a7 Build metadata check added 2019-02-28 11:56:30 -06:00
Senthil Ramakrishnan 7490b1c87f Api tests modification and uLib related fixes 2019-02-28 11:55:21 -06:00
Senthil Ramakrishnan 50eb4f9da8 Build tools changes to support AC6 and AC5 2019-02-28 11:55:21 -06:00
Cruz Monrreal e77f03cfbc
Merge pull request #9317 from naveenkaje/tools_bootloader_script
tools: support cases where bootloader is in chunks
2019-02-26 22:49:42 -06:00
Deepika 1ad23433f5 Remove IAR from required toolchains list 2019-02-26 10:26:13 -06:00
Naveen Kaje 4cc21820bb tools: support cases where bootloader is in chunks
Support the requirement where bootloader can be in chunks and enable
placing the application at a particular offset specified by config.
With FEATURE_BOOTLOADER support, the bootloader can be placed at a
high address. Add support to the tools so that application can be
placed in the available space before the beginning of the bootloader.
2019-02-21 15:11:44 -06:00
Brian Daniels 434d86b08a Ensure header CRC is written as unsigned int 2019-02-20 20:30:54 -06:00
Cruz Monrreal b820ec8922
Merge pull request #9561 from theotherjimmy/test-resources
Tools changes for bare metal
2019-02-13 12:31:54 -06:00
Naveen Kaje 4393e4b82a tools: check part size is not exceeding region size
If config is specified, check that part size is not
exceeding the region. Normally we now assume that
part.maxaddr() can be beyond end of rom.
2019-01-31 17:03:05 -06:00
Naveen Kaje 06dbd82d1f tools: build_api: remove redundant initialization and fix spelling 2019-01-17 12:56:09 -06:00
Jimmy Brisson c5a721c104 Test that libraries' source is excluded 2019-01-16 11:05:18 -06:00
Brian Daniels 9f340edbb2 uARM targets now build in correct ARM_MICRO directory
This is for OS2 testing. Previously, targets that were configured with
the option "default_toolchain": "uARM" would still build to a
TOOLCHAIN_ARM_STD directory. This fixes these targets to build into
TOOLCHAIN_ARM_MICRO.
2019-01-09 11:02:10 -06:00
Cruz Monrreal 78d6018ecc
Merge pull request #8745 from kfnta/feature-new-target-future-sequana-psa
Add new target future sequana PSA
2018-12-06 13:13:36 -06:00
Oren Cohen c4c21d2d1f Ignore PSA secure targets 2018-12-06 17:43:34 +02:00
Cruz Monrreal a1625895c3
Merge pull request #8097 from JammuKekkonen/fix_bootloader_build_for_nrf52
Add support for nrf52_dk bootloader
2018-12-04 16:10:15 -06:00
Cruz Monrreal II fca8877fea Revert "Merge pull request #8788 from kaidokert/master"
This reverts commit d478d6bf80, reversing
changes made to f9d07f373f.
2018-11-30 00:06:05 -06:00
Cruz Monrreal d478d6bf80
Merge pull request #8788 from kaidokert/master
Fix unsigned packing bug in merge_regions #8544
2018-11-29 10:22:18 -06:00
Oren Cohen dd73fa689c PSA SPM
* Intorduce PSA-SPM to mbed-os
* Add SPM tests (for PSA targets)
* Add PSA PRoT internal storage Secure implementation
* Integrate SPM into the boot proccess
* PSA manifest data generator
* Introduce PSA targets skeleton to mbed-os
* Add artifact delivery to the tools
2018-11-27 09:16:35 +02:00
kert 6815409fe7 Fix unsigned packing bug in merge_regions #8544 2018-11-17 17:57:46 -08:00
Naveen Kaje 38ce7b13e7 tools: fix up build_api padding logic and clean up unused code
Patch from the end of the first segment. Remove unused code.
2018-11-09 10:36:25 -06:00
Naveen Kaje 858a7a8321 tools: Update build_api
Rename loop varibles for better readability and
formatting changes.
2018-11-08 13:00:27 -06:00
Naveen Kaje bd40457f27 tools: Update build_api padding method
Update the padding sequence so that the gaps
are padded after all the regions are merged.
This avoids overwriting active regions and
serializes the process.
2018-11-07 14:43:14 -06:00
Naveen Kaje e28c260763 tools: update build_api and __init__ as per review comments 2018-11-04 19:47:06 -06:00
Naveen Kaje 2da8950b2a tools: process bootloader chunks
NRF Softdevice hex file can be in chunks.
Make sure we account for the space where the bootloader resides
by including all the chunks within the end of rom marker. This will
clearly mark out the initial bootloader region.
2018-10-29 16:36:56 -05:00
Naveen Kaje e877a8e0e5 build_api: remove unused import
Remove unused tempfile import.
2018-10-26 13:30:01 -05:00
Brian Daniels b0264e3540 Adding file type for linker script arg in make script 2018-10-22 13:30:10 -05:00
Cruz Monrreal 46d717cf18
Merge pull request #8250 from theotherjimmy/fix-7723
Tools: Don't traceback on missing linker script
2018-10-22 11:30:50 -05:00
Jimmy Brisson aa5d2afa4d Stop shouting at users in error messages 2018-10-19 10:25:49 -05:00
Jimmy Brisson ec72ce7787 Track supported information within toolchain clasess 2018-10-18 11:10:16 -05:00
Jimmy Brisson 4198ae620c Tools: Restrict toolchains reported by mbed compile -S to official ones
### Description

The `mbed compile -S` command is suposed to indicate what targets
support what toolchains. The command was printing out things that
don't make sense, like `GCC_CR` and things that make sense, but are
not offiially supported yet, like `ARMC6`. This PR fixes all of that.

### Pull request type

    [x] Fix
    [ ] Refactor
    [ ] Target update
    [ ] Functionality change
    [ ] Breaking change
2018-10-18 11:10:16 -05:00