[Erp5-report] r32966 luke - in /erp5/trunk/buildout: local-eggs/invokepython/ software-prof...

nobody at svn.erp5.org nobody at svn.erp5.org
Mon Feb 22 16:35:45 CET 2010


Author: luke
Date: Mon Feb 22 16:35:45 2010
New Revision: 32966

URL: http://svn.erp5.org?rev=32966&view=rev
Log:
 - generate script, which is invoking full, original python interpreter

Previously there was a try to use zc.recipe.egg directly, by using interpreter
parameter. But such interpreter is not able to accept -V option, so it is
required to invoke python by executing existing one.

Added:
    erp5/trunk/buildout/local-eggs/invokepython/
    erp5/trunk/buildout/local-eggs/invokepython/invokepython.py
    erp5/trunk/buildout/local-eggs/invokepython/setup.py
Modified:
    erp5/trunk/buildout/software-profiles/python-2.4.cfg

Added: erp5/trunk/buildout/local-eggs/invokepython/invokepython.py
URL: http://svn.erp5.org/erp5/trunk/buildout/local-eggs/invokepython/invokepython.py?rev=32966&view=auto
==============================================================================
--- erp5/trunk/buildout/local-eggs/invokepython/invokepython.py (added)
+++ erp5/trunk/buildout/local-eggs/invokepython/invokepython.py [utf8] Mon Feb 22 16:35:45 2010
@@ -1,0 +1,4 @@
+import sys, os
+def invokepython():
+  os.environ['PYTHONPATH'] = ':'.join(sys.path)
+  os.execl(sys.executable, *sys.argv)

Added: erp5/trunk/buildout/local-eggs/invokepython/setup.py
URL: http://svn.erp5.org/erp5/trunk/buildout/local-eggs/invokepython/setup.py?rev=32966&view=auto
==============================================================================
--- erp5/trunk/buildout/local-eggs/invokepython/setup.py (added)
+++ erp5/trunk/buildout/local-eggs/invokepython/setup.py [utf8] Mon Feb 22 16:35:45 2010
@@ -1,0 +1,27 @@
+from setuptools import setup, find_packages
+
+name = "invokepython"
+version = '0.1'
+
+setup(
+    name = name,
+    version = version,
+    author = "Lukasz Nowak",
+    author_email = "luke at nexedi.com",
+    description = "ZC Buildout recipe to invoke full python interpreter",
+    license = "ZPL 2.1",
+    keywords = "python interpreter",
+    packages = find_packages(),
+    scripts = [name+".py",],
+    include_package_data = True,
+    classifiers=[
+      "License :: OSI Approved :: Zope Public License",
+      "Framework :: Buildout",
+      "Operating System :: POSIX :: Linux",
+      ],
+    zip_safe=False,
+    entry_points = """
+    [console_scripts]
+    invokepython = invokepython:invokepython
+    """,
+    )

Modified: erp5/trunk/buildout/software-profiles/python-2.4.cfg
URL: http://svn.erp5.org/erp5/trunk/buildout/software-profiles/python-2.4.cfg?rev=32966&r1=32965&r2=32966&view=diff
==============================================================================
--- erp5/trunk/buildout/software-profiles/python-2.4.cfg [utf8] (original)
+++ erp5/trunk/buildout/software-profiles/python-2.4.cfg [utf8] Mon Feb 22 16:35:45 2010
@@ -1,6 +1,8 @@
 [buildout]
 # http://bluedynamics.com/articles/jens/build-python-in-buildout
 # based on https://svn.plone.org/svn/collective/buildout/bda-naked-python/buildout2.4.cfg
+develop = local-eggs/invokepython
+
 python_version = 2.4
 parts =
     python
@@ -31,12 +33,13 @@
 patches = ${python2.4-dbm-patch:location}/${python2.4-dbm-patch:filename}
 
 [pythonbin]
-recipe = zc.recipe.egg
+# XXX/Note: This is hackish way to have fully featured python interpreter
+recipe = zc.recipe.egg:scripts
 eggs = ${eggs:eggs}
-interpreter = python${buildout:python_version}
+  invokepython
 dependent-scripts = true
 scripts =
-  python=${:interpreter}
+  invokepython=python${buildout:python_version}
   ipython=ipython${buildout:python_version}
 
 [requirements]




More information about the Erp5-report mailing list