aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Gubler <thomasgubler@gmail.com>2015-05-03 10:01:27 +0200
committerThomas Gubler <thomasgubler@gmail.com>2015-05-03 10:01:27 +0200
commite29454291c5134e81fbf5db13fe55bf584b1bbfd (patch)
tree83af27bc002ad7b92d1c76bdb0175e62b136c437
parent2a46e0f0b6a9521015e05b87209de7f9604b9205 (diff)
downloadpx4-firmware-paramparsingfixes.tar.gz
px4-firmware-paramparsingfixes.tar.bz2
px4-firmware-paramparsingfixes.zip
make parameter parser work with python3paramparsingfixes
-rw-r--r--Tools/px4params/srcparser.py10
-rw-r--r--Tools/px4params/xmlout.py3
-rw-r--r--makefiles/firmware.mk2
3 files changed, 9 insertions, 6 deletions
diff --git a/Tools/px4params/srcparser.py b/Tools/px4params/srcparser.py
index 0d2413a75..048836a4e 100644
--- a/Tools/px4params/srcparser.py
+++ b/Tools/px4params/srcparser.py
@@ -57,10 +57,10 @@ class Parameter(object):
def GetType(self):
return self.type
-
+
def GetDefault(self):
return self.default
-
+
def SetField(self, code, value):
"""
Set named field value
@@ -80,6 +80,10 @@ class Parameter(object):
"""
Return value of the given field code or None if not found.
"""
+ fv = self.fields.get(code)
+ if not fv:
+ # required because python 3 sorted does not accept None
+ return ""
return self.fields.get(code)
class SourceParser(object):
@@ -89,7 +93,7 @@ class SourceParser(object):
re_split_lines = re.compile(r'[\r\n]+')
re_comment_start = re.compile(r'^\/\*\*')
- re_comment_content = re.compile(r'^\*\s*(.*)')
+ re_comment_content = re.compile(r'^\*\s*(.*)')
re_comment_tag = re.compile(r'@([a-zA-Z][a-zA-Z0-9_]*)\s*(.*)')
re_comment_end = re.compile(r'(.*?)\s*\*\/')
re_parameter_definition = re.compile(r'PARAM_DEFINE_([A-Z_][A-Z0-9_]*)\s*\(([A-Z_][A-Z0-9_]*)\s*,\s*([^ ,\)]+)\s*\)\s*;')
diff --git a/Tools/px4params/xmlout.py b/Tools/px4params/xmlout.py
index 07cced478..b072ab79f 100644
--- a/Tools/px4params/xmlout.py
+++ b/Tools/px4params/xmlout.py
@@ -52,5 +52,4 @@ class XMLOutput():
self.xml_document = ET.ElementTree(xml_parameters)
def Save(self, filename):
- with codecs.open(filename, 'w', 'utf-8') as f:
- self.xml_document.write(f)
+ self.xml_document.write(filename, encoding="UTF-8")
diff --git a/makefiles/firmware.mk b/makefiles/firmware.mk
index af3ca249e..ebe7a09c2 100644
--- a/makefiles/firmware.mk
+++ b/makefiles/firmware.mk
@@ -494,7 +494,7 @@ $(filter %.S.o,$(OBJS)): $(WORK_DIR)%.S.o: %.S $(GLOBAL_DEPS)
$(PRODUCT_BUNDLE): $(PRODUCT_BIN)
@$(ECHO) %% Generating $@
ifdef GEN_PARAM_XML
- python $(PX4_BASE)/Tools/px_process_params.py --src-path $(PX4_BASE)/src --board CONFIG_ARCH_BOARD_$(CONFIG_BOARD) --xml
+ $(Q) $(PYTHON) $(PX4_BASE)/Tools/px_process_params.py --src-path $(PX4_BASE)/src --board CONFIG_ARCH_BOARD_$(CONFIG_BOARD) --xml
$(Q) $(MKFW) --prototype $(IMAGE_DIR)/$(BOARD).prototype \
--git_identity $(PX4_BASE) \
--parameter_xml $(PRODUCT_PARAMXML) \