[Israel.pm] Installer for a Perl and Web Meta Language based program.

Shlomi Fish shlomif at iglu.org.il
Sun Apr 11 19:55:22 PDT 2004

Hi good people!

I have developed Quad-Pres, which is a presentation tool based on Perl and Web 
Meta Language (http://thewml.org/) first for my own use and now distribute as 
open source software.

Now, up to now, after I revamped the program to be centralized in the system, 
I used GNU Autoconf and Automake to manage the program's "compilation" and 
installation. The problem is that now I have several tests and the process 
I'm using to invoke them from Autoconf is "icky": it's slow, cumbersome and 
unfit for a Perl program.

I'm looking for a nice alternative installer, preferablly written in Perl 
(which I can already assume is installed there), that I can use to perform 
the preparation, testing and installation. Rolling something on my own should 
not be too hard, but I'd rather use an available solution if possible. 

I'll describe here what the various components of the program do and how they 
are installed: (you can skip to the requirements below)

1. First there's the quadp Perl executable that invokes the appropriate Perl
module that is installed, not in the standard perl path but in it's own 
dedicated path. This executable is used as a wrapper for all user-land 

2. Under /usr/share/quad-pres/perl5/ several Perl modules are present that
perform most of the logic of the command line program, as well as some of that
that is provided as an extension to the Web Meta Language code. (see below).
This code should be somehow @INC'ed into all invocations of the program.

3. Under /usr/share/quad-pres/wml/ lies a hierarchy of web meta language 
include files. Now Web Meta Language is a very powerful processor for HTML 
files and it has ePerl as one of its passes. This ePerl in turn calls logic 
from the modules in #2. quadp and its supporting scripts (see below) invoke
the wml interpreter with a this directory in the include path.

4. Under /usr/share/quad-pres/scripts there are several scripts written in 
Perl that are invoked by the quadp+modules Perl code to perform several tasks. 
These are largely remnants of the history of Quad-Pres and I'm now seriously 
considering integrating their logic into the main quadp code.

5. There's a man page at /usr/share/man/man1/quadp.1.(bz2|gz)

6. There are some documents under /usr/share/doc.


Basically, what the installer needs to do is:

1. Temporarly install all the components in a local path for easy testing.

2. Determine the prefix from the command line (an Autoconf like --prefix) and 
be able to install everything there. (with a modified prefix for the local 

3. Determine the location of the Perl interpreter and set the #!-locations in 
the quadp executable and scripts accordingly.

4. Pre-process some Perl files for them to contain the path under which 
everything was installed.

5. Process files from a directory tree that corresponds to what will later be 

That's it, I think. (but I may be wrong.).


	Shlomi Fish


Shlomi Fish      shlomif at iglu.org.il
Homepage:        http://shlomif.il.eu.org/

Quidquid latine dictum sit, altum viditur.
        [Whatever is said in Latin sounds profound.]

More information about the Perl mailing list