diff --git a/package/pyinstaller/pyinstaller.spec b/package/pyinstaller/pyinstaller.spec index d346692b5..a599d39f1 100644 --- a/package/pyinstaller/pyinstaller.spec +++ b/package/pyinstaller/pyinstaller.spec @@ -415,30 +415,33 @@ for fname in script_n: # patch silx if SILX: if sys.platform.startswith("darwin") and PyInstaller.__version__ >= '6.0.0': - fname = os.path.join(DISTDIR, script_n[0], "special_modules", "silx", "gui","qt","_qt.py") + fname_dir = os.path.join(DISTDIR, script_n[0], "special_modules", "silx", "gui","qt") else: - fname = os.path.join(DISTDIR, script_n[0], "silx", "gui","qt","_qt.py") - if os.path.exists(fname): - logger.info("###################################################################") - logger.info("Patching silx") - logger.info(fname) - logger.info("###################################################################") - f = open(fname, "r") - content = f.readlines() - f.close() - f = open(fname, "w") - for line in content: - #f.write(line.replace("from PyQt5.uic import loadUi", "pass")) - if "import loadUi" in line: - f.write(line.replace("from ", "pass #")) - else: - f.write(line) - f.close() - else: - logger.info("###################################################################") - logger.info("Cannot patch silx. File not found") - logger.info(fname) - logger.info("###################################################################") + fname_dir = os.path.join(DISTDIR, script_n[0], "silx", "gui","qt") + for name in ["_qt", "__init__.py"]: + fname = os.path.join(fname_dir, name) + if os.path.exists(fname): + logger.info("###################################################################") + logger.info("Patching silx") + logger.info(fname) + logger.info("###################################################################") + f = open(fname, "r") + content = f.readlines() + f.close() + f = open(fname, "w") + for line in content: + #f.write(line.replace("from PyQt5.uic import loadUi", "pass")) + #f.write(line.replace("from PyQt6.uic import loadUi", "pass")) + if "import loadUi" in line: + f.write(line.replace("from ", "pass #")) + else: + f.write(line) + f.close() + else: + logger.info("###################################################################") + logger.info("Cannot patch silx. File not found") + logger.info(fname) + logger.info("###################################################################") # patch OpenCL if OPENCL: