Commit Graph

1075 Commits (29c7b34dfaedef907dc9a12655466cc1525dcf19)

Author SHA1 Message Date
Sam Grove e3edbabbcc Merge pull request #4107 from theotherjimmy/config-name-app
Allow configuration of artifact name in app config
2017-04-10 16:37:34 -05:00
Jimmy Brisson 55884de07e Merge pull request #4115 from cvtsi2sd/master
Support for Qt Creator Generic project export and associated Makefile
2017-04-10 16:17:14 -05:00
Sam Grove 0b1117793f Merge pull request #4069 from theotherjimmy/preproc-linker-gnuarmeclipse
Update gnuarmeclipse to preprocess linker scripts
2017-04-10 11:10:58 -05:00
Sam Grove cef31a7fa6 Merge pull request #4106 from theotherjimmy/fix-typo-toolchain
Fix a scoping typo in toolchains
2017-04-10 10:51:07 -05:00
Sam Grove 09de12161a Merge pull request #4013 from theotherjimmy/fix-subtract-basepath
Fix a small bug in subtract_basepath
2017-04-10 10:22:57 -05:00
Anna Bridge a514216c8b Merge pull request #4098 from theotherjimmy/fail-on-bad-config
Raise error when mbed_app.json is bad
2017-04-07 12:35:49 +01:00
Matteo Italia 2baa215487 Updated year in license header 2017-04-06 23:19:52 +02:00
Sam Grove 9c141b6547 Merge pull request #3911 from anangl/fix_iar_exporter
IAR exporter: extended debugger settings template with modifiable options needed for Nordic targets
2017-04-06 10:58:38 -05:00
Sam Grove 14eadf389e Merge pull request #4085 from wdwalker/master
Fix mbed-cli issue #468. Add LPCTargetCode.lpc_patch to POST_BINARY_WHITELIST
2017-04-06 10:47:12 -05:00
Sam Grove caded3805e Merge pull request #4072 from seppestas/patch-3
Removed superfluous space
2017-04-06 10:40:58 -05:00
Sam Grove 2ab3eda361 Merge pull request #4070 from theotherjimmy/optionally-add-regions
Elide adding regions to profile when empty
2017-04-06 10:35:05 -05:00
Sam Grove fdf1ed623e Merge pull request #3994 from theotherjimmy/fix-output-ext
Use OUTPUT_EXT to pick binary type
2017-04-06 08:37:52 -05:00
Matteo Italia 92eae30c40 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-04-06 11:22:21 +02:00
Matteo Italia 70412ec5a6 QtCreator exporter: switch to jinja-based templates
this also makes so that the export directory setting is honored
2017-04-06 11:22:01 +02:00
Matteo Italia f3ccfbe267 Added minimal support for Qt Creator projects 2017-04-05 11:43:50 +02:00
Jimmy Brisson 6a646eb4b2 Allow configuration of artifact name in app config 2017-04-04 14:36:01 -05:00
Jimmy Brisson d5ecd7adf8 Fix a scoping typo in toolchains 2017-04-03 15:43:22 -05:00
Jimmy Brisson 74998d649a Change target hooks to use correct input format
The input format is now determined by the OUTPUT_EXT key in
targets.json, and defaults to "bin" when not specified. This changes the
Teensy3_1 and the NRF51x targets' post bulid hooks.

Teensy3_1 just converted to intelhex, so we do nothing instead.

NRF51x assumed that it was taking in a bin format file. I made it detect
file type by extension.
2017-04-03 14:54:38 -05:00
Jimmy Brisson 20edbe3525 Fix a small bug in subtract_basepath
It was causing tracebacks on the website
2017-04-03 11:44:25 -05:00
Jimmy Brisson 1faf44e82b Raise error when mbed_app.json is bad 2017-03-31 15:09:17 -05:00
Willie Walker 13247426f9 Fix mbed-cli issue #468. Add LPCTargetCode.lpc_patch to POST_BINARY_WHITELIST. 2017-03-30 15:22:57 -04:00
Seppe Stas 886713d290 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-03-30 10:19:36 +02:00
Sam Grove 782395dfa7 Merge pull request #4049 from tung7970/fix-tools
tools - turn off page alignment of sections
2017-03-29 23:05:47 +01:00
Jimmy Brisson 09afe23762 Upgrade OUTPUT_EXT and use it to pick binary type
targets.json contained a key for some targets, `OUTPUT_EXT`, which I
moved to `Target`, the root of all targets. Following on that, the tools
now use this extension provided by `OUTPUT_EXT` to determine the file
type of the output executable.
2017-03-29 16:46:21 -05:00
Sam Grove 405ab0c005 Merge pull request #4000 from theotherjimmy/config-typechecking
Add some type checking of configs
2017-03-29 22:39:57 +01:00
Sam Grove c958eb45bb Merge pull request #3998 from theotherjimmy/remove-dead-code
Remove dead code in tools
2017-03-29 22:28:29 +01:00
Sam Grove 432162f9e3 Merge pull request #3997 from theotherjimmy/remove-project-api
Move contents of project_api to export/__init__.py
2017-03-29 22:26:59 +01:00
Sam Grove 8784913052 Merge pull request #3995 from theotherjimmy/targets-refactor
Move target related code into it's own directory
2017-03-29 22:25:46 +01:00
Jimmy Brisson 8b3f08ed49 Elide adding regions to profile when empty 2017-03-29 15:49:16 -05:00
Jimmy Brisson 6a3c71c002 Update gnuarmeclipse to preprocess linker scripts 2017-03-29 14:52:11 -05:00
Tony Wu 72589dfef3 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-03-29 05:48:30 +08:00
Sam Grove cd7abc019f Merge pull request #3996 from c1728p9/algo_generation
Check in algo generation code
2017-03-27 10:32:14 +01:00
0xc0170 424fd78161 flash: fix flash algo generated - protect with DEVICE_FLASH 2017-03-26 17:59:40 +01:00
Anna Bridge a49144a0b2 Merge pull request #3922 from adbridge/master
Fixed/improved error parsing from API messages.
2017-03-24 14:16:30 +00:00
Russ Butler 70f32526b3 Check in algo generation code
Check in scripts which are able to generate flash algos for supported
targets.

To initially download all packs the following command should be run:
"python extract.py --rebuild_all"

After that all supported targets can be rebuilt by running:
"python extract.py"

Finally, to rebuild an individual target you can used its pack name:
"python extract.py --target STM32F302R8"
2017-03-23 13:57:12 -05:00
Jimmy Brisson 75ec7b744e Remove dead code in tools 2017-03-23 11:39:40 -05:00
Jimmy Brisson d5637bb785 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-03-22 16:55:07 -05:00
Jimmy Brisson 70ac60710c Move contents of project_api to export/__init__.py
The file `project_api.py` was poorly named and caused much confusion.
Given that it was actually a front end to the exporters, I put it into
the export sub-dir.
2017-03-22 15:56:35 -05:00
Jimmy Brisson f590dc11bd Move target related code into it's own directory
This should make it easier to navigate the code base
2017-03-22 15:20:09 -05:00
Sam Grove ead3170d0f Merge pull request #3933 from phyokyaw/master
#3593 Added template entry to fix exported project build error.
2017-03-22 12:05:12 +00:00
Sam Grove 16304ae18d Merge pull request #3924 from theotherjimmy/fix-export-build-dir
Don't set the build_dir to anything on export
2017-03-22 12:04:34 +00:00
Anna Bridge 828b7ac7c6 Add an ignore list so that sets of test, target can be excluded from the
compilation set.
2017-03-16 15:46:20 +00:00
Anna Bridge 9649d36dbb Added running total for target being compiled. 2017-03-14 17:46:53 +00:00
Jimmy Brisson 4219d9cfc6 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-14 11:27:19 -05:00
Anna Bridge 63fb7bd58d Merge pull request #3931 from c1728p9/arm_pack_manager_improvements
Arm pack manager improvements
2017-03-14 14:47:35 +00:00
Anna Bridge ae10ca8787 Merge pull request #3895 from theotherjimmy/find-exec-in-path
Use PATH env variable when gcc found in PATH
2017-03-14 14:41:32 +00:00
Phyo Kyaw a301527c71 This change is for RZ_A1H and VK_RZ_A1H target. 2017-03-14 14:08:01 +00:00
Anna Bridge ca6bfe0cfa Review comments: Add a child logger, close json file after reading, minor
formatting updates.
2017-03-14 12:45:56 +00:00
Russ Butler cefdce2a37 tools: fix usage of aliases.json
Load aliases.json from mbed-os rather than from a temporary
directory.
2017-03-13 18:05:28 -05:00
Russ Butler 47ee9677e5 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-13 16:32:57 -05:00