Commit Graph

265 Commits (ad07ab8174b5b307c9946fbca01013aa51b53853)

Author SHA1 Message Date
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
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
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
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
0xc0170 3b84b42a53 Build release - use target.release to produce release tuple 2016-07-05 10:50:29 +01: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
Erwan GOURIOU eaf77ed37f [STM32F4xx][NUCLEO_F429ZI] Add on for NUCLEO_F429ZI export and tests 2016-07-04 15:20:12 +02:00
Erwan Gouriou 9bb08291ce [STM32F4xx] Add support for NUCLEO_F429ZI 2016-07-04 14:00:41 +02:00
Laurent Meunier 4e1a3351b2 [NUCLEO_F446ZE] Add to build and export scripts 2016-07-04 11:44:28 +02:00
Olaf Hagendorf 4211f7581e [NUCLEO_F7xx] adding F767 to build_release and adding default_build to target.json 2016-07-01 16:27:20 +02:00
ohagendorf fdda915a8a [NUCLEO_F767ZI] adding target to rtos lib 2016-07-01 15:19:30 +02:00
ohagendorf 9ddbb1f831 [NUCLEO_F767] move gcc template to new path 2016-07-01 15:17:25 +02:00
Olaf Hagendorf 3ac68aae06 typo in target names for travis build 2016-07-01 15:17:21 +02:00
ohagendorf cc537f7449 adding gccarm and uvision5 exporter 2016-07-01 15:17:21 +02:00
Martin Kojtal 62604b45b2 Merge pull request #1880 from zgoda/generic_bluepill
Support for Blue Pill
2016-07-01 14:52:04 +02:00
Martin Kojtal 6350b2d904 Merge pull request #2046 from sarahmarshy/patch-2
Changed reference to old rtos location
2016-07-01 13:33:40 +02:00
Sam Grove 185676300d Merge pull request #2060 from theotherjimmy/cleanup-make-export
[Exporters-gcc_arm] Clean up the source directory
2016-06-30 13:01:54 -05:00
Jimmy Brisson 3850c2628b Force all to be the default target 2016-06-30 11:43:01 -05:00
Jimmy Brisson 6c1c7a5955 Check for OSTYPE instead of OS
It better detects sh vs. batch
2016-06-30 11:28:32 -05:00
Sam Grove 197c4b516b Merge pull request #2076 from bridadan/relative-paths-test-spec
Relative paths in test spec file
2016-06-30 11:01:07 -05:00
Jimmy Brisson d6d0202236 Move binaries from bin to .build 2016-06-30 10:55:34 -05:00
Jimmy Brisson 5d014661c2 Redo window mkdir; add cross-platform rmdir 2016-06-30 10:55:10 -05:00
Jimmy Brisson 6867499da3 Test for existance of dir before creating it 2016-06-30 10:55:04 -05:00
Jimmy Brisson 6971b1e1b4 update mkdir to be cross-platform 2016-06-30 10:51:19 -05:00
Jimmy Brisson 7b5831247d Make the efm32 targets use the common makefile template 2016-06-30 10:51:19 -05:00
Jimmy Brisson 63f4e6a279 sam*::gcc_arm targets extend the common makefile 2016-06-30 10:51:19 -05:00
Jimmy Brisson 86585197da rework the common template to place objects into bin 2016-06-30 10:51:18 -05:00
Brian Daniels b7186bb604 Test spec paths are now relative to tool execution directory
This commit also normalizes the paths produced by the the test spec to
Unix style paths to increase portability of the file.
2016-06-30 09:32:13 -05:00
svastm 505814147d [NUCLEO_L432KC] Add RTOS support 2016-06-30 15:05:09 +02:00
svastm 2198dccd6e [NUCLEO_L432KC] Add to build and export scripts 2016-06-30 14:50:35 +02:00
Jarek Zgoda 2731bc7da3 Template moved to new tools directory 2016-06-30 12:36:19 +02:00
Jarek Zgoda 59623d62f9 One more occurence to be renamed 2016-06-30 12:36:19 +02:00
Jarek Zgoda 3006f70552 Support for Blue Pill 2016-06-30 12:36:18 +02:00
Sam Grove 472ac772f9 Merge pull request #2056 from theotherjimmy/pass-files-to-source
Enable passing individual files to --source options
2016-06-29 17:08:30 -05:00
Jimmy Brisson cd9261d168 Add documentation 2016-06-29 11:20:34 -05:00
Jimmy Brisson ce1cddcd8b Prefix non-public api with an underscore 2016-06-29 11:11:54 -05:00
Jimmy Brisson c7acb7c293 Enable passing individual files to scan_resources 2016-06-29 11:10:12 -05:00
Jimmy Brisson feea8d59e1 Fix a bug that caused the gcc_arm exporter to fail
Resolves #2048
2016-06-28 11:11:03 -05:00
Sam Grove ec1ec7c3e2 Merge pull request #2015 from mlnx/memap_improvements
[memap] Improve wording on stack/heap and minor improvements
2016-06-28 11:00:10 -05:00
Sam Grove 5ea1953755 Merge pull request #2045 from 0xc0170/fix_iar_vla
iar - remove --vla flag for exporters
2016-06-28 10:52:00 -05:00
Martin Kojtal 5534f34d0e Merge pull request #2033 from screamerbg/env-var-paths
[Tools] Add MBED_ prefix to compilers environment variables
2016-06-28 17:32:42 +02:00
sarahmarshy 06706da749 Changed reference to old rtos location 2016-06-28 10:25:48 -05:00
0xc0170 d2a216f3a0 iar - remove --vla flag for exporters
The template file already enables VLA as it's for C only. This --vla flag
causes conflicts with --cpp flag that is enabled implicitly if C++ is enabled.
2016-06-28 17:15:48 +02:00
Mihail Stoyanov b8cc5988bb Merge pull request #2036 from screamerbg/fix-tests1
[Testing] Disable test MBED_39 being commonly failed test
2016-06-28 15:18:28 +01:00
Bogdan Marinescu 986ed4f22c Merge pull request #2043 from 0xc0170/fix_uvision_libpath
armcc - remove libpath from ld flags
2016-06-28 16:36:33 +03:00
Martin Kojtal a84b7e71e2 Merge pull request #2042 from DanKupiniak/export_elmo_f411re_to_gcc_arm
Export ELMO_F411RE projects to offline GCC ARM Make project.
2016-06-28 15:34:11 +02:00
0xc0170 29f806bb64 armcc - remove libpath from ld flags
libpath is not required for exporters, as they provide default paths.
This caused problems when paths are not correct for mbed tools, a project
fails to build as path is not found.
2016-06-28 14:58:26 +02:00
0xc0170 f44ff94fc3 uvision4/5 - remove no-vla for exporters
IDE has C/C++ tab, thus this only cxx flag would be applied for
C files.
2016-06-28 14:15:34 +02:00
Daniel Kupiniak bb29ed8991 Export ELMO_F411RE projects to offline GCC ARM Make project. 2016-06-28 14:14:48 +02:00
0xc0170 35c90753c0 Project - fix zip rename argument 2016-06-28 10:22:47 +02:00
Bogdan Marinescu af71d87adc Merge pull request #1975 from theotherjimmy/export-mbed-conf
[Exporters] Update exporters to include and use mbed_conf.h (Was #1964)
2016-06-28 11:15:22 +03:00
Martin Kojtal 96e533c361 Merge pull request #2034 from sarahmarshy/patch-1
[Exporters] Conflicting zip name
2016-06-28 07:28:41 +02:00
Mihail Stoyanov 51157ba073 Disable test MBED_39 being commonly failed test 2016-06-27 23:55:45 +01:00
Mihail Stoyanov b67d425f09 Add MBED_ prefix to compilers environment variables 2016-06-27 23:27:43 +01:00
sarahmarshy beb0be99d8 Conflicting zip name
The boolean zip passed as a parameter conflicts with the zip exporter class imported.
2016-06-27 17:20:13 -05:00
Jimmy Brisson 855cc91550 Force program_cycle_s to be used as an attribue everywhere 2016-06-27 16:01:52 -05:00
Jimmy Brisson 8e11fa2071 Undelete defines from IAR 2016-06-27 14:36:35 -05:00
Jimmy Brisson 7b83c30ba1 for file in `ls tofor file in `ls tools/export`; do sed -i tools/export/$file -e "s/MBED_CONF_ACTIVE/MBED_CONFIG_HEADER_SUPPORTED/"; done 2016-06-27 14:06:42 -05:00
Jimmy Brisson 4746beb256 Switch to = style for preincludes
relpaces the --preinclude mbed_config.h with --preinclude=mbed_config.h
2016-06-27 14:06:42 -05:00
Jimmy Brisson f92d3ec9be Move name of config file to one location 2016-06-27 14:06:42 -05:00
Jimmy Brisson 3a273f78f2 Create and enable exporter flag mbed_conf_active for exporters
The mbed_conf_active feature disables configuration macros on the
command line and replaces them with a preinclude header file
2016-06-27 14:06:42 -05:00
Jimmy Brisson c06dad55d9 Change uVisoun[45] to get preincludes 2016-06-27 14:06:42 -05:00
Jimmy Brisson a1b73c9b7e Fix typo after rebase 2016-06-27 14:06:41 -05:00
Mihail Stoyanov 879ae8c6bd Fixed gcc.py typo
get_conifg_option -> get_config_option
2016-06-27 14:06:41 -05:00
Jimmy Brisson d9b4109143 Update progen-style flags with the toolchains include mbed_conf.h 2016-06-27 14:06:41 -05:00
Jimmy Brisson 5532fb8697 Export command line for including mbed_conf.h from toolchains 2016-06-27 14:06:34 -05:00
Jimmy Brisson 4f29483255 Update exporters to include the generated mbed_conf.h 2016-06-27 13:59:56 -05:00
Sam Grove f7ad7d2e27 Merge pull request #2005 from screamerbg/env-var-paths
[Tools] Add environmental variables support for toolchain paths
2016-06-27 11:41:58 -05:00
Sam Grove f3e15ebfa3 Merge pull request #2020 from mbedmicro/fix_iar_asm_options
Fixed config-related options for the IAR assembler
2016-06-27 11:37:59 -05:00
Bogdan Marinescu 676cfbb695 Merge pull request #2028 from mbedmicro/add_project_folders
Change directory generation for project files.
2016-06-27 18:52:18 +03:00
Martin Kojtal 2acd3bbf2f Merge pull request #2023 from screamerbg/misc-scripts
Move non-essential scripts to tools/misc/
2016-06-27 17:51:56 +02:00
Bogdan Marinescu 2852932367 Change directory generation for project files.
Before this PR:

```
Successful exports:
  * K64F::uvision       .\projectfiles\uvision\Unnamed_Project_K64F
```

After this PR:

```
Successful exports:
  * K64F::uvision       .\projectfiles\uvision_K64F\Unnamed_Project
```

The directory name now contains <ide>_<target>, and there's a single
project per directory as a result.
2016-06-27 18:16:46 +03:00
Marcelo Salazar d50139c8e3 Minor tweaks 2016-06-27 15:02:05 +01:00
Martin Kojtal fdb401ce4e Exporter - source_relative name fix
relative did not contain enough details what's the intention with
this flag.
2016-06-27 15:29:21 +02:00
Martin Kojtal 5800af11b3 Exporters - add source_relative flag
if we work with relative sources, the flag should be set to True, otherwise
False.

This fixes wrong paths when exporting with --source argument. The exporter would
assume sources were copied, and thus reference them all within the root of the generated
project.
2016-06-27 15:25:44 +02:00
Mihail Stoyanov 925781c6a7 Move non-essential scripts to tools/misc/ 2016-06-27 14:11:38 +01:00
Bogdan Marinescu b4e8cf655d Fixed config-related options for the IAR assembler
The IAR assembler doesn't accept '--preinclude', but it accepts -D.
This commit changes the way the config-related macros are propagated
to the IAR assembler to use '-D' instead of '--preinclude'. This is
the only change related to functionality, the others are small,
backward compatible changes to the config code to make passing arguments
to the toolchain instances easier.

Tested by compiled blinky with IAR, GCC_ARM and ARM for K64F.
2016-06-27 15:54:38 +03:00
Marcelo Salazar fbd8a41fed Reverted changes and improved wording 2016-06-27 13:31:56 +01:00
Marcelo Salazar c0f53ccb21 [memap] Removing stack/heap and minor improvements
- Removing stack & heap (dynamic) RAM information
  This information was misleading and shouldn't be shown in memap.
  E.g. each task may have its own stack region configured at run time.

- Adding 'bytes' unit in the total memory info

- Right aligment of numbers, so it is easier to compare numbers
2016-06-27 11:44:01 +01:00
Mihail Stoyanov faa427db77 Add environmental variables support for toolchain paths
Also updated license of settings.py and default_settings.py and added
comments
2016-06-24 23:03:08 +01:00
Sam Grove 33cec194c6 Revert "Generalize flag handling" 2016-06-24 16:39:01 -05:00
Sam Grove 667d49ed8f Merge pull request #1985 from kjbracey-arm/iar_vlas
Turn on C99 VLAs in IAR
2016-06-24 16:13:22 -05:00
Sam Grove 6dd11c76e4 Merge pull request #1976 from theotherjimmy/memap-args
Generalize flag handling
2016-06-24 15:03:50 -05:00
Jimmy Brisson 7b3ef2179f Make mcu and tool arguments many and update all consumers of them 2016-06-24 14:23:19 -05:00
Jimmy Brisson d757f35d15 Update style 2016-06-24 14:23:19 -05:00
Jimmy Brisson 7e5deaa7d0 standardize on nargs="*" 2016-06-24 14:23:19 -05:00
Jimmy Brisson 3276854f49 fix parse error in test.py and make -n + -p comma separated 2016-06-24 14:23:19 -05:00
Jimmy Brisson 439d2e8539 Add -S, -L, and --source to the project.py mutually exclusive group 2016-06-24 14:23:19 -05:00
Jimmy Brisson 053efc6864 Add -S, -L, and --source to the mutually exclusive group 2016-06-24 14:23:19 -05:00
Jimmy Brisson c969a4c784 Better test completion and everything that can be is columnated 2016-06-24 14:23:17 -05:00
Jimmy Brisson 91c45a7b6f Improve test -n and -p failure messages 2016-06-24 14:22:48 -05:00
Jimmy Brisson 2fc4d64b07 Brought test_api.py and users into the new order of argument parsing 2016-06-24 14:22:48 -05:00
Jimmy Brisson 18868ff3fb Convert project.py to the new style of argument parsing 2016-06-24 14:22:47 -05:00
Jimmy Brisson c5ac2cfdec Create type combinator many 2016-06-24 14:22:47 -05:00
Jimmy Brisson e4c6bcd724 Move test parsers to tests.py 2016-06-24 14:22:47 -05:00
Jimmy Brisson b98c8c1c33 Generalize all appropriate arguments and check for file existance 2016-06-24 14:22:47 -05:00