diff options
author | Thomas Gubler <thomasgubler@gmail.com> | 2015-05-03 10:01:27 +0200 |
---|---|---|
committer | Thomas Gubler <thomasgubler@gmail.com> | 2015-05-03 10:01:27 +0200 |
commit | e29454291c5134e81fbf5db13fe55bf584b1bbfd (patch) | |
tree | 83af27bc002ad7b92d1c76bdb0175e62b136c437 | |
parent | 2a46e0f0b6a9521015e05b87209de7f9604b9205 (diff) | |
download | px4-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.py | 10 | ||||
-rw-r--r-- | Tools/px4params/xmlout.py | 3 | ||||
-rw-r--r-- | makefiles/firmware.mk | 2 |
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) \ |