hi,

no, i am not trying to make an omelette, but i am trying to bake zope.
zope comes in a tarball option which includes everything but the kitchen
sink, and creates quite some twisted conflicts with other packages.
trying to remove those manually and fix the wrong default paths looks
messy.

the recommended methodto installl zope nowadays appears to be via eggs.
and since thee is a recipe method that can handle eggs i thought that
this should be easier to maintain. (if an `egg in the zope omelette causes
conflicts, then i could just leave it out, instead of trying to guess
which files to remove)

now unfortunately zope laid quite a few eggs, and then some:
http://download.zope.org/zope3.4/3.4.0/versions.cfg
and it steals some eggs out of others nests too.

i still managed to come up with a recipe that loads all those eggs and
allows easy overrides. however the darn thing won't fit in the oven.
rmake/cvc complains that there is nothing to build.

the recipe is attached. it does load all the eggs, so all those
addArchive calls are working, but it seems PythonSetup is never called.

i'd appeciate any pointers on what's wrong or missing.

greetings, martin.
-- 
cooperative communication with sTeam      -     caudium, pike, roxen and unix
searching contract jobs:  programming, training and administration - anywhere
--
pike programmer      working in china                   community.gotpike.org
foresight developer  (open-steam|caudium).org              foresightlinux.org
unix sysadmin        iaeste.at                                     realss.com
Martin Bähr          http://www.iaeste.or.at/~mbaehr/            is.schon.org
import ConfigParser

class Zope(CPackageRecipe):
    name = 'Zope'
    version = '3.4.0'

    buildRequires = [ 'python:runtime', 'PIL:python', 'PyQt:python',
        'Pyrex:python', 'gnome-python:python', 'pycrypto:python',
        'pygtk:python', 'python-setuptools:python',
        'python-twisted:python',
        'python-zopeinterface:python', 'python:tk', 'wxPython:python',
        'python:devel' ]

    def setup(r):
        packages = ConfigParser.RawConfigParser()
        packages.optionxform = str
        packages.read('versions.cfg')
        packages.remove_option('versions', 'setuptools')
        packages.remove_option('versions', 'docutils') # is on sourceforge
        packages.set('versions', 'mechanize', '0.1.10') # older version is on 
sourceforge

        package = ('zope.proxy', 'zip') # this egg has a zip extension, 
different from all the others.
        r.addArchive('http://pypi.python.org/packages/source/%s/%s/%s-%s.%s' % 
(package[0][0], package[0], package[0], packages.get('versions', package[0]), 
package[1]), dir='%(name)s-%(version)s')
        r.PythonSetup(dir='%(name)s-%(version)s/'+package[0]+'-'+package[1])
        packages.remove_option('versions', package[0])

        
[r.addArchive('http://pypi.python.org/packages/source/%s/%s/%s-%s.tar.gz' % 
(item[0][0], item[0], item[0], item[1]), dir='%(name)s-%(version)s') for item 
in  packages.items('versions')]
        [r.PythonSetup(dir='%(name)s-%(version)s/'+item[0]+'-'+item[1]) for 
item in  packages.items('versions')]
_______________________________________________
Foresight-devel mailing list
Foresight-devel@lists.rpath.org
http://lists.rpath.org/mailman/listinfo/foresight-devel

Reply via email to