develooper Front page | perl.perl5.porters | Postings from October 2000

Re: [ID 20001009.009] what if cc changes?

Thread Previous | Thread Next
Lupe Christoph
October 10, 2000 23:57
Re: [ID 20001009.009] what if cc changes?
Message ID:
On Tuesday, 2000-10-10 at 18:51:46 +0100, Alan Burlison wrote:
> Peter Prymmer wrote:

> > Yes that is the functionality that I desire.  It appears to use
> > Archive::Tar(?)  I suppose there will be some who prefer the flexibility
> > of "native" archive/compress but tar is widely implemented (IIRC Chris
> > Nandor's Mac port of CPAN uses Archive::Tar to unpackage tar balls on
> > Mac OS).

> > I'll make a note to check out the package on a few different platforms.
> > Thanks for the pointer.

> Actually it is just a script that its on top of ExtUtils::Packlist et
> al.  You can hack it to use whatever archiver you wish.  I also have a
> version that makes SVR4 pkgadd format archives.

Seems we have three ways here:
1) Use a tarball, like Alan does.

2) Use "native" formats like .rpm, .deb, SVR4 pkgadd format.

3) Use a Perl-specific format.

I believe whatever is used should maintain the packlist on the
target system.

It should also be available on every platform perl currently supports,
and be supportable on any new platform.

My limited experience with .deb, .rpm, and SVR4 packages suggests
we should avoid number 2 as a general solution. The variations are
too great, and some platforms have no such format.

A pure number 1 does not deliver the functionality. We need to update
the packlist on the target system, possibly create a customized for the package, etc.

I think number 3 is the only sensible route, if it is a cross-platform
PPM or not. We need an installation tool like pkgadd, rpm, or so.
The format should support {pre,post}{install,remove} scripts.

Beneath this format we can use tar, cpio, or zip, or whatever is
convenient. It should just have a supporting perl module.

I have the most experience with SVR4 packages, and I like their
structure - fixed and relocatable contents, pkginfo and pkgmap,
copyright, etc. files, and scripts.

One thing to keep in mind is that people might try to add a package
multiple times, maybe using downrev packages. They might also run
into fixincludes-like problems.

The package format and tool must detect this, and package dependencies.
Think about a sharable library required by the perl module, that might
not be there because that OS package was not yet installed.

Doing the package generation right requires also a complex tool that
can detect most such dependencies automatically (running ldd, etc.)

Lupe Christoph
|       | |
| "jryy vg ybbxf yvxr gur l2x oht qvqa'g erne vg'f htyl urnq." "lrc. gur |
| qbbzfnlref unir orra cebira jebat lrg ntnva."  ....  "qvq lbh frr gung |
| gbb?" "ubhfgba. jr unir n ceboyrz."           User Friendly 2000-01-01 |

Thread Previous | Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About