[Distutils] install_headers,install_data
Greg Ward
gward@python.net
Tue, 20 Jun 2000 23:36:21 -0400
On 08 June 2000, Rene Liebscher said:
> when I tried to build a binary distribution
> I found that there were no headers in it.
> (But a normal install worked.)
> Also I found bdist_rpm didn't work with
> headers and data files.
>
> There were two problems:
> Someone simply forgot the headers in the
> install command.
>
> From install_headers and install_data
> you couldn't get the copied files (outfiles.)
> (rpm seems to use it.)
Good catch. Thanks!
> And here is now a patch which solves both
> problems.
OK, I've checked in fixes that were "inspired" by your patch. Note that
'copy_file()' returns the name of the output file, so there's no need to
override it and generate the filename ourselves; just get the value
returned from 'copy_file()' and append to 'outfiles'
> Shouldn't header files be installed in
> /usr/local/python1.5/include
> instead of
> /usr/local/python/1.5/include ?
Already fixed, thanks.
> Another problem is that MANIFEST
> is build from two sources.
>
> MANIFEST.in
> > MANIFEST
> parameters of setup()
>
> If someone changes the parameter of setup()
> the MANIFEST file should be rebuild.
Duh, good point! So-obvious-I-should-have-thought-of-it-myself. Again
I checked in a fix strongly inspired by yours. Another note: 'newer()'
doesn't mind if the *target* doesn't exist; it just returns true,
meaning that the target needs to be regenerated. So the 'isfile()'
check on 'manifest' is unneeded.
> PS: I send the last version of my cygwin-compiler
> class with this mail.
OK, I just checked it in, unreviewed and untested. (What the hell.)
Now at least others can try it and it'll get in the next code snapshot,
whenever I do that.
Greg
--
Greg Ward - Unix nerd gward@python.net
http://starship.python.net/~gward/
Laziness, Impatience, Hubris.