summaryrefslogtreecommitdiffstats
path: root/Mac/OSX/Extras.install.py
diff options
context:
space:
mode:
authorJack Jansen <jack.jansen@cwi.nl>2003-06-19 22:35:20 (GMT)
committerJack Jansen <jack.jansen@cwi.nl>2003-06-19 22:35:20 (GMT)
commita1b77584f213820ee5358b3c354b8f4b9221fd5c (patch)
treed6aba3a65d5fa0f377dfbb9c406a5205d5277e1f /Mac/OSX/Extras.install.py
parente53be4e8557a5e99e67406c02f07ac290f0cefb6 (diff)
downloadcpython-a1b77584f213820ee5358b3c354b8f4b9221fd5c.zip
cpython-a1b77584f213820ee5358b3c354b8f4b9221fd5c.tar.gz
cpython-a1b77584f213820ee5358b3c354b8f4b9221fd5c.tar.bz2
Added a target frameworkinstallextras (OSX framework build specific,
and not part of a normal frameworkinstall) that installs Demo and Tools and a readme file into /Applications/MacPython-2.3/Extras. This will give people access to the demos and tools if they instal Python through the binary installer.
Diffstat (limited to 'Mac/OSX/Extras.install.py')
-rw-r--r--Mac/OSX/Extras.install.py53
1 files changed, 53 insertions, 0 deletions
diff --git a/Mac/OSX/Extras.install.py b/Mac/OSX/Extras.install.py
new file mode 100644
index 0000000..1939904
--- /dev/null
+++ b/Mac/OSX/Extras.install.py
@@ -0,0 +1,53 @@
+"""Recursively copy a directory but skip undesired files and
+directories (CVS, backup files, pyc files, etc)"""
+
+import sys
+import os
+import shutil
+
+verbose = 1
+debug = 0
+
+def isclean(name):
+ if name == 'CVS': return 0
+ if name == '.cvsignore': return 0
+ if name == '.DS_store': return 0
+ if name.endswith('~'): return 0
+ if name.endswith('.BAK'): return 0
+ if name.endswith('.pyc'): return 0
+ if name.endswith('.pyo'): return 0
+ if name.endswith('.orig'): return 0
+ return 1
+
+def copycleandir(src, dst):
+ for cursrc, dirs, files in os.walk(src):
+ assert cursrc.startswith(src)
+ curdst = dst + cursrc[len(src):]
+ if verbose:
+ print "mkdir", curdst
+ if not debug:
+ if not os.path.exists(curdst):
+ os.makedirs(curdst)
+ for fn in files:
+ if isclean(fn):
+ if verbose:
+ print "copy", os.path.join(cursrc, fn), os.path.join(curdst, fn)
+ if not debug:
+ shutil.copy2(os.path.join(cursrc, fn), os.path.join(curdst, fn))
+ else:
+ if verbose:
+ print "skipfile", os.path.join(cursrc, fn)
+ for i in range(len(dirs)-1, -1, -1):
+ if not isclean(dirs[i]):
+ if verbose:
+ print "skipdir", os.path.join(cursrc, dirs[i])
+ del dirs[i]
+
+def main():
+ if len(sys.argv) != 3:
+ sys.stderr.write("Usage: %s srcdir dstdir\n" % sys.argv[0])
+ sys.exit(1)
+ copycleandir(sys.argv[1], sys.argv[2])
+
+if __name__ == '__main__':
+ main() \ No newline at end of file