Commit Graph

6572 Commits (5052e97b17ac7a987af7c5efcc33efd2c58839dd)

Author SHA1 Message Date
Jimmy Brisson 5052e97b17 Force conversion of all -i, -m, -t to the correct case 2016-07-07 15:29:36 -05:00
Jimmy Brisson 6fda53b8b8 Add documentation for the argparser utilities 2016-07-07 15:29:36 -05:00
Jimmy Brisson 59ae690f9b Correct style in tests.py 2016-07-07 15:29:36 -05:00
Jimmy Brisson d6bee561ab Squash weird import bug 2016-07-07 15:29:36 -05:00
Jimmy Brisson 0ec8199c55 Revert "Revert "Generalize flag handling""
This reverts commit 33cec194c6.
2016-07-07 15:29:36 -05:00
Sam Grove 0bc7622126 Merge pull request #2094 from mlnx/mlnx-requirements
Install correct version of tools
2016-07-07 11:42:20 -05:00
Martin Kojtal 9f33ba87b0 Merge pull request #2047 from PrzemekWirkus/devel_mmap_proj
[Tools] Add summary for test building
2016-07-07 09:35:19 +01:00
Przemek Wirkus 12a01f61ca Add summary for test building
When users are building tests with `mbed compile --tests` whey will by default
get memory map breakdown report.
This can be suppresed in the future with command line switch. For now it is
visible each time users build test cases.
List is sorted by project name created with `build_project` API.

Changes:
* `build_project` now returns tuple (this breaks build_api.build_project API!)
* Memmap script got a aggregation function to print summary from small 'JSON'
  partial reports.
* Report is generated by `test_api.build_tests` function only!

Example:
```
+----------------------------------------------------------------------+--------+-----------+-------------+------------+-------+-------+-----------+
| name                                                                 | target | toolchain | total_flash | static_ram | stack |  heap | total_ram |
+----------------------------------------------------------------------+--------+-----------+-------------+------------+-------+-------+-----------+
| features-feature_ipv4-tests-mbedmicro-net-nist_internet_time_service | K64F   | GCC_ARM   |      132136 |      62288 | 32768 | 65536 |    160592 |
| features-feature_ipv4-tests-mbedmicro-net-tcp_client_echo            | K64F   | GCC_ARM   |      125613 |      62448 | 32768 | 65540 |    160756 |
| features-feature_ipv4-tests-mbedmicro-net-tcp_client_hello_world     | K64F   | GCC_ARM   |      125949 |      62448 | 32768 | 65540 |    160756 |
| features-feature_ipv4-tests-mbedmicro-net-udp_echo_client            | K64F   | GCC_ARM   |      123613 |      62276 | 32768 | 65536 |    160580 |
| features-storage-tests-cfstore-add_del                               | K64F   | GCC_ARM   |       96080 |      13052 | 32768 | 65540 |    111360 |
| features-storage-tests-cfstore-close                                 | K64F   | GCC_ARM   |       95520 |      12004 | 32768 | 65540 |    110312 |
| features-storage-tests-cfstore-create                                | K64F   | GCC_ARM   |       99144 |      13036 | 32768 | 65540 |    111344 |
| features-storage-tests-cfstore-example1                              | K64F   | GCC_ARM   |       98592 |      12368 | 32768 | 65536 |    110672 |
| features-storage-tests-cfstore-example2                              | K64F   | GCC_ARM   |       95232 |      12012 | 32768 | 65540 |    110320 |
| features-storage-tests-cfstore-example3                              | K64F   | GCC_ARM   |       95264 |      11856 | 32768 | 65536 |    110160 |
| features-storage-tests-cfstore-example4                              | K64F   | GCC_ARM   |       92632 |      12012 | 32768 | 65540 |    110320 |
| features-storage-tests-cfstore-example5                              | K64F   | GCC_ARM   |       92344 |      11856 | 32768 | 65536 |    110160 |
| features-storage-tests-cfstore-find                                  | K64F   | GCC_ARM   |       96344 |      13028 | 32768 | 65540 |    111336 |
| features-storage-tests-cfstore-find2                                 | K64F   | GCC_ARM   |       93192 |      12004 | 32768 | 65540 |    110312 |
| features-storage-tests-cfstore-flash                                 | K64F   | GCC_ARM   |       97784 |      12532 | 32768 | 65540 |    110840 |
| features-storage-tests-cfstore-flush                                 | K64F   | GCC_ARM   |       96464 |      12012 | 32768 | 65540 |    110320 |
| features-storage-tests-cfstore-flush2                                | K64F   | GCC_ARM   |       95056 |      12004 | 32768 | 65540 |    110312 |
| features-storage-tests-cfstore-init                                  | K64F   | GCC_ARM   |       93120 |      12012 | 32768 | 65540 |    110320 |
| features-storage-tests-cfstore-misc                                  | K64F   | GCC_ARM   |       96808 |      12516 | 32768 | 65540 |    110824 |
| features-storage-tests-cfstore-open                                  | K64F   | GCC_ARM   |       98632 |      12540 | 32768 | 65540 |    110848 |
| features-storage-tests-cfstore-read                                  | K64F   | GCC_ARM   |       94112 |      12540 | 32768 | 65540 |    110848 |
| features-storage-tests-cfstore-write                                 | K64F   | GCC_ARM   |       94488 |      12004 | 32768 | 65540 |    110312 |
| features-storage-tests-flash_journal-basicapi                        | K64F   | GCC_ARM   |      104712 |      21236 | 32768 | 65540 |    119544 |
| frameworks-utest-tests-unit_tests-basic_test                         | K64F   | GCC_ARM   |       71534 |      11468 | 32768 | 65540 |    109776 |
| frameworks-utest-tests-unit_tests-case_async_validate                | K64F   | GCC_ARM   |       74598 |      11468 | 32768 | 65540 |    109776 |
| frameworks-utest-tests-unit_tests-case_control_async                 | K64F   | GCC_ARM   |       74630 |      11476 | 32768 | 65540 |    109784 |
| frameworks-utest-tests-unit_tests-case_control_repeat                | K64F   | GCC_ARM   |       72790 |      11452 | 32768 | 65540 |    109760 |
| frameworks-utest-tests-unit_tests-case_selection                     | K64F   | GCC_ARM   |       72302 |      11468 | 32768 | 65540 |    109776 |
| frameworks-utest-tests-unit_tests-case_setup_failure                 | K64F   | GCC_ARM   |       72630 |      11468 | 32768 | 65540 |    109776 |
| frameworks-utest-tests-unit_tests-case_teardown_failure              | K64F   | GCC_ARM   |       72790 |      11468 | 32768 | 65540 |    109776 |
| frameworks-utest-tests-unit_tests-control_type                       | K64F   | GCC_ARM   |       82462 |      11468 | 32768 | 65540 |    109776 |
| frameworks-utest-tests-unit_tests-minimal_async_scheduler            | K64F   | GCC_ARM   |       72182 |      11468 | 32768 | 65540 |    109776 |
| frameworks-utest-tests-unit_tests-minimal_scheduler                  | K64F   | GCC_ARM   |       71998 |      11468 | 32768 | 65540 |    109776 |
| frameworks-utest-tests-unit_tests-test_assertion_failure_test_setup  | K64F   | GCC_ARM   |       71710 |      11460 | 32768 | 65540 |    109768 |
| frameworks-utest-tests-unit_tests-test_setup_case_selection_failure  | K64F   | GCC_ARM   |       71702 |      11468 | 32768 | 65540 |    109776 |
| frameworks-utest-tests-unit_tests-test_setup_failure                 | K64F   | GCC_ARM   |       71710 |      11468 | 32768 | 65540 |    109776 |
| tests-integration-basic                                              | K64F   | GCC_ARM   |       67566 |      10780 | 32768 | 65540 |    109088 |
| tests-integration-threaded_blinky                                    | K64F   | GCC_ARM   |       68326 |      10780 | 32768 | 65540 |    109088 |
| tests-mbed_drivers-c_strings                                         | K64F   | GCC_ARM   |       74438 |      11468 | 32768 | 65540 |    109776 |
| tests-mbed_drivers-callback                                          | K64F   | GCC_ARM   |       88310 |      11972 | 32768 | 65540 |    110280 |
| tests-mbed_drivers-dev_null                                          | K64F   | GCC_ARM   |       90213 |      10784 | 32768 | 65540 |    109092 |
| tests-mbed_drivers-echo                                              | K64F   | GCC_ARM   |       71918 |      11468 | 32768 | 65540 |    109776 |
| tests-mbed_drivers-generic_tests                                     | K64F   | GCC_ARM   |       77624 |      11468 | 32768 | 65540 |    109776 |
| tests-mbed_drivers-rtc                                               | K64F   | GCC_ARM   |       85854 |      11308 | 32768 | 65540 |    109616 |
| tests-mbed_drivers-stl_features                                      | K64F   | GCC_ARM   |       80726 |      11476 | 32768 | 65540 |    109784 |
| tests-mbed_drivers-ticker                                            | K64F   | GCC_ARM   |       70974 |      11308 | 32768 | 65540 |    109616 |
| tests-mbed_drivers-ticker_2                                          | K64F   | GCC_ARM   |       70790 |      11308 | 32768 | 65540 |    109616 |
| tests-mbed_drivers-ticker_3                                          | K64F   | GCC_ARM   |       71038 |      11308 | 32768 | 65540 |    109616 |
| tests-mbed_drivers-timeout                                           | K64F   | GCC_ARM   |       70886 |      11308 | 32768 | 65540 |    109616 |
| tests-mbed_drivers-wait_us                                           | K64F   | GCC_ARM   |       70414 |      11308 | 32768 | 65540 |    109616 |
| tests-mbedmicro-mbed-attributes                                      | K64F   | GCC_ARM   |       71534 |      11460 | 32768 | 65540 |    109768 |
| tests-mbedmicro-mbed-call_before_main                                | K64F   | GCC_ARM   |       73112 |      10780 | 32768 | 65540 |    109088 |
| tests-mbedmicro-mbed-cpp                                             | K64F   | GCC_ARM   |       73400 |      10780 | 32768 | 65540 |    109088 |
| tests-mbedmicro-mbed-div                                             | K64F   | GCC_ARM   |       73176 |      10780 | 32768 | 65540 |    109088 |
| tests-mbedmicro-rtos-mbed-basic                                      | K64F   | GCC_ARM   |       68390 |      10780 | 32768 | 65540 |    109088 |
| tests-mbedmicro-rtos-mbed-isr                                        | K64F   | GCC_ARM   |       74480 |      10780 | 32768 | 65540 |    109088 |
| tests-mbedmicro-rtos-mbed-mail                                       | K64F   | GCC_ARM   |       74992 |      11300 | 32768 | 65540 |    109608 |
| tests-mbedmicro-rtos-mbed-mutex                                      | K64F   | GCC_ARM   |       74048 |      10780 | 32768 | 65540 |    109088 |
| tests-mbedmicro-rtos-mbed-queue                                      | K64F   | GCC_ARM   |       74912 |      11300 | 32768 | 65540 |    109608 |
| tests-mbedmicro-rtos-mbed-semaphore                                  | K64F   | GCC_ARM   |       74296 |      10780 | 32768 | 65540 |    109088 |
| tests-mbedmicro-rtos-mbed-signals                                    | K64F   | GCC_ARM   |       74328 |      10780 | 32768 | 65540 |    109088 |
| tests-mbedmicro-rtos-mbed-threads                                    | K64F   | GCC_ARM   |       75214 |      11460 | 32768 | 65540 |    109768 |
| tests-mbedmicro-rtos-mbed-timer                                      | K64F   | GCC_ARM   |       68430 |      10780 | 32768 | 65540 |    109088 |
| tests-storage_abstraction-basicapi                                   | K64F   | GCC_ARM   |      107808 |      28908 | 32768 | 65540 |    127216 |
+----------------------------------------------------------------------+--------+-----------+-------------+------------+-------+-------+-----------+
```

Refactored after code review

Refactored parse() function

Polishing

Moved memory usage reporting function call to test.py to group all reporters in one place

Bug-fix: on ARM toolchain we were not fetching statistics from last element of memap result list
2016-07-07 08:35:20 +01:00
Sam Grove 458b46c803 Merge pull request #1873 from theotherjimmy/file-reporter
Adds a simple text file report format
2016-07-06 16:45:43 -05:00
Sam Grove 36ff1f73ce Merge pull request #2106 from theotherjimmy/fix-makefile
[Exporter-gcc_arm] do builds from project directory when --source is specified
2016-07-06 15:33:28 -05:00
Jimmy Brisson 3697dedb78 Reverse order of relativizing paths and unixifing paths
'cause windows silly path separator is the same as the escape character
2016-07-06 13:54:33 -05:00
Jimmy Brisson 3cf8bfbfb7 Allow spaces in paths passed to mkdir and rm on bash 2016-07-06 12:51:14 -05:00
Jimmy Brisson fbccf8dfc9 Force shell use when in bash/sh mode 2016-07-06 12:49:38 -05:00
Jimmy Brisson c2d66865be Correct batch detection algorimthm
There are two shell-like things that we care about
 bash: does environment varible expansion with $
 batch: does environment varible expansion by surrounding something with %

so to detect batch, try to expand a variable on the shell with $.
If you get a $ back, you are in batch!
2016-07-06 11:32:01 -05:00
Martin Kojtal b547856074 Merge pull request #2114 from AlessandroA/update_uvisor
Update the uVisor importer script
2016-07-06 15:17:08 +01:00
Alessandro Angelino 5b488f345f uVisor: Add a quick-start guide to use uVisor in mbed OS 2016-07-06 14:54:43 +01:00
Alessandro Angelino 238fc2787a uVisor importer script: Add command to copy the docs 2016-07-06 14:54:42 +01:00
Alessandro Angelino c4b08cf830 uVisor: Update the release libraries
Changelog:

* No feature changed.
* The libraries have been built using the ARMmbed/uvisor@dev branch
2016-07-06 14:54:42 +01:00
Alessandro Angelino acb6e08e28 uVisor importer script: Point to the dev branch 2016-07-06 14:54:31 +01:00
Martin Kojtal e237d157dd Merge pull request #2113 from ohagendorf/gcc_export
[bugfix gcc_arm] build+make <-> export project+make: different results
2016-07-06 13:49:10 +01:00
Olaf Hagendorf bd614a2a11 [bugfix gcc_arm] build+make <-> export project+make: different results
when in target.json "default_build": "small" is configured
- build.py+make.py
  - uses linker option --specs=nano.specs
  - macro MBED_RTOS_SINGLE_THREAD is defined
- exporting with project.py + make Makefile
  - doesn't use the linker option --specs=nano.specs
  - doesn't contain macro MBED_RTOS_SINGLE_THREAD
2016-07-06 13:35:09 +02:00
Olaf Hagendorf 7f2f0bc5c6 repairing a minor typo in exporters.py 2016-07-06 13:34:59 +02:00
Martin Kojtal 704c042707 Merge pull request #2109 from 0xc0170/dev_lpc2368_arm
Targets - LPC23678 ARM fails to build, remove from supported toolchains
2016-07-06 11:40:14 +01:00
Martin Kojtal 042a42f7b3 Merge pull request #2112 from mbedmicro/fix_nrf_device_has
Added proper  definition for NRF51_MICROBIT_B
2016-07-06 10:45:01 +01:00
Bogdan Marinescu 087b8fa648 Added proper definition for NRF51_MICROBIT_B 2016-07-06 12:31:30 +03:00
0xc0170 668dd17784 Targets - LPC23678 ARM fails to build, remove from supported toolchains
Tracking issue: https://github.com/mbedmicro/mbed/issues/2108
2016-07-06 09:41:32 +01:00
Bogdan Marinescu b8c64cd275 Merge pull request #2102 from mbedmicro/fix_tests_with_config
Fix tests with config
2016-07-06 11:09:20 +03:00
Martin Kojtal 7c00a75b05 Merge pull request #2105 from bridadan/ignore-target-specific-test
Adding .mbedignore for target specific test
2016-07-06 09:05:49 +01:00
Martin Kojtal 8d1024433a Merge pull request #2096 from 0xc0170/fix_release_targets
Fix release targets in the build_release.py
2016-07-06 09:02:44 +01:00
Jimmy Brisson 61ee30efb2 Fix normal export (no --source) 2016-07-05 12:04:36 -05:00
Jimmy Brisson fa527cf45e Rework vpaths and include file locating 2016-07-05 11:51:27 -05:00
Brian Daniels af7da146a9 Adding .mbedignore for target specific test 2016-07-05 11:05:57 -05:00
Jimmy Brisson 4b7f591d33 Fix the makefile template
- Corrects a python barf when something in features is None
 - Corrects makefile to prevent barf when using make -f
2016-07-05 10:16:50 -05:00
Michel Jaouen 1794463a06 [STM32F3]: fix for uart baudrate. 2016-07-05 14:30:25 +01:00
Bogdan Marinescu fbb26a405c Fix tests.py so it can work with application defined targets
With this patch in place, tests.py uses targets names instead of target
instances, which makes it possible to use application defined targets
with tests.
2016-07-05 15:52:53 +03:00
Bogdan Marinescu 36a577e1ef Make build_tests work with target names, not just Target instances
With this change, custom targets defined by the application being
tested in its mbed_app.json file can be used with tests. Note that
`build_project` already accepts both target names and instances, so the
call to `build_project` inside `build_tests` will still work.
2016-07-05 15:47:26 +03:00
Bogdan Marinescu e3d29fe5d2 Improve configuration handling in build_project
The configuration object is now created early in the build_project
function. This way, if there's a mbed_app.json that contains a custom
target, that target is taken into account. This is useful (for example)
when compiling tests for an application that defines a custom target.
2016-07-05 15:40:12 +03:00
Martin Kojtal 17693ac0fa Merge pull request #2100 from jamike/fix_NUCLEO_F303K8_MBED_16
[NUCLEO_F303K8] fix MBED_16.
2016-07-05 13:30:39 +01:00
Martin Kojtal 0aa23a4867 Merge pull request #2101 from jamike/fix_build_disco_F303VC
[DISCO_F303VC] : fix build issue
2016-07-05 10:59:35 +01:00
0xc0170 3b84b42a53 Build release - use target.release to produce release tuple 2016-07-05 10:50:29 +01:00
0xc0170 de4c97abb8 Targets - add release boolean flag 2016-07-05 10:47:51 +01:00
Michel JAOUEN 552631ec9e [NUCLEO_F303K8] fix MBED_16.
RTC clk on LSI (no LSE connected)
2016-07-05 11:45:12 +02:00
Michel JAOUEN e04fab1069 [DISCO_F303VC] : fix build issue 2016-07-05 11:23:42 +02:00
Martin Kojtal e56b9d06b7 Merge pull request #2087 from ohagendorf/stm32f7xx_fpu_sp_dp
fpu with single/double precision - bugfix and extension
2016-07-05 09:39:44 +01:00
Martin Kojtal fe3b80aa68 Merge pull request #2090 from jamike/fix#2089
Fix#2089
2016-07-05 08:36:13 +01:00
Olaf Hagendorf 78bb74a761 fpu with single/double precision - rebasing
- master branch got two new cortex-m4f targets -> travis build failed
2016-07-04 22:10:49 +02:00
Olaf Hagendorf 4fe41d4edd fpu with single/double precision - removing redundancy
- removing redundancy as discussed in PR #2087:
 - in target.json the core option can have only this values : "Cortex-M0", "Cortex-M0+", "Cortex-M1", "Cortex-M3", "Cortex-M4", "Cortex-M7", "Cortex-A9" - Cortex-M4F and Cortex-M7F removed
 - in target.json an additional fpu option with values: "single" and "double" can be used
- build and export scripts are changed to handle this

- tested (compiling, running on hardware) with nucleo_f767 (cortex-m7 with double precision fpu), nucleo_f746 (cortex-m7 with single precision fpu), nucleo_f446 and nucleo_l467 (cortex-m4 with single precision fpu), teensy31 (cortex-m4 without fpu - only build test), nucleo_l073 (cortex-m0)
- singletest results are added to PR #2087 comments
2016-07-04 22:08:31 +02:00
Olaf Hagendorf ea196e2adb fpu with single/double precision - bugfix and extension
- creating new core name Cortex_M7F_DP for a target with a double precision fpu
- adding new core name to arm.py to set compiler/linker flags to a double precision fpu when configured in target.json
- up to now: gcc wrote flag for a double precision fpu -> target with STM32F746 didn't run when using double variables - mcu has only single precision fpu
- changing gcc.py to use single precision for Cortex-M7 und double precision for Cortex_M7F_DP

tested with NUCLEO_F746, NUCLEO_F767 and build.py+make.py and exporting with project.py + compiling/flashing

- iar.py need a similar extention - I didn't change that yet because
  - did not run at the moment - python exception
  - currently worked on in PR #1948
2016-07-04 22:08:30 +02:00
Martin Kojtal c034f48c26 Merge pull request #2077 from egostm/dev_NUCLEO_F429ZI
Add support for Nucleo F429ZI
2016-07-04 15:00:50 +01:00
Marcelo Salazar 99471ec1ee Install correct version of tools 2016-07-04 14:20:24 +01:00