Table of Contents
Copyright (c) 2005-2008, 2024 Steven Schubiger
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".
It has been common practice within the Perl community for ages to ship
distributions with a Makefile.PL
so that the user will be able to install
the packages when he retrieves them either via the shell which the CPAN/CPANPLUS
modules offer or via manual CPAN download.
The Makefile.PL
consists of "meta information" which in the case of the
distribution HTML::Tagset looks as follows:
Example 1.
# This -*-perl-*- program writes the Makefile for installing this distribution. # # See "perldoc perlmodinstall" or "perldoc ExtUtils::MakeMaker" for # info on how to control how the installation goes. require 5.004; use strict; use ExtUtils::MakeMaker; WriteMakefile( NAME => 'HTML::Tagset', AUTHOR => 'Andy Lester <andy@petdance.com>', VERSION_FROM => 'Tagset.pm', # finds $VERSION ABSTRACT_FROM => 'Tagset.pm', # retrieve abstract from module PMLIBDIRS => [qw(lib/)], dist => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', }, clean => { FILES => 'HTML-Tagset-*' }, );
Of interest are the arguments to WriteMakefile(), because they influence
what Makefile
is being written by ExtUtils::MakeMaker
after the user has invoked the usual build & install procedure including the subsequent commands: