From 724715002a173ba5a676c854a936465f056b2e3b Mon Sep 17 00:00:00 2001 From: 0xc0170 Date: Mon, 13 Jun 2016 17:23:29 +0100 Subject: [PATCH] uvision - flags consolidation Remove error for include system path in the exporters. Assembly does not use armcc flags, fails to build, as those are not valid armasm. --- tools/export/uvision4.py | 6 +++++- tools/export/uvision5.py | 3 ++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/tools/export/uvision4.py b/tools/export/uvision4.py index 1d639bebb3..9e9d2c61db 100644 --- a/tools/export/uvision4.py +++ b/tools/export/uvision4.py @@ -19,6 +19,7 @@ from project_generator_definitions.definitions import ProGenDef from tools.export.exporters import Exporter from tools.targets import TARGET_MAP, TARGET_NAMES +from tools.settings import ARM_INC # If you wish to add a new target, add it to project_generator_definitions, and then # define progen_target name in the target class (`` self.progen_target = 'my_target_name' ``) @@ -67,11 +68,14 @@ class Uvision4(Exporter): # get flags from toolchain and apply project_data['tool_specific']['uvision']['misc'] = {} - project_data['tool_specific']['uvision']['misc']['asm_flags'] = list(set(self.toolchain.flags['common'] + self.toolchain.flags['asm'])) + # asm flags only, common are not valid within uvision project, they are armcc specific + project_data['tool_specific']['uvision']['misc']['asm_flags'] = list(set(self.toolchain.flags['asm'])) # cxx flags included, as uvision have them all in one tab project_data['tool_specific']['uvision']['misc']['c_flags'] = list(set(self.toolchain.flags['common'] + self.toolchain.flags['c'] + self.toolchain.flags['cxx'])) # not compatible with c99 flag set in the template project_data['tool_specific']['uvision']['misc']['c_flags'].remove("--c99") + # ARM_INC is by default as system inclusion, not required for exported project + project_data['tool_specific']['uvision']['misc']['c_flags'].remove("-I \""+ARM_INC+"\"") project_data['tool_specific']['uvision']['misc']['ld_flags'] = self.toolchain.flags['ld'] i = 0 diff --git a/tools/export/uvision5.py b/tools/export/uvision5.py index 02aba22244..5daccebaa6 100644 --- a/tools/export/uvision5.py +++ b/tools/export/uvision5.py @@ -67,7 +67,8 @@ class Uvision5(Exporter): # get flags from toolchain and apply project_data['tool_specific']['uvision5']['misc'] = {} - project_data['tool_specific']['uvision5']['misc']['asm_flags'] = list(set(self.toolchain.flags['common'] + self.toolchain.flags['asm'])) + # asm flags only, common are not valid within uvision project, they are armcc specific + project_data['tool_specific']['uvision5']['misc']['asm_flags'] = list(set(self.toolchain.flags['asm'])) # cxx flags included, as uvision have them all in one tab project_data['tool_specific']['uvision5']['misc']['c_flags'] = list(set(self.toolchain.flags['common'] + self.toolchain.flags['c'] + self.toolchain.flags['cxx'])) # not compatible with c99 flag set in the template