diff --git a/libraries/mbed/targets/cmsis/TARGET_Freescale/TARGET_K64F/TOOLCHAIN_GCC_ARM/startup_MK64F12.s b/libraries/mbed/targets/cmsis/TARGET_Freescale/TARGET_K64F/TOOLCHAIN_GCC_ARM/startup_MK64F12.S
similarity index 100%
rename from libraries/mbed/targets/cmsis/TARGET_Freescale/TARGET_K64F/TOOLCHAIN_GCC_ARM/startup_MK64F12.s
rename to libraries/mbed/targets/cmsis/TARGET_Freescale/TARGET_K64F/TOOLCHAIN_GCC_ARM/startup_MK64F12.S
diff --git a/workspace_tools/export/__init__.py b/workspace_tools/export/__init__.py
index 67de0229ca..8b1a930145 100644
--- a/workspace_tools/export/__init__.py
+++ b/workspace_tools/export/__init__.py
@@ -20,7 +20,7 @@ from os import makedirs
from shutil import copytree, rmtree
from workspace_tools.utils import mkdir
-from workspace_tools.export import uvision4, codesourcery, codered, gccarm, ds5_5, iar, coide
+from workspace_tools.export import uvision4, codesourcery, codered, gccarm, ds5_5, iar, coide, kds
from workspace_tools.export.exporters import zip_working_directory_and_clean_up, OldLibrariesException
from workspace_tools.targets import EXPORT_MAP
@@ -31,7 +31,8 @@ EXPORTERS = {
'gcc_arm': gccarm.GccArm,
'ds5_5': ds5_5.DS5_5,
'iar': iar.IAREmbeddedWorkbench,
- 'coide' : coide.CoIDE
+ 'coide' : coide.CoIDE,
+ 'kds' : kds.KDS,
}
ERROR_MESSAGE_UNSUPPORTED_TOOLCHAIN = """
diff --git a/workspace_tools/export/kds.py b/workspace_tools/export/kds.py
new file mode 100644
index 0000000000..f7db7195eb
--- /dev/null
+++ b/workspace_tools/export/kds.py
@@ -0,0 +1,45 @@
+"""
+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 KDS(Exporter):
+ NAME = 'Kinetis Design Studio'
+ TOOLCHAIN = 'GCC_ARM'
+
+ TARGETS = [
+ 'K64F',
+ ]
+
+ def generate(self):
+ libraries = []
+ for lib in self.resources.libraries:
+ l, _ = splitext(basename(lib))
+ libraries.append(l[3:])
+
+ ctx = {
+ 'name': self.program_name,
+ 'include_paths': self.resources.inc_dirs,
+ 'linker_script': self.resources.linker_script,
+ 'object_files': self.resources.objects,
+ 'libraries': libraries,
+ 'symbols': self.toolchain.get_symbols()
+ }
+ self.gen_file('kds_%s_project.tmpl' % self.target.lower(), ctx, '.project')
+ self.gen_file('kds_%s_cproject.tmpl' % self.target.lower(), ctx, '.cproject')
+ self.gen_file('kds_launch.tmpl', ctx, '%s.launch' % self.program_name)
diff --git a/workspace_tools/export/kds_k64f_cproject.tmpl b/workspace_tools/export/kds_k64f_cproject.tmpl
new file mode 100644
index 0000000000..5aa8af1bce
--- /dev/null
+++ b/workspace_tools/export/kds_k64f_cproject.tmpl
@@ -0,0 +1,306 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/workspace_tools/export/kds_k64f_project.tmpl b/workspace_tools/export/kds_k64f_project.tmpl
new file mode 100644
index 0000000000..1ab5ab3485
--- /dev/null
+++ b/workspace_tools/export/kds_k64f_project.tmpl
@@ -0,0 +1,27 @@
+
+
+ {{name}}
+ This file was automagically generated by mbed.org. For more information, see http://mbed.org/handbook/Exporting-To-KDS
+
+
+
+
+ org.eclipse.cdt.managedbuilder.core.genmakebuilder
+ clean,full,incremental,
+
+
+
+
+ org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder
+ full,incremental,
+
+
+
+
+
+ org.eclipse.cdt.core.cnature
+ org.eclipse.cdt.core.ccnature
+ org.eclipse.cdt.managedbuilder.core.managedBuildNature
+ org.eclipse.cdt.managedbuilder.core.ScannerConfigNature
+
+
diff --git a/workspace_tools/export/kds_launch.tmpl b/workspace_tools/export/kds_launch.tmpl
new file mode 100644
index 0000000000..1fe8bbddbd
--- /dev/null
+++ b/workspace_tools/export/kds_launch.tmpl
@@ -0,0 +1,59 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+