[oi-dev] perl module update questions

Tim Mooney Tim.Mooney at ndsu.edu
Mon Mar 16 18:17:34 UTC 2020


In regard to: perl module update questions, Tim Mooney said (at 12:38pm on...:

> All-
>
> I'm working my way through rebuilding hipster's perl modules for perl
> 5.30.1 and I have a couple questions.

I've run into a couple of perl modules for which the publish targets
"pkgdepend resolve" phase outputs dependency errors like:

/export/home/mooney/oi-userland/components/perl/DBI/build/manifest-i386-DBI-524.depend has unresolved dependency '
     depend type=require fmri=__TBD pkg.debug.depend.file=perl \
         pkg.debug.depend.path=usr/perl5/5.24/bin \
         pkg.debug.depend.reason=usr/perl5/5.24/bin/dbiprof \
         pkg.debug.depend.type=script'.

Or

/export/home/mooney/oi-userland/components/perl/Module-Build/build/manifest-i386-Module-Build-530.depend has unresolved dependency '
     depend type=require fmri=__TBD pkg.debug.depend.file=perl \
         pkg.debug.depend.path=usr/perl5/5.30/bin \
         pkg.debug.depend.reason=usr/perl5/5.30/bin/config_data \
         pkg.debug.depend.type=script'.


What, specifically, is pkgdepend saying is missing?  The path (directory)
usr/perl5/5.30/bin ?  Or is it saying that 'perl' is missing in
usr/perl5/5.30/bin ?

I can make pkgdepend ignore the error by doing:

<transform file path=usr/perl5/$(PERLVER)/bin -> set pkg.depend.bypass-generate .* >

but if there's a way to fix the dependency issue, rather than ignore it,
I would prefer to take that approach.

At first I thought it was because the perl module was missing a dependency
on the perl runtime that it's built for.  However, including

 	depend fmri=runtime/perl-$(PLV) type=require

in the .p5m, although probably a good idea anyway, doesn't resolve the
issue.

Then I thought it was because perl 5.22 and 5.24 don't actually have
a 'dir' action for their bin directory, so maybe it was pkgdepend
complaining that the runtime/perl-$(PLV) isn't actually claiming
ownership of path=usr/perl/$(PERLVER)/bin .  However, adding dir
actions like

dir  path=usr/perl5/5.30
dir  path=usr/perl5/5.30/bin

for the runtime/perl-530 didn't make any difference for the modules
built against perl 5.30.

With those two tries not solving the dependency issue, I'm not sure what
the right fix is.  Any suggestions?

Thanks,

Tim
-- 
Tim Mooney                                             Tim.Mooney at ndsu.edu
Enterprise Computing & Infrastructure /
Division of Information Technology    /                701-231-1076 (Voice)
North Dakota State University, Fargo, ND 58105-5164




More information about the oi-dev mailing list