diff options
author | Jun Wako <wakojun@gmail.com> | 2015-04-24 16:26:14 +0900 |
---|---|---|
committer | Jun Wako <wakojun@gmail.com> | 2015-04-24 16:26:14 +0900 |
commit | a3d96d3aa96318d339a67de1085e0ae495d57c84 (patch) | |
tree | db85c16d03b52399d6c109eda7ea0341a0de0b1d /tmk_core/tool/mbed/mbed-sdk/workspace_tools/export/codesourcery.py | |
parent | 1d5bac21dc6f1425b8ef4bbe7935330c37c3a93e (diff) | |
parent | 1fe4406f374291ab2e86e95a97341fd9c475fcb8 (diff) |
Merge commit '1fe4406f374291ab2e86e95a97341fd9c475fcb8'
Diffstat (limited to 'tmk_core/tool/mbed/mbed-sdk/workspace_tools/export/codesourcery.py')
-rw-r--r-- | tmk_core/tool/mbed/mbed-sdk/workspace_tools/export/codesourcery.py | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/tmk_core/tool/mbed/mbed-sdk/workspace_tools/export/codesourcery.py b/tmk_core/tool/mbed/mbed-sdk/workspace_tools/export/codesourcery.py new file mode 100644 index 0000000000..c014625392 --- /dev/null +++ b/tmk_core/tool/mbed/mbed-sdk/workspace_tools/export/codesourcery.py @@ -0,0 +1,60 @@ +""" +mbed SDK +Copyright (c) 2011-2013 ARM Limited + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +""" +from exporters import Exporter +from os.path import splitext, basename + + +class CodeSourcery(Exporter): + NAME = 'CodeSourcery' + TOOLCHAIN = 'GCC_CS' + + TARGETS = [ + 'LPC1768', + 'UBLOX_C027', + 'ARCH_PRO', + ] + + DOT_IN_RELATIVE_PATH = True + + def generate(self): + # "make" wants Unix paths + self.resources.win_to_unix() + + to_be_compiled = [] + for r_type in ['s_sources', 'c_sources', 'cpp_sources']: + r = getattr(self.resources, r_type) + if r: + for source in r: + base, ext = splitext(source) + to_be_compiled.append(base + '.o') + + libraries = [] + for lib in self.resources.libraries: + l, _ = splitext(basename(lib)) + libraries.append(l[3:]) + + ctx = { + 'name': self.program_name, + 'to_be_compiled': to_be_compiled, + 'object_files': self.resources.objects, + 'include_paths': self.resources.inc_dirs, + 'library_paths': self.resources.lib_dirs, + 'linker_script': self.resources.linker_script, + 'libraries': libraries, + 'symbols': self.get_symbols() + } + self.gen_file('codesourcery_%s.tmpl' % self.target.lower(), ctx, 'Makefile') |