def runMergeTool(self, filename, formatted): if self.mergetool is None and self.options.mergetool is not None: self.mergetool = MergeTool(self.options.mergetool) orig = open(filename, 'r') originalscript = orig.read() orig.close() if originalscript == formatted: return if self.mergetool is not None: modname = os.path.splitext(os.path.basename(filename))[0] t1 = subprocess.Popen(["mktemp", "-d"], stdout=subprocess.PIPE) tempdir = t1.communicate()[0].strip() tempclean = os.path.join(tempdir, modname + ".Decrufted.cmake") temporig = os.path.join(tempdir, modname + ".Original.cmake") temporigfile = open(temporig, 'w', False) temporigfile.write(originalscript) temporigfile.close() tempcleanfile = open(tempclean, 'w', False) tempcleanfile.write(formatted) tempcleanfile.close() self.mergetool.run(tempclean, filename, temporig) else: # If we aren't merging, print the formatted output print formatted