Commit Graph

241 Commits (21136cafcc0b6854b8860f9629709e7ca681b5e2)

Author SHA1 Message Date
David Walters a047f6276d Increased test coverage / mocking of external modules 2017-09-29 10:05:05 +01:00
adbridge d2d2b68fc5 Fix the prepare_branch function
Currently when checking if the destination branch already exists the
command 'git branch' is used. This only returns local branches. What is
actually required is the list of remote branches. This can be obtained
by the command 'git branch -r' and filtering the result.
2017-09-27 17:59:19 +01:00
Jimmy Brisson ef6de7eb3b Check for flag passing in toolchain constructor 2017-09-26 08:58:59 -05:00
David Walters 4c2d17eee0 Removing unused imports/update copywright` 2017-09-25 16:58:52 +01:00
David Walters b887bb7de6 Added safety check, added test converage for new function 2017-09-25 16:53:41 +01:00
Jimmy Brisson 4de448142b Merge pull request #5125 from theotherjimmy/improve-memap-performance
Refactor memap for speed
2017-09-21 11:40:41 -05:00
Jimmy Brisson 3d5bea337f Test the module_add function 2017-09-20 10:49:12 -05:00
Jimmy Brisson 06203c4fcc Test GCC memap parser 2017-09-20 10:39:42 -05:00
Jimmy Brisson bcd89dae18 Test memap parsing for ARMC6 and IAR 2017-09-19 15:14:43 -05:00
Jimmy Brisson faa3375397 Mock supported_toolchains values in tests 2017-09-15 17:59:46 -05:00
Shrikant Tudavekar fec2346627 add ARMC6 in supported compiler 2017-09-12 15:31:50 -05:00
Jimmy Brisson 9d0e8abb11 Rename and simplify config test target names 2017-09-05 15:21:08 -05:00
Jimmy Brisson 399b6acfb1 Clean up json
Wipe out all blank lines in json:
  find tools/test -name 'test_data.json' | xargs sed -i -e '/^$/d'
Move all start braces back a space:
  find tools/test -name 'test_data.json' | xargs sed -i -e "s/^ {/{/"
2017-09-05 14:39:48 -05:00
Jimmy Brisson 4a937fe15e Linting and correcting comments 2017-09-05 13:30:16 -05:00
Jimmy Brisson a2bcae0b7a Rework test_api testing and fix a bug
Bug was found by the new tests
2017-08-28 15:40:35 -05:00
Jimmy Brisson 817eb5ab05 Unify configuration testing and the travis command 2017-08-28 15:10:50 -05:00
Jimmy Brisson de9f9dd3a2 Convert memap tests to pytest style 2017-08-28 13:52:28 -05:00
Jimmy Brisson 177fb7933d Rework config_test to use py.test 2017-08-28 12:27:09 -05:00
Marcelo Salazar 7053ef9412 memap enhancements with depth level configurable
Removed heap/stack from report
Add --stats-depth option to mbed compile
Fix minor issues identified in review
Fix bug when parsing armcc libs
Fix code style
Fix minor issues on existing tests
Fix memap for automated TESTS
Fix stats-depth parameter for tests
2017-08-06 10:30:04 +01:00
Jimmy Brisson ca0c2a8d92 Correct supported check in exporter tests 2017-08-01 09:52:57 -05:00
Jimmy Brisson 18b1cb6c11 Merge pull request #4531 from adbridge/update
Update branching option to branch from another branch.
2017-06-29 11:05:17 -05:00
Andrew Leech 4491d2e3f7 Prevent modifying existing targets.
A warning will be printed if it is attempted.
2017-06-21 22:17:58 +10:00
Andrew Leech 6bd55a16fe Add basic unit tests for custom_targets.json handling 2017-06-21 22:17:57 +10:00
adbridge d1f3eb6ba6 Added template file for PR commit message plus minor review changes 2017-06-21 11:50:14 +01:00
adbridge b4ac0d048d Remove remaining use of args.tag and replace with tag obtained from
config file
2017-06-13 17:31:10 +01:00
adbridge 108250d24a Update branching option to branch from another branch.
Previously if updating a branch in the ARMmbed version of an example
repo, the branch would be created initially from master. This update
allows the new branch to be created by any pre-existing branch.
This update also moves the branch / fork / tag configuration data to the
json config file. It thus simplifies the command line.
-b on its own now indicates use the branch information in the config
-f on its own now indicates use the fork information in the config
2017-06-12 17:57:01 +01:00
Brian Daniels fd4cd43043 Enable verbose builds when running example build tests 2017-06-12 11:25:01 -05:00
Martin Kojtal 13334105e4 Merge pull request #4448 from sg-/add-cell-example
Add mbed-os-example-cellular to release data
2017-06-10 08:29:18 +01:00
Sam Grove 0013b4afa5 Add mbed-os-eample-cellular to release data 2017-06-09 15:18:04 +01:00
Jimmy Brisson ad5608c9e6 Fix a typo in test code
I goofed on spelling (swapped two letters). Whoops.
2017-06-05 15:46:42 -05:00
Jimmy Brisson d8caee9077 Disallow building of mbed OS 2 + rtos 2017-06-01 13:16:03 -05:00
Sam Grove 704ffd7010 Merge pull request #4331 from theotherjimmy/depend-on-profile
Have objects depend on their respective compiler invocations
2017-05-26 17:06:23 -05:00
Brian Daniels 3966139cd7 Allowing examples to specify which repo source to use for testing.
They can pick from either the mbed developer site or the GitHub
repository.
2017-05-24 11:10:49 -05:00
Jimmy Brisson 7b04a52a46 Mock the function I just added in testing 2017-05-19 16:30:49 -05:00
Jimmy Brisson 2821fd548f Mock config in toolchain tests 2017-05-12 14:04:08 -05:00
Jimmy Brisson 7f0ed3b40b Merge pull request #4136 from theotherjimmy/bootlader-exists
Error when bootloader is specified but does not exist
2017-05-02 11:34:30 -05:00
Jimmy Brisson 0b5b6cba71 Merge pull request #4093 from adbridge/update
Update.py: New feature - update a branch instead of a fork, plus general improvements.
2017-04-24 11:01:20 -05:00
Martin Kojtal ea53150d35 test - add nanostack to examples.json file 2017-04-21 13:10:45 +01:00
adbridge 9ea605bb98 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-04-21 11:08:58 +01:00
Jimmy Brisson 8048ec3b66 Add a config test to check for failing bootloader images 2017-04-20 14:32:17 -05:00
Anna Bridge a1d1a6037c Merge pull request #3888 from 0xc0170/fix_add_examples
tools: add new examples
2017-04-20 15:38:02 +01:00
Jimmy Brisson 6a646eb4b2 Allow configuration of artifact name in app config 2017-04-04 14:36:01 -05:00
0xc0170 137e47f5e8 tools: add new examples
Bootloader, bootloader blinky and fat filesystem examples added.
2017-03-29 17:27:11 +01:00
Anna Bridge 6850ff06b9 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-03-16 16:59:11 +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
Jimmy Brisson 4408c01522 Add unit test for gcc path specifications 2017-03-07 11:41:56 -06:00
Jimmy Brisson fbb6f71be8 Ignore build directory from scan resources
This is a bug fix for the following bug (Github issue #437):

If two builds were run specifying a non-default build folder, the second
build would fail to link with duplicate symbols and may not fit on the
device. The root of this problem is that these non-default build folders
are not ignored by scan-resources, and therefore included in the build.

We fix this bug by ignoring the build directory passed into the tools.
2017-03-06 17:10:57 -06:00
Jimmy Brisson 9a63bfb1fb Enable boot-loader builds
To enable a boot-loader style application, override
"targets.bootloader_exec" or "targets.restrict_size" on a particular
target. These parameters are a bin or hex file, and an integer, in bytes,
respectively. If either override is present, then an application region
is created after the boot-loader region, when "targets.bootloader_exec"
is present, and before post-application, when "targets.restric_size" is
present. The size of the boot-loader region is read from the file
provided in the configuration.
2017-02-22 18:20:26 -06:00
Sam Grove 942cf8cbf0 Merge pull request #3702 from bridadan/remove_old_directories
Remove old tool directories
2017-02-09 09:39:25 -06:00
Russ Butler 32b9ada3ec Enforce device_name is valid in targets.json
Add a CI test ensure that device_name exists inside the pack index.
2017-02-08 14:54:26 -06:00
Brian Daniels 17cbbe3748 Remove old exporter tests 2017-02-06 10:53:46 -06:00
Anna Bridge b8e80d8867 Merge pull request #3528 from adbridge/master
Modify update command to directly edit the mbed-os.lib files for each example
2017-01-12 16:00:29 +00:00
Anna Bridge fb27b649c5 Review comments: Use os.rename rather that system mv command.
In prepare_fork(), change nested IF to neat command loop.
2017-01-09 17:56:20 +00:00
Jimmy Brisson dacdbdcfe4 Remove deprecated clean argument 2017-01-05 17:16:00 -06:00
Anna Bridge 01c39629fe Modify update command to directly edit the mbed-os.lib files for each
example specified in the supplied .json file, in a user specified fork.
A pull request is then made from each fork to the ARMmbed master repo.

New usage:
python update.py <args>
Where <args> are:
  [-c <file.json>] optional argument for example list, default
                   example.json
  -U <github user with forked repos>
  -T <github authorisation token>
  tag
2017-01-05 12:11:55 +00:00
Brian Daniels 134d7743c3 Correctly filtering examples in test script.
If an example's GitHub repository contains multiple child examples, the
script was incorrectly filtering out all the child examples when
compiling and exporting. This patch now handles this case correctly.
2016-12-15 14:16:12 -06:00
Jimmy Brisson 569808578a Enabled example exporting Filter ides by toolchains 2016-12-05 13:43:55 -06:00
Mohammad Azim Khan 2ad2c309bc Removing target EFM32GG_STK3700 from uvisor examples 2016-11-23 15:22:31 +00:00
Mohammad Azim Khan 0b0db77a6e Removing target EFM32GG_STK3700 from uvisor examples 2016-11-23 14:00:03 +00:00
Mohammad Azim Khan e8048baa40 Added examples uvisor-thread and uvisor-number-store 2016-11-21 17:12:52 +00:00
Brian Daniels 119857ac77 Ignoring args parameter for functions that don't use them 2016-11-08 13:41:40 -06:00
Brian Daniels f1bb3f5930 Fixing issue with target_cross_ide 2016-11-08 12:51:38 -06:00
Brian Daniels 2fe1373cf1 Fixing use of get_repo_list in update function 2016-11-08 12:38:22 -06:00
Brian Daniels b739413526 Correcting example, toolchain, and ide filters 2016-11-08 12:37:14 -06:00
Sarah Marsh 4bfd73a661 [Exporter tests] update mbed-os in selected examples 2016-11-07 11:10:52 -06:00
Sarah Marsh c231939a8d [Exporter tests] conditional intersection for targets 2016-11-07 11:09:36 -06:00
Sarah Marsh 4e2d3c42dd [Exporter tests] Implement filtering of targets and examples. 2016-11-07 11:09:36 -06:00
Brian Daniels 811e2b55e6 Adding MCU and example filter options to example test CLI 2016-11-07 11:04:18 -06:00
Sam Grove 79abaab02e Merge pull request #3208 from bridadan/examples-clone-deploy
[example tests] Adding a clone and a deploy step to allow optimizations in CI.
2016-11-07 10:32:23 -06:00
Brian Daniels b0d556b9c4 Adding a clone and a deploy step to allow optimizations in CI.
This adds an example clone and deploy step that allows you to modify
each top level repository before pulling in the rest of the example's
dependencies. This allows us to not pull in a copy of mbed-os for each
example in CI and instead symbolic link the already cloned copy, saving
valuable time and disk space
2016-11-04 17:35:36 -05:00
Sarah Marsh 76554fa8af [Exporter tests] Capable of testing export only to IDEs that do not have build functions 2016-11-04 15:53:41 -05:00
sarahmarshy 804f27a8bd [Export build-test] Directory traversal error
Change indentation level for directory traversal, so that we only move up at the end of exporting one project for all ide/target combinations.
2016-11-04 14:09:40 -05:00
Sarah Marsh 9624ccf2d5 Add boolean 'export' to examples.json.
This will determine whether the example should be exported. Additionally,
relocated export logic to examples_lib.py.
2016-11-02 10:30:10 -05:00
Sarah Marsh b9bac0516b [Exporter tests] changing variable names and respecting requirement kwargs 2016-11-01 15:03:31 -05:00
Sarah Marsh 986af0dd5e New export-build tests.
Allows command line workflow of:
mbed import
mbed export

Also revises exporter supported target checks
2016-11-01 15:03:31 -05:00
Anna Bridge 479e203dce Switch off compilation of wifi example while awaiting a fix for
issue 3152 is submitted.
2016-10-28 16:10:41 +01:00
Anna Bridge c60b19e27c Remove superfluous debugging line. 2016-10-28 15:20:36 +01:00
Anna Bridge a5d3d2056b Update ble example meta data to fix unsupported compilation combinations.
Remove URI beacon example as this is no longer required.
Add specific set of supported targets.
2016-10-26 16:24:42 +01:00
Anna Bridge 045b7d412d Minor review comments plus add new 'compile' option to examples json file.
Adding the new compile option allows the marking of a set of examples to
indicate whether they should be compiled or not. For the update process
examples that are not compiled will not be auto updated irrespective of
that setting.
Other changes to make return logic from some functions in update.py more
efficient and some typos in the lib file.
2016-10-25 12:37:29 +01:00
Anna Bridge 36964561b9 Review: Update example_lib.py to use rmtree rather than rm system call.
Update examples.json to limit TLS examples to a couple of boards and only
GCC_ARM and ARM compilers.
2016-10-18 12:30:19 +01:00
Anna Bridge bbfa954839 Make update.py test compile examples prior to updating mbed-os version.
Changes:
Refactor examples.py to add a new command line option to provide an update
tag.
Refactor examples.py to add new functionality to update the version of
mbed-os in the examples to a supplied tag.
Refactor examples.py to make cloning the example repos, updating their
mbed-os version and compiling, into library functions and move to a new
library module.
Refactor the format of the examples.json file to make it compatible with
both examples.py and update.py.
Refactor update.py so that examples are test compiled prior to updating.
Refactor update.py so that only examples tagged as auto-updatable and that
fully compile are automatically updated.
2016-10-17 16:56:28 +01:00
Sarah Marsh 45ad394ca6 New build tests.
*Changes*
- Parallel export
- mbed-os tests added
- specified release version (default to 5)
- default tests AND targets dependent on specified release version
2016-10-04 14:13:36 -05:00
Sam Grove 5713435d02 Merge pull request #2895 from bridadan/build-test-fix
[Exporters] Resolving Python errors and uVision build issues
2016-10-03 18:59:36 -05:00
Brian Daniels 4965e61616 Adding build_profiles to export in build_test.py 2016-10-03 16:02:34 -05:00
Jimmy Brisson 6209aff482 Prevent garbage generation from toolchain api test 2016-10-03 15:15:08 -05:00
Sam Grove cf60b189b0 Merge pull request #2879 from bridadan/fix-config-tests-ipv6
Renames IPV6 feature used in config test to STORAGE
2016-10-01 17:22:38 -05:00
Brian Daniels 7a59747974 Renames IPV6 feature used in config test to STORAGE 2016-09-30 18:37:09 -05:00
Sam Grove 872363d809 Merge pull request #2854 from theotherjimmy/find-duplicates
[Tools] Find and report duplicates
2016-09-30 18:30:00 -05:00
Sam Grove f738351c61 Merge pull request #2859 from theotherjimmy/print-percent
Correct percent printing
2016-09-30 15:38:36 -05:00
Jimmy Brisson 5eed4f29d7 Add a test of find duplicates 2016-09-30 15:24:56 -05:00
Sam Grove 20756cbf77 Merge pull request #2860 from ARMmbed/event_loop_mbed_events_new
Event loop with mbed-events
2016-09-30 15:24:24 -05:00
Jimmy Brisson 9d905a2914 Add regression test for correct percent emitting 2016-09-30 15:09:54 -05:00
Sam Grove 1047ab4562 Merge pull request #2834 from bridadan/memap-consolidate
[tools] Making memap output consistent across output formats
2016-09-30 14:59:31 -05:00
Sam Grove ddc823a722 Merge pull request #2802 from theotherjimmy/toolchain-profiles
[Tools] Add simple build profiles to toolchains
2016-09-30 14:57:12 -05:00
Christopher Haster b789a6a9db Removed examples tests for BLE
As mbed-events is being brought into the mbed-os tree, the examples
using the external mbed-events library will fail due to duplicate
definitions.

The tests for BLE examples will be readded after the examples are
updated to only use the mbed-events library in the mbed-os tree.
2016-09-30 13:38:58 -05:00
Jimmy Brisson 73e811a9a0 Fix style of implementation of toolchain profiles 2016-09-29 10:20:05 -05:00
Jimmy Brisson fd04ea2125 Added property based regression test to travis 2016-09-29 10:20:05 -05:00
Brian Daniels abb6d2681e Adding memap tests and adding to travis ci 2016-09-28 17:27:25 -05:00
Brian Daniels 1448aa5770 Limiting uvisor example to just GCC_ARM toolchain 2016-09-28 13:09:11 -05:00
Brian Daniels 53ecfdb856 Adding the ability to filter examples by toolchains
This change was driven by the fact that certain
examples only support a subset of the toolchains.
2016-09-28 13:04:14 -05:00
Sam Grove e9c556d356 Merge pull request #2757 from theotherjimmy/non-global-config
Refactor Target and Config away from global variables
2016-09-22 17:23:04 -05:00
Sarah Marsh 16913b93a6 New build tests.
*Changes*
- Parallel export
- mbed-os tests added
- specified release version (default to 5)
- default tests AND targets dependent on specified release version
2016-09-22 10:03:34 -05:00
Sam Grove 6fce892f05 Merge pull request #2614 from MarceloSalazar/uvision_default
Change default uvision exporter to uvision5
2016-09-22 00:46:18 -05:00
Jimmy Brisson d4f9820577 Refactor Target and Config away from global variables 2016-09-20 16:09:22 -05:00
Marcelo Salazar 64d33810fc Minor tweak on spaces 2016-09-16 10:11:07 +01:00
Bogdan Marinescu 8852b2edec Removed hidden argument to set_targets_json_location
The previous code used a variable that was internal to the Target class.
This commit removes the argument to `set_targets_json_location`
completely, which forces Target to use the default locatio internally.
2016-09-13 16:45:32 +03:00
Bogdan Marinescu d7899b4b2b Removed custom targets from config system
Custom targets were the origin of a number of issues with the mbed
tools, so it was decided that they need to be removed. This PR does just
that (and moves the "custom_targets" part of the config system tests
into a separate, per-test "targets.json" file to preserve the test
functionality).
2016-09-13 15:54:44 +03:00
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
Conor Keegan ac51eb6638 Add unit tests for app_config 2016-09-10 15:29:19 +01: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
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
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
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
Jimmy Brisson dabd7b8d53 Made linting a recommendation and raised the bar for printing 2016-08-16 13:29:43 -05:00
Jimmy Brisson 3f9bedbdd9 Add pylint testing to Travis 2016-08-16 13:29:43 -05:00
Christopher Haster b45ec0ed76 [tools] Added specific config test for uvisor
Unlike other libraries, uvisor is currently integrated into the build
system, with special cases based on its addition as a feature. This
suggests we should also have tests for these special cases.
2016-07-29 12:31:54 -05:00
Christopher Haster 63f9b03e35 [tools] Added test for removing features 2016-07-27 18:01:33 -05:00
Sam Grove 1880daef0d Merge pull request #2215 from geky/tools-cumulative-overrides
[tools] Modified config to aggregate cumulative overrides against targets
2016-07-22 16:16:41 -05:00
Christopher Haster a5ea143c77 Updated config tests to match change in error message 2016-07-22 00:35:13 -05:00
Sam Grove b10276cbef Merge pull request #2173 from theotherjimmy/abstract-base-class
[toolchains]Abstractify the mbedToolchain base class.
2016-07-21 22:10:49 -05:00
Sarah Marsh b969fa5bb1 IDE build tests with progen 2016-07-15 13:25:35 -05:00
Jimmy Brisson f6b8cf05b0 Add a test that exercises the abstract base class checking
The test simply tries to instantiate each class exposed as part of the
TOOLCHAIN_CLASSES map. This is a test that each toolchain class
implements the required API, as the mbedToolchain will not allow the
instantiation of a subclass without a part of that API.
2016-07-15 10:10:40 -05:00
Bogdan Marinescu 9704edfca7 Fix add_py_targets and tests
Previously, add_py_targets assumed that it is not an error to add an
existing target if that target was previously added using
add_py_targets. This was done to aid testing, but it was weird, error
prone and broke with the latest changes to the caching mechanism. With
this commit:

- it is always an error to add a target that was previously added, which
  is much more consistent.
- tests for the configuration mechanism use the newly added
  'set_targets_json_location' function to clear the internal caches in
  targets.py (and thus all previously added custom targets). As a side
  effect, this commit also tests the 'set_targets_json_location'
  function itself.
2016-07-12 14:42:21 +03:00
Bogdan Marinescu 20583ba172 Fix K64F-based config tests
PR #1974 added a new configuration parameter to K64F, which in turn made
some tests break, because they found an unexpected configuration
parameter. Fixed by defining a special target for the tests
(test_target) that can be used independently of the actual mbed targets.
2016-06-21 19:58:03 +03:00
Bogdan Marinescu ab0a5a53c2 Configuration in header files - step 1
The current implementation of the configuration system "compiles" the
configuration parameters to macros defined on the command line. This
works, but has a few limitations:

- it can bring back the maximum command line length issues in Windows.
- depending on the type of the configuration parameter, it might require
  special quoting of its value in the command line.
- various 3rd party IDE/tools seem to have some limitations regarding
  the total length of the macros that can be defined.

This commit is the first step in replacing the current mechanism with
one that generates configuration in header files that will be
automatically included, instead of command line macro definitions. The
commit only adds the method for generating the header file, it doesn't
actually change the way config is used yet (that will happen in step 2),
thus it is backwards compatible. The logic of the configuration system
itself is unchanged (in fact, the whole change (not only this commit) is
supposed to be completely transparent for the users of the configuration
system).

The commit also fixes an issue in tools/get_config.py that appeared as a
result of a recent PR: the signature of "get_config" in
tools/build_api.py changed, but tools/get_config.py was not updated.
2016-06-16 00:23:04 +03:00
Christopher Haster 0d9d4639cd [build tools] Added proper namespace for features
per @bogdanm
2016-06-15 10:34:32 -05:00
Christopher Haster f45dc15aa8 [build tools] Added test for configurations set from same level as feature 2016-06-15 08:38:20 -05:00
Christopher Haster 6da324fa3f [build tools] Added test coverage for config features feature 2016-06-15 08:38:20 -05:00
Mihail Stoyanov 0034ffb716 Add tests to the config system. Add GCC flags to support uVisor 2016-06-12 19:04:41 +01:00