On 10/20/11 09:52, Kristin Beatty wrote:
Mark,
Sorry for the confusion. I first was using "c++" but the data I gave
you the last time was again
"fortran". Let me keep it to "c++" below.
On 10/20/2011 12:20 PM, Mark J. Nelson wrote:
On 10/20/11 10:00, Kristin Beatty wrote:
On 10/20/2011 11:28 AM, Mark J. Nelson wrote:
Are you trying to manually maintain dependencies AND use pkgdepend to
automatically generate dependencies?
no
If so, then you should stick with pkgdepend, and not put the manual
entries there in the first place.
If not, then the generation of duplicate dependencies is a bug.
But the fact that one of the backend dependencies is versioned and the
other isn't suggests that you're supplying the non-versioned one
explicitly.
Manifest for c++ shows:
depend fmri=pkg:/solarisstudio/solarisstudio12.2/cc type=require
depend fmri=pkg:/solarisstudio/solarisstudio12.2/backend type=require
depend fmri=pkg:/solarisstudio/solarisstudio12.2/c++-libs type=require
After running "pkgdepend resolve -s .pre-dedup -m manifest"
manifest.pre-dedup shows:
depend fmri=pkg://solarisstudio/solarisstudio12.2/[email protected]
type=require
depend fmri=pkg:/solarisstudio/solarisstudio12.2/backend type=require
depend fmri=pkg:/solarisstudio/solarisstudio12.2/c++-libs type=require
depend fmri=pkg:/solarisstudio/solarisstudio12.2/cc type=require
For some reason resolve is adding another backend with a dependency.
I could remove
all the @12.2-0.x entries but then I run into a problem like in fortran.
Fortran manifest:
depend fmri=pkg://solarisstudio/solarisstudio12.2/backend type=require
depend fmri=pkg://solarisstudio/solarisstudio12.2/f90-libs type=require
Fortran manifest.pre-dedup after "pkgdepend resolve": (Note addition
of math-libs)
depend fmri=pkg://solarisstudio/solarisstudio12.2/backend type=require
depend fmri=pkg://solarisstudio/solarisstudio12.2/[email protected]
type=require
depend fmri=pkg://solarisstudio/solarisstudio12.2/f90-libs type=require
depend fmri=pkg://solarisstudio/solarisstudio12.2/[email protected]
type=require
You state I can remove the "depends" from the manifest list but we
have to
have them in there to insure that bug fixes that has dependencies on
other packages
get updated too.
If I understood Mark correctly, he wasn't asking you to remove the
@12.2-0.x entries, he was asking you to remove the unversioned
dependencies in your original manifest that pkgdepend is finding (in the
examples above the dependency on backend). Fundamentally, if you don't
want versioned dependencies, don't use pkgdepend resolve, at least not
right now. If you don't want them versioned, I'd be very interested to
hear why.
Like Mark, I'd also be interested to know how the fortran package
depends on f90-libs since this appears to be a gap in pkgdepend's
analysis. (Maybe that would be obvious with the full package to
examine.) The same question also applies for the c++ package depending
on the cc package and the c++-libs package.
I also noticed an important difference in the dependencies that
pkgdepend has found and the ones that you're annotating (assuming that
what's above is an exact replica of what the output is). The manifest
for c++ has pkg:/solairsstudio/..., note the single slash. That has a
different meaning for pkg than pkg://solarisstudio... I'd suggest
changing the c++ manifests to be consistent and use the double slash so
that pkg knows that solarisstudio is a publisher and not the first level
in the name hierarchy.
Brock
[snip]
_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss