From d56672de0b798a3dba45d9501d803f93e3f6f893 Mon Sep 17 00:00:00 2001 From: cylon Date: Sat, 3 Sep 2016 08:52:38 +0200 Subject: [PATCH] Sources are now stored in project variable. --- cmake.py | 7 ++++--- converter.py | 4 ++-- ewpproject.py | 32 ++++---------------------------- uvprojxproject.py | 10 ++++------ 4 files changed, 14 insertions(+), 39 deletions(-) diff --git a/cmake.py b/cmake.py index 62dfae3..2386e0a 100644 --- a/cmake.py +++ b/cmake.py @@ -7,8 +7,9 @@ from jinja2 import Environment, FileSystemLoader class CMake (object): - def __init__(self, project): + def __init__(self, project, path): + self.path = path self.project = project self.context = {} @@ -18,7 +19,7 @@ class CMake (object): # For debug run cmake -DCMAKE_BUILD_TYPE=Debug or Release cmake = {} - fpu = '-mfpu=fpv5-sp-d16 -mfloat-abi=softfp' + #fpu = '-mfpu=fpv5-sp-d16 -mfloat-abi=softfp' fpu = '' core = '' @@ -69,7 +70,7 @@ class CMake (object): self.context['cmake'] = cmake - self.generateFile('CMakeLists.txt') + self.generateFile('CMakeLists.txt',os.path.join(self.path,'CMakeLists.txt')) print ('Created file CMakeLists.txt') diff --git a/converter.py b/converter.py index fd52c64..34314a0 100644 --- a/converter.py +++ b/converter.py @@ -35,7 +35,7 @@ if __name__ == '__main__': project.parseProject() project.displaySummary() - cmakefile = cmake.CMake(project.getProject()) + cmakefile = cmake.CMake(project.getProject(),args.path) cmakefile.populateCMake() else: @@ -50,7 +50,7 @@ if __name__ == '__main__': project.parseProject() project.displaySummary() - cmakefile = cmake.CMake(project.getProject()) + cmakefile = cmake.CMake(project.getProject(),args.path) cmakefile.populateCMake() else: diff --git a/ewpproject.py b/ewpproject.py index 6f60db9..9553713 100644 --- a/ewpproject.py +++ b/ewpproject.py @@ -32,7 +32,7 @@ class EWPProject (object): if e.tag == 'option': if e.name.text == 'OGChipSelectEditMenu': - self.project['chip'] = e.state + self.project['chip'] = str(e.state) elif e.name.text == 'CCDefines': for d in e.getchildren(): if d.tag == 'state' and d.text != None: @@ -52,41 +52,17 @@ class EWPProject (object): print ('Project chip:' + self.project['chip']) print ('Project includes: ' + ' '.join(self.project['incs'])) print ('Project defines: ' + ' '.join(self.project['defs'])) - - #print ('Groups: ') - #print (self.sources) - #for src in self.sources: - # self.printGroups(src) - - - def printGroups(self, group): - - print ('Group name:' + group['name']) - - for file in group['files']: - print ('File: ' + file) - - for g in group['groups']: - self.printGroups(g) + print ('Project srcs: ' + ' '.join(self.project['srcs'])) def searchGroups(self, xml, sources): - group = {} - group['name'] = '' - group['files'] = [] - group['groups'] = [] - for element in xml.getchildren(): if element.tag == 'group': - group['name'] = element.name - print ('File: ' + group['name']) - self.searchGroups(element,group['groups']) - sources.append(group) + self.searchGroups(element,sources) elif element.tag == 'file': - print ('File: ' + element.name) - group['files'].append(element.name) + sources.append(str(element.name)) def getProject(self): diff --git a/uvprojxproject.py b/uvprojxproject.py index ab99d2e..ba980d0 100644 --- a/uvprojxproject.py +++ b/uvprojxproject.py @@ -13,8 +13,7 @@ class UVPROJXProject (object): def parseProject (self): self.project['name'] = self.root.Targets.Target.TargetName - self.project['chip'] = self.root.Targets.Target.TargetOption.TargetCommonOption.Device - self.project['svd'] = self.root.Targets.Target.TargetOption.TargetCommonOption.SFDFile + self.project['chip'] = str(self.root.Targets.Target.TargetOption.TargetCommonOption.Device) self.project['incs'] = self.root.Targets.Target.TargetOption.TargetArmAds.Cads.VariousControls.IncludePath.text.split(';') self.project['mems'] = self.root.Targets.Target.TargetOption.TargetCommonOption.Cpu self.project['defs'] = self.root.Targets.Target.TargetOption.TargetArmAds.Cads.VariousControls.Define.text.split(',') @@ -25,16 +24,15 @@ class UVPROJXProject (object): print ('GroupName: ' + element.GroupName.text) if hasattr(element,'Files'): for file in element.Files.getchildren(): - #print ('FileName: ' + file.FileName.text) - print ('FilePath: ' + file.FilePath.text) + self.project['srcs'] = file.FilePath.text def displaySummary(self): print ('Project Name:' + self.project['name']) print ('Project chip:' + self.project['chip']) - print ('Project svd:' + self.project['svd']) print ('Project includes: ' + ' '.join(self.project['incs'])) - print ('Project defines: ' + ' '.join(self.project['defs'])) + print ('Project defines: ' + ' '.join(self.project['defs'])) + print ('Project srcs: ' + ' '.join(self.project['defs'])) print ('Project: ' + self.project['mems']) def getProject(self):