Creating a makefile for installing a Perl application (not a module)

Do you have a question? Post it now! No Registration Necessary.  Now with pictures!

Threaded View

I have a medium-sized application written in Perl which I ship about
among a few friends.  It has a couple of dozen of Perl programs and a
tree of about ten modules, plus some configuration files; there are also
OS-related files and shell scripts.

All these components need to be placed in the right libraries on
installation and I'm doing all that using "make", so that the user can
type "configure", "make" and then "make install".  There are also "make
update" (to replace just the code) and "make uninstall".

Currently I have an entirely specific "configure" program (written in
Perl) which understands the details of the programs and modules and
where to put them, and which also understands the various system files
and how to install those too (entries in /etc/init.d for example).  It
allows the user to change the default locations if required, and it also
makes a number of checks (libraries already exist, users are defined,
and the like).

I'd like to think, though, that there's a more general-purpose utility
somewhere, to which I could specify "this library's contents go there
unless the user says otherwise", and "the following users must be
defined on the system", and so on, which would then create the Makefile.
   I've searched but I can't find anything at all on installing a Perl
_application_ (as distinct from installing Perl _modules_).

Where might I look?


Henry Law            Manchester, England

Re: Creating a makefile for installing a Perl application (not a module)

On 2010-06-22, Henry Law scribbled these curious markings:
Quoted text here. Click to load it

Why are you not using the standard tools for this? ExtUtils::MakeMaker,
Module::Build, Module::Install, Dist::Zilla.

Quoted text here. Click to load it


Trying to specify where things go on the user's system will only end in
tears--yours--after your user's sysadmins come screaming at you.

Thanks and best regards,
Chris Nehren
Unless noted, all content I post is CC-BY-SA.

Site Timeline