diff --git a/tools/export/uvision/__init__.py b/tools/export/uvision/__init__.py
index 12c3241207..8382bae0f0 100644
--- a/tools/export/uvision/__init__.py
+++ b/tools/export/uvision/__init__.py
@@ -167,8 +167,9 @@ class Uvision(Exporter):
"""Format toolchain flags for Uvision"""
flags = copy.deepcopy(self.flags)
# to be preprocessed with armcc
- asm_flag_string = '--cpreproc --cpreproc_opts=-D__ASSERT_MSG,' + \
- ",".join(flags['asm_flags'])
+ asm_flag_string = (
+ '--cpreproc --cpreproc_opts=-D__ASSERT_MSG,' +
+ ",".join(filter(lambda f: f.startswith("-D"), flags['asm_flags'])))
flags['asm_flags'] = asm_flag_string
# All non-asm flags are in one template field
c_flags = list(set(flags['c_flags'] + flags['cxx_flags'] +flags['common_flags']))
diff --git a/tools/export/uvision/uvision.tmpl b/tools/export/uvision/uvision.tmpl
index f49c79659d..49c708c3bb 100644
--- a/tools/export/uvision/uvision.tmpl
+++ b/tools/export/uvision/uvision.tmpl
@@ -394,7 +394,7 @@
{{asm_flags}}
-
+ {{include_paths}}