[Distutils] Behaviour of "install_data" changed

Thomas Heller thomas.heller@ion-tof.com
Mon, 26 Jun 2000 18:02:06 +0200


> I've just fixed the behaviour of the "install_data" command: the default
> directory for installating data files is now just the installation base, 
> which is usually sys.prefix.  Thus, if you put
> 
>    data_files = ["my_data"]
> 
> in your setup script, you will wind up installing (eg.)
> /usr/local/my_data -- definitely the wrong thing on Unix, and probably
> wrong on Windows too.  (Except for applications that have their own
> prefix, but that's not really dealt with yet.)
> 
> This is the Right Thing now because of the change to "install_data" that
> lets you specify where to put data files; the above should be spelled
> 
>    data_files = [("share", ["my_data"])]
> 
> which will install /usr/local/share/my_data.
> 
> Of course, this still doesn't solve the problem of, "How does my
> application/module know where Distutils installed this data file if the
> user did some wild funky custom installation?".  Oh well, better than
> nothing.
> 
>         Greg
It works for me.

Context: I'm currently writing a setup-script for Marks
win32 extensions.
Mark has put a lot of "data files" inside the source code tree:
html docs, cfg files, ...

If this is installed into the destination directories, the
python-scripts (or PythonWin.exe) will know how to find these files.

Thomas