Ralf Wildenhues <[EMAIL PROTECTED]> wrote:
> >     Is this portable (enough)? I'm thinking of turning it into a general
> > automake macro so you can just do something like:
> > 
> > dist_MANIFESTS = foo/MANIFEST bar/MANIFEST
> Hmm.  First, I think you can just drop the
>   -e "s,\s.*$$,,"
> 
> part; it serves no useful purpose, and `\s' isn't portable AFAIK.  Then,
> although SUSv3 specifies the cpio storage format, it doesn't specify the
> `cpio' tool, but only pax.  Practically, you can't rely on that, though.
> I find neither of them in my MSYS installation, nor my Cygwin
> installation (although I bet they are part of Cygwin; I just guess they
> are not part of the basic install).

        OK, so I might need something more portable than cpio... but the
"\s.*" part does serve a purpose; the MANIFEST file format allows for a
description of the file after whitespace. I guess I could do "[ \t]" or
something else instead of the \s. If I was thinking of this just for my
distribution, then I would just make sure none of my MANIFESTs have that,
but I am thinking of a more long-term approach to integrating perl modules
into larger projects specced in automake. When MakeMaker generates a
MANIFEST, it will often (annoyingly) fill it in:

MANIFEST                        This list of files
META.yml                        Module meta-data (added by MakeMaker)

> How about going the other way and creating `MANIFEST' from the data you
> are collecting in Makefile.am?  Just an idea, you know.

        I like it this way. :-) My htdocs/ and etc/ directories have
MANIFEST files now as well. There's a few reasons why I think I should stick
with this:

        - more than just automake/make can read a text file with a list of
files easily (eg | xargs sha1sum, which i might do in the future)

        - the information only has to live in one place

        - the perl packages are complete and CPAN-ready without needing to
run anything else like automake

        Thanks for the insights... I'm going to look more into \s and cpio.

        Cheers,
                Tyler




Reply via email to