[Distutils] pkg_resources on Windows
Andrea Crotti
andrea.crotti.0 at gmail.com
Tue Dec 13 15:42:24 CET 2011
On 12/13/2011 02:25 PM, Guy Rozendorn wrote:
> If your console_scripts section in setup.py point to a correct entry
> point, then distribute should've created a dev_main.exe executable
> wrapper, and a dev_main-script.py under C:\Python25\Scripts.
> The executable wrapper reads the generated python file and extracts
> the pyhton executable path from the shebang file, and calls
> CreateProcess with that python executable.
>
> If you don't have these two files, then, I can guess that either:
> * You're using an old version of distribute
> * Your setup.py is incorrect.
>
> - Guy
>
The version of setuptools is rather old right.
Anyway this is the setup.py:
from setuptools import setup
from psi.devsonly.api import build_config
#TODO: what if this module is having some nasty side effects??
import os
from os.path import join
config = build_config()
config['setup_requires'] = []
config['package_data'] = {
# any package containing this file should be included
'': ['windows_easy_install.pth']
}
bindir = join('psi', 'devsonly', 'bin')
scripts = [join(bindir, x) for x in os.listdir(bindir) if x.endswith('.py')]
# networkx in particular is very hard to build
extra_requires = ('rope', 'pygraphviz', 'networkx')
# we might need to be able to find out the version number at setup time
# so the egg telling this should have to be there in setup_requires
config['scripts'] = scripts
setup(**config)
Where build_config is something done somewhere else constructing a
similar dictionary:
# entry points should also be an external file
config = {
'name': modname('.'),
'version': '0.1',
# 'version': get_svn_revision_cmd(),
'author': "Airbus",
'test_suite': 'nose.collector',
'packages': find_packages(),
'install_requires': requires,
'zip_safe': False,
'entry_points': entry_points,
'setup_requires': ['psi.devsonly'], # this is somehow late
because every
'namespace_packages': list(modname_generator(modname('.'))),
'tests_require': test_requires +
filename_to_list(TESTS_REQUIRE_FILE)
}
Any hint is welcome
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20111213/a46483e4/attachment.html>
More information about the Distutils-SIG
mailing list