1234567891011121314151617181920212223242526272829303132333435363738394041 |
- """
- Installation paths.
- Map the .data/ subdirectory names to install paths.
- """
- import os.path
- import sys
- import distutils.dist as dist
- import distutils.command.install as install
- def get_install_command(name):
- # late binding due to potential monkeypatching
- d = dist.Distribution({'name':name})
- i = install.install(d)
- i.finalize_options()
- return i
- def get_install_paths(name):
- """
- Return the (distutils) install paths for the named dist.
-
- A dict with ('purelib', 'platlib', 'headers', 'scripts', 'data') keys.
- """
- paths = {}
- i = get_install_command(name)
- for key in install.SCHEME_KEYS:
- paths[key] = getattr(i, 'install_' + key)
- # pip uses a similar path as an alternative to the system's (read-only)
- # include directory:
- if hasattr(sys, 'real_prefix'): # virtualenv
- paths['headers'] = os.path.join(sys.prefix,
- 'include',
- 'site',
- 'python' + sys.version[:3],
- name)
- return paths
|