Commit Graph

525 Commits (ec406b1740b8b5b502f95f991bf0d2cbdd4bfc93)

Author SHA1 Message Date
Marcelo Salazar 1192744a06 Minor fix to match with master 2016-09-12 20:12:54 +01:00
Marcelo Salazar ca35755167 Change default uvision exporter to uvision5
uVision4 is no longer maintained by the Keil team (support was stopped
long time ago).

This is why we need to make the uvision exporter able to generate uVision5
projects by default (which is based on software packs).

Also, adding note that the uvision4 exporter is now deprecated and will be
removed in the future.
2016-09-12 19:46:33 +01:00
Jimmy Brisson d033070425 Add a gettingstarted.html to all exporters 2016-09-12 13:17:35 -05:00
Steven Cooreman f4f1f6ee59 [EFM32] Fix exporter to pull root path
Simplicity Studio exporter doesnt really support header files in the root directory (looking at you, mbed_config.h), so this is a workaround for that issue.
2016-09-12 17:23:05 +02:00
jeromecoutant c3b9a74463 travis: revove rtos support for NUCLEO_L053R8 2016-09-12 12:54:00 +02:00
jeromecoutant 787a21fbd0 Disable RTOS tests for STM32 8K targets
8K RAM target is too small for
"NUCLEO_L031K6"
"NUCLEO_L053R8"
"DISCO_L053C8"
"NUCLEO_F030R8"
2016-09-12 11:48:02 +02:00
Sam Grove e9d0fbd178 Merge pull request #2604 from tung7970/fix-tools
Tools - Fix fill section size variation
2016-09-10 16:22:00 -05:00
Sam Grove c3737b4f7a Merge pull request #2593 from ConorPKeegan/devel_app_config_switch
Add app config command line switch for test and make
2016-09-10 14:30:38 -05:00
Sam Grove 8d5424347e Merge pull request #2615 from bcc6/master
[MTM_MTCONNECT04S] Added support for MTM_MTCONNECT04S
2016-09-10 11:34:44 -05:00
Conor Keegan ac51eb6638 Add unit tests for app_config 2016-09-10 15:29:19 +01:00
Conor Keegan aafcf55407 Add app config switch to options.py and make.py 2016-09-10 15:29:19 +01:00
Conor Keegan 7c72a22508 Add test command switch for app config file 2016-09-10 15:29:19 +01:00
Sam Grove da5a19f149 Merge pull request #2630 from sarahmarshy/patch-4
Test names not dependent on disk location of root
2016-09-10 07:25:04 -05:00
Sam Grove c1ee7fb494 Merge pull request #2504 from ohagendorf/disco_f769_ii
[Disco_F769NI] adding new target
2016-09-10 07:16:21 -05:00
OzzySan b5b6fdc6dc [MTM_MTCONNECT04S] Added gcc_arm template for export. 2016-09-10 15:54:44 +08:00
Tony Wu c50b5c6651 Tools - Fix fill section size variation
The linking order of object files affects the actual code placement,
which in turn affects the size of fill section due to the number of
zeros required to maintain appropriate data/code alignment may change.
This is observed when building on Mac and Linux host.

example: mbed compile -m K64F -t GCC_ARM (build 1)
+---------------------+-------+-------+-------+
| Module              | .text | .data |  .bss |
+---------------------+-------+-------+-------+
| Fill                |   120 |     4 |  2381 |
| Misc                | 28755 |  2216 |    84 |
| features/frameworks |  4236 |    52 |   744 |
| hal/common          |  2745 |     4 |   325 |
| hal/targets         | 12116 |    12 |   200 |
| rtos/rtos           |   119 |     4 |     0 |
| rtos/rtx            |  5721 |    20 |  6786 |
| Subtotals           | 53812 |  2312 | 10520 |
+---------------------+-------+-------+-------+

example: mbed compile -m K64F -t GCC_ARM (build 2)
+---------------------+-------+-------+-------+
| Module              | .text | .data |  .bss |
+---------------------+-------+-------+-------+
| Fill                |   128 |     4 |  2381 |
| Misc                | 28755 |  2216 |    84 |
| features/frameworks |  4236 |    52 |   744 |
| hal/common          |  2745 |     4 |   325 |
| hal/targets         | 12116 |    12 |   200 |
| rtos/rtos           |   119 |     4 |     0 |
| rtos/rtx            |  5721 |    20 |  6786 |
| Subtotals           | 53820 |  2312 | 10520 |
+---------------------+-------+-------+-------+

This patch fixes fill section size variation by sorting object
files before passing to linker.

Signed-off-by: Tony Wu <tung7970@gmail.com>
2016-09-10 08:30:01 +08:00
Sam Grove 5ba3ab70c9 Merge pull request #2613 from bridadan/find-tests-directory-fix
Correctly providing directories to build_apis
2016-09-09 18:01:22 -05:00
Sam Grove b71bfd6250 Merge pull request #2576 from theotherjimmy/example-regession
Add smoke test that builds example programs with mbed-cli
2016-09-09 17:59:55 -05:00
sarahmarshy f8cae13f33 Fix uvision group naming
The previous way of finding group names found the encompassing directory of each file. If the project is exported from the online compiler, this resulted in temporary folder names like tmpyKKWv_ showing up as group names.

I propose defaulting to the project name if the file is in the project root.
2016-09-09 17:18:52 -05:00
Sam Grove 2c96001478 Merge pull request #2575 from theotherjimmy/allow-empty-config
tools-config! -  Allow an empty or mal-formed config to be passed to the config system
2016-09-09 19:32:05 +02:00
ohagendorf d0e2f1efa6 disco_f769 some rework ... (part II)
as suggested by adustm
2016-09-09 14:21:55 +02:00
ohagendorf 95c5b78f34 [disco_f769ni] adding gcc_arm exporter definitions 2016-09-09 14:18:16 +02:00
ohagendorf 3598af00c7 [disco_f769ni] adding to build_travis 2016-09-09 14:18:16 +02:00
ohagendorf 54adfe10c0 [disco_f769ni] adding rtos lib 2016-09-09 14:18:16 +02:00
Sam Grove 57ebf8bdad Merge pull request #2548 from jamike/NUCLEO_F303ZE
Nucleof303ze
2016-09-09 01:48:13 +02:00
Sarah Marsh 7ee621320a Removed projectfiles directory. debug-info default option 2016-09-06 14:24:06 -05:00
Jimmy Brisson a6be472111 Add repo_dirs, repo_files, lib_builds, and lib_refs to zips 2016-09-06 14:24:06 -05:00
Jimmy Brisson b5c189931e Fix include paths for fragmented projects; remove deadcode 2016-09-06 14:24:06 -05:00
Jimmy Brisson c550f9da75 Fix some tracebacks, add zip exporter to the CLI 2016-09-06 14:24:06 -05:00
Jimmy Brisson cadd233b8e Allow dict in addition to the other types of src_paths
The dict allows the user of the exporter api to specify the result directory
of particular groups of scanned dirs. This will be used by the online exporters
to spoof everything being in the same directory when they are not. It may also
be used by tests, if they would like to export something that looks exactly
like a normal project.
2016-09-06 14:24:05 -05:00
Jimmy Brisson 6686411220 Set vpath correctly when exporting to projectfiles directory 2016-09-06 14:24:05 -05:00
Sarah Marsh 2196d50e72 Create projectfiles directory when exporting
Compatible with new c/asm/cpp flag separation.
2016-09-06 14:24:05 -05:00
Jimmy Brisson e5de39efff Fix renaming issues in non-CI ides
Affects these ides:
 - Atmel Studio
 - Code Red (I don't think we support this)
 - Coide
 - DS-5
 - E2Studio
 - EMblocks
 - KDS
 - Simplicity v3
 - SW 4 STM32

also corrects flags usage in EMBlocks
2016-09-06 14:24:05 -05:00
Jimmy Brisson 36c750b39f Reinstated the zip exporter 2016-09-06 14:24:05 -05:00
Jimmy Brisson 3e2526a424 Made exporting safer
it will no longer barf when:
 - a linker scirpt is None
 - an attribute that is a set
it will also export the correct library include paths
2016-09-06 14:24:05 -05:00
Jimmy Brisson 67fae3a705 Allow exporting to in-memory zip file 2016-09-06 14:24:05 -05:00
Sarah Marsh 0016ddf60c progen exporter template 2016-09-06 14:24:05 -05:00
Sarah Marsh cccc5f3fca Accessing progen exporters directly 2016-09-06 14:24:05 -05:00
Jimmy Brisson 7e2ca0115b Update copyright 2016-09-06 14:24:04 -05:00
Sarah Marsh f6a15fd3c8 Refactor export subsystem
Makes several broad changes:
 - removes dead code that dealt with the online build system
 - replaces export function with a much simpler one that:
   - does not copy any sources
   - the zip file hits the disk
   - the mbed_config.h hits the disk
   - the project files hit the disk
   - nothing else hits the disk
 - exporters use Resource object scanned with a toolchain
 - progen exporters don't optionally build a project instead they have a
   build function that may be called afterwards
 - much of the code passes pylint (have a score of 9 or above):
   - project.py
   - project_api.py
   - export/__init__.py
   - export/exporters.py
   - test/export/build_test.py
2016-09-06 14:24:00 -05:00
sarahmarshy ac11d94724 Test names not dependent on disk location of root
#2613 should be merged first 
Using test_api, I found that the test names were dependent on where mbed-os (if that is the root) is stored on disk if you provide anything other than '.' as the root directory. 
This would change names like: 
```
repos-mbed-os-example-blinky-mbed-os-features-storage-feature_storage-tests-cfstore-example3
```
to
```
features-storage-feature_storage-tests-cfstore-example3
```
2016-09-06 10:23:32 -05:00
Bogdan Marinescu 5dcd546fd5 Merge pull request #2393 from theotherjimmy/argument-dependencies
[tools] Prevent trace-backs from incomplete args
2016-09-05 12:50:47 +03:00
Michel Jaouen c8d08bd952 [NUCLEO_F303ZE] test / export scripts update 2016-09-05 09:14:09 +02:00
OzzySan 85d7ff2e17 [MTM_MTCONNECT04S] Added support for MTM_MTCONNECT04S 2016-09-05 10:53:39 +08:00
Brian Daniels 8b9a6dc19d Correctly providing directories to build_apis
The shared `prepare_toolchain` and `scan_resources` functions in build_api
expect a list, not a string. This is different from the
toolchain.scan_resources function. Now the functions are being used
correctly within the `find_tests` function in test_api
2016-09-02 11:32:11 -05:00
Marcelo Salazar 56604a04c8 Fixed bug on memap (non-default output path)
Removed code that checks if the path to the map file
matches with the selected toolchain.
2016-09-02 19:05:27 +03:00
Jimmy Brisson 3437829af1 return the number of failures from the script 2016-09-01 16:01:12 -05:00
Jimmy Brisson f983292a6b Separate the import and compile steps for better integration with Jenkins 2016-08-31 15:17:29 -05:00
Jimmy Brisson ac5c685389 Use mbed-os 5 example instead of the mbed 2 one 2016-08-31 14:25:59 -05:00
Jimmy Brisson 41ec0af7aa Update Docstring 2016-08-31 13:54:41 -05:00
Jimmy Brisson 64e71e2f3a Use IPV6 feature for filtering mesh, client, and sockets 2016-08-31 13:40:34 -05:00
Jimmy Brisson 4b1dcd398c Allow filtering by target as well as by features 2016-08-31 13:40:03 -05:00
Jimmy Brisson 1f0afebbbc Allow command-line filtering of toolchains 2016-08-31 13:24:59 -05:00
Jimmy Brisson f7a1d1f749 Move to feature filter for target and toolchain detection; print passed tests 2016-08-29 14:38:16 -05:00
Jimmy Brisson 78028a9ceb Move example tests to their own folder 2016-08-29 14:01:57 -05:00
Jimmy Brisson 95ee4f6370 Use json for the example to target mapping and print failures 2016-08-29 13:46:39 -05:00
Jimmy Brisson eb11561c1f Add smoke test that builds example programs with mbed-cli 2016-08-29 11:26:37 -05:00
Jimmy Brisson c7bf3fac60 Allow an empty or mal-formed config to be passed to the config system 2016-08-29 10:03:36 -05:00
Sam Grove ea56684fff Merge pull request #2531 from radhika-raghavendran/master
ncs36510 from ON Semiconductor
2016-08-27 07:31:39 -05:00
Sam Grove fe1f2b6066 Merge pull request #2563 from sarahmarshy/path_error_rev
Check if executble exists
2016-08-26 18:05:50 -05:00
Sarah Marsh bd0acdc527 Check executable 2016-08-26 17:32:57 -05:00
Sam Grove ea3526d657 Merge pull request #2418 from sarahmarshy/path_error_rev
Readable error when toolchain paths not set. Allow IAR and ARM toolchains to be set in user's PATH.
2016-08-26 13:10:48 -05:00
Radhika 2dc38063b9 Formatting code according to ARM guidelines.
Ran pylint and astyle.
Rebased latest ARMmbed-os code.
2016-08-26 20:34:23 +05:30
Radhika 048d53134a rebasing with mbed-os latest 2016-08-26 20:34:20 +05:30
Sam Grove f147f6f3f2 Merge pull request #2471 from bridadan/copy-config-library
Copying JSON files to pick up config for built libraries
2016-08-26 09:38:35 -05:00
Sam Grove daf4b1c6b1 Merge pull request #2528 from jeremybrodt/max32620
[MAX32620HSP] Initial release.
2016-08-26 09:25:33 -05:00
Radhika daea440b6a Adding NCS36510 support in mbed-os5.1 2016-08-26 12:04:22 +05:30
Radhika b75379f353 Adding NCS36510 support in mbed-os5.1 2016-08-26 12:00:54 +05:30
Sam Grove 1dbe8d8cf8 Merge pull request #2520 from jeromecoutant/PR_L011K4
[NUCLEO_L011K4] build issues
2016-08-25 09:26:10 -05:00
Jeremy Brodt b9b6d30659 [MAX32620HSP] Initial release. 2016-08-24 16:33:47 -05:00
Brian Daniels 33672b483f Copying JSON files to pick up config for built libraries
This came up when building tests, but affects any library that's built
that uses config and included as "source" with the mbed tools.
JSON files are not copied by default when building a library, so when this
is built it loses the config data associated with the library. This commit
copies all JSON files into the build directory when building libraries.

This leads to two mbed_config.h files existing if the build directories
are different between the library and application build. This is the case
when building tests, so an option build_library was added to remove the
mbed_config.h file when compilation is done. This disabled by default when
building libraries, but it is enabled when building tests.
2016-08-23 16:42:05 -05:00
Vincent Coubard fe322adc9c Make selection of c library used consistent.
* rename "default_build" property into "default_lib"
* rename "standard" value for "default_build" into "std".
2016-08-23 16:04:56 +01:00
jeromecoutant 086d5b9a4e [NUCLEO_L011K4] build issues
Target FLASH is quiet small (16KB),
so only uARM is supported and very small applications.
2016-08-23 17:02:57 +02:00
Vincent Coubard 73a925810c Improve naming of the command line option which select the c library to use.
* rename 'small-build' into 'small-lib'
* rename 'standard-build' into 'std-lib'
2016-08-23 15:42:08 +01:00
Vincent Coubard afde624a26 Rename big-build option into standard-build.
With this change, the name is more descriptive and aligned with the targets
definitions in hal/targets.json.
2016-08-23 15:38:44 +01:00
Vincent Coubard cce10e2c0d Allow 'small-build' and 'big-build' to be used as options.
These two flags are already tested in tools/toolchains/gcc.py but can't
be used at the moment because they are not part of the argument list of
the option parameter.
2016-08-23 15:37:56 +01:00
Martin Kojtal 0231f61588 Merge pull request #2516 from NXPmicro/HEXIWEAR_KDS_Support
HEXIWEAR: Add support to create KDS projects for HEXIWEAR
2016-08-23 09:07:49 +01:00
Russ Butler 6a31ffbf3e Heap statistics
Keep track of the current size allocated, maximum size allocated,
number of allocations, failed allocations and total size allocated for
both GCC and ARM. Report the maximum size allocated at the end of
testing.

Also, add a test to verify heap metrics are working as expected.
2016-08-22 18:32:51 -05:00
Mahadevan Mahesh 2c813a051b HEXIWEAR: Add support to create KDS projects for HEXIWEAR
Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2016-08-22 15:06:56 -05:00
Jimmy Brisson 163fa59e17 Prevent traceback 2016-08-19 14:01:19 -05:00
Jimmy Brisson a0c8a09c89 Unify look of argument errors 2016-08-19 14:01:19 -05:00
Martin Kojtal 862db41be3 Merge pull request #2468 from bridadan/fix-gcc-diagnostic-pattern
Tools - Fixing issue where GCC fails to report compile errors when non-verbose
2016-08-19 13:48:54 +01:00
Martin Kojtal f6be78dc89 Merge pull request #2429 from theotherjimmy/specialize-tests-discovery
Move find_tests to where it's has arguments
2016-08-19 12:05:45 +01:00
Martin Kojtal 5c82db8203 Merge pull request #2494 from theotherjimmy/fix-memap-table
Print module information in 'table' output format
2016-08-19 11:52:26 +01:00
Jimmy Brisson 74dd5efd48 Print module information in 'table' output format 2016-08-18 13:25:58 -05:00
Jimmy Brisson 096d17dec9 Fix macros being the exact same when generating mbed_config.h 2016-08-18 11:23:26 -05:00
Sarah Marsh cd229bacc3 Allow users to set armcc and iccarm in path.
Raise exceptin instead of exit.
Corrected error for arm-none-eabi-gcc/g++ set in path.
2016-08-17 09:14:05 -05:00
Martin Kojtal bdb4ab921f Merge pull request #2472 from ytsuboi/master
[TY51822r3] Added exporting support
2016-08-17 14:54:49 +01:00
Martin Kojtal 77e87179bd Merge pull request #2456 from NXPmicro/SDK2_FRDM_K66F
Add support for FRDM K66
2016-08-17 14:37:31 +01:00
Yoshihiro TSUBOI f8a6af161a [TY51822r3] Added exporting support 2016-08-17 10:58:48 +09:00
Jimmy Brisson dabd7b8d53 Made linting a recommendation and raised the bar for printing 2016-08-16 13:29:43 -05:00
Jimmy Brisson 7b7ca84ab3 Fix remaining issues in targets.py 2016-08-16 13:29:43 -05:00
Jimmy Brisson 3f9bedbdd9 Add pylint testing to Travis 2016-08-16 13:29:43 -05:00
Jimmy Brisson 33786130ae Format and document options.py 2016-08-16 13:29:43 -05:00
Jimmy Brisson 44efd92ca3 Format and document hooks.py 2016-08-16 13:29:31 -05:00
Brian Daniels 20ddba6e90 Fixing issue where GCC fails to report compile errors when non-verbose
The output of the GCC compiler is such that the toolchain regex sometimes
got hung up on the ':' charcter being printed in front of the drive letter when
running on Windows. This PR changes the matching logic to be more flexible
by using 'search' to check the entire string for a match, not just the
beginning of the string.
2016-08-16 12:34:18 -05:00
Jimmy Brisson ec1d0b5673 Format detect_targets.py 2016-08-16 11:48:46 -05:00
Jimmy Brisson 2831eee216 Format and document libraries.py 2016-08-16 11:48:45 -05:00
Jimmy Brisson acc59a1a86 Format paths python module 2016-08-16 11:48:45 -05:00
Jimmy Brisson 5fbcc25b46 Format and document colorize 2016-08-16 11:48:45 -05:00