Welcome, guest | Sign In | My Account | Store | Cart

Notice! PyPM is being replaced with the ActiveState Platform, which enhances PyPM’s build and deploy capabilities. Create your free Platform account to download ActivePython or customize Python with the packages you require and get automatic updates.

Download
ActivePython
INSTALL>
pypm install ro.bdb.cmmi

How to install ro.bdb.cmmi

  1. Download and install ActivePython
  2. Open Command Prompt
  3. Type pypm install ro.bdb.cmmi
 Python 2.7Python 3.2Python 3.3
Windows (32-bit)
1.0.5 Available View build log
Windows (64-bit)
1.0.5 Available View build log
Mac OS X (10.5+)
1.0.5 Available View build log
Linux (32-bit)
1.0.5 Available View build log
Linux (64-bit)
1.0.5 Available View build log
 
Author
License
ZPL 2.1
Dependencies
Imports
Lastest release
version 1.0.5 on Jan 5th, 2011

We have an archive with a demo foo tar ball:

>>> ls(distros)
-  foo.tgz

Let's update a sample buildout to installs it:

>>> write('buildout.cfg',
... """
... [buildout]
... parts = foo
...
... [foo]
... recipe = ro.bdb.cmmi
... url = file://%s/foo.tgz
... """ % distros)

We used the url option to specify the location of the archive.

If we run the buildout, the configure script in the archive is run. It creates a make file which is also run:

>>> print system('bin/buildout'),
Installing foo.
foo: Downloading .../distros/foo.tgz
foo: Unpacking and configuring
configuring foo --prefix=/sample-buildout/parts/foo
echo building foo
building foo
echo installing foo
installing foo

The recipe also creates the parts directory:

>>> ls(sample_buildout, 'parts')
d  foo

If we run the buildout again, the update method will be called, which does nothing:

>>> print system('bin/buildout'),
Updating foo.

You can supply extra configure options:

>>> write('buildout.cfg',
... """
... [buildout]
... parts = foo
...
... [foo]
... recipe = ro.bdb.cmmi
... url = file://%s/foo.tgz
... extra_options = -a -b c
... """ % distros)
>>> print system('bin/buildout'),
Uninstalling foo.
Installing foo.
foo: Downloading .../distros/foo.tgz
foo: Unpacking and configuring
configuring foo --prefix=/sample-buildout/parts/foo -a -b c
echo building foo
building foo
echo installing foo
installing foo

The recipe sets the location option, which can be read by other recipes, to the location where the part is installed:

>>> cat('.installed.cfg')
... # doctest: +ELLIPSIS
[buildout]
installed_develop_eggs =
parts = foo
<BLANKLINE>
[foo]
__buildout_installed__ = /sample-buildout/parts/foo
...
extra_options = -a -b c
location = /sample-buildout/parts/foo
...

Sometimes it's necessary to patch the sources before building a package. You can specify the name of the patch to apply and (optional) patch options:

First of all let's write a patchfile:

>>> import sys
>>> mkdir('patches')
>>> write('patches/config.patch',
... """--- configure
... +++ /dev/null
... @@ -1,13 +1,13 @@
...  #!%s
...  import sys
... -print "configuring foo", ' '.join(sys.argv[1:])
... +print "configuring foo patched", ' '.join(sys.argv[1:])
...
...  Makefile_template = '''
...  all:
... -\techo building foo
... +\techo building foo patched
...
...  install:
... -\techo installing foo
... +\techo installing foo patched
...  '''
...
...  open('Makefile', 'w').write(Makefile_template)
...
... """ % sys.executable)

Now let's create a buildout.cfg file. Note: If no patch option is beeing passed, -p0 is appended by default.

>>> write('buildout.cfg',
... """
... [buildout]
... parts = foo
...
... [foo]
... recipe = ro.bdb.cmmi
... url = file://%s/foo.tgz
... patch = ${buildout:directory}/patches/config.patch
... patch_options = -p0
... """ % distros)
>>> print system('bin/buildout'),
Uninstalling foo.
Installing foo.
foo: Downloading .../distros/foo.tgz
foo: Unpacking and configuring
patching file configure
configuring foo patched --prefix=/sample_buildout/parts/foo
echo building foo patched
building foo patched
echo installing foo patched
installing foo patched

Download Cache

The recipe supports use of a download cache in the same way as zc.buildout. See downloadcache.txt for details

Download

Subscribe to package updates

Last updated Jan 5th, 2011

Download Stats

Last month:1

What does the lock icon mean?

Builds marked with a lock icon are only available via PyPM to users with a current ActivePython Business Edition subscription.

Need custom builds or support?

ActivePython Enterprise Edition guarantees priority access to technical support, indemnification, expert consulting and quality-assured language builds.

Plan on re-distributing ActivePython?

Get re-distribution rights and eliminate legal risks with ActivePython OEM Edition.