+ def validateAllToolchains(self):
+ for i in range(self.pageContent.toolchainList.count()):
+ self.validateToolchain(i)
+
+ def validateToolchain(self, i):
+ filename = qvariant_converter.getStringDict(self.pageContent.toolchainList.item(i).data(Qt.UserRole))["path"]
+ self._validationProcess = QProcess()
+ self._validationProcess.start(filename, ["-v"])
+ self._validationProcess.waitForStarted(1000)
+ if self._validationProcess.waitForFinished(200):
+ description = str(self._validationProcess.readAllStandardError())
+ infos = bertos_utils.getToolchainInfo(description)
+ if len(infos.keys()) >= 4:
+ self._validItem(i, infos)
+ else:
+ self._invalidItem(i)
+ else:
+ self._validationProcess.kill()
+ self._invalidItem(i)
+ toolchains = self.toolchains()
+ toolchains[filename] = True
+ self.setToolchains(toolchains)
+