Merge pull request #3608 from ilg-ul/jinja

Exporters: make jinja engine strict
pull/3649/head
Martin Kojtal 2017-01-26 10:32:55 +02:00 committed by GitHub
commit 57ec7493f2
4 changed files with 9 additions and 6 deletions

View File

@ -12,9 +12,9 @@
<project name="{{name}}" documentation="">
<target Dendian="{{device.dendian}}" Dfpu="{{device.dfpu}}" Dname="{{device.dname}}" Dvendor="{{device.dvendor}}">
<output debug="1" name="{{name}}" type="exe"/>
<debugProbe name="{{device.debug_interface}}" protocol="jtag"/>
<debugProbe name="{{device.debug}}" protocol="jtag"/>
</target>
{{project_files}}
</project>
</create>
</package>
</package>

View File

@ -4,7 +4,7 @@ from abc import abstractmethod, ABCMeta
import logging
from os.path import join, dirname, relpath, basename, realpath, normpath
from itertools import groupby
from jinja2 import FileSystemLoader
from jinja2 import FileSystemLoader, StrictUndefined
from jinja2.environment import Environment
import copy
@ -111,11 +111,12 @@ class Exporter(object):
source_files.extend(getattr(self.resources, key))
return list(set([os.path.dirname(src) for src in source_files]))
def gen_file(self, template_file, data, target_file):
def gen_file(self, template_file, data, target_file, **kwargs):
"""Generates a project file from a template using jinja"""
jinja_loader = FileSystemLoader(
os.path.dirname(os.path.abspath(__file__)))
jinja_environment = Environment(loader=jinja_loader)
jinja_environment = Environment(loader=jinja_loader,
undefined=StrictUndefined, **kwargs)
template = jinja_environment.get_template(template_file)
target_text = template.render(data)

View File

@ -64,8 +64,10 @@ class IAR(Exporter):
"GFPUCoreSlave": '',
"GFPUCoreSlave2": 40,
"GBECoreSlave": 35,
"GBECoreSlave2": '',
"FPU2": 0,
"NrRegs": 0,
"NEON": '',
}
iar_defaults.update(device_info)

View File

@ -131,7 +131,7 @@
<option>
<name>GBECoreSlave</name>
<version>24</version>
<state>{{GBECoreSlave}}</state>
<state>{{device.GBECoreSlave}}</state>
</option>
<option>
<name>OGUseCmsis</name>