[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [jesse@bestpractical.com: Re: [Rt-devel] FWD: Re: dh-make-perlwith RTx::Shredder-- buggy?]



Jens Porup dijo [Mon, May 16, 2005 at 01:16:00PM +1000]:
> 
> Gunnar,
> 
> here's what the Request Tracker maintainer had to say.
>
> > It uses Module::Install::RTx. Which prompts for your RT installation if
> > it can't find it. But since it needs to install into your RT
> > directories, it can't very well do without it :/

I agree... And it is a very special case. I think this falls out of
dh-make-perl's scope, as it is not just about installing standard Perl
modules. In any case, I think it can still work if your RT.pm is
located at any of Perl's standard include directories (@INC), as the
prompt in inc/Module/Install/RTx.pm is generated this way:

    until ( eval { require RT; $RT::LocalPath } ) {
        warn "Cannot find the location of RT.pm that defines \$RT::LocalPath. ($@)\n";
        $_ = $self->prompt("Path to your RT.pm:") or exit;
        push @INC, $_, "$_/rt3/lib", "$_/lib/rt3";
    }

That is, if Perl can find RT.pm and upon compiling it it sets
$RT::LocalPath, it will not prompt you with this question, and
dh-make-perl will happily procede to build the package. That is,
create /usr/local/lib/perl/5.8.4/RT.pm containing:

----------------------------------------
package RT;
$LocalPath='/usr/local/lib/perl/5.8.4/';
1;
----------------------------------------

Of course, it will not work :) But it will not just sit and wait. My
build reported me:

(...)
Using RT configurations from /usr/local/lib/perl/5.8.4/RT.pm:
./lib   => /usr/local/lib/perl/5.8.4//lib
configure: creating ./config.status
config.status: creating sbin/rtx-shredder
config.status: creating sbin/rtx-validator
config.status: creating lib/RTx/Shredder.pm
Error No such file or directory at inc/Module/Install/Makefile.pm - /usr/lib/perl5/site_perl/5.8.5/Module/Install/Makefile.pm line 111.
Compilation failed in require at /tmp/RTx-Shredder-0.01/Build.PL line 3.
Compilation failed in require at /usr/share/perl5/Module/Depends/Intrusive.pm line 60.

That means, it will get it right if you have RT.pm installed in a
location Perl knows of. In any case, you can manually download the
distribution tarball, unpack it, modify its Build.PL, add the
directory to the include_dirs, and _then_ use dh-make-perl to build
the package.

Greetings,

-- 
Gunnar Wolf - gwolf@gwolf.org - (+52-55)1451-2244 / 5623-0154
PGP key 1024D/8BB527AF 2001-10-23
Fingerprint: 0C79 D2D1 2C4E 9CE4 5973  F800 D80E F35A 8BB5 27AF



Reply to: