Bogdan Marinescu
031cc7fbc5
Added scanning for JSON files in the resource scanner
...
Also added a method to add new macros to the toolchain instance.
Both of these changes are needed by the configuration mechanism.
2016-06-02 11:32:58 +03:00
Jimmy Brisson
ba29012abb
check for .mbedignore in root of source folders
2016-05-27 14:01:06 -05:00
Jimmy Brisson
d772ea7a00
Allowed multiple --source specifications on the export command
...
The project name is set to the first --source argument.
Resources (the class) is now a monoid.
2016-05-27 09:45:45 +01:00
Russ Butler
bb17d6ada9
Rename disassembly file to fix testing with IAR
...
Disassembly files can unintentionally get picked up by the test build
system. This patch changes the file extension on those files from
".s" to ".s.txt" so they are ignored.
2016-05-26 17:37:43 -05:00
Russ Butler
960941cb0a
Add IAR support
...
Make the following changes for IAR support:
-define __deprecated_message for IAR
-fix python error in iar.py
-move variable length array in buffered serial from cpp file to c file.
IAR only supports variable length arrays in c.
2016-05-24 14:37:14 -05:00
Sam Grove
6c3ce1ea64
Merge pull request #112 from SeppoTakalo/master
...
Implement the .mbedignore functionality.
2016-05-23 23:30:44 +08:00
Sam Grove
c4ed177930
Merge pull request #68 from 0xc0170/dev_gcc_sizes
...
gcc - print section sizes
2016-05-20 15:49:28 -05:00
Sam Grove
373fb55441
Merge pull request #114 from c1728p9/iar_vla
...
Turn on variable length arrays in C for IAR
2016-05-20 15:36:21 -05:00
Russ Butler
c4986eed9f
Create map file when building
...
Add compiler flags to ARM, GCC and IAR so map files get created.
2016-05-19 15:52:02 -05:00
Russ Butler
080f9e2371
Turn on variable length arrays in C for IAR
...
Turn on support for variable length arrays for the IAR C compiler.
This provides greater compatibility with GCC and ARMCC.
Note: The current version of iccarm at the time of this patch
(V7.40.3.8902) does not support variable length arrays in C++.
2016-05-18 19:58:46 -05:00
Seppo Takalo
3d3b0a771f
Implement the .mbedignore functionality.
...
Check the content of `.mbedignore` files and try to match the file
patterns against the directories and source files found while travelling
the directory structure.
Every line in `.mbedignore` file is treated as a unix style glob pattern.
Before matching, the pattern is appended with its directory location, so
it will match only folder on same level, or deeper in the directory structure.
For example:
Directory ./source/test contains .mbedignore with content:
`unittest/*`
Then everything under ./source/test/unittest/ is ignored, including the
unittest folder itself.
Another example:
When .mbedignore file contains just `*`, then everything under the folder
it is located, is ignored. It won't even be added to include paths.
2016-05-19 00:23:37 +03:00
Martin Kojtal
c357216217
Add static ram/rom info
...
After a build has been completed print out ram and rom usage.
The sizes shown are the same as those reported by
arm-none-eabi-size.exe. The output looks like:
Memory sections sizes:
text 37244
data 60
bss 7800
2016-05-18 15:55:10 -05:00
Mihail Stoyanov
faa9ce76af
Removed fixes intended for different PR
2016-05-17 19:46:42 +01:00
Mihail Stoyanov
b57fbf4c68
Exclude folders from build that contain .buildignore file (part of de-fork of mbed HAL+RTOS)
2016-05-16 13:06:54 +01:00
Bogdan Marinescu
904ea446eb
Merge pull request #84 from screamerbg/compile-response-files
...
Response files for includes, de-duplicate includes and more
2016-05-10 12:05:16 +03:00
Mihail Stoyanov
7e3b69ec13
Add dot to include response file name, which follows the naming convention with .link_totals.txt and .link_files.txt
2016-05-09 19:08:56 +01:00
Mihail Stoyanov
d33f890fdd
Minor code cleanup
2016-05-09 19:08:56 +01:00
Mihail Stoyanov
7e11174a00
Calculate md5 of all include paths in compile_sources() and remove calculation from <toolchaon>get_compile_options(), thus significantly reduce repetitive md5 calculations
...
Unify handling of the include response file in mbedToolchain::get_inc_file()
Sanitize obsolete no-longer needed methods
2016-05-09 19:08:56 +01:00
Mihail Stoyanov
f01e1363d1
De-duplicate the include paths. Without this all compiles are passed include paths twice
2016-05-09 19:08:56 +01:00
Mihail Stoyanov
868942a148
Build system response files for all macros and includes. This also allows developers to check the response file after/during compile for the list of all macros and includes being used.
2016-05-09 19:08:56 +01:00
Mihail Stoyanov
ecb9651873
Unified command-line handling of defines and includes with response files for all toolchains (ARM, GCC, IAR)
...
Capture system/OS error during command execution and report the command
Report command before executing it in default_cmd()
2016-05-09 19:08:56 +01:00
Mihail Stoyanov
2be0385f73
Response files for includes during assemble() and compile()
...
Moved unified compile to toolchains to enable specific toolchain support for response files
2016-05-09 19:08:55 +01:00
Brian Daniels
65fae781a1
Toolchain should create artifact directory for link step
2016-05-05 09:39:01 +01:00
Mihail Stoyanov
ba31ed0550
Support for response files for ARMCC, GCC and IAR archiving (static library)
...
Support for compiling static libraries via build.py
Support for build.py --no-archive flag which compiles static library as multiple objects
Change default number of jobs when compiling to 0 (auto)
Fix for relative path issue when compiling, which flattened the output whenever absolute path is passed to --build (make.py and build.py)
Fix for temporary files when pre-processing of assembler files with ARMCC
Fix issue with response files where one of the elements is empty string
2016-04-30 00:32:26 +01:00
Marcus Shawcroft
bd37e5ac0a
Merge pull request #65 from geky/make-follow-symlinks
...
Add support for following symlinks in make.py
2016-04-28 16:03:40 +01:00
Christopher Haster
1fdb86eda7
Add support for following symlinks in make.py
2016-04-20 21:08:47 -05:00
Brian Daniels
bbc6e2aba3
Allowing a list of exclude paths to be passed
2016-04-20 10:56:33 -05:00
Brian Daniels
8cc6a58162
Providing mechainsm for toolchains to exclude a path when scanning for resources
2016-04-19 14:53:42 -05:00
Bogdan Marinescu
7996649d96
Merge pull request #43 from screamerbg/master
...
Add reponse files for GCC, ARMCC and IAR linking
2016-04-12 14:17:30 +03:00
Mihail Stoyanov
76f6374f4a
Merge pull request #42 from meriac/mainline
...
Fix check on UVISOR_PRESENT=1 macro
2016-04-12 12:15:10 +01:00
Mihail Stoyanov
61298334c2
Introduce response file for linking with IAR toolchain
2016-04-12 12:11:22 +01:00
Mihail Stoyanov
40fc10401b
Merge https://github.com/screamerbg/mbed-os
2016-04-12 11:37:43 +01:00
Mihail Stoyanov
927caca09f
Introduce response files for ARMCC and GCC toolchains and also document code
2016-04-12 11:37:15 +01:00
Alessandro Angelino
ec0e403bf9
Fix check on UVISOR_PRESENT=1 macro
2016-04-12 11:11:02 +01:00
Martin Kojtal
75d04a3903
Add debug symbols to all builds (release/debug)
...
All toolchains affected. Fixes #39 .
2016-04-12 09:35:55 +01:00
Marcus Shawcroft
e3afc94f65
Merge pull request #30 from screamerbg/master
...
Update GCC toolchain to support the new format for the first line of …
2016-04-07 18:00:57 +01:00
Mihail Stoyanov
fe75990e4c
Update GCC toolchain to support the new format for the first line of .d files
2016-04-07 17:49:05 +01:00
screamer
ab0fc59e52
Add support for project naming based on current directory Cleanup print output
2016-04-06 16:08:11 +01:00
screamer
228d83193c
Properly support relative and absolute paths for source and build dirs
2016-04-06 16:08:07 +01:00
screamer
5094b10964
Add exception for TESTS folders to be excluded from the builds
2016-04-06 16:08:02 +01:00
screamer
1b4d69aa8f
The build system respects -DUVISOR_PRESENT and dynamically disables floating point support
2016-04-06 16:04:35 +01:00
Marcus Shawcroft
f2ddf68b80
Increase iteration count on toolchain wait loop
2016-04-05 16:40:50 +01:00
Marcus Shawcroft
d54b280afe
Support debug-info in build.
2016-04-05 16:40:16 +01:00
Marcus Shawcroft
1a7efa8787
Define __CMSIS_RTOS
2016-04-05 16:39:24 +01:00
Marcus Shawcroft
3b2b06197a
move workspace to tools
2016-04-05 16:30:51 +01:00
Bogdan Marinescu
dca69e022b
Preparing new layout - moved ./workspace_tools to ./tools
2016-04-05 16:26:31 +01:00