""" ***DANGEROUS*** script to remove all results of a build process. ***Don't*** run this if you are ***not*** building Python from the source !!! """ import macfs import os import sys import re sweepfiletypes = [ 'APPL', # applications 'Atmp', # applet template 'shlb', # shared libs 'MPSY', # SYM and xSYM files 'PYC ', # .pyc files ] sweepfolderre = re.compile(r"(.*) Data$") def remove(top): if os.path.isdir(top): for name in os.listdir(top): path = os.path.join(top, name) remove(path) os.remove(top) def walk(top): if os.path.isdir(top): m = sweepfolderre.match(top) if m and os.path.exists(m.group(1) + ".prj"): print "removing folder:", top remove(top) else: for name in os.listdir(top): path = os.path.join(top, name) walk(path) else: fss = macfs.FSSpec(top) cr, tp = fss.GetCreatorType() if tp in sweepfiletypes and top <> sys.executable: print "removing file: ", top remove(top) fss, ok = macfs.GetDirectory("Please locate the Python home directory") if ok: walk(fss.as_pathname()) sys.exit(1) # so we see the results