Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 27 Mar 2007 10:11:20 +0200
From:      Anton Berezin <tobez@tobez.org>
To:        "Ian A. Tegebo" <yontege@rescomp.berkeley.edu>
Cc:        freebsd-ports@freebsd.org
Subject:   Re: Managing perl modules
Message-ID:  <20070327081120.GB23454@heechee.tobez.org>
In-Reply-To: <20070326234315.GE25691@rescomp.berkeley.edu>
References:  <20070326234315.GE25691@rescomp.berkeley.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Mar 26, 2007 at 04:43:16PM -0700, Ian A. Tegebo wrote:
> I'm finding myself needing perl modules that aren't already ports.  I
> haven't been using BSDPAN because I heard that that method doesn't work
> with portupgrade and friends.  So far I've been following the porter's
> handbook for my own local ports overlay.
> 
> Is there a recommended method for managing perl modules?  I was hoping
> cpan2dist via CPANPlus would do the trick but it looks like it hasn't
> been subclassed for ports yet:
> 
> http://search.cpan.org/~kane/CPANPLUS-0.076/
> 
> I know Gentoo has g-cpan for this purpose and debian has dh-make-perl.
> Is BSDPAN dead simple and I've just been missing out?

Hmm.  Presumably any method you use except when a module is in the ports
collection would not work with portupgrade and friends, for a suitable
definition of "work".

If you want portupgrade and other methods to do the upgrades for you, you
want the modules in the ports collection.  If you create a port, please do
not forget to submit it to the ports collection via send-pr, so that it will
be available to others.

As for how to create ports of Perl modules, there are several methods.  One
of them you already know since you've mentioned reading the porter's
handbook.  Another method is to use BSDPAN to somewhat automate the process:

   http://lists.freebsd.org/pipermail/freebsd-perl/2005-August/000690.html

I believe that Jos told me once that CPANPLUS was very close to be able to
create FreeBSD ports skeletons as well.

If, on the other hand, you don't care about the upgrades, just install your
module from CPAN as you normally would.  If you don't care for the package
entries created by BSDPAN during this process, you can disable it by setting
environment variable DISABLE_BSDPAN.

In my opinion, the largest drawback of BSDPAN is that it does not work with
modules that use Module::Build.  I have a patch that someone sent me that
fixes this;  hopefully I'll find time to intergrate it soon.

Cheers,
\Anton.
-- 
We're going for 'working' here. 'clean' is for people with skills...
-- Flemming Jacobsen



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070327081120.GB23454>