[Distutils] Get install prefix for module at runtime
Wolodja Wentland
wentland at cl.uni-heidelberg.de
Wed Sep 16 17:40:31 CEST 2009
On Tue, Sep 15, 2009 at 17:38 +0200, Wolodja Wentland wrote:
> My question is: "How to reliably access data files from a module in
> foo?"
> Approach 2 - writing a build.py file at installation time
> ---------------------------------------------------------
>
> The last question made me think, that Approach 1 works for the three
> standard installation schemes, but fails miserably if the user decides
> to do anything fancy.
I implemented this approach like this:
--- snip ---
# -*- coding: UTF-8 -*-
#!/usr/bin/env python
from __future__ import with_statement
import distutils.core as core
from distutils.command.install import install as _install
import sys
import getopt
import os.path
class install(_install):
"""install command
This specific install command will create a file 'build_config.py' which
contains information on """
def run(self):
with open('lib/foo/build_config.py', 'w') as build_fp:
build_fp.write('# -*- coding: UTF-8 -*-\n\n')
build_fp.write("DATA_DIR = '%s'\n"%(
os.path.join(self.install_data, 'share')))
build_fp.write("LIB_DIR = '%s'\n"%(self.install_lib))
build_fp.write("SCRIPT_DIR = '%s'\n"%(self.install_scripts))
_install.run(self)
core.setup(name='foo',
version='0.1',
description='Foo is Bar and Baz',
author='Wolodja Wentland',
...
)
--- snip ---
Is this a good approach? Is there anything i can do better?
with kind regards
Wolodja Wentland
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: Digital signature
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20090916/8de918cc/attachment.pgp>
More information about the Distutils-SIG
mailing list