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.
This commit is contained in:
Jack Jansen 2003-06-19 22:35:20 +00:00
parent e53be4e855
commit a1b77584f2
4 changed files with 77 additions and 0 deletions

View File

@ -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.

53
Mac/OSX/Extras.install.py Normal file
View File

@ -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()

View File

@ -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

View File

@ -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) \