Commit Graph

72 Commits (mbed-os-5.10)

Author SHA1 Message Date
Leszek Rusinowicz b7c0fbddf2 Disabled makefile exporters for PSoC 6 based targets. 2018-11-02 19:50:03 -05:00
Leszek Rusinowicz 4a07001873 Simplified M0/M4 binary merging functionality. Now, M0 binary image to be used has to be explicitely named in a json file (can be ovverriden in mbed_app.json). Exporter hooks removed completely. Cleanup and improvements to the comments, including removal of the redundant doxygen comments. Code run through astyle. Additionally: - changes to drivers/Timer.cpp reverted - ipcpipe_transport.* files removed as they are not used for now, - fixed condition in stdio_init.cpp to perform serial initialization only when STDIO is enabled, - added missing resurce manager call in PWM initialization, - us_ticker initialization changed to use pre-reserved clock divider (to avoid resource manager call). Changed reporting level from info to debug in PSOC6.py. Added missing includes for function declarations in startup files. Fixed (removed) garbadge text in psoc6_utils.c Precompiled binaries updated for recent changes in psoc6_utils.c and moved to a separate folder; README and LICENSE files added. 2018-11-02 19:50:02 -05:00
Leszek Rusinowicz 9c93f3a850 Added required changes outside of TARGET_Cypress tree:
1. In drivers/Timer.cpp make sure that hardware timer is initialized outside of critical section.
   This is because on PSoC 6 hardware resources are shared between both cores
   and we have to make sure that the other core is not already using a particular resource.
   This mechanism is based on interprocessor communication taht cannot be handled iside of
   critical section.
2. Added support for post-binary hook function for PSoC 6 targets, so the hex image for M0+ CPU core
   can be merged with M4 core image for the final image.
3. Added possibility to use hook function from exportes, so the M0+ hex image could be included
   in the generated project.
4. Included hex images in the build dependency list, so the update of image is catched by the
   build process.
2018-11-02 19:50:02 -05:00
Lasse Bang Mikkelsen 808ceab546 Fix Makefile export with Python 3
In Python 3, the map() function returns a map object, not a list object as in
Python 2. Ensure a list object is returned from format_flags() by wrapping
map() in list(). This is compatible with both Python 2 and 3.
2018-11-02 19:50:00 -05:00
Jimmy Brisson 58180dbafe Use shell escaping instead of quoting
OSs don't agree on what the quote chars mean
2018-08-02 09:09:07 -05:00
Jimmy Brisson 6adac922db Revert "Disable make_armc6 on v8m"
This reverts commit a2427998f9.
2018-08-02 09:02:06 -05:00
Jimmy Brisson 77d2a36d2a Quote Makefile CLI parameters 2018-08-02 09:02:06 -05:00
Jimmy Brisson c777bd6f5c Migrate all flags into the FLAGS variables 2018-08-02 09:02:06 -05:00
Cruz Monrreal 4bcca894ae
Merge pull request #7061 from TTornblom/master
Tools: Include configuration in ASM
2018-07-20 08:02:44 -05:00
Cruz Monrreal e9e1ff997d
Merge pull request #7302 from OpenNuvoton/nuvoton_m2351_v1.1
Support Nuvoton's NUMAKER_PFM_M2351 target
2018-07-18 08:49:55 -05:00
Jimmy Brisson a2427998f9 Disable make_armc6 on v8m 2018-07-17 15:56:11 -05:00
Jimmy Brisson 5c27da7046 Correct scatter shebang rewriting in Make 2018-07-16 14:12:00 -05:00
Jimmy Brisson 3b7a5bb35e Filter libraries by extension in exporters 2018-07-16 14:11:09 -05:00
Jimmy Brisson 6a87510192 Correct several exporter uses of file_basepath with a dedupe 2018-07-16 14:11:08 -05:00
Jimmy Brisson 33a56b4470 Drop quotes from command line make 2018-07-12 13:11:57 -05:00
Jimmy Brisson e439b85de1 prepend VPATH to preinclude and don't escape asm macros 2018-06-26 08:47:41 -05:00
Cruz Monrreal II 5ed8ad8ffe Updated makefile exporter to not rely on enumerating over map.
No longer supported in Py3.
2018-06-04 21:02:35 -05:00
Cruz Monrreal f6bcbfe1f0
Merge pull request #6356 from hug-dev/asm-include-flags
Add include search path when preprocessing assembly files for uvision and make_armc5 exports
2018-03-19 16:52:18 -05:00
Jimmy Brisson 14255ca113 Correct syntax for mbed export in Py3 2018-03-16 13:08:20 -05:00
Hugues de Valon 6b72edeb9a Add ASM flags virtual path for make export
When exporting a mbed project to make_armc5, the include options (-I)
of the ASM flags are not pointing to the good folder. It should be
pointing to the root mbed-os folder and not the one in BUILD.
This issue was found in the pull request ARMmbed/mbed-os#6168.

Signed-off-by: Hugues de Valon <hugues.devalon@arm.com>
2018-03-14 13:08:55 +00:00
Jimmy Brisson bd5b34f59c Correct exporter clean behavior 2018-02-21 09:28:24 -06:00
Cruz Monrreal c679dee286
Merge pull request #5848 from theotherjimmy/compile-py3
Python2+3: mbed compile, mbed test --compile,  python unit tests
2018-02-07 15:48:18 -06:00
Jimmy Brisson cca4425af6 Python2+3: iteritems -> items 2018-02-05 11:04:36 -06:00
Jimmy Brisson 9b8ba4dd98 Use relative path to scatter for include path 2018-02-02 11:53:51 -06:00
Jimmy Brisson cbc3d83f83 Remove include from assember in makefile exporter
The build system does not do this, so this is a consistency fix
2017-11-01 09:26:25 -05:00
Jimmy Brisson 69c38012eb Force preprocessing of asm for make_armc5
It seem to preprocess asm with the `.S` extension on linux, but the
windows build of Arm Compiler 5 seems to omit the preprocessing step
unless you have a `.sx` extension. Odd.
2017-09-21 17:37:10 -05:00
Jimmy Brisson 8db0fa9819 Correct rename mistake in make arm compiler exporters 2017-09-14 09:14:47 -05:00
Jimmy Brisson 06b00683c3 Genericify arm compiler exporter to versions 5 + 6 2017-09-11 13:20:32 -05:00
JojoS 0c254448e0 verify libname before stripping 2017-07-31 23:34:48 +02:00
JojoS c8bb167f1f fix unresolved linker msg: __wrap_
adding  libraries to gcc linker group command
2017-07-31 23:34:48 +02:00
Jimmy Brisson 81446f69be Generate exporter suppored lists when needed 2017-07-07 14:45:32 -05:00
Jimmy Brisson a5cc8ef446 Remove incompatible post binary hook 2017-06-09 00:03:22 -05:00
Yuguo Zou 88d4d1d0f8 exporter coding style fix
should use space instead of tab
2017-06-03 20:15:04 +01:00
Yuguo Zou 92ca664fda Add support for mbed exporter
(uvision, gcc_arm, iar)
2017-06-03 20:15:04 +01:00
Vincent Coubard 897667deaa makefile exporter: Escape double quote in toolchain flags.
Without this fix macro defined as -DFOO="BAR" won't be correctly
interpreted by the compiler.
2017-05-23 14:08:24 +01:00
Daniel Zimmermann 8e02855101 LPC4088: add LPC4088Code.binary_hook to the white list of the embitz, gnuarmeclipse and makefile exporter. 2017-05-09 11:59:03 -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
Jimmy Brisson fcef9a7c50 Add post-build hook white-list to exporters
We have scripts (written in python) that are run after a binary image is
created in the tools. These scripts are not really exportable, as they
are part of the tools and may include and use any bits of python code
they please. So we don't export them. This patch disables export
combinations that would not work because the post-binary hook is not
exported. A white-list is used for forward compatibility.
2017-03-02 15:01:14 -06:00
Jimmy Brisson 7d75e277e7 Pass linker flags to the linker only once
Before, `make_gcc_arm` would export a makefile with both linker flags in
the `$(LD)` make variable and the `$(LD_FLAGS)` make variable. This only
affected GCC based makefiles, as the `$(LD)` make variable would only
contain the linker for both ARMC5 and IAR. This patch enforces the
`$(LD)` behavior of ARMC5 and IAR on all of the compilers by truncating
`$(LD)` to just the command
2017-02-10 11:28:02 -06:00
Jimmy Brisson 3155e71786 Add pre-processing of linker scripts to Make exporter
For toolchains that do not implicitly run the C pre-processor on their
linker scripts the toolchain is expected to define a `preproc`
attribute.  The Makefiles then pick up on this attribute and add another
rule for pre-processing the linker script automatically.
2017-02-08 17:27:11 -06:00
Martin Kojtal 7316b89c1d Merge pull request #3600 from theotherjimmy/refactor-sys-libs
[toolchains] Refactor sys libs
2017-01-26 10:30:27 +02:00
Max Vilimpoc 2ce1a8d953 Allow user overrides of LINKER_SCRIPT Make variable (#3594)
Makefile: Allow user overrides of LINKER_SCRIPT Make variable
2017-01-26 10:28:18 +02:00
Jimmy Brisson 3489b14643 Use sys_libs from mbedToolchain in Makefiles 2017-01-17 13:57:37 -06:00
Jimmy Brisson 63c650903c Improve error message when exporting for make without a linker script 2016-12-20 14:11:58 -06:00
Brian Daniels 3975ff332d Adding quotes to echo statements
This fixes an issue when make is ran inside the Windows command prompt
2016-12-09 12:41:07 -06:00
Sam Grove f0e3ff4909 [exporters] update makefile build output directory to match mbed-cli and use the special reserved folder BUILD 2016-11-18 00:25:01 -06:00
Sam Grove 0d3e9f0968 [exporters] make sure to clean .build and BUILD 2016-11-18 00:21:55 -06:00
Jimmy Brisson def0a38c4b Add message that informs the user which hex to flash 2016-11-07 15:54:44 -06:00
Sam Grove 03b8ae1811 Merge pull request #3200 from bridadan/exporter_build_subprocess_change
Using Popen for uVision and unifying the structure of the build function
2016-11-04 14:45:54 -05:00
Sam Grove 13676f064b Merge pull request #3189 from theotherjimmy/make-use-path
[Exporters - Make-based] Force make exporter to search PATH for compilers
2016-11-04 14:45:02 -05:00