On Fri, 8 Sep 2000, Qiang Tu wrote:

[regarding the ext/*/*.c files automatically generated from the
corresponding .xs files as part of the build process.]

> Could anyone tell me why those C files are not included in the source
> tarball and have to be translated from XS files during build time? given the
> fact that at least for Linux and OSF, those C files are identical ? Thanks
> very much.

There is no deep fundamental reason.  In principle, xsubpp can generate
different code depending on the platform, but currently only VMS does so
(and even then only in some cases), and that could (again, in principle)
be done instead with appropriate #ifdef directives.

It's marginally easier from the perl maintainer's point of view to only
ship the XS file and not to have to check to ensure that the corresponding
C file is up-to-date.  It also makes for a marginally smaller .tar.gz file
for the CPAN sites.

The perl distribution does contain a number of automatically generated
files.  Some are included with perl (e.g. embed.h, perly.c), while others
are not (e.g. ext/POSIX/POSIX.c).  Generally speaking, if the file
requires a outside tool (e.g. byacc or a previous version of perl) to
generate, then we supply it with the distribution.  But if it can be
generated by standard tools or tools we make during the build process
(e.g. miniperl) then we don't supply it with the distribution.

But not, there is no deep compelling reason behind it all.

-- 
    Andy Dougherty              [EMAIL PROTECTED]
    Dept. of Physics
    Lafayette College, Easton PA 18042

Reply via email to