diff options
author | Jack Jansen <jack.jansen@cwi.nl> | 2003-06-19 22:35:20 (GMT) |
---|---|---|
committer | Jack Jansen <jack.jansen@cwi.nl> | 2003-06-19 22:35:20 (GMT) |
commit | a1b77584f213820ee5358b3c354b8f4b9221fd5c (patch) | |
tree | d6aba3a65d5fa0f377dfbb9c406a5205d5277e1f | |
parent | e53be4e8557a5e99e67406c02f07ac290f0cefb6 (diff) | |
download | cpython-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.
-rw-r--r-- | Mac/OSX/Extras.ReadMe.txt | 9 | ||||
-rw-r--r-- | Mac/OSX/Extras.install.py | 53 | ||||
-rw-r--r-- | Mac/OSX/Makefile | 8 | ||||
-rw-r--r-- | Makefile.pre.in | 7 |
4 files changed, 77 insertions, 0 deletions
diff --git a/Mac/OSX/Extras.ReadMe.txt b/Mac/OSX/Extras.ReadMe.txt new file mode 100644 index 0000000..cfe55bd --- /dev/null +++ b/Mac/OSX/Extras.ReadMe.txt @@ -0,0 +1,9 @@ +This folder contains examples of Python usage and useful scripts and tools. + +You should be aware that these are not Macintosh-specific but are shared +among Python on all platforms, so there are some that only run on Windows +or Unix or another platform, and/or make little sense on a Macintosh. + +Some examples can be run from within the PythonIDE, but many will require +that you start them from the command line, or supply command-line arguments +by holding down the "alt" key when double-clicking them. 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 diff --git a/Mac/OSX/Makefile b/Mac/OSX/Makefile index 5b28e02..62f444e 100644 --- a/Mac/OSX/Makefile +++ b/Mac/OSX/Makefile @@ -243,3 +243,11 @@ installunixtools: echo "exec \"$(INSTALLED_PYTHONW)\" \"\$$@\"" >> pythonw.sh $(INSTALL) pythonw.sh $(DESTDIR)$(bindir)/pythonw$(VERSION) $(INSTALL_SYMLINK) pythonw$(VERSION) $(DESTDIR)$(bindir)/pythonw + +installextras: + $(INSTALL) -d $(DESTDIR)$(PYTHONAPPSDIR)/Extras + $(INSTALL) $(srcdir)/Mac/OSX/Extras.ReadMe.txt $(DESTDIR)$(PYTHONAPPSDIR)/Extras/ReadMe + $(BUILDPYTHON) $(srcdir)/Mac/OSX/Extras.install.py $(srcdir)/Demo \ + $(DESTDIR)$(PYTHONAPPSDIR)/Extras/Demo + $(BUILDPYTHON) $(srcdir)/Mac/OSX/Extras.install.py $(srcdir)/Tools \ + $(DESTDIR)$(PYTHONAPPSDIR)/Extras/Tools
\ No newline at end of file diff --git a/Makefile.pre.in b/Makefile.pre.in index c6f191c..01ec10a 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -870,6 +870,13 @@ frameworkinstallunixtools: DIRMODE=$(DIRMODE) FILEMODE=$(FILEMODE) \ srcdir=$(srcdir) builddir=. DESTDIR=$(DESTDIR) +# This installs the Demos and Tools into the applications directory. +# It is not part of a normal frameworkinstall +frameworkinstallextras: + $(MAKE) -f $(srcdir)/Mac/OSX/Makefile installextras \ + BUILDPYTHON=./$(BUILDPYTHON) DIRMODE=$(DIRMODE) FILEMODE=$(FILEMODE) \ + srcdir=$(srcdir) builddir=. DESTDIR=$(DESTDIR) + # This installs a few of the useful scripts in Tools/scripts scriptsinstall: SRCDIR=$(srcdir) $(RUNSHARED) \ |