[Zope-Checkins] SVN: Zope/trunk/ Move in the Zope2.buildout stuff into the trunk

Hanno Schlichting plone at hannosch.info
Sun Feb 8 12:35:05 EST 2009


Log message for revision 96263:
  Move in the Zope2.buildout stuff into the trunk
  

Changed:
  A   Zope/trunk/alltests.cfg
  A   Zope/trunk/bin/
  A   Zope/trunk/buildout.cfg
  D   Zope/trunk/configure
  A   Zope/trunk/configure
  A   Zope/trunk/include/
  _U  Zope/trunk/lib/
  D   Zope/trunk/lib/python/
  D   Zope/trunk/log.ini
  D   Zope/trunk/setup.py
  A   Zope/trunk/setup.py
  D   Zope/trunk/test.py
  A   Zope/trunk/util.py
  A   Zope/trunk/versions-zope2.cfg
  A   Zope/trunk/versions-zope3.cfg

-=-
Copied: Zope/trunk/alltests.cfg (from rev 96256, Zope2.buildout/trunk/alltests.cfg)
===================================================================
--- Zope/trunk/alltests.cfg	                        (rev 0)
+++ Zope/trunk/alltests.cfg	2009-02-08 17:35:05 UTC (rev 96263)
@@ -0,0 +1,81 @@
+# Run tests of all packages that would have their tests run in a Zope-trunk
+# SVN checkout.
+
+[buildout]
+extends = buildout.cfg
+parts += alltests
+
+[alltests]
+recipe = zc.recipe.testrunner<1.1dev
+# The commented packages are present on SVN trunk but not used (downloaded)
+# by Zope2.buildout. If you manage to reduce the dependencies further, feel
+# free to comment out more eggs.
+eggs =
+    ${buildout:eggs}
+    Acquisition
+    DateTime
+    ExtensionClass
+    Persistence
+    RestrictedPython
+    tempstorage
+    zLOG
+    zodbcode
+    zope.annotation
+    zope.broken
+    zope.browser
+    zope.cachedescriptors
+    zope.component
+    zope.configuration
+    zope.container
+    zope.contentprovider
+    zope.contenttype
+    zope.copypastemove
+    zope.datetime
+    zope.deferredimport
+    zope.deprecation
+#    zope.documenttemplate
+    zope.dottedname
+    zope.dublincore
+    zope.error
+    zope.event
+    zope.exceptions
+    zope.formlib
+    zope.hookable
+    zope.i18n
+    zope.i18nmessageid
+    zope.index
+    zope.interface
+    zope.lifecycleevent
+    zope.location
+    zope.minmax
+    zope.modulealias
+    zope.pagetemplate
+    zope.proxy
+    zope.publisher
+#    zope.rdb
+    zope.schema
+    zope.security
+    zope.securitypolicy
+    zope.sendmail
+    zope.sequencesort
+#    zope.server
+    zope.session
+    zope.site
+    zope.size
+    zope.structuredtext
+    zope.tal
+    zope.tales
+    zope.testbrowser
+    zope.thread
+    zope.traversing
+    zope.viewlet
+#    zope.wfmc
+# Fetch undeclared ftests dependencies
+    zope.app.principalannotation
+    zope.app.schema
+    zope.app.securitypolicy
+    zope.app.zcmlfiles
+    zope.app.zptpage
+
+defaults = ['--module', '!^(zope[.]app)[.]']
+environment = test-environment

Copied: Zope/trunk/buildout.cfg (from rev 96258, Zope2.buildout/trunk/buildout.cfg)
===================================================================
--- Zope/trunk/buildout.cfg	                        (rev 0)
+++ Zope/trunk/buildout.cfg	2009-02-08 17:35:05 UTC (rev 96263)
@@ -0,0 +1,45 @@
+[buildout]
+develop =
+    .
+parts =
+    test
+    zopepy
+
+eggs-directory = ${buildout:directory}/eggs
+extends = versions-zope2.cfg
+versions = versions
+unzip = true
+eggs =
+    Zope2
+
+[test]
+recipe = zc.recipe.testrunner<1.1dev
+eggs = ${buildout:eggs}
+environment = test-environment
+
+[test-environment]
+SOFTWARE_HOME = ${buildout:directory}/src
+ZOPE_HOME = ${buildout:directory}
+INSTANCE_HOME = ${buildout:directory}
+
+[omelette]
+recipe = collective.recipe.omelette >= 0.7
+eggs = ${buildout:eggs}
+
+[lib_python]
+recipe = z3c.recipe.runscript
+install-script = bin/create_lib_python.py:create_lib_python
+update-script = bin/create_lib_python.py:create_lib_python
+src-dir = ${omelette:location}
+dst-dir = ${buildout:directory}/lib/python
+skip-names =
+    easy_install.py
+    pkg_resources.py
+    setuptools
+    site.py
+
+[zopepy]
+recipe = zc.recipe.egg
+eggs = ${buildout:eggs}
+interpreter = zopepy
+scripts = zopepy

Deleted: Zope/trunk/configure
===================================================================
--- Zope/trunk/configure	2009-02-08 17:33:00 UTC (rev 96262)
+++ Zope/trunk/configure	2009-02-08 17:35:05 UTC (rev 96263)
@@ -1,208 +0,0 @@
-#!/bin/sh
-
-# Zope configure script
-# $Id$
-
-#####################################################################
-#                    BEGIN EDITABLE PARAMETERS                      #
-#####################################################################
-
-# Place the Zope major version number below.
-ZOPE_VERS=2.12
-
-# Place the optimal target version number for Zope (as returned by sys.version)
-# below
-TARGET="2.4.5"
-
-# Order a list of "acceptable" python version numbers (as returned by
-# sys.version) below in "best" to "worst" order, not including the
-# target version.  Up to six acceptable python versions are allowed.
-# Do not include the target version number in this list!
-ACCEPTABLE="2.4.4"
-
-# provide the executable names for all the acceptable versions
-# (and the target version) below
-EXENAMES="python python2 python2.4"
-
-#####################################################################
-#                    END EDITABLE PARAMETERS                        #
-#####################################################################
-
-# where are we?
-HERE=`dirname $0`
-
-# should we be quiet?
-QUIET=""
-
-usage()
-{
-    echo
-    echo "configure [--help] [--quiet] [--with-python=path] [--prefix=path] "
-    echo "          [--build-base=path] [--ignore-largefile] [--ignore-zlib]"
-    echo "          [--optimize]"
-    echo
-    echo " Creates a Makefile suitable for building and installing Zope"
-    echo
-    echo " Options: "
-    echo "  --help              shows usage and quits"
-    echo "  --quiet             suppress nonessential output"
-    echo "  --with-python       specify a path to a Python interpreter to use"
-    echo "  --prefix            specify an installation path for binary data"
-    echo "  --build-base        specify a temporary path for build files"
-    echo "  --ignore-largefile  ignore large file support warnings"
-    echo "  --ignore-expat      ignore warnings about expat/pyexpat"
-    echo "  --ignore-zlib       ignore warnings about zlib"
-    echo "  --optimize          optimize compiled Python bytecode"
-    echo "  --no-compile        Dont compile Python bytecode"
-    echo
-    echo " Given no options, configure will search your PATH for a suitable"
-    echo " Python interpreter and will use '/opt/Zope-$ZOPE_VERS' as a prefix."
-    echo
-}
-
-# bootstrap ourselves by finding a Python interpreter if necessary
-get_python() {
-    OLDIFS="$IFS"
-    IFS=":"
-    FOUND=""
-    VERSION=""
-    FOUNDLIST=""
-    out "Testing for an acceptable Python interpreter..."
-    out ""
-    for DIR in $PATH; do
-        IFS="$OLDIFS"
-        for EXECUTABLE in $EXENAMES; do
-            FULL="$DIR/$EXECUTABLE"
-            if [ -x "$FULL" -a ! -d "$FULL" ]; then
-                CMD="import string,sys;a=string.split(sys.version)[0]"
-		# Strip trailing + from version number
-		CMD="$CMD;a=(a[-1]=='+')and(a[:-1])or(a);print a"
-                VERSION=`"$FULL" -c "$CMD"`
-                out "  Python version $VERSION found at $FULL"
-                if [ "$VERSION" = "$TARGET" ]; then
-                    FOUND="$FULL"
-                    FOUNDVERSION=$VERSION
-                    break 2
-                else
-                    i=1;
-                    for ACC in $ACCEPTABLE; do
-                        i=`expr $i + 1`
-			for SLOT in $FOUNDLIST; do
-                            if [ $SLOT -eq $i ]; then
-                                # slot "i" already populated.  This means we've
-                                # already found this particular version of
-                                # python.  Continue the for ACC in 
-                                # $ACCEPTABLE loop and don't overwrite the
-                                # one we already found (interpreters first
-                                # on the path win).
-                                continue 2
-                            fi
-                        done
-                        if [ "$VERSION" = "$ACC" ]; then
-                            FOUNDLIST="$FOUNDLIST $i"
-                            eval "FOUND$i=$FULL"
-                            eval "FOUNDVERSION$i=$VERSION"
-                        fi
-                    done
-                fi
-            fi
-        done
-    done
-    if [ "$VERSION" = "$TARGET" ]; then
-        out ""
-        out "  The optimum Python version ($TARGET) was found at $FOUND."
-    elif [ -z "$FOUND1" ] && [ -z "$FOUND2" ] && [ -z "$FOUND3" ] &&
-         [ -z "$FOUND4" ] && [ -z "$FOUND5" ] && [ -z "$FOUND6" ] ; then
-        out ""
-        out "  No suitable Python version found.  You should install"
-        out "  Python version $TARGET before continuing."
-        if [ "$ACCEPTABLE" ]; then
-            out "  Versions $ACCEPTABLE also work, but not as optimally."
-        fi
-        exit 1
-    else
-        if   [ -n "$FOUND1" ]; then
-            FOUND=$FOUND1
-            FOUNDVERSION=$FOUNDVERSION1
-        elif [ -n "$FOUND2" ]; then
-            FOUND=$FOUND2
-            FOUNDVERSION=$FOUNDVERSION2
-        elif [ -n "$FOUND3" ]; then
-            FOUND=$FOUND3
-            FOUNDVERSION=$FOUNDVERSION3
-        elif [ -n "$FOUND4" ]; then
-            FOUND=$FOUND4
-            FOUNDVERSION=$FOUNDVERSION4
-        elif [ -n "$FOUND5" ]; then
-            FOUND=$FOUND5
-            FOUNDVERSION=$FOUNDVERSION5
-        elif [ -n "$FOUND6" ]; then
-            FOUND=$FOUND6
-            FOUNDVERSION=$FOUNDVERSION6
-        fi
-        out ""
-        out "  !! WARNING !! "
-        out "  An acceptable, but non-optimal Python version ($FOUNDVERSION) "
-        out "  was found at '$FOUND'."
-        out "  But consider installing version '$TARGET' before running "
-        out "  'make'.  If this isn't the Python version or interpreter "
-        out "  instance you wish to use, you may specify a Python interpreter"
-        out "  manually by rerunning the ./configure script with the "
-        out "  '--with-python' option."
-    fi
-    out ""
-}
-
-out() {
-    
-    if [ -z "$QUIET" ]; then
-        echo $1
-    fi
-}
-
-NEWOPTS=""
-
-for OPT in $@; do
-    case "$OPT" in
-    --h* | -h*)
-        usage
-        exit 0
-        ;;
-    --with-python=*)
-        # pop this argument from the arglist, it is not valid to
-        # pass this along to the Python configurator.
-        shift;
-        FOUND=`echo $OPT | sed -e 's/--with-python\=//'`
-        # use eval to do tilde expansion below
-        eval "FOUND='$FOUND'"
-        out ""
-        out "Using Python interpreter at $FOUND"
-        ;;
-    --with-python)
-	# in case someone passed in a --with-python without a value,
-        # we raise an error instead of passing it along to configure.py
-        # (which would raise an inscrutable error were it to receive this
-        # option).
-        out "--with-python argument requires an option"
-	exit 1
-        ;;
-    --quiet* | -q*)
-        QUIET="true"
-        NEWOPTS="$NEWOPTS $OPT"
-        ;;
-    *)
-        NEWOPTS="$NEWOPTS $OPT"
-        ;;
-    esac
-done
-
-out ""
-out "Configuring Zope installation"
-out ""
-
-if [ -z "$FOUND" ]; then
-    get_python
-fi
-
-# run the Python configurator
-"$FOUND" "$HERE/inst/configure.py" $NEWOPTS

Copied: Zope/trunk/configure (from rev 96256, Zope2.buildout/trunk/configure)
===================================================================
--- Zope/trunk/configure	                        (rev 0)
+++ Zope/trunk/configure	2009-02-08 17:35:05 UTC (rev 96263)
@@ -0,0 +1,206 @@
+#!/bin/sh
+
+# Zope configure script
+# $Id$
+
+#####################################################################
+#                    BEGIN EDITABLE PARAMETERS                      #
+#####################################################################
+
+# Place the optimal target version number for Zope (as returned by sys.version)
+# below
+TARGET="2.5.4"
+
+# Order a list of "acceptable" python version numbers (as returned by
+# sys.version) below in "best" to "worst" order, not including the
+# target version.  Up to six acceptable python versions are allowed.
+# Do not include the target version number in this list!
+ACCEPTABLE="2.6.1"
+
+# provide the executable names for all the acceptable versions
+# (and the target version) below
+EXENAMES="python python2 python2.5 python2.6"
+
+#####################################################################
+#                    END EDITABLE PARAMETERS                        #
+#####################################################################
+
+# where are we?
+HERE=`dirname $0`
+
+# should we be quiet?
+QUIET=""
+
+usage()
+{
+    echo
+    echo "configure [--help] [--quiet] [--with-python=path] [--prefix=path] "
+    echo "          [--build-base=path] [--ignore-largefile] [--ignore-zlib]"
+    echo "          [--optimize]"
+    echo
+    echo " Creates a Makefile suitable for building and installing Zope"
+    echo
+    echo " Options: "
+    echo "  --help              shows usage and quits"
+    echo "  --quiet             suppress nonessential output"
+    echo "  --with-python       specify a path to a Python interpreter to use"
+    echo "  --prefix            specify an installation path for binary data"
+    echo "  --build-base        specify a temporary path for build files"
+    echo "  --ignore-largefile  ignore large file support warnings"
+    echo "  --ignore-expat      ignore warnings about expat/pyexpat"
+    echo "  --ignore-zlib       ignore warnings about zlib"
+    echo "  --optimize          optimize compiled Python bytecode"
+    echo "  --no-compile        Dont compile Python bytecode"
+    echo
+    echo " Given no options, configure will search your PATH for a suitable"
+    echo " Python interpreter and will use '/opt/Zope-<ZOPE_MAJOR_VERSION>'"
+    echo " as a prefix."
+    echo
+}
+
+# bootstrap ourselves by finding a Python interpreter if necessary
+get_python() {
+    OLDIFS="$IFS"
+    IFS=":"
+    FOUND=""
+    VERSION=""
+    FOUNDLIST=""
+    out "Testing for an acceptable Python interpreter..."
+    out ""
+    for DIR in $PATH; do
+        IFS="$OLDIFS"
+        for EXECUTABLE in $EXENAMES; do
+            FULL="$DIR/$EXECUTABLE"
+            if [ -x "$FULL" -a ! -d "$FULL" ]; then
+                CMD="import string,sys;a=string.split(sys.version)[0]"
+		# Strip trailing + from version number
+		CMD="$CMD;a=(a[-1]=='+')and(a[:-1])or(a);print a"
+                VERSION=`"$FULL" -c "$CMD"`
+                out "  Python version $VERSION found at $FULL"
+                if [ "$VERSION" = "$TARGET" ]; then
+                    FOUND="$FULL"
+                    FOUNDVERSION=$VERSION
+                    break 2
+                else
+                    i=1;
+                    for ACC in $ACCEPTABLE; do
+                        i=`expr $i + 1`
+			for SLOT in $FOUNDLIST; do
+                            if [ $SLOT -eq $i ]; then
+                                # slot "i" already populated.  This means we've
+                                # already found this particular version of
+                                # python.  Continue the for ACC in 
+                                # $ACCEPTABLE loop and don't overwrite the
+                                # one we already found (interpreters first
+                                # on the path win).
+                                continue 2
+                            fi
+                        done
+                        if [ "$VERSION" = "$ACC" ]; then
+                            FOUNDLIST="$FOUNDLIST $i"
+                            eval "FOUND$i=$FULL"
+                            eval "FOUNDVERSION$i=$VERSION"
+                        fi
+                    done
+                fi
+            fi
+        done
+    done
+    if [ "$VERSION" = "$TARGET" ]; then
+        out ""
+        out "  The optimum Python version ($TARGET) was found at $FOUND."
+    elif [ -z "$FOUND1" ] && [ -z "$FOUND2" ] && [ -z "$FOUND3" ] &&
+         [ -z "$FOUND4" ] && [ -z "$FOUND5" ] && [ -z "$FOUND6" ] ; then
+        out ""
+        out "  No suitable Python version found.  You should install"
+        out "  Python version $TARGET before continuing."
+        if [ "$ACCEPTABLE" ]; then
+            out "  Versions $ACCEPTABLE also work, but not as optimally."
+        fi
+        exit 1
+    else
+        if   [ -n "$FOUND1" ]; then
+            FOUND=$FOUND1
+            FOUNDVERSION=$FOUNDVERSION1
+        elif [ -n "$FOUND2" ]; then
+            FOUND=$FOUND2
+            FOUNDVERSION=$FOUNDVERSION2
+        elif [ -n "$FOUND3" ]; then
+            FOUND=$FOUND3
+            FOUNDVERSION=$FOUNDVERSION3
+        elif [ -n "$FOUND4" ]; then
+            FOUND=$FOUND4
+            FOUNDVERSION=$FOUNDVERSION4
+        elif [ -n "$FOUND5" ]; then
+            FOUND=$FOUND5
+            FOUNDVERSION=$FOUNDVERSION5
+        elif [ -n "$FOUND6" ]; then
+            FOUND=$FOUND6
+            FOUNDVERSION=$FOUNDVERSION6
+        fi
+        out ""
+        out "  !! WARNING !! "
+        out "  An acceptable, but non-optimal Python version ($FOUNDVERSION) "
+        out "  was found at '$FOUND'."
+        out "  But consider installing version '$TARGET' before running "
+        out "  'make'.  If this isn't the Python version or interpreter "
+        out "  instance you wish to use, you may specify a Python interpreter"
+        out "  manually by rerunning the ./configure script with the "
+        out "  '--with-python' option."
+    fi
+    out ""
+}
+
+out() {
+    
+    if [ -z "$QUIET" ]; then
+        echo $1
+    fi
+}
+
+NEWOPTS=""
+
+for OPT in $@; do
+    case "$OPT" in
+    --h* | -h*)
+        usage
+        exit 0
+        ;;
+    --with-python=*)
+        # pop this argument from the arglist, it is not valid to
+        # pass this along to the Python configurator.
+        shift;
+        FOUND=`echo $OPT | sed -e 's/--with-python\=//'`
+        # use eval to do tilde expansion below
+        eval "FOUND='$FOUND'"
+        out ""
+        out "Using Python interpreter at $FOUND"
+        ;;
+    --with-python)
+	# in case someone passed in a --with-python without a value,
+        # we raise an error instead of passing it along to configure.py
+        # (which would raise an inscrutable error were it to receive this
+        # option).
+        out "--with-python argument requires an option"
+	exit 1
+        ;;
+    --quiet* | -q*)
+        QUIET="true"
+        NEWOPTS="$NEWOPTS $OPT"
+        ;;
+    *)
+        NEWOPTS="$NEWOPTS $OPT"
+        ;;
+    esac
+done
+
+out ""
+out "Configuring Zope installation"
+out ""
+
+if [ -z "$FOUND" ]; then
+    get_python
+fi
+
+# run the Python configurator
+"$FOUND" "$HERE/inst/configure.py" $NEWOPTS


Property changes on: Zope/trunk/lib
___________________________________________________________________
Added: svn:ignore
   + python*


Deleted: Zope/trunk/log.ini
===================================================================
--- Zope/trunk/log.ini	2009-02-08 17:33:00 UTC (rev 96262)
+++ Zope/trunk/log.ini	2009-02-08 17:35:05 UTC (rev 96263)
@@ -1,32 +0,0 @@
-# This file configures the logging module for the test harness:
-# critical errors are logged to testing.log; everything else is
-# ignored.
-
-# Documentation for the file format is at
-# http://www.red-dove.com/python_logging.html#config
-
-[logger_root]
-level=CRITICAL
-handlers=normal
-
-[handler_normal]
-class=FileHandler
-level=NOTSET
-formatter=common
-args=('testing.log', 'a')
-filename=testing.log
-mode=a
-
-[formatter_common]
-format=------
-       %(asctime)s %(levelname)s %(name)s %(message)s
-datefmt=%Y-%m-%dT%H:%M:%S
-
-[loggers]
-keys=root
-
-[handlers]
-keys=normal
-
-[formatters]
-keys=common

Deleted: Zope/trunk/setup.py
===================================================================
--- Zope/trunk/setup.py	2009-02-08 17:33:00 UTC (rev 96262)
+++ Zope/trunk/setup.py	2009-02-08 17:35:05 UTC (rev 96263)
@@ -1,553 +0,0 @@
-#!/usr/bin/env python2.4
-
-##############################################################################
-#
-# Copyright (c) 2002 Zope Corporation and Contributors. All Rights Reserved.
-#
-# This software is subject to the provisions of the Zope Public License,
-# Version 2.0 (ZPL).  A copy of the ZPL should accompany this distribution.
-# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
-# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
-# FOR A PARTICULAR PURPOSE
-#
-##############################################################################
-
-"""
-Distutils setup for Zope
-
-  In-place building
-
-    This builds extension modules in-place, much like build_extensions.py
-    does.  Use 'setup.py' like this::
-
-      python setup.py build_ext -i
-
-  Installation
-
-    This builds extension modules, compiles python modules, and installs
-    everything needed to support Zope instances in the directory of
-    your choosing.  For example, to use '/usr/local/lib/zope'::
-
-      python setup.py install \
-        --home=/usr/local/lib/zope \
-        --install-platlib=/usr/local/lib/zope \
-        --install-purelib=/usr/local/lib/zope
-"""
-
-import glob
-import os
-import sys
-import shutil
-
-import distutils.core
-
-# Override install_data to install into module directories, and to support
-# globbing on data_files.
-
-from distutils.command.install import install
-from distutils.command.install_data import install_data
-from distutils.util import convert_path
-
-where = os.path.split(__file__)[0]
-sys.path.insert(0, os.path.join(where, 'inst'))
-import versions
-del sys.path[0]
-
-ZOPE_VERSION = '%s%s-%s' % (versions.ZOPE_MAJOR_VERSION,  versions.ZOPE_MINOR_VERSION, versions.VERSION_RELEASE_TAG)
-
-class ZopeInstallData(install_data):
-    def finalize_options(self):
-        self.set_undefined_options('install',
-                                   ('install_purelib', 'install_dir'),
-                                   ('root', 'root'),
-                                   ('force', 'force'),
-                                  )
-
-    def run(self):
-        self.mkpath(self.install_dir)
-        for f in self.data_files:
-            if isinstance(f, str):
-                # it's a simple file, so copy it
-                f = convert_path(f)
-                gl = glob.glob(f)
-                if len(gl) == 0:
-                    raise distutils.core.DistutilsFileError, \
-                          "can't copy '%s': no matching files" % f
-                for g in gl:
-                    if os.path.isfile(g):
-                        if self.warn_dir:
-                            self.warn("setup script did not provide a "
-                                      "directory for '%s' -- installing "
-                                      "right in '%s'" %
-                                      (g, self.install_dir))
-                        (out, _) = self.copy_file(g, self.install_dir)
-                        self.outfiles.append(out)
-            else:
-                # it's a tuple with path to install to and a list of files
-                dir = convert_path(f[0])
-                if not os.path.isabs(dir):
-                    dir = os.path.join(self.install_dir, dir)
-                elif self.root:
-                    dir = change_root(self.root, dir)
-                self.mkpath(dir)
-                for data in f[1]:
-                    data = convert_path(data)
-                    gl = glob.glob(data)
-                    if len(gl) == 0:
-                        raise distutils.core.DistutilsFileError, \
-                              "can't copy '%s': no matching files" % data
-                    for g in gl:
-                        if os.path.isfile(g):
-                            (out, _) = self.copy_file(g, dir)
-                            self.outfiles.append(out)
-
-# We create a custom "install scheme" that works the same way on all
-# platforms.  We do this in order to prevent distutils from trying to
-# guess where to put our files on a per-platform basis.
-
-ZOPE_INSTALL_SCHEME = {
-    'purelib': '$base/lib/python',
-    'platlib': '$base/lib/python',
-    'headers': '$base/lib/python',
-    'scripts': '$base/bin',
-    'data'   : '$base/lib/python',
-    }
-
-class ZopeInstall(install):
-    # give distutils install step knowledge about build file placement options
-    user_options = install.user_options + [
-        ('build-base=', None, 'base directory for build library'),
-        ('build-lib=', None, 'build directory for all distribution'),
-        ('build-scripts=', None, 'build directory for scripts'),
-        ('build-temp=', None, 'temporary build directory'),
-        ]
-    build_scripts = None
-    build_temp = None
-
-    def run(self):
-        """ Override run to pass along build location info so
-        we can use custom build directories """
-        build = self.distribution.get_command_obj('build')
-        build.build_base = self.build_base
-        build.build_lib = self.build_lib
-        build.build_scripts = self.build_scripts
-        build.build_temp = self.build_temp
-
-        install.run(self)
-
-    def select_scheme(self, name):
-        """
-        Override the default platform installation schemes, ignoring whatever
-        'name' is passed in.  For our purposes, we want to put all library,
-        header, and data into [install_base]/lib/python.  Comment
-        this method out to achieve distutils-standard platform-specific
-        behavior for 'setup.py install'.  This is most useful if you set the
-        [install-base] by using the '--prefix' or '--home' flags on the
-        setup.py install command line.  Otherwise, all Zope software
-        will probably be installed to your Python's 'lib/python' directory.
-        """
-        scheme = ZOPE_INSTALL_SCHEME
-        import distutils.command.install
-        for key in distutils.command.install.SCHEME_KEYS:
-            attrname = 'install_' + key
-            if getattr(self, attrname) is None:
-                setattr(self, attrname, scheme[key])
-
-class ZopeDistribution(distutils.core.Distribution):
-    def __init__(self, attrs):
-        distutils.core.Distribution.__init__(self, attrs)
-        self.cmdclass["install"] = ZopeInstall
-        self.cmdclass["install_data"] = ZopeInstallData
-
-# presumes this script lives in the base dir
-BASE_DIR=os.path.dirname(os.path.abspath(sys.argv[0]))
-
-AUTHOR = 'Zope Corporation and Contributors'
-
-# Most modules are in lib/python in the source distribution
-PACKAGES_ROOT = os.path.join(BASE_DIR, 'lib', 'python')
-os.chdir(PACKAGES_ROOT)
-
-
-# Most of this is ripped from the Zope 3 setup.py.
-
-from distutils import dir_util
-from distutils.command.build import build as buildcmd
-from distutils.command.build_ext import build_ext
-from distutils.command.install_lib import install_lib as installcmd
-from distutils.core import setup
-from distutils.dist import Distribution
-from distutils.extension import Extension
-
-
-# This class serves multiple purposes.  It walks the file system looking for
-# auxiliary files that distutils doesn't install properly, and it actually
-# copies those files (when hooked into by distutils).  It also walks the file
-# system looking for candidate packages for distutils to install as normal.
-# The key here is that the package must have an __init__.py file.
-class Finder:
-    def __init__(self, ignore, prefix):
-        self._files = []
-        self._pkgs = {}
-        self._ignore = ignore
-        # We're finding packages in lib/python in the source dir, but we're
-        # copying them directly under build/lib.<plat>.  So we need to lop off
-        # the prefix when calculating the package names from the file names.
-        self._plen = len(prefix) + 1
-
-    def visit(self, dir, files):
-        # First see if this is one of the packages we want to add, or if
-        # we're really skipping this package.
-        if '__init__.py' in files:
-            aspkg = dir[self._plen:].replace(os.sep, '.')
-            self._pkgs[aspkg] = True
-            ignore = ('.py',) + self._ignore
-        else:
-            ignore = self._ignore
-        # Add any extra files we're interested in
-        for file in files:
-            base, ext = os.path.splitext(file)
-            if ext not in ignore:
-                self._files.append(os.path.join(dir, file))
-
-    def copy_files(self, cmd, outputbase):
-        for file in self._files:
-            dest = os.path.join(outputbase, file[self._plen:])
-            # Make sure the destination directory exists
-            dir = os.path.dirname(dest)
-            if not os.path.exists(dir):
-                dir_util.mkpath(dir)
-            cmd.copy_file(file, dest)
-
-    def get_packages(self):
-        return self._pkgs.keys()
-
-def remove_stale_bytecode(arg, dirname, names):
-    names = map(os.path.normcase, names)
-    for name in names:
-        if name.endswith(".pyc") or name.endswith(".pyo"):
-            srcname = name[:-1]
-            if srcname not in names:
-                fullname = os.path.join(dirname, name)
-                print "Removing stale bytecode file", fullname
-                os.unlink(fullname)
-#
-#   Aliases for directories containing headers, to allow for Zope3 extensions
-#   to include headers via stuff like '#include "zope.proxy/proxy.h"
-#
-HEADER_PATH_ALIASES = {'zope.proxy': 'zope/proxy'}
-
-# Create the finder instance, which will be used in lots of places.  `finder'
-# is the global we're most interested in.
-IGNORE_EXTS = ('.pyc', '.pyo', '.c', '.h', '.so', '.o', '.dll', '.lib', '.obj', '.cfg')
-finder = Finder(IGNORE_EXTS, PACKAGES_ROOT)
-
-for dirpath, dirnames, filenames in os.walk(PACKAGES_ROOT):
-    if not '.svn' in dirpath:
-        finder.visit(dirpath, filenames)
-packages = finder.get_packages()
-
-# Distutils hook classes
-class MyBuilder(buildcmd):
-    def run(self):
-        os.path.walk(os.curdir, remove_stale_bytecode, None)
-        buildcmd.run(self)
-        finder.copy_files(self, self.build_lib)
-
-class MyExtBuilder(build_ext):
-    # Override the default build_ext to remove stale bytecodes.
-    # Technically, removing bytecode has nothing to do with
-    # building extensions, but Zope's the build_ext -i variant
-    # is used to build Zope in place.
-    #
-    # Note that we also create make a copy for the oddball include
-    # directories used by some Zope3 extensions.
-    def run(self):
-        os.path.walk(os.curdir, remove_stale_bytecode, None)
-        for k, v in HEADER_PATH_ALIASES.items():
-            if os.path.exists(k):
-                shutil.rmtree(k)
-            ignore = list(IGNORE_EXTS)
-            ignore.remove('.h')
-            f = Finder(tuple(ignore), v)
-            for dirpath, dirnames, filenames in os.walk(v):
-                if not '.svn' in dirpath:
-                    f.visit(dirpath, filenames)
-            f.copy_files(self, k)
-        build_ext.run(self)
-
-class MyLibInstaller(installcmd):
-    def run(self):
-        installcmd.run(self)
-        finder.copy_files(self, self.install_dir)
-
-class MyDistribution(Distribution):
-    # To control the selection of MyLibInstaller and MyPyBuilder, we
-    # have to set it into the cmdclass instance variable, set in
-    # Distribution.__init__().
-    def __init__(self, *attrs):
-        Distribution.__init__(self, *attrs)
-        self.cmdclass['install'] = ZopeInstall
-        self.cmdclass['build'] = MyBuilder
-        self.cmdclass['build_ext'] = MyExtBuilder
-        self.cmdclass['install_lib'] = MyLibInstaller
-
-
-EXTENSIONCLASS_INCLUDEDIRS = ['ExtensionClass', '.']
-
-# All extension modules must be listed here.
-ext_modules = [
-
-    # AccessControl
-    Extension(name='AccessControl.cAccessControl',
-              include_dirs=EXTENSIONCLASS_INCLUDEDIRS+['Acquisition'],
-              sources=['AccessControl/cAccessControl.c'],
-              depends=['ExtensionClass/ExtensionClass.h',
-                       'ExtensionClass/pickle/pickle.c',
-                       'Acquisition/Acquisition.h']),
-
-
-    # DocumentTemplate
-    Extension(name='DocumentTemplate.cDocumentTemplate',
-              include_dirs=EXTENSIONCLASS_INCLUDEDIRS,
-              sources=['DocumentTemplate/cDocumentTemplate.c']),
-
-    # ExtensionClass
-    Extension(name='ExtensionClass._ExtensionClass',
-              include_dirs=EXTENSIONCLASS_INCLUDEDIRS,
-              sources=["ExtensionClass/_ExtensionClass.c"],
-              depends=["ExtensionClass/ExtensionClass.h"]),
-    Extension(name='Acquisition._Acquisition',
-              include_dirs=EXTENSIONCLASS_INCLUDEDIRS,
-              sources=["Acquisition/_Acquisition.c"],
-              depends=["ExtensionClass/ExtensionClass.h",
-                       "Acquisition/Acquisition.h"]),
-    Extension(name='MethodObject._MethodObject',
-              include_dirs=EXTENSIONCLASS_INCLUDEDIRS,
-              sources=["MethodObject/_MethodObject.c"],
-              depends=["ExtensionClass/ExtensionClass.h"]),
-    Extension(name='MultiMapping._MultiMapping',
-              include_dirs=EXTENSIONCLASS_INCLUDEDIRS,
-              sources=["MultiMapping/_MultiMapping.c"],
-              depends=["ExtensionClass/ExtensionClass.h"]),
-    Extension(name='ThreadLock._ThreadLock',
-              include_dirs=EXTENSIONCLASS_INCLUDEDIRS,
-              sources=["ThreadLock/_ThreadLock.c"],
-              depends=["ExtensionClass/ExtensionClass.h"]),
-    Extension(name='Missing._Missing',
-              include_dirs=EXTENSIONCLASS_INCLUDEDIRS,
-              sources=["Missing/_Missing.c"],
-              depends=["ExtensionClass/ExtensionClass.h"]),
-    Extension(name='Record._Record',
-              include_dirs=EXTENSIONCLASS_INCLUDEDIRS,
-              sources=["Record/_Record.c"],
-              depends=["ExtensionClass/ExtensionClass.h"]),
-    Extension(name='ComputedAttribute._ComputedAttribute',
-              include_dirs=EXTENSIONCLASS_INCLUDEDIRS,
-              sources=["ComputedAttribute/_ComputedAttribute.c"],
-              depends=["ExtensionClass/ExtensionClass.h"]),
-
-    # initgroups
-    Extension(name='initgroups._initgroups',
-              sources=['initgroups/_initgroups.c']),
-
-    # indexes
-    Extension(name='Products.PluginIndexes.TextIndex.Splitter.ZopeSplitter.ZopeSplitter',
-              sources=['Products/PluginIndexes/TextIndex/Splitter/ZopeSplitter/src/ZopeSplitter.c']),
-    Extension(name='Products.PluginIndexes.TextIndex.Splitter.ISO_8859_1_Splitter.ISO_8859_1_Splitter',
-              sources=['Products/PluginIndexes/TextIndex/Splitter/ISO_8859_1_Splitter/src/ISO_8859_1_Splitter.c']),
-    Extension(name='Products.PluginIndexes.TextIndex.Splitter.UnicodeSplitter.UnicodeSplitter',
-              sources=['Products/PluginIndexes/TextIndex/Splitter/UnicodeSplitter/src/UnicodeSplitter.c']),
-    Extension(name='Products.ZCTextIndex.stopper',
-              sources=['Products/ZCTextIndex/stopper.c']),
-    Extension(name='Products.ZCTextIndex.okascore',
-              sources=['Products/ZCTextIndex/okascore.c']),
-
-    #ZODB
-    Extension(name = 'persistent.cPersistence',
-              include_dirs = ['persistent'],
-              sources= ['persistent/cPersistence.c',
-                        'persistent/ring.c'],
-              depends = ['persistent/cPersistence.h',
-                         'persistent/ring.h',
-                         'persistent/ring.c']
-              ),
-    Extension(name = 'Persistence._Persistence',
-              include_dirs = ['.', 'persistent', 'ExtensionClass'],
-              sources = ['Persistence/_Persistence.c'],
-              depends = ['persistent/cPersistence.h',
-                         'ExtensionClass/ExtensionClass.h']
-              ),
-    Extension(name = 'persistent.cPickleCache',
-              include_dirs = ['persistent'],
-              sources= ['persistent/cPickleCache.c',
-                        'persistent/ring.c'],
-              depends = ['persistent/cPersistence.h',
-                         'persistent/ring.h',
-                         'persistent/ring.c']
-              ),
-    Extension(name = 'persistent.TimeStamp',
-              sources= ['persistent/TimeStamp.c']
-              ),
-
-    #zope
-    Extension("zope.proxy._zope_proxy_proxy",
-              ["zope/proxy/_zope_proxy_proxy.c"],
-              include_dirs = [".", "zope/proxy"],
-              depends = ["zope/proxy/proxy.h"]),
-
-    Extension("zope.security._proxy", ["zope/security/_proxy.c"],
-              include_dirs = [".", "zope/proxy"],
-              depends = ["zope/proxy/proxy.h"]),
-
-    Extension("zope.security._zope_security_checker",
-              ["zope/security/_zope_security_checker.c"],
-              include_dirs = [],
-              depends = []),
-
-    Extension("zope.interface._zope_interface_coptimizations",
-              ["zope/interface/_zope_interface_coptimizations.c"]),
-
-    Extension("zope.i18nmessageid._zope_i18nmessageid_message",
-              ["zope/i18nmessageid/_zope_i18nmessageid_message.c"]),
-
-    Extension("zope.hookable._zope_hookable",
-              ["zope/hookable/_zope_hookable.c"]),
-
-    Extension("zope.container._zope_container_contained",
-              ["zope/container/_zope_container_contained.c"],
-              include_dirs = [".",
-                              "persistent",
-                              "zope/proxy",
-                              "zope/container"],
-              depends = [
-                 "persistent/cPersistence.h",
-                 "zope/proxy/_zope_proxy_proxy.c",
-                 ]),
-
-    ]
-
-# BTree extension modules (code borrowed from ZODB/setup.py)
-
-# Include directories for C extensions
-include = ['.']
-
-# Set up dependencies for the BTrees package
-base_btrees_depends = [
-    "BTrees/BTreeItemsTemplate.c",
-    "BTrees/BTreeModuleTemplate.c",
-    "BTrees/BTreeTemplate.c",
-    "BTrees/BucketTemplate.c",
-    "BTrees/MergeTemplate.c",
-    "BTrees/SetOpTemplate.c",
-    "BTrees/SetTemplate.c",
-    "BTrees/TreeSetTemplate.c",
-    "BTrees/sorters.c",
-    "persistent/cPersistence.h",
-    ]
-
-_flavors = {"O": "object", "I": "int", "F": "float", 'L': 'int'}
-
-KEY_H = "BTrees/%skeymacros.h"
-VALUE_H = "BTrees/%svaluemacros.h"
-
-def BTreeExtension(flavor):
-    key = flavor[0]
-    value = flavor[1]
-    name = "BTrees._%sBTree" % flavor
-    sources = ["BTrees/_%sBTree.c" % flavor]
-    kwargs = {"include_dirs": include}
-    if flavor != "fs":
-        kwargs["depends"] = (base_btrees_depends + [KEY_H % _flavors[key],
-                                                    VALUE_H % _flavors[value]])
-    else:
-        kwargs["depends"] = base_btrees_depends
-    if key != "O":
-        kwargs["define_macros"] = [('EXCLUDE_INTSET_SUPPORT', None)]
-    return Extension(name, sources, **kwargs)
-
-ext_modules += [BTreeExtension(flavor)
-        for flavor in ("OO", "IO", "OI", "II", "IF",
-                       "fs", "LO", "OL", "LL", "LF",
-                       )]
-
-
-# We're using the module docstring as the distutils descriptions.
-doclines = __doc__.split("\n")
-
-setup(name='Zope',
-      author=AUTHOR,
-      version="2.12.0-dev",
-      maintainer="Zope Corporation",
-      maintainer_email="zope-dev at zope.org",
-      url = "http://www.zope.org/",
-      ext_modules = ext_modules,
-      license = "http://www.zope.org/Resources/ZPL",
-      platforms = ["any"],
-      description = doclines[0],
-      long_description = "\n".join(doclines[2:]),
-      packages = packages,
-      distclass = MyDistribution,
-      )
-
-# The rest of these modules live in the root of the source tree
-os.chdir(BASE_DIR)
-
-IGNORE_NAMES = (
-    'CVS', '.svn', # Revision Control Directories
-    )
-
-def skel_visit(skel, dirname, names):
-    for ignore in IGNORE_NAMES:
-        if ignore in names:
-            names.remove(ignore)
-    L = []
-    for name in names:
-        if os.path.isfile(os.path.join(dirname, name)):
-            L.append("%s/%s" % (dirname, name))
-    skel.append(("../../" + dirname, L))
-
-installed_data_files = [
-    ["../../doc", ['doc/*.txt']],
-    ["../../bin", ['utilities/README.txt']],
-    ]
-
-os.path.walk("skel", skel_visit, installed_data_files)
-
-setup(
-    name='Zope',
-    author=AUTHOR,
-
-    data_files=installed_data_files,
-    scripts=["utilities/mkzeoinstance.py",
-             "utilities/mkzopeinstance.py",
-             "utilities/check_catalog.py",
-             "utilities/load_site.py",
-             "utilities/requestprofiler.py",
-             "utilities/zpasswd.py",
-             "utilities/copyzopeskel.py",
-             "utilities/reindex_catalog.py",
-             "utilities/compilezpy.py",
-             "utilities/decompilezpy.py",
-             "utilities/ZODBTools/analyze.py",
-             "utilities/ZODBTools/checkbtrees.py",
-             "utilities/ZODBTools/fsdump.py",
-             "utilities/ZODBTools/fsrefs.py" ,
-             "utilities/ZODBTools/fstail.py",
-             "utilities/ZODBTools/fstest.py",
-             "utilities/ZODBTools/migrate.py",
-             "utilities/ZODBTools/netspace.py",
-             "utilities/ZODBTools/zodbload.py",
-             "utilities/ZODBTools/repozo.py",
-             "utilities/ZODBTools/space.py",
-             "lib/python/ZEO/scripts/timeout.py",
-             "lib/python/ZEO/scripts/parsezeolog.py",
-             "lib/python/ZEO/scripts/zeopack.py",
-             "lib/python/ZEO/scripts/zeoqueue.py",
-             "lib/python/ZEO/scripts/zeoreplay.py",
-             "lib/python/ZEO/scripts/zeoserverlog.py",
-             "lib/python/ZEO/scripts/zeoup.py",
-             "test.py"],
-    distclass=ZopeDistribution,
-    )

Copied: Zope/trunk/setup.py (from rev 96256, Zope2.buildout/trunk/setup.py)
===================================================================
--- Zope/trunk/setup.py	                        (rev 0)
+++ Zope/trunk/setup.py	2009-02-08 17:35:05 UTC (rev 96263)
@@ -0,0 +1,264 @@
+##############################################################################
+#
+# Copyright (c) 2007 Zope Corporation and Contributors.
+# All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.1 (ZPL).  A copy of the ZPL should accompany this distribution.
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
+# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
+# FOR A PARTICULAR PURPOSE.
+#
+##############################################################################
+"""Setup for the Acquisition egg package
+"""
+from setuptools import setup, find_packages, Extension
+
+EXTENSIONCLASS_INCLUDEDIRS = ['include', 'src']
+
+from util import getVersionForPackage
+def getPackages(packages):
+    """ Return a list of egg names together with their
+        version specs according to the version-zopeX.cfg
+        files.
+    """
+    result = list()
+    for package in packages:
+        if ' ' in package:
+            package = package[:package.find(' ')]
+        version = getVersionForPackage(package)
+        result.append('%s==%s' % (package, version))
+    return result
+
+
+setup(name='Zope2',
+      version = '2.12.dev',
+      url='http://www.zope.org',
+      license='ZPL 2.1',
+      description='Zope2 application server / web framework',
+      author='Zope Corporation and Contributors',
+      author_email='zope-dev at zope.org',
+      long_description='',
+      
+      packages=find_packages('src'),
+      package_dir={'': 'src'},
+
+      data_files=[
+        ('skel', ['skel/README.txt']),
+        ('skel/bin', ['skel/bin/runzope.bat.in',
+                      'skel/bin/runzope.in',
+                      'skel/bin/zopectl.bat.in',
+                      'skel/bin/zopectl.in',
+                      'skel/bin/zopeservice.py.in',
+                     ]),
+        ('skel/etc', ['skel/etc/site.zcml',
+                      'skel/etc/zope.conf.in',
+                     ]),
+        ('skel/etc/package-includes', []),
+        ('skel/Extensions', ['skel/Extensions/README.txt']),
+        ('skel/import', ['skel/import/README.txt',
+                         'skel/import/ZopeTutorialExamples.zexp',
+                        ]),
+        ('skel/lib/python', ['skel/lib/python/README.txt.in' ]),
+        ('skel/log', ['skel/log/README.txt']),
+        ('skel/Products', ['skel/Products/__init__.py',
+                           'skel/Products/README.txt',
+                          ]),
+        ('skel/var', ['skel/var/README.txt']),
+      ],
+
+      ext_modules=[
+
+        # AccessControl
+        Extension(
+              name='AccessControl.cAccessControl',
+              include_dirs=EXTENSIONCLASS_INCLUDEDIRS,
+              sources=['src/AccessControl/cAccessControl.c'],
+              depends=['include/ExtensionClass/ExtensionClass.h',
+                       'include/ExtensionClass/pickle/pickle.c',
+                       'include/Acquisition/Acquisition.h']),
+
+        # DocumentTemplate
+        Extension(
+              name='DocumentTemplate.cDocumentTemplate',
+              include_dirs=EXTENSIONCLASS_INCLUDEDIRS,
+              sources=['src/DocumentTemplate/cDocumentTemplate.c']),
+
+        Extension(
+              name='MultiMapping._MultiMapping',
+              include_dirs=EXTENSIONCLASS_INCLUDEDIRS,
+              sources=["src/MultiMapping/_MultiMapping.c"],
+              depends=["include/ExtensionClass/ExtensionClass.h"]),
+        Extension(
+              name='ThreadLock._ThreadLock',
+              include_dirs=EXTENSIONCLASS_INCLUDEDIRS,
+              sources=["src/ThreadLock/_ThreadLock.c"],
+              depends=["include/ExtensionClass/ExtensionClass.h"]),
+        Extension(
+              name='Missing._Missing',
+              include_dirs=EXTENSIONCLASS_INCLUDEDIRS,
+              sources=["src/Missing/_Missing.c"],
+              depends=["include/ExtensionClass/ExtensionClass.h"]),
+        Extension(
+              name='Record._Record',
+              include_dirs=EXTENSIONCLASS_INCLUDEDIRS,
+              sources=["src/Record/_Record.c"],
+              depends=["include/ExtensionClass/ExtensionClass.h"]),
+
+        # initgroups
+        Extension(
+              name='initgroups._initgroups',
+              sources=['src/initgroups/_initgroups.c']),
+
+        # indexes
+        Extension(
+              name='Products.PluginIndexes.TextIndex.Splitter.'
+                   'ZopeSplitter.ZopeSplitter',
+              sources=['src/Products/PluginIndexes/TextIndex/Splitter/'
+                       'ZopeSplitter/src/ZopeSplitter.c']),
+        Extension(
+              name='Products.PluginIndexes.TextIndex.Splitter.'
+                   'ISO_8859_1_Splitter.ISO_8859_1_Splitter',
+              sources=['src/Products/PluginIndexes/TextIndex/Splitter/'
+                       'ISO_8859_1_Splitter/src/ISO_8859_1_Splitter.c']),
+        Extension(
+              name='Products.PluginIndexes.TextIndex.Splitter.'
+                   'UnicodeSplitter.UnicodeSplitter',
+              sources=['src/Products/PluginIndexes/TextIndex/Splitter/'
+                       'UnicodeSplitter/src/UnicodeSplitter.c']),
+        Extension(
+              name='Products.ZCTextIndex.stopper',
+              sources=['src/Products/ZCTextIndex/stopper.c']),
+        Extension(
+              name='Products.ZCTextIndex.okascore',
+              sources=['src/Products/ZCTextIndex/okascore.c']),
+
+      ],
+
+      install_requires=getPackages([
+        'Acquisition',
+        'DateTime',
+        'docutils',
+        'ExtensionClass',
+        'Persistence',
+        'pytz',
+        'RestrictedPython',
+        'tempstorage',
+        'ZConfig',
+        'zLOG',
+        'zdaemon',
+        'ZODB3',
+        'zodbcode',
+        'zope.component',
+        'zope.configuration',
+        'zope.contentprovider',
+        'zope.contenttype',
+        'zope.deferredimport',
+        'zope.event',
+        'zope.exceptions',
+        'zope.formlib',
+        'zope.i18n [zcml]',
+        'zope.i18nmessageid',
+        'zope.interface',
+        'zope.lifecycleevent',
+        'zope.location',
+        'zope.pagetemplate',
+        'zope.proxy',
+        'zope.publisher',
+        'zope.schema',
+        'zope.security',
+        'zope.sendmail',
+        'zope.sequencesort',
+        'zope.size',
+        'zope.structuredtext',
+        'zope.tal',
+        'zope.tales',
+        'zope.testbrowser',
+        'zope.testing',
+        'zope.traversing',
+        'zope.viewlet',
+        'zope.app.component',
+        'zope.app.container',
+        'zope.app.form',
+        'zope.app.locales',
+        'zope.app.pagetemplate',
+        'zope.app.publication',
+        'zope.app.publisher',
+        'zope.app.schema',
+        'zope.app.testing',
+      ]),
+
+      extras_require = dict(
+        zope_app = getPackages([
+          'zope.annotation',
+          'zope.cachedescriptors',
+          'zope.copypastemove',
+          'zope.datetime',
+          'zope.decorator',
+          'zope.deprecation',
+          'zope.documenttemplate',
+          'zope.dottedname',
+          'zope.dublincore',
+          'zope.error',
+          'zope.filerepresentation',
+          'zope.hookable',
+          'zope.index',
+          'zope.minmax',
+          'zope.modulealias',
+          'zope.rdb',
+          'zope.securitypolicy',
+          'zope.server',
+          'zope.session',
+          'zope.thread',
+          'zope.wfmc',
+          'zope.app.annotation',
+          'zope.app.apidoc',
+          'zope.app.applicationcontrol',
+          'zope.app.appsetup',
+          'zope.app.authentication',
+          'zope.app.basicskin',
+          'zope.app.broken',
+          'zope.app.cache',
+          'zope.app.content',
+          'zope.app.debug',
+          'zope.app.dependable',
+          'zope.app.error',
+          'zope.app.exception',
+          'zope.app.file',
+          'zope.app.folder',
+          'zope.app.generations',
+          'zope.app.http',
+          'zope.app.i18n',
+          'zope.app.interface',
+          'zope.app.intid',
+          'zope.app.keyreference',
+          'zope.app.layers',
+          'zope.app.onlinehelp',
+          'zope.app.pluggableauth',
+          'zope.app.preference',
+          'zope.app.preview',
+          'zope.app.principalannotation',
+          'zope.app.renderer',
+          'zope.app.rotterdam',
+          'zope.app.security',
+          'zope.app.securitypolicy',
+          'zope.app.session',
+          'zope.app.skins',
+          'zope.app.sqlscript',
+          'zope.app.traversing',
+          'zope.app.tree',
+          'zope.app.undo',
+          'zope.app.wfmc',
+          'zope.app.wsgi',
+          'zope.app.xmlrpcintrospection',
+          'zope.app.zapi',
+          'zope.app.zcmlfiles',
+          'zope.app.zopeappgenerations',
+          'zope.app.zptpage',
+          ]),
+      ),
+
+      include_package_data=True,
+      zip_safe=False,
+      )

Deleted: Zope/trunk/test.py
===================================================================
--- Zope/trunk/test.py	2009-02-08 17:33:00 UTC (rev 96262)
+++ Zope/trunk/test.py	2009-02-08 17:35:05 UTC (rev 96263)
@@ -1,127 +0,0 @@
-#!/usr/bin/env python
-##############################################################################
-#
-# Copyright (c) 2004 Zope Corporation and Contributors.
-# All Rights Reserved.
-#
-# This software is subject to the provisions of the Zope Public License,
-# Version 2.1 (ZPL).  A copy of the ZPL should accompany this distribution.
-# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
-# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
-# FOR A PARTICULAR PURPOSE.
-#
-##############################################################################
-"""Zope 2 test script
-
-see zope.testing testrunner.txt
-
-$Id: test.py 33303 2005-07-13 22:28:33Z jim $
-"""
-
-import os.path, sys
-
-# Remove script directory from path:
-scriptdir = os.path.realpath(os.path.dirname(sys.argv[0]))
-sys.path[:] = [p for p in sys.path if os.path.realpath(p) != scriptdir]
-
-shome = os.environ.get('SOFTWARE_HOME')
-zhome = os.environ.get('ZOPE_HOME')
-ihome = os.environ.get('INSTANCE_HOME')
-
-if zhome:
-    zhome = os.path.realpath(zhome)
-    if shome:
-        shome = os.path.realpath(shome)
-    else:
-        shome = os.path.join(zhome, 'lib', 'python')
-elif shome:
-    shome = os.path.realpath(shome)
-    zhome = os.path.dirname(os.path.dirname(shome))
-elif ihome:
-    print >> sys.stderr, '''
-    If INSTANCE_HOME is set, then at least one of SOFTWARE_HOME or ZOPE_HOME
-    must be set
-    '''
-else:
-    # No zope home, derive it from script directory:
-    # (test.py lives in either ZOPE_HOME or ZOPE_HOME/bin)
-    parentdir, lastpart = os.path.split(scriptdir)
-    if lastpart == 'bin':
-        zhome = parentdir
-    else:
-        zhome = scriptdir
-    shome = os.path.join(zhome, 'lib', 'python')
-
-# add SOFTWARE_HOME to sys.path, but only if Zope isn't already available
-try:
-    import Zope2
-except ImportError:
-    sys.path.insert(0, shome)
-
-defaults = '--tests-pattern ^tests$ -v'.split()
-defaults += ['-m',
-             '!^('
-             'ZConfig'
-             '|'
-             'BTrees'
-             '|'
-             'persistent'
-             '|'
-             'ThreadedAsync'
-             '|'
-             'transaction'
-             '|'
-             'ZEO'
-             '|'
-             'ZODB'
-             '|'
-             'ZopeUndo'
-             '|'
-             'zdaemon'
-             '|'
-             'zope[.]testing'
-             '|'
-             'zope[.]app'
-             ')[.]']
-
-# The paste.txt doctest relies on zope.publisher being installed as egg
-defaults += ['-t', '!/zope/publisher.*/paste[.]txt']
-
-if ihome:
-    ihome = os.path.abspath(ihome)
-    defaults += ['--path', os.path.join(ihome, 'lib', 'python')]
-    products = os.path.join(ihome, 'Products')
-    if os.path.exists(products):
-        defaults += ['--package-path', products, 'Products']
-else:
-    defaults += ['--test-path', shome]
-
-from zope.testing.testrunner import options
-
-def load_config_file(option, opt, config_file, *ignored):
-    config_file = os.path.abspath(config_file)
-    print "Parsing %s" % config_file
-    import Zope2
-    Zope2.configure(config_file)
-
-options.setup.add_option(
-    '--config-file', action="callback", type="string", dest='config_file',
-    callback=load_config_file,
-    help="""\
-Initialize Zope with the given configuration file.
-""")
-
-def filter_warnings(option, opt, *ignored):
-    import warnings
-    warnings.simplefilter('ignore', Warning, append=True)
-
-options.other.add_option(
-    '--nowarnings', action="callback", callback=filter_warnings,
-    help="""\
-Install a filter to suppress warnings emitted by code.
-""")
-
-from zope.testing import testrunner
-
-sys.exit(testrunner.run(defaults))

Copied: Zope/trunk/util.py (from rev 96256, Zope2.buildout/trunk/util.py)
===================================================================
--- Zope/trunk/util.py	                        (rev 0)
+++ Zope/trunk/util.py	2009-02-08 17:35:05 UTC (rev 96263)
@@ -0,0 +1,12 @@
+from ConfigParser import ConfigParser
+CP = ConfigParser()
+CP.read(('versions-zope3.cfg', 'versions-zope2.cfg'))
+
+def getVersionForPackage(package):
+    """ Return the version for a package (used in setup.py) """
+    return CP.get('versions', package)
+
+if __name__ == '__main__':
+    for package in ('ZODB3', 'pytz', 'does.not.exisit'):
+        print package, getVersionForPackage(package)
+

Copied: Zope/trunk/versions-zope2.cfg (from rev 96256, Zope2.buildout/trunk/versions-zope2.cfg)
===================================================================
--- Zope/trunk/versions-zope2.cfg	                        (rev 0)
+++ Zope/trunk/versions-zope2.cfg	2009-02-08 17:35:05 UTC (rev 96263)
@@ -0,0 +1,69 @@
+[buildout]
+extends = versions-zope3.cfg
+versions = versions
+
+[versions]
+zc.buildout =
+zc.recipe.egg =
+Acquisition = 2.12.0a1
+DateTime = 2.11.2
+ExtensionClass = 2.11.1
+Persistence = 2.11.1
+RestrictedPython = 3.4.3
+tempstorage = 2.11.1
+zLOG = 2.11.1
+ZODB3 = 3.8.1
+zc.lockfile = 1.0
+transaction = 1.0a1
+ClientForm = 0.2.10
+ZConfig = 2.6.1
+docutils = 0.4
+# docutils = 0.5 - this generates test failures for reStructuredText
+mechanize = 0.1.10
+pytz = 2009a
+zope.broken = 3.5.0
+zope.browser = 0.5.0
+zope.component = 3.5.1
+zope.configuration = 3.4.1
+zope.container = 3.7.0
+zope.contenttype = 3.4.1
+zope.copypastemove = 3.4.1
+zope.deferredimport = 3.5.0
+zope.dottedname = 3.4.5
+zope.dublincore = 3.4.1
+zope.exceptions = 3.5.2
+zope.formlib = 3.5.1
+zope.i18n = 3.6.0
+zope.interface = 3.5.0
+zope.lifecycleevent = 3.5.0
+zope.location = 3.5.2
+zope.proxy = 3.5.0
+zope.publisher = 3.5.5
+zope.schema = 3.5.2
+zope.security = 3.6.0
+zope.sendmail = 3.5.1
+zope.server = 3.5.0
+zope.session = 3.7.1
+zope.site = 3.6.0
+zope.testbrowser = 3.6.0a2
+zope.testing = 3.7.1
+zope.traversing = 3.5.2
+zope.viewlet = 3.5.0
+zope.app.apidoc = 3.6.1
+zope.app.appsetup = 3.9.0
+zope.app.component = 3.6.0
+zope.app.container = 3.7.0
+zope.app.error = 3.5.2
+zope.app.exception = 3.4.2
+zope.app.folder = 3.5.0
+zope.app.form = 3.7.1
+zope.app.generations = 3.4.2
+zope.app.http = 3.4.2
+zope.app.locales = 3.5.1
+zope.app.pagetemplate = 3.5.0
+zope.app.publication = 3.5.1
+zope.app.publisher = 3.6.0
+zope.app.schema = 3.5.0
+zope.app.security = 3.5.3
+zope.app.testing = 3.6.0
+zope.app.zcmlfiles = 3.5.2

Copied: Zope/trunk/versions-zope3.cfg (from rev 96256, Zope2.buildout/trunk/versions-zope3.cfg)
===================================================================
--- Zope/trunk/versions-zope3.cfg	                        (rev 0)
+++ Zope/trunk/versions-zope3.cfg	2009-02-08 17:35:05 UTC (rev 96263)
@@ -0,0 +1,174 @@
+# KGS of Zope3 3.4.0
+# http://download.zope.org/zope3.4/3.4.0/
+# http://download.zope.org/zope3.4/3.4.0/versions.cfg
+[versions]
+ClientForm = 0.2.9
+RestrictedPython = 3.4.2
+ZConfig = 2.5.1
+ZODB3 = 3.8.1
+docutils = 0.4
+jquery.javascript = 1.0.0
+jquery.layer = 1.0.0
+lxml = 1.3.6
+mechanize = 0.1.7b
+pytz = 2007k
+setuptools = 0.6c9
+z3c.coverage = 1.1.2
+z3c.csvvocabulary = 1.0.0
+z3c.etestbrowser = 1.0.4
+z3c.form = 1.9.0
+z3c.formdemo = 1.5.3
+z3c.formjs = 0.4.0
+z3c.formjsdemo = 0.3.1
+z3c.formui = 1.4.2
+z3c.i18n = 0.1.1
+z3c.layer = 0.2.3
+z3c.macro = 1.1.0
+z3c.macroviewlet = 1.0.0
+z3c.menu = 0.2.0
+z3c.optionstorage = 1.0.4
+z3c.pagelet = 1.0.2
+z3c.rml = 0.7.3
+z3c.skin.pagelet = 1.0.2
+z3c.template = 1.1.0
+z3c.testing = 0.2.0
+z3c.traverser = 0.2.3
+z3c.viewlet = 1.0.0
+z3c.viewtemplate = 0.3.2
+z3c.zrtresource = 1.0.1
+zc.buildout = 1.1.1
+zc.catalog = 1.2.0
+zc.datetimewidget = 0.5.2
+zc.i18n = 0.5.2
+zc.recipe.egg = 1.0.0
+zc.recipe.filestorage = 1.0.0
+zc.recipe.testrunner = 1.0.0
+zc.resourcelibrary = 1.0.1
+zc.table = 0.6
+zc.zope3recipes = 0.6.2
+zdaemon = 2.0.2
+zodbcode = 3.4.0
+zope.annotation = 3.4.1
+zope.app.annotation = 3.4.0
+zope.app.apidoc = 3.4.3
+zope.app.applicationcontrol = 3.4.3
+zope.app.appsetup = 3.4.1
+zope.app.authentication = 3.4.4
+zope.app.basicskin = 3.4.0
+zope.app.boston = 3.4.0
+zope.app.broken = 3.4.0
+zope.app.cache = 3.4.1
+zope.app.catalog = 3.5.1
+zope.app.component = 3.4.1
+zope.app.container = 3.5.6
+zope.app.content = 3.4.0
+zope.app.dav = 3.4.1
+zope.app.debug = 3.4.1
+zope.app.debugskin = 3.4.0
+zope.app.dependable = 3.4.0
+zope.app.dtmlpage = 3.4.1
+zope.app.error = 3.5.1
+zope.app.exception = 3.4.1
+zope.app.externaleditor = 3.4.0
+zope.app.file = 3.4.4
+zope.app.folder = 3.4.0
+zope.app.form = 3.4.1
+zope.app.ftp = 3.4.0
+zope.app.generations = 3.4.1
+zope.app.homefolder = 3.4.0
+zope.app.http = 3.4.1
+zope.app.i18n = 3.4.4
+zope.app.i18nfile = 3.4.1
+zope.app.interface = 3.4.0
+zope.app.interpreter = 3.4.0
+zope.app.intid = 3.4.1
+zope.app.keyreference = 3.4.1
+zope.app.layers = 3.4.0
+zope.app.locales = 3.4.5
+zope.app.locking = 3.4.0
+zope.app.module = 3.4.0
+zope.app.onlinehelp = 3.4.1
+zope.app.pagetemplate = 3.4.1
+zope.app.pluggableauth = 3.4.0
+zope.app.preference = 3.4.1
+zope.app.preview = 3.4.0
+zope.app.principalannotation = 3.4.0
+zope.app.publication = 3.4.3
+zope.app.publisher = 3.4.1
+zope.app.pythonpage = 3.4.1
+zope.app.renderer = 3.4.0
+zope.app.rotterdam = 3.4.1
+zope.app.schema = 3.4.0
+zope.app.security = 3.5.2
+zope.app.securitypolicy = 3.4.6
+zope.app.server = 3.4.2
+zope.app.session = 3.5.1
+zope.app.skins = 3.4.0
+zope.app.sqlscript = 3.4.1
+zope.app.testing = 3.4.3
+zope.app.traversing = 3.4.0
+zope.app.tree = 3.4.0
+zope.app.twisted = 3.4.1
+zope.app.undo = 3.4.0
+zope.app.wfmc = 0.1.2
+zope.app.workflow = 3.4.1
+zope.app.wsgi = 3.4.1
+zope.app.xmlrpcintrospection = 3.4.0
+zope.app.zapi = 3.4.0
+zope.app.zcmlfiles = 3.4.3
+zope.app.zopeappgenerations = 3.4.0
+zope.app.zptpage = 3.4.1
+zope.cachedescriptors = 3.4.1
+zope.component = 3.4.0
+zope.configuration = 3.4.0
+zope.contentprovider = 3.4.0
+zope.contenttype = 3.4.0
+zope.copypastemove = 3.4.0
+zope.datetime = 3.4.0
+zope.decorator = 3.4.0
+zope.deferredimport = 3.4.0
+zope.deprecation = 3.4.0
+zope.documenttemplate = 3.4.0
+zope.dottedname = 3.4.2
+zope.dublincore = 3.4.0
+zope.error = 3.5.1
+zope.event = 3.4.0
+zope.exceptions = 3.4.0
+zope.file = 0.3.0
+zope.filerepresentation = 3.4.0
+zope.formlib = 3.4.0
+zope.hookable = 3.4.0
+zope.html = 1.0.1
+zope.i18n = 3.4.0
+zope.i18nmessageid = 3.4.3
+zope.index = 3.4.1
+zope.interface = 3.4.1
+zope.lifecycleevent = 3.4.0
+zope.location = 3.4.0
+zope.mimetype = 0.3.0
+zope.minmax = 1.1.0
+zope.modulealias = 3.4.0
+zope.pagetemplate = 3.4.0
+zope.proxy = 3.4.2
+zope.publisher = 3.4.6
+zope.rdb = 3.4.0
+zope.schema = 3.4.0
+zope.security = 3.4.1
+zope.securitypolicy = 3.4.1
+zope.sendmail = 3.4.0
+zope.sequencesort = 3.4.0
+zope.server = 3.4.3
+zope.session = 3.4.1
+zope.size = 3.4.0
+zope.structuredtext = 3.4.0
+zope.tal = 3.4.1
+zope.tales = 3.4.0
+zope.testbrowser = 3.4.2
+zope.testing = 3.5.6
+zope.testrecorder = 0.3.0
+zope.thread = 3.4
+zope.traversing = 3.4.1
+zope.ucol = 1.0.2
+zope.viewlet = 3.4.2
+zope.wfmc = 3.4.0
+zope.xmlpickle = 3.4.0
\ No newline at end of file



More information about the Zope-Checkins mailing list