DocumentationTools/QtHelpGenerator.py

changeset 6666
06f6e0f24e89
parent 6665
adb59475e671
diff -r adb59475e671 -r 06f6e0f24e89 DocumentationTools/QtHelpGenerator.py
--- a/DocumentationTools/QtHelpGenerator.py	Sun Jan 20 19:38:51 2019 +0100
+++ b/DocumentationTools/QtHelpGenerator.py	Mon Jan 21 19:12:29 2019 +0100
@@ -16,8 +16,7 @@
 import subprocess
 
 from Utilities import joinext, relpath, html_encode, getQtBinariesPath, \
-    generateQtToolName
-from Globals import qVersionTuple
+    generateQtToolName, isExecutable
 
 HelpCollection = r"""<?xml version="1.0" encoding="utf-8" ?>
 <QHelpCollectionProject version="1.0">
@@ -271,24 +270,30 @@
         
         cwd = os.getcwd()
         # generate the compressed files
+        qhelpgeneratorExe = os.path.join(
+            getQtBinariesPath(), generateQtToolName("qhelpgenerator")
+        )
         shutil.copy(
             os.path.join(self.outputDir, HelpProjectFile), self.htmlDir)
         os.chdir(self.htmlDir)
         subprocess.call([
-            os.path.join(getQtBinariesPath(),
-                         generateQtToolName("qhelpgenerator")),
+            qhelpgeneratorExe,
             HelpProjectFile, "-o", os.path.join(self.outputDir, HelpHelpFile)])
         os.remove(HelpProjectFile)
         
-        # TODO: do this with qhelpgenerator >= 5.12.0
-        if qVersionTuple() < (5, 12, 0) and self.createCollection:
+        if self.createCollection:
+            qcollectiongeneratorExe = os.path.join(
+                getQtBinariesPath(), generateQtToolName("qcollectiongenerator")
+            )
+            if not isExecutable(qcollectiongeneratorExe):
+                # assume Qt >= 5.12.0
+                qcollectiongeneratorExe = qhelpgeneratorExe
             sys.stdout.write("Generating QtHelp collection...\n")
             sys.stdout.flush()
             sys.stderr.flush()
             os.chdir(self.outputDir)
             subprocess.call([
-                os.path.join(getQtBinariesPath(),
-                             generateQtToolName("qcollectiongenerator")),
+                qcollectiongeneratorExe,
                 HelpCollectionProjectFile, "-o", HelpCollectionFile])
         
         os.chdir(cwd)

eric ide

mercurial