--- a/LPCBeremiz.py Sat Dec 12 20:49:07 2009 +0100
+++ b/LPCBeremiz.py Sat Dec 12 20:51:56 2009 +0100
@@ -399,19 +399,16 @@
def GetProjectName(self):
return self.Project.getname()
- def GetDefaultTarget(self):
- target = self.Classes["BeremizRoot_TargetType"]()
+ def GetDefaultTargetName(self): - if wx.Platform == '__WXMSW__':
- target_value = self.Classes["TargetType_%s"%target_name]()
+ return PluginsRoot.GetDefaultTargetName(self)
- target_value = self.Classes["TargetType_LPC"]()
- target_value.setBuildPath(self.BuildPath)
- target.setcontent({"name": target_name, "value": target_value})
+ target = PluginsRoot.GetTarget(self) + if not self.BuildSimulation: + target.getcontent()["value"].setBuildPath(self.BuildPath) @@ -433,6 +430,8 @@
def SetOnlineMode(self, mode, path=None):
if self.OnlineMode != mode:
if self._connector is None:
--- a/plugger.py Sat Dec 12 20:49:07 2009 +0100
+++ b/plugger.py Sat Dec 12 20:51:56 2009 +0100
@@ -843,12 +843,18 @@
childs.append(child.GetPlugInfos())
return {"name" : "PLC (%s)"%self.GetProjectName(), "type" : None, "values" : childs}
- def GetDefaultTarget(self):
- target = self.Classes["BeremizRoot_TargetType"]()
+ def GetDefaultTargetName(self): if wx.Platform == '__WXMSW__':
- target.setcontent({"name": "Win32", "value": self.Classes["TargetType_Win32"]()})
- target.setcontent({"name": "Linux", "value": self.Classes["TargetType_Linux"]()})
+ target = self.BeremizRoot.getTargetType() + if target.getcontent() is None: + target = self.Classes["BeremizRoot_TargetType"]() + target_name = self.GetDefaultTargetName() + target.setcontent({"name": target_name, "value": self.Classes["TargetType_%s"%target_name]()}) def GetParamsAttributes(self, path = None):
@@ -856,7 +862,7 @@
if params[0]["name"] == "BeremizRoot":
for child in params[0]["children"]:
if child["name"] == "TargetType" and child["value"] == '':
- child.update(self.GetDefaultTarget().getElementInfos("TargetType"))
+ child.update(self.GetTarget().getElementInfos("TargetType")) def SetParamsAttribute(self, path, value):
@@ -1196,10 +1202,7 @@
Return a Builder (compile C code into machine code)
# Get target, module and class name
- target = self.BeremizRoot.getTargetType()
- if target.getcontent() is None:
- target = self.GetDefaultTarget()
- targetname = target.getcontent()["name"]
+ targetname = self.GetTarget().getcontent()["name"] modulename = "targets." + targetname
classname = targetname + "_target"
@@ -1390,12 +1393,7 @@
- target = self.BeremizRoot.getTargetType()
- if target.getcontent() is None:
- target = self.GetDefaultTarget()
- target_name = target.getcontent()["name"]
- plc_main_code += targets.targetcode(target_name)
+ plc_main_code += targets.targetcode(self.GetTarget().getcontent()["name"]) @@ -1454,7 +1452,7 @@
open(fpath, "wb").write(fobject.read())
# Now we can forget ExtraFiles (will close files object)
# Template based part of C code generation
# files are stacked at the beginning, as files of plugin tree root
for generator, filename, name in [
--- a/targets/Xenomai/__init__.py Sat Dec 12 20:49:07 2009 +0100
+++ b/targets/Xenomai/__init__.py Sat Dec 12 20:51:56 2009 +0100
@@ -5,7 +5,7 @@
""" Get xeno-config from target parameters """
- return self.getTarget().getcontent()["value"].getXenoConfig()
+ return self.PluginsRootInstance.GetTarget().getcontent()["value"].getXenoConfig() def getBuilderLDFLAGS(self):
# get xeno-config from target parameters
--- a/targets/toolchain_gcc.py Sat Dec 12 20:49:07 2009 +0100
+++ b/targets/toolchain_gcc.py Sat Dec 12 20:51:56 2009 +0100
@@ -14,25 +14,19 @@
self.PluginsRootInstance = PluginsRootInstance
self.SetBuildPath(self.PluginsRootInstance._getBuildPath())
- target = self.PluginsRootInstance.BeremizRoot.getTargetType()
- if target.getcontent() is None:
- target = self.PluginsRootInstance.GetDefaultTarget()
def getBuilderCFLAGS(self):
Returns list of builder specific CFLAGS
- return [self.getTarget().getcontent()["value"].getCFLAGS()]
+ return [self.PluginsRootInstance.GetTarget().getcontent()["value"].getCFLAGS()] def getBuilderLDFLAGS(self):
Returns list of builder specific LDFLAGS
return self.PluginsRootInstance.LDFLAGS + \
- [self.getTarget().getcontent()["value"].getLDFLAGS()]
+ [self.PluginsRootInstance.GetTarget().getcontent()["value"].getLDFLAGS()] @@ -88,7 +82,7 @@
# Retrieve toolchain user parameters
- toolchain_params = self.getTarget().getcontent()["value"]
+ toolchain_params = self.PluginsRootInstance.GetTarget().getcontent()["value"] self.compiler = toolchain_params.getCompiler()
self.linker = toolchain_params.getLinker()
--- a/targets/toolchain_makefile.py Sat Dec 12 20:49:07 2009 +0100
+++ b/targets/toolchain_makefile.py Sat Dec 12 20:51:56 2009 +0100
@@ -1,7 +1,6 @@
from wxPopen import ProcessLogger
-from toolchain_gcc import toolchain_gcc
includes_re = re.compile('\s*#include\s*["<]([^">]*)[">].*')
@@ -12,12 +11,6 @@
self.SetBuildPath(self.PluginsRootInstance._getBuildPath())
- target = self.PluginsRootInstance.BeremizRoot.getTargetType()
- if target.getcontent() is None:
- target = self.PluginsRootInstance.GetDefaultTarget()
def SetBuildPath(self, buildpath):
self.buildpath = buildpath
self.exe_path = os.path.join(self.buildpath, "ArmPLC_rom.bin")
@@ -64,7 +57,7 @@
- target = self.getTarget().getcontent()["value"]
+ target = self.PluginsRootInstance.GetTarget().getcontent()["value"] command = target.getCommand().split(' ') +\
[target.getBuildPath()] +\
[arg % beremizcommand for arg in target.getArguments().split(' ')] +\