Commit Graph

1064 Commits (5dc7fc9cb8e665b88781235e236b59cd02a151d5)

Author SHA1 Message Date
Daniel Zimmermann 5dc7fc9cb8 LPC4088: add LPC4088Code.binary_hook to the white list of the embitz, gnuarmeclipse and makefile exporter. 2017-05-21 14:37:56 +01:00
Andrzej Puzdrowski ada0d21401 avoid 03/05 intel-hex records for nordics devices
use Intelhex::write_hex_file instead of IntelHex::tofile
2017-05-21 14:37:56 +01:00
arostm 6b588e2f86 DISCO_L072CZ_LRWAN1: delete tests mbed os2 result 2017-05-21 14:37:54 +01:00
Alexis ROCHE 3b393f84bd DISCO_L072CZ_LRWAN1: add IAR export 2017-05-21 14:37:50 +01:00
Alexis ROCHE 37069888c6 DISCO_L072CZ_LRWAN1: add LRWAN1 to the name 2017-05-21 14:37:50 +01:00
Alexis ROCHE 04645f09bb DISCO_L072CZ: Modifications and verifications to build 2017-05-21 14:37:49 +01:00
Jimmy Brisson b20bf0e623 Add a config test to check for failing bootloader images 2017-05-05 16:48:49 +01:00
Jimmy Brisson 7f12628fbb Error when bootloader is specified but does not exist
The changes to build_api.py make the error happen when running things
like get_config.py
2017-05-05 16:48:49 +01:00
Jimmy Brisson f97184af84 Add `mbed new .` output to export 2017-05-05 16:48:48 +01:00
Martin Kojtal 5ab3fb8710 Config: config header file should contain new line 2017-05-05 16:48:47 +01:00
adbridge 9bb5cfef69 Update.py: Tidy up Fn headers, make logger work globally
The function headers have been updated to follow the standard format
that should be being used for tools in mbed. This is a one line summary
followed by a descriptive block with more detail.
Updated the handling of the main function so that the logger becomes
global and thus works across all the functions. This has been tested
with both the fork and branch options, and for levels INFO and DEBUG.
2017-05-05 16:48:46 +01:00
Anna Bridge 4f15ea7cdb Updated script to add an extra feature and general improvements.
Added the ability to specify a branch to update rather than a fork
Replaced print commands with the use of a logger
Updated the run_cmd functions in line with previous improvements
2017-05-05 16:48:46 +01:00
Martin Kojtal a1fafd5add test - add nanostack to examples.json file 2017-05-05 16:48:45 +01:00
Jan Jongboom 83d186a355 Visual Studio Code exporter 2017-05-05 16:48:44 +01:00
Matteo Italia 9934b91c1e Updated year in license header 2017-05-05 16:48:44 +01:00
Matteo Italia 614d1f3b98 Qt Creator exporter: added derivation from GccArm Makefile
this allows Qt Creator to build the generated project "out of the box",
enabling integration with the "Issues" list
2017-05-05 16:48:43 +01:00
Matteo Italia c2f5aa19a7 QtCreator exporter: switch to jinja-based templates
this also makes so that the export directory setting is honored
2017-05-05 16:48:43 +01:00
Matteo Italia e496a637c3 Added minimal support for Qt Creator projects 2017-05-05 16:48:42 +01:00
Jimmy Brisson 54e1e55844 Fail IAR exports without linker scirpts with NotSupportedException 2017-04-21 15:42:23 +01:00
Jimmy Brisson ad8faab60a Fix typo in LPCExpresso exporter template 2017-04-21 15:42:23 +01:00
Jimmy Brisson 2ac978fd53 Add license to configuration header 2017-04-21 15:42:23 +01:00
Jimmy Brisson 38505300a5 Move config to own dir
I also broke the config header template into it's own file. Further, I
fixed a bug in the config header generation where if no macros, builds
would crash.
2017-04-21 15:42:23 +01:00
Brian Daniels 8521f71386 Removing old filesystem test 2017-04-21 15:42:22 +01:00
0xc0170 1cbcf7d77e tools: add new examples
Bootloader, bootloader blinky and fat filesystem examples added.
2017-04-21 15:42:21 +01:00
Jimmy Brisson 1d68057a7a Fix Traceback in CMSIS export.
The traceback was caused when a file without a parent directory (which
is implicitly ".") is added to the resources object. The code assumed
that all files within the resources object would have a parent
directory.

This commit changes the check to account for files that are in the root
directory of a project and have no preceding `./`
2017-04-21 15:42:20 +01:00
Jimmy Brisson 18134bf8b3 Fix include paths for Windows builds 2017-04-21 15:42:20 +01:00
Jimmy Brisson d732f31a12 Generate GNU ARM Eclipse's .mbedignore with Jinja2 2017-04-21 15:42:20 +01:00
Jimmy Brisson b7b55db77a Allow configuration of artifact name in app config 2017-04-21 15:42:17 +01:00
Jimmy Brisson e6c44d633c Update gnuarmeclipse to preprocess linker scripts 2017-04-21 15:42:17 +01:00
Jimmy Brisson 5b2a5103fb Fix a scoping typo in toolchains 2017-04-21 15:42:16 +01:00
Jimmy Brisson 890472c3ce Raise error when mbed_app.json is bad 2017-04-07 14:03:05 +01:00
Głąbek, Andrzej 2658bdb113 IAR exporter: extended debugger settings template with modifiable options needed for Nordic targets. 2017-04-07 14:02:27 +01:00
Willie Walker a1391f563d Fix mbed-cli issue #468. Add LPCTargetCode.lpc_patch to POST_BINARY_WHITELIST. 2017-04-07 14:02:08 +01:00
Seppe Stas 23499843b1 Removed superfluous space
The extra space between "--no_wrap_diagnostics" and "-e" is inconsistent with the development and release targets.

It bugs people (like me) that have little OCD tics 😉.
2017-04-07 14:02:02 +01:00
Jimmy Brisson 1ce69d1b26 Elide adding regions to profile when empty 2017-04-07 14:01:56 +01:00
Tony Wu 95ccafa7f6 tools - turn off page alignment of sections
By default, ld sets page alignment of sections to 0x8000, which bloats
up elf file size. This behavior is unnecessary for MCU.

Example:

1. page alignment on

mbed.elf file size 144936

Program Headers:
  Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg Align
  LOAD           0x008000 0x00000000 0x00000000 0x00400 0x00400 R   0x8000
  LOAD           0x008400 0x00000400 0x00000400 0x00010 0x00010 R   0x8000
  LOAD           0x008410 0x00000410 0x00000410 0x0ab3c 0x0ab3c RWE 0x8000
  LOAD           0x018000 0x20000000 0x0000af4c 0x008d0 0x008d0 RW  0x8000
  LOAD           0x01b81c 0x0000b81c 0x0000b81c 0x00000 0x00004 RW  0x8000
  LOAD           0x020000 0x1fff0000 0x1fff0000 0x00000 0x00400 RW  0x8000
  LOAD           0x0188d0 0x200008d0 0x200008d0 0x00000 0x08860 RW  0x8000

2. page alignment off

mbed.elf file size 91792

Program Headers:
  Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg Align
  LOAD           0x000114 0x00000000 0x00000000 0x00400 0x00400 R   0x4
  LOAD           0x000514 0x00000400 0x00000400 0x00010 0x00010 R   0x1
  LOAD           0x000528 0x00000410 0x00000410 0x0ab3c 0x0ab3c RWE 0x8
  LOAD           0x00b068 0x20000000 0x0000af4c 0x008d0 0x008d0 RW  0x8
  LOAD           0x00b938 0x0000b81c 0x0000b81c 0x00000 0x00004 RW  0x1
  LOAD           0x00b938 0x1fff0000 0x1fff0000 0x00000 0x00400 RW  0x1
  LOAD           0x00b938 0x200008d0 0x200008d0 0x00000 0x08860 RW  0x8

Signed-off-by: Tony Wu <tonywu@realtek.com>
2017-04-07 14:01:22 +01:00
Jimmy Brisson 80756e9d7a Add some type checking of configs
Before, the types were not checked and just expected. The old behavior
would cause lots of tracebacks, or, much worse, convert things like:
```
{
     "target_overrides": {
        "*": {
		"target.macros_add": "CONFIG_GPIO_AS_PINRESET"
        }
     }
}
```
into a definition of each of the letters as macros that expand to
nothing, causing massive compilation problems.

I resolved this by adding some type checking to the config data. Now
there is a type check for most of the fields within a library and
application configurations.
2017-04-07 14:00:50 +01:00
Anna Bridge f413884e5e Add an ignore list so that sets of test, target can be excluded from the compilation set. 2017-03-24 20:46:22 +00:00
Anna Bridge 3ef17da544 Added running total for target being compiled. 2017-03-24 20:46:09 +00:00
Anna Bridge 2f80fda4f3 Review comments: Add a child logger, close json file after reading, minor formatting updates. 2017-03-24 20:45:57 +00:00
Anna Bridge 9c043f0fd6 Fixed/improved error parsing from API messages. Fixed results output summary. General tidy up of long lines. Added a new field to json file, target_list, to allow the user to override the set of targets used for the compilation. 2017-03-24 20:45:45 +00:00
Phyo Kyaw 7b2b4dcacc This change is for RZ_A1H and VK_RZ_A1H target. 2017-03-24 20:44:15 +00:00
Jimmy Brisson 006503df2c Don't set the build_dir to anything on export
When constructing a toolchain for export, we currently set the
`build_dir` to the `export_dir`. When exporting offline, the
`export_dir` is always set to the root of the project. The toolchains
ignore their `build_dir` when scanning for sorces, so when the exporters
use the toolchains to scan for their resources, they get nothing.

In this patch we set the `build_dir` of the toolchain that the exports
use to nothing. A path of nothing should not match anything, and will
therefore not ignore everything when scanning for resources.
2017-03-24 20:44:03 +00:00
Russ Butler 4924f85abe tools: fix usage of aliases.json
Load aliases.json from mbed-os rather than from a temporary
directory.
2017-03-24 20:40:53 +00:00
Russ Butler 7e77e28580 tools: Rebuild index.json and aliases.json
Rebuild the json files used by arm-pack-manager now that a bug in
version selection has been fixed.
2017-03-24 20:40:40 +00:00
Russ Butler ff9f9ecb3a tools: fix package version in arm pack manager
Use python's LooseVersion to get the correct version.
2017-03-24 20:40:27 +00:00
Russ Butler 13b2d0f37e tools: Allow all flash algos to be retrieved
Add an 'all' parameter to get_flash_algorthim_binary. When set
an enumerator of all flash algorithms is returned. rather than just
the first flash algorithm.
2017-03-24 20:40:15 +00:00
Jimmy Brisson e949b857a0 Add unit test for gcc path specifications 2017-03-24 20:39:50 +00:00
Jimmy Brisson c3d0ca30c3 Use PATH env variable when gcc found in PATH
Resolves the github issue #3790: Blinky fails to build (on Mac) after
addition of linker script preprocessing feature. Paraphrasing, this
issue is that Homebrew on mac does not install `arm-none-eabi-gcc` in
the same location as `arm-none-eabi-cpp`, the C Pre-Processor. The tools
prior to this commit, and after turning on the pre-processing of the
linker-script will fail on any Mac homebrew installed toolchains.

This commit resolves the above issue by allowing the toolchain's path to
the executable to remain empty after a call to `check_executable`. When
this path is empty, the tools will search the PATH environment variable
for the executable.
2017-03-24 20:39:37 +00:00
Jimmy Brisson f6388de8f4 Fix toolchain path names in Mbed 2 builds
I accidentally broke only uARM mbed 2 builds. Here is the story: When
scanning for resources, toolchains look for any `TOOLCHAIN_<classname>`
folders to include. These `<classname>`s mostly match the name passed in
on the command line with one exception: `uARM` on the command line maps
to `ARM_MICRO` the class. This would not be a problem except for the bug
that I introduced in a prior commit. The bug is that the mbed2 library
builds will use the name passed in on the command line to construct
`TOOLCHAIN_<cli-name>`. This will not match when scanning.

I fixed it by translating the `<cli-name>` into the `<classname>`.
2017-03-13 11:14:54 +00:00