Commit Graph

133 Commits (8081c39aba202e969ea42c1bbb57063ba5b846fb)

Author SHA1 Message Date
Takayuki Kurosawa 807f031d39 [RZ/A1H] disables GCC_ARM in targets.py
GCC is not supported by now, so eliminate GCC_ARM in targets.py and fpu related settings in toolchains/gcc.py
2014-10-29 17:54:39 +09:00
Takayuki Kurosawa b8809b3e14 Merge remote-tracking branch 'upstream/master' 2014-10-29 13:24:46 +09:00
dinau b4bea06cc3 [GCC_CR] fixed issue 590
Refer to:
https://github.com/mbedmicro/mbed/issues/590
2014-10-26 00:51:59 +09:00
Takayuki Kurosawa 2804d85a11 [RZ/A1H] adds A9 related MACROS 2014-10-24 13:02:26 +09:00
Takayuki Kurosawa b1cb82c520 [RZ/A1H] commit for build system changes
- add CA9 category to build.py
- add library for RTX-CA9
- add target definition for RZ/A1H
- change some test related settings for RZ/A1H
- add gcc options for CA9
2014-10-24 11:45:44 +09:00
Mihail Stoyanov 8949f8b036 Throw a warning when multiple scatter files are found and show their location 2014-10-23 19:21:11 +03:00
EmBlocks a82b29d4bd Xlinker switches as one 2014-10-15 20:50:32 +02:00
EmBlocks 5d468e002d Changing -u linker switch as one instead of multiple switches 2014-10-15 20:09:06 +02:00
Przemek Wirkus eb2153ec49 Modiffied compilation prompting to alling with linker's way of printing - now each issue will be printed in separate line with simple prefix like [DEBUG] Output: 2014-09-19 13:27:40 +01:00
Przemek Wirkus 27fa463fcf Replaced variable names as overloads like stdout, stderr to _stdout, _stderr to avoid unnecesary bugs in the future
Added linking error prints - reported by STMicro David BELLEGARDE <david.bellegarde@st.com>

Modiffied compilation prompting to alling with linker's way of printing - now each issue will be printed in separate line with simple prefix like [DEBUG] Output:
2014-09-19 11:30:55 +01:00
Bogdan Marinescu 5687a86731 Fixed RTOS compilation for some targets
More details: https://github.com/mbedmicro/mbed/pull/472
2014-09-11 17:04:21 +01:00
Przemek Wirkus 8e7f498f9e Added simple compiler path check on --config switch 2014-09-05 13:26:51 +01:00
Przemek Wirkus a9713521d7 Added missing macros to symbol list 2014-08-20 10:59:28 +01:00
Przemek Wirkus e5f2d119ae Added self parameter to mbedToolchain::__exit__() method
Removed unused modules' imports

Few minor indent issues fixed
2014-08-14 17:40:58 +01:00
Bogdan Marinescu 25926ae75d Re-implemented LPC patching step
Now implemented as a 'post binary hook'. Targets that need this will have
to inherit from LPCTarget instead of Target, the rest should be automatic
(but see LPC4088 for an exception (currently, hooks can't be chained
automatically))
2014-08-12 14:59:50 +01:00
Bogdan Marinescu 45597fd8e6 A few changes to the new parallel build system
- restored assemble/compile_c/compile_cpp, except now they return the commands
  that will run, instead of actually running the commands
- remove need_update_new, since it doesn't seem to be used anywhere
2014-08-07 17:01:39 +01:00
Mihail Stoyanov d5835221ec Add _assemble() and _compile() methods to generate one or more commands per source file
Support multiple commands per compile
Reuse _assemble() and _compile() for sequential and parallel compiles
Preserve compile(), compile_c(), compile_cpp() and assemble() methods functionality
2014-08-05 18:22:50 +03:00
Mihail Stoyanov 647c96172c Merge branch 'master' of https://github.com/mbedmicro/mbed
Conflicts:
	workspace_tools/build.py
2014-08-05 15:06:53 +03:00
Bogdan Marinescu 71226052f8 Merge branch 'master' of github.com:mbedmicro/mbed 2014-07-31 13:37:06 +01:00
Bogdan Marinescu 5a9910ded3 Consider '.hpp' as include files in the resource scanner 2014-07-31 13:36:14 +01:00
Toyomasa Watarai c66f9943a6 Added --multibyte_chars option
Added --multibyte_chars option for ARM and uARM build.

This enables to use multi-byte character such as Japanese or Chinese
especially for string literal.
It should not be affected single-byte character set.  Tested with
Japanese Windows environment.
2014-07-30 10:54:08 +09:00
Mihail Stoyanov 0d85f673ed Fixed compile with IAR
Added get_dep_opt for ARM class
2014-07-11 11:13:22 +03:00
Mihail Stoyanov b92e928f6a Trade slightly more CPU usage for less memory usage 2014-07-10 22:30:51 +03:00
Mihail Stoyanov 853630792e Restore verbose logging 2014-07-10 20:10:21 +03:00
Mihail Stoyanov fab45821a7 Refactoring of the python multiprocessing code to use queues load balancing based on apply_async();
Use the returned result by apply_async() to fetch compile_worker() results and get rid of python queues;
Optimize the threads handling code
Reuse compile threads via self.mp_pool
2014-07-10 15:33:04 +03:00
Mihail Stoyanov 82e9c166f3 Remove --depend option that is specific to armcc 2014-07-09 20:28:28 +03:00
Mihail Stoyanov ff3cd57126 Add -j option to build.py, build_release.py and make.py
Multiple compile jobs are not enabled by default unless -j 0 or -j >1 is specified
2014-07-09 20:00:21 +03:00
Mihail Stoyanov f858f02120 Changed comment 2014-07-09 15:30:41 +03:00
Mihail Stoyanov 9c6f0bf37c Revert global toolchains optimizations 2014-07-09 15:09:48 +03:00
Mihail Stoyanov 61f58c93ab Reordered the logics around compile_queue() 2014-07-09 14:38:18 +03:00
Mihail Stoyanov 9345778a6f Add multiple compile queues support (multiprocessing)
Add header stats cache for need_update() routine
Add compile order consistency
2014-07-09 13:28:02 +03:00
Christian Taedcke bfb06e200b Disable rtti for gcc. 2014-06-21 12:24:05 +02:00
dinau 131cdb529d [LPC2368][GCC_ARM] Added export functionality
Other changes are,
(1) Modified link error
(2) Silent Warning
2014-06-13 20:13:14 +09:00
Bogdan Marinescu c694da0543 Merge branch 'dev_error_assert' of git://github.com/0xc0170/mbed into 0xc0170-dev_error_assert
Conflicts:
	libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11U6X/serial_api.c
	workspace_tools/toolchains/arm.py
2014-06-11 15:50:34 +01:00
Bogdan Marinescu bb120221fb Merge branch 'dev_trailing_spaces_removal' of git://github.com/0xc0170/mbed into 0xc0170-dev_trailing_spaces_removal
Conflicts:
	workspace_tools/toolchains/__init__.py
	workspace_tools/toolchains/arm.py
2014-06-03 10:39:31 +01:00
Przemek Wirkus 8a2d961526 Added new option for more verbose mode when printing compiler warnings/errors. Option -x like 'extra' verbose mode 2014-06-02 15:44:45 +01:00
0xc0170 00ddb5570b spaces removal - workspace tools (not tmpl) 2014-05-29 15:42:03 +02:00
0xc0170 6a84ffa433 Merge branch 'master' into dev_error_assert
Conflicts:
	libraries/mbed/targets/hal/TARGET_Freescale/TARGET_K20D5M/spi_api.c
	libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11U6X/gpio_api.c
	libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/gpio_api.c
	libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F030R8/analogin_api.c
	libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F030R8/gpio_api.c
	libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F030R8/i2c_api.c
	libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F030R8/pwmout_api.c
	libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F030R8/serial_api.c
	libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F030R8/spi_api.c
	libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/i2c_api.c
	libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F302R8/i2c_api.c
	libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F401RE/i2c_api.c
2014-05-28 09:53:51 +02:00
0xc0170 60276a7cac __ASSERT_MSG macro for uvision, corrections in LPC targets - serial - assert 2014-05-20 16:41:30 +01:00
Bogdan Marinescu ed3c2040e2 Fix exporters on UBLOX_C027
Temporary solution, until the exporter infrastructure is modified
to support proper target aliasing/inference.
2014-05-19 13:35:30 +01:00
0xc0170 cbe3a40986 K64F - i2c fix, debug-info sets optimization to
- debug-info for all toolchains set optimization to 0
	- i2c - open drain and clock enabled for i2c pins [K64F]
2014-05-07 11:26:14 +01:00
Mihail Stoyanov bf9689a9b8 Added "supported_form_factors" list attr to targets which defines TARGET_FF_* symbols for the supported form factors.
Unified some tests for targets that support Arduino form factor to use Arduino style pin names.
2014-04-04 12:24:21 +01:00
0xc0170 03b3a4e895 Target K64F addition.
Squashed commit of the following:

commit db3c9f7682083abeb291e01df31e67e4c50845b3
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Wed Apr 2 09:52:00 2014 +0200

    K64F - KSDK - Warnings fixes

commit a639a5cdff889c13509c954b0a34ebac861c1361
Merge: 67a2c2a f3de345
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Tue Apr 1 12:48:35 2014 +0200

    Merge branch latest 'master' into dev_target_k64f

    Conflicts:
    	libraries/rtos/rtx/RTX_Conf_CM.c
    	workspace_tools/build_api.py

commit 67a2c2aeb976f264db52ea10d18fea9de0d7685f
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Sun Mar 30 13:19:51 2014 +0200

    K64F - PinName for buttons (SW2, SW3)

commit 957573e2cd42d5c73ed99477abb98c8b883695b2
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Tue Mar 25 11:46:57 2014 +0100

    K64F - pins addition to mbed HAL, uart - 4 instances, fix i2c instance which was not stored

commit 2347a6d03984e297190910a250f2771032ae6327
Author: sg- <sam.w.grove@gmail.com>
Date:   Mon Mar 24 15:20:51 2014 -0500

    Added wait to i2c stop

commit b7b4a9c72e8724087a44078c41a2cb33e4c8d5e3
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Mon Mar 24 19:28:16 2014 +0100

    K64F - I2c - ack flag retreive correction (logic inverted in ksdk hal)

commit 46c875251263029e32463c3b48473b10496088d9
Author: sg- <sam.w.grove@gmail.com>
Date:   Mon Mar 24 13:16:18 2014 -0500

    Added I2C Pinnames

commit b71c7a0dfba7025662f9a9d176494ce4dc86273e
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Tue Mar 18 17:02:34 2014 +0100

    K64F Arduino pinNames update

commit d41b0ee493263d1d80fcb72b3f0d4d788359c7c9
Merge: 9c0a982 e2574eb
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Tue Mar 18 14:57:57 2014 +0100

    Merge remote-tracking branch 'upstream/master' into dev_target_k64f.
    K64F gpio changed according to the latest mbed master.

    Conflicts:
    	libraries/rtos/rtx/RTX_CM_lib.h
    	workspace_tools/export/uvision4.py

commit 9c0a9822ab14263fff5e3b6459b7c2b4a77ce30c
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Mon Mar 17 21:08:17 2014 +0100

    K64F - sleep support

commit 5edcf3603d2e7b00eedbb377203a054b7a01e51d
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Sun Mar 16 18:19:55 2014 +0100

    K64F - pullup/down corrections, LED1 - R, LED2 - G, LED3 - B

commit a2b3b53a1474d32779654765cd1ce2ba2c6b2186
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Thu Mar 13 20:55:39 2014 +0100

    K64F - SPI - delays are set, pin definition for tests

commit 1f3b3abe16f4afaaf1b75cb4bf3e3a9d5b6e50a7
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Tue Mar 11 21:26:00 2014 +0100

    K64F - DAC update - tested with test a8

    	- internal reference set to VDDA
    	- PinName DAC0_OUT

commit 26d8cf47f8c0786b290ae659beb022901029b313
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Tue Mar 11 08:31:44 2014 +0100

    KSDK - drivers layer removal, mbed HAL using only KSDK HAL

    	- ADC corrections with channels, and clock configuration

commit 67ebe14f5c88725033ea0fb135d94b6bf9a00fdb
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Mon Mar 10 12:46:08 2014 +0100

    K20 copy files removed, targets.py - vertical alignment for K64F definition

commit be5c562d513c808e5bd425195a4fb1c71f47a57e
Merge: 696a713 fe0aca9
Author: Emilio Monti <emilmont@gmail.com>
Date:   Mon Mar 10 11:14:55 2014 +0000

    Merge branch 'rtos_support' into dev_target_k64f

commit 696a713751194b4762f1cdf6c17c0786decd7808
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Mon Mar 10 12:05:30 2014 +0100

    [FIX] K64F - adc, sgtl driver updates

commit fe0aca9940bbdd5ee70a1a7341a0a2ad2abf912b
Author: Emilio Monti <emilmont@gmail.com>
Date:   Mon Mar 10 11:04:16 2014 +0000

    Add RTOS support for K64F

commit 5c3edcbca6dbcce628c7cde51ac94a6fc6278ba5
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Sun Mar 9 20:43:38 2014 +0100

    K64F - uvision templates update

    	- uvision 5.10 supports K64F

commit 33f18d11d0eadb9243f1be0ae96c5f82e2913d48
Merge: 26f7587 74e9b2e
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Sat Mar 8 10:34:25 2014 +0100

    Update branch from mbed master

    	- merge branch 'master' into dev_target_k64f

    Conflicts:
    	libraries/USBDevice/USBDevice/USBEndpoints.h
    	libraries/USBDevice/USBDevice/USBHAL_KL25Z.cpp
    	workspace_tools/export/uvision4.py
    	workspace_tools/targets.py

commit 26f75872b19a1db2a3abb34c6e773bac56acb32f
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Thu Mar 6 22:15:53 2014 +0100

    K64F - USBDevice - MPU disable in init

commit e54d6bbaa68827bd63058fbf2428e289d15ac1f7
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Wed Feb 26 21:06:58 2014 +0100

    K64F - clock setup 4 (usb clock enable)

commit c4165732b9520cb31ae3d649d50c353d09dc9932
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Wed Feb 26 20:01:47 2014 +0100

    K64F - USBDevice addition

commit 9fcdbb8562b1415561b04e902fcdbb4724add5af
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Mon Feb 24 19:11:48 2014 +0100

    K64F SPI HAL - initial version

commit 8093df58fa7d17fcb5ad04872c958d5254ee1d8a
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Sat Feb 22 13:14:44 2014 +0100

    K64F - RTC and I2C implementation (using KPSDK HAL)

    	- instance correction in objects and peripherals names headers

commit 7ef3fbda605c2bd53a86f37d0676c0393b2e2949
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Fri Feb 14 09:45:27 2014 +0100

    mbed RTC HAL for K64F

commit e40332fd2db8bf36b3e6cabac5729e013da40c28
Merge: e059f65 6bfcd87
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Thu Feb 13 14:20:20 2014 +0100

    Merge branch 'master' into dev_target_k64f

    Conflicts:
    	workspace_tools/build_api.py
    	workspace_tools/export/uvision4.py
    	workspace_tools/targets.py
    	workspace_tools/toolchains/__init__.py

commit e059f65fd09694418f9fa4f38da90954ab9decfe
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Wed Feb 5 21:35:49 2014 +0100

    pwm mbed HAL

    	- using jusst ftm hal from KPSDK, not yet functional

commit b784278872b1d66ce2940f4988e0479971de8bc0
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Mon Feb 3 18:28:24 2014 +0100

    uvision exporters for K64F, uticker - lptmr

    	- lptmr - no hal neiter driver, quick implementation using registers and internal clock
    	- exporters for K64F - using K60 1MB target, because K64F is not available in 4.7 yet

commit 7a030693e025c2bd456563f3e6f4456033d3f644
Author: Bogdan Marinescu <bogdan.marinescu@arm.com>
Date:   Tue Jan 28 16:29:54 2014 +0200

    Attempt to keep target's include directory structure

commit a2445b383224125abf4ee23bd17f1e685010a4a5
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Mon Jan 27 07:25:16 2014 +0100

    Original KPSDK include directory structure for device

commit 9c07c58bb9cf5e9d8be4c3bec117ee87a5ea81c0
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Fri Jan 24 16:51:17 2014 +0000

    K64F ADC - initial commit

    	- ADC using KPSDK driver

commit 88e03ef8c5855a57887bb36cddfa5ab1491d400c
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Fri Jan 24 12:18:14 2014 +0000

    GPI IRQ

    	- nvic vectors number correction
    	- gpio irq HAL implementation

commit e83f1108ae9f779ce240d6cdfe23532bfa00a55e
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Fri Jan 24 10:06:44 2014 +0000

    PORT HAL implementation

    	- using gpio hal port

commit 75c21943200c8240d1edaf0a67f84b9f3b43db7f
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Thu Jan 23 16:02:36 2014 +0000

    Serial (only 8bit at the moment), using KPSDK HAL

commit 296e79def617f005918cd8e2aa574f2908a362ca
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Thu Jan 23 08:35:50 2014 +0000

    Folder structure correction for K64F - KPSDK

    	- scripts reverted, only new macro is available
    	- K64F specific headers are in HAL in device folder

commit f236b1ffcb9c8b443ad8483bca8b0e564a63f004
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Wed Jan 22 16:07:30 2014 +0100

    update KPSDK to RC1

    	- the update causes few more dependences which were reported. Will be removed later (usb, boards)
    	- pit timer - hal use , pit driver uses us period

commit f02c5353d4920e885f803ad235e5e82001e97b94
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Tue Jan 21 09:45:55 2014 +0100

    KPSDK In/out  declaration removal

commit 8c88e098b4dc4901753309f1e6db4adb8aca4384
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Tue Jan 21 09:12:41 2014 +0100

    gpio_t struct only needs pinName

    	- gpio_init creates init objects on stack

commit 6b96d4ea2c5a6a2cb13571d740ffb679a62f8f3d
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Mon Jan 20 19:59:03 2014 +0100

    us ticker - pit implementation (not functional yet)

    	- pit driver in KPSDK - added sdk prefix to needed functions

commit 098e60a3846abcd4c9c00bd199b01d4b1899807f
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Mon Jan 20 13:01:58 2014 +0100

    GPIO HAL - gpio_set implementation

commit 2bfebbfc75dcd08c20297ba42dc0cc82e5381a40
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Sun Jan 19 20:46:55 2014 +0100

    GPIO KPSDK changes

    	- gpio driver - sdk prefix, no lookuptable, input/output declaration, refactoring, set MUX to GPIO
    	- gpio api in mbed implementation, tested on blue led

commit d083733c485fbdd79ed9ce87100df9fee82294a7
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Sat Jan 18 17:14:09 2014 +0100

    Update folder structure for KPSDK

    	- drivers addition
    	- usb (needed by drivers - needs to be fixed)
    	- utilities
    	- hal folder
    	- drivers/flash removed (needs to be fixed)
    	- usb host removed (needs to be fixed)

commit 9abcf3d94a2cc849cd6e586c1bad650b6a340a0c
Author: 0xc0170 <c0170@rocketmail.com>
Date:   Thu Jan 16 11:06:16 2014 +0100

    Initial commit for K64F

    	- KPSDK addition
    	- CMSIS + HAL for K64F
    	- HAL is not yet implemented
    	- scripts - target contain macros, ignore folders, cmsis copy folders
2014-04-02 14:41:06 +02:00
dinau a43ba4740a [STM32F407][LPC4088][GCC_ARM] Fixed compilation error.
This commit fix FPU error when compile with RTX OS.
2014-03-21 21:16:52 +09:00
Emilio Monti b213992ac0 Optimize for speed 2014-02-11 17:07:29 +00:00
Mihail Stoyanov 8c9d70d224 Changed binary naming flag to OUTPUT_NAMING; Fixed binary_hook() to use 3 params 2014-02-10 15:38:37 +00:00
Emilio Monti 4b2b368a6a Fix build system merge with Nordic changes 2014-02-07 17:57:35 +00:00
Emilio Monti 90d56a0234 Fix "binary" function parameters 2014-02-07 12:10:39 +00:00
tkuyucu 026b6610a8 Merge remote-tracking branch 'upstream/master'
Conflicts:
	libraries/tests/mbed/portinout/main.cpp
	libraries/tests/mbed/portout_portin/main.cpp
	libraries/tests/mbed/sd/main.cpp
	libraries/tests/mbed/spi_slave/main.cpp
	workspace_tools/targets.py
	workspace_tools/toolchains/arm.py
	workspace_tools/toolchains/gcc.py
	workspace_tools/toolchains/iar.py
2014-02-07 11:04:50 +01:00
Mihail Stoyanov 281fcc76b6 Add 8.3 naming support for ST HDK limitations 2014-02-06 16:02:37 +00:00
Bogdan Marinescu 3f5c551d0a [nRF51822] Change image generation mechanism
- The final image is now generated at "binary" step, which is compatible with
  the on-line build system structure
- The SoftDevice image is appended to the application code, resulting in a
  single .hex image file
- Python is used for merging and generating .hex files using the 'intelhex'
  module, no more dependencies on external tools
2014-01-14 19:15:31 +02:00
Bogdan Marinescu b5527ca74d [LPC4088] Switch to 'hard' FP ABI on GCC
This is consistent with the armcc compilation options.
2014-01-07 15:57:52 +02:00
Bogdan Marinescu 697acd34c0 Added command line hooking option
compiler, linker, assembler and binary command lines can now be modified
using the hooks mechanism. Also, '--any_placement=first_fit' linker option
is now used only on LPC4088 using this mechanism, in order to preserve
compatibility with the other targets.
2013-12-05 13:48:42 +02:00
tkuyucu c845f39c50 The python script provided in the original repo fails trying to access an empty string as a file, this version removes any empty strings in the files to build. 2013-12-02 16:34:19 +01:00
0xc0170 ba7b4c300a Cortex-M4 split to M4 and M4F
- all current supported M4 cores will be M4F
2013-11-27 21:02:37 +01:00
Bogdan Marinescu 72a9529287 Added on-line defined macros to the build system
Added 3 macros defined by the on-line build system to the off-line build
system: MBED_BUILD_TIMESTAMP, MBED_USERNAME and __MBED__.
2013-11-27 16:24:42 +02:00
hototogi 03b79b5920 support GCC_ARM for LPC4330_M4
- Linker script is based on LPC1768
     number of NVIC is 16 (CORE) + 53 (M4 in LPC43xx) = 69,
    therefor, reserve at the top of RAM0 (address:0x10000000)
    to relocate NVIC vector table
 - startup file is based on startup_ARMCM4.S in CMSIS V3.20
     change NVIC name for cortex-M4 of LPC43xx
 - add GCC_ARM for LPC4330_M4 in python scripts
 - add some descriptions for GCC_ARM
2013-11-20 17:03:59 +09:00
Mihail Stoyanov b43e947c3b Added support to export mbed special .bld and .lib files
Added support to export repositories for seamless offline setup
2013-11-14 18:45:14 +02:00
Bogdan Marinescu e69956aba2 Updated DSP library + build system changes
Updated CMSIS DSP to latest version (CMSIS-SP-00300-r3p2-00rel1.zip)
Build system changes to be able to preprocess assembler sources before compiling them:

- GCC: use gcc '-x assembler-with-cpp'
- ARM: preprocess first, then assemble (two separate commands)
- IAR: added macro definitions and include directories to the assembler command line

Removed CORTEX_ARM_SUPPORT restriction for the DSP libraries.
Tested: LPC1768 with ARM, GCC_ARM and IAR, LPC11U24 with ARM.
2013-11-08 15:38:23 +02:00
Bogdan Marinescu 1a1dafe44c Added configuration mechanism
If the build system finds a file named mbed_config.h, it will automatically
define a HAVE_MBED_CONFIG_H macro. Various libraries/components can use
this mechanism to provide compile-time configuration for user projects.
2013-11-07 13:48:34 +02:00
Andreas Rebert 83d4facb0e Added support for GCC_ARM 2013-10-31 13:25:58 +01:00
Bogdan Marinescu 1bb844c842 Added macro definition from command line
build_api.py now support macros defined at compile time, so build.py and
make.py can be used like this:

$ make.py/build.py <options> -DMACRO1 -DMACRO2=VALUE2 ...
2013-10-21 11:11:06 +03:00
Bogdan Marinescu 62f1ac097d Integrated support for Red Lizzard's "goanna" static analysis tool
Initial support (activate with "-o analyze"). Not working well with IAR
for now (partially because of a bug in goannac++ which was reported to
Red Lizzard).
2013-10-14 17:32:41 +03:00
Bogdan Marinescu f813bb9382 Fix GCC interpretation of dependency file
The dependency file generated by GCC might contain more than one
dependency listed on a single line, which wasn't taken into account by the
GCC dependency fille interpreter. This commit fixes this issue.
2013-09-05 15:29:13 +03:00
dinau 2b57e648a4 Fixed: [GCC_ARM : LPC1768] Issue ignored the linker option for _print_float and _scanf_float. 2013-08-31 11:34:53 +09:00
Bogdan Marinescu e870a90ff2 Added toolchain hooks and support for LPC4088_EA binary generation
A new hooks mechanism (hooks.py) allows various targets to customize
part(s) of the build process. This was implemented to allow generation of
custom binary images for the EA LPC4088 target, but it should be generic
enough to allow other such customizations in the future. For now, only the
'binary' step is hooked in toolchains/arm.py.
2013-08-30 12:19:08 +03:00
Adam Green 25a332d8f1 Updates to GCC warning level flags
In gcc4mbed, I have been running with "-Wall -Wextra" and then
disabling a couple of noisy warnings that result.  In particular, I
disable the unused-parameter and missing-field-initializers warnings.
The first commonly goes off for implementation of virtual methods or
other overridable functions where not all parameters are required for
every override.  I don't find the second warning to be all that useful
anyway since missing structure field initializers will be set to 0
according to the C language specification.  The RTOS code uses this
language feature and I see no reason that it shouldn't :)
2013-08-22 18:09:14 -07:00
Bogdan Marinescu a7628510f5 Added '-fno-delete-null-pointer-checks' to GCC compilation options
From Adam Green, regarding using -fno-delete-null-pointer-checks:

"I would argue that on Cortex-M processors, it is more dangerous to not
have it.  The compiler can actually generate incorrect code because it is
making an incorrect assumption (that reads from a NULL pointer will throw
an exception.)   The GCC for ARM developers should actually never enable
the delete-null-pointer-checks optimization for Cortex-M processors.
There is a comment in the GCC manual that indicates, "Some targets,
especially embedded ones, disable this option [delete-null-pointer-checks]
at all levels."  Not having this flag is pretty risky on the current
versions of GCC_ARM.  Just to clarify, this flag doesn't enable an
optimization...it disables an unsafe optimization."
2013-08-16 12:26:50 +03:00
Bogdan Marinescu 44c43e6e38 Restore C++98 compilation mode
Also, remove the line that required C++11 from UDPSocket.h
2013-08-15 14:09:20 +03:00
pbrier c0fdbede02 Compile network and RTOS with GCC_ARM 2013-08-14 22:34:33 +02:00
Bogdan Marinescu 7b9081b59c Add support for calling a function before main()
Also added a test for this feature (MBED_A22).
Fixes PRMBED-906.
2013-08-07 14:51:30 +03:00
Emilio Monti 3c6e2ab67a Add license to workspace_tools files 2013-08-06 14:38:00 +01:00
Emilio Monti 003c48cd44 Use new build convention for objects path 2013-07-25 17:49:55 +01:00
Emilio Monti 76578ade26 Propagate "clean" option for library builds
Keep the server program cycle target dependent
Keep program compilation and linking separate
Compile separately sources from different directory roots
2013-07-24 17:29:11 +01:00
Emilio Monti dafcf7f82e Add support for legacy build conventions
Improve exporter test
Build the hal implementation and common sources separately to have proper
temporary relative paths
2013-07-23 17:22:57 +01:00
Emilio Monti 5020b9ad3b Stop using the patched microlib 2013-07-08 17:31:04 +01:00
Emilio Monti 6625a4b61c remove temporary files 2013-07-04 17:34:13 +01:00
0xc0170 43ace93009 removed KL05Z hw tests + mv KL05Z to TARGET_Freescale 2013-07-04 17:57:52 +02:00
Joe Turner bd7554f6aa Add debug-info option 2013-07-03 13:20:08 +01:00
Emilio Monti df9e56f638 Fix option append 2013-07-02 17:04:40 +01:00
Emilio Monti cd669a943f Add build options
Implement "save-asm" option
2013-07-02 16:43:29 +01:00
Emilio Monti 1c98308182 Update default CodeWarrior paths 2013-06-25 10:23:28 +01:00
Emilio Monti 984ba4b113 Refactor the build system:
* add sets of TARGET and TOOLCHAIN "labels"
2013-06-24 14:32:08 +01:00