MirOS Manual: ExtUtils::Manifest(3p)

ExtUtils::ManifesPerl)Programmers ReferenceExtUtils::Manifest(3p)


     ExtUtils::Manifest - utilities to write and check a MANIFEST


         use ExtUtils::Manifest qw(...funcs to import...);


         my @missing_files    = manicheck;
         my @skipped          = skipcheck;
         my @extra_files      = filecheck;
         my($missing, $extra) = fullcheck;

         my $found    = manifind();

         my $manifest = maniread();


         maniadd({$file => $comment, ...});



     ExtUtils::Manifest exports no functions by default.  The
     following are exported on request


         Writes all files in and below the current directory to
         your MANIFEST. It works similar to

             find . > MANIFEST

         All files that match any regular expression in a file
         MANIFEST.SKIP (if it exists) are ignored.

         Any existing MANIFEST file will be saved as
         MANIFEST.bak.  Lines from the old MANIFEST file is
         preserved, including any comments that are found in the
         existing MANIFEST file in the new one.

             my $found = manifind();

         returns a hash reference. The keys of the hash are the
         files found below the current directory.

             my @missing_files = manicheck();

perl v5.8.8                2005-02-05                           1

ExtUtils::ManifesPerl)Programmers ReferenceExtUtils::Manifest(3p)

         checks if all the files within a "MANIFEST" in the
         current directory really do exist. If "MANIFEST" and the
         tree below the current directory are in sync it silently
         returns an empty list. Otherwise it returns a list of
         files which are listed in the "MANIFEST" but missing
         from the directory, and by default also outputs these
         names to STDERR.

             my @extra_files = filecheck();

         finds files below the current directory that are not
         mentioned in the "MANIFEST" file. An optional file
         "MANIFEST.SKIP" will be consulted. Any file matching a
         regular expression in such a file will not be reported
         as missing in the "MANIFEST" file. The list of any
         extraneous files found is returned, and by default also
         reported to STDERR.

             my($missing, $extra) = fullcheck();

         does both a manicheck() and a filecheck(), returning
         then as two array refs.

             my @skipped = skipcheck();

         lists all the files that are skipped due to your
         "MANIFEST.SKIP" file.

             my $manifest = maniread();
             my $manifest = maniread($manifest_file);

         reads a named "MANIFEST" file (defaults to "MANIFEST" in
         the current directory) and returns a HASH reference with
         files being the keys and comments being the values of
         the HASH.  Blank lines and lines which start with "#" in
         the "MANIFEST" file are discarded.

             manicopy(\%src, $dest_dir);
             manicopy(\%src, $dest_dir, $how);

         Copies the files that are the keys in %src to the
         $dest_dir.  %src is typically returned by the maniread()

             manicopy( maniread(), $dest_dir );

         This function is useful for producing a directory tree

perl v5.8.8                2005-02-05                           2

ExtUtils::ManifesPerl)Programmers ReferenceExtUtils::Manifest(3p)

         identical to the intended distribution tree.

         $how can be used to specify a different methods of
         "copying".  Valid values are "cp", which actually copies
         the files, "ln" which creates hard links, and "best"
         which mostly links the files but copies any symbolic
         link to make a tree without any symbolic link.  "cp" is
         the default.

           maniadd({ $file => $comment, ...});

         Adds an entry to an existing MANIFEST unless its already

         $file will be normalized (ie. Unixified).  UNIMPLEMENTED


     A list of files in the distribution, one file per line.  The
     MANIFEST always uses Unix filepath conventions even if
     you're not on Unix.  This means foo/bar style not foo\bar.

     Anything between white space and an end of line within a
     "MANIFEST" file is considered to be a comment.  Any line
     beginning with # is also a comment.

         # this a comment
         some/other/file            comment about some/file


     The file MANIFEST.SKIP may contain regular expressions of
     files that should be ignored by mkmanifest() and
     filecheck(). The regular expressions should appear one on
     each line. Blank lines and lines which start with "#" are
     skipped.  Use "\#" if you need a regular expression to start
     with a "#".

     For example:

         # Version control files and dirs.

perl v5.8.8                2005-02-05                           3

ExtUtils::ManifesPerl)Programmers ReferenceExtUtils::Manifest(3p)

         # Makemaker generated files and dirs.

         # Temp, old and emacs backup files.

     If no MANIFEST.SKIP file is found, a default set of skips
     will be used, similar to the example above.  If you want
     nothing skipped, simply make an empty MANIFEST.SKIP file.


     &mkmanifest, &manicheck, &filecheck, &fullcheck, &maniread,
     and &manicopy are exportable.


     $ExtUtils::Manifest::MANIFEST defaults to "MANIFEST". Chang-
     ing it results in both a different "MANIFEST" and a dif-
     ferent "MANIFEST.SKIP" file. This is useful if you want to
     maintain different distributions for different audiences
     (say a user version and a developer version including RCS).

     $ExtUtils::Manifest::Quiet defaults to 0. If set to a true
     value, all functions act silently.

     $ExtUtils::Manifest::Debug defaults to 0.  If set to a true
     value, or if PERL_MM_MANIFEST_DEBUG is true, debugging out-
     put will be produced.


     All diagnostic output is sent to "STDERR".

     "Not in MANIFEST:" file
         is reported if a file is found which is not in "MANI-

     "Skipping" file
         is reported if a file is skipped due to an entry in

     "No such file:" file
         is reported if a file mentioned in a "MANIFEST" file
         does not exist.

     "MANIFEST:" $!

perl v5.8.8                2005-02-05                           4

ExtUtils::ManifesPerl)Programmers ReferenceExtUtils::Manifest(3p)

         is reported if "MANIFEST" could not be opened.

     "Added to MANIFEST:" file
         is reported by mkmanifest() if $Verbose is set and a
         file is added to MANIFEST. $Verbose is set to 1 by


         Turns on debugging


     ExtUtils::MakeMaker which has handy targets for most of the


     Andreas Koenig "andreas.koenig@anima.de"

     Currently maintained by Michael G Schwern

perl v5.8.8                2005-02-05                           5

Generated on 2015-10-25 00:47:46 by $MirOS: src/scripts/roff2htm,v 1.81 2015/10/16 13:19:09 tg Exp $

These manual pages and other documentation are copyrighted by their respective writers; their source is available at our CVSweb, AnonCVS, and other mirrors. The rest is Copyright © 2002–2015 The MirOS Project, Germany.
This product includes material provided by mirabilos.

This manual page’s HTML representation is supposed to be valid XHTML/1.1; if not, please send a bug report – diffs preferred.