[Zope-Checkins] CVS: Zope - configure:1.1.4.9 setup.py:NONE zope.py:NONE

Chris McDonough chrism@zope.com
Sun, 29 Sep 2002 17:46:54 -0400


Update of /cvs-repository/Zope
In directory cvs.zope.org:/tmp/cvs-serv12114

Modified Files:
      Tag: chrism-install-branch
	configure 
Removed Files:
      Tag: chrism-install-branch
	setup.py zope.py 
Log Message:
Updates to the chrism-install-branch:

  - Uses distutils (setup.py) to install all software kept in the
    'lib/python' directory.  This means that the setup.py file
    (which has moved into the inst directory) will need to be maintained
    as new packages, files, and directories are added.  This is
    painful, but it's "the right thing".  It is a departure from the
    past inasmuch as (if this branch is merged into the head at some
    point) when people add stuff to the Zope tree, they will need to
    be careful to update the setup.py file as well.  I know this will become
    incredibly problematic.  To make things easier, it might be
    a reasonable thing to autogenerate a setup.py file based on the
    current state of the Zope tree.  But this is not done yet.
    BTW, many thanks to Matt Hamilton for making the incredible setup.py file
    for all Zope packages.

  - No longer copies the build directory wholesale to create a
    ZOPE_HOME.  Instead 'make install' copies a 'skeleton' directory to the 
    target dir using a custom Python installer and writes out
    files that need post-processing (.in files) to places in the
    hierarchy as needed via the Makefile.  This prevents a lot of
    cruft from reaching the target directory (build directories,
    emacs backup files, etc.)

  - Has an improved 'make instance' implementation which also uses
    a skeleton directory and a similar install.

  - Does away with much cruft in the 'inst' directory lefover from
    band-aids that were produced in the past.

Concessions were made to the realities of moving directories in CVS
for this go-around.  It is desirable to move lots of the current
"top-level" directories (import, var, utilities, Extensions, pcgi, etc.)
into the "skeleton" directory for the kind of install strategy implemented
by this branch, but this is not reasonable as we would divorce these 
packages from updates received on the head if were were to do so now.
If we merge this branch into the head, we will do away with the workarounds
and move the directories.
  


=== Zope/configure 1.1.4.8 => 1.1.4.9 ===
--- Zope/configure:1.1.4.8	Mon Sep 16 01:49:42 2002
+++ Zope/configure	Sun Sep 29 17:46:23 2002
@@ -19,6 +19,7 @@
     echo "  --with-python       specify a Python interpreter to use"
     echo "  --prefix            specify an installation path for binary data"
     echo "  --ignore-largefile  ignore large file support warnings"
+    echo "  --ignore-zlib       ignore warnings about zlib"
     echo
     echo " Given no options, configure will search your PATH for a suitable"
     echo " Python interpreter and will use '/usr/local/zope' as a prefix."
@@ -109,6 +110,29 @@
 if [ -z "$FOUND" ]; then
     get_python
 fi
+
+# Zope has a number of directories in its top-level source checkout
+# which should really be treated as subdirectories of two "skeleton"
+# directories which are copied wholesale during the 'make install' and
+# 'makeinstance' steps of the installation process.  The top-level directories
+# which should be subdirs of the 'make install' skeleton directory include
+# 'doc', 'pcgi', 'Extensions', 'utilities' (which should maybe be named 'bin')
+# and 'import'.  The top-level directory which should be a subdir of the
+# 'makeinstance'skeleton directory is 'var'.  It would be nice on this branch
+# to just move each of them into a 'skeleton' subdirectory.
+
+# But since we keep Zope in CVS, and because CVS has pretty fundamental
+# problems with directory moves, it's not a good idea at the moment to move
+# these directories until we're closer to a merge point, as it will become
+# difficult to keep the branch in sync with the Zope head if we perform
+# the moves now.
+
+# We work around this issue by linking top-level directories into an
+# install skeleton directory below.  
+
+# This hack will be removed when we have the go-ahead to merge this branch
+# into the trunk.  At that time, we should actually move these directories to
+# the directories specified by their link targets below.
 
 PYTHON=$FOUND
 # run the Python configurator

=== Removed File Zope/setup.py ===

=== Removed File Zope/zope.py ===