On 09/29/10 02:28 PM, Janie Lu wrote:
Although I'd have expected that to affect both a debug and a non-debug
build.

[email protected] would be able to help more with these sort
of issues, as well.

Thanks, I've added that alias to this thread now as I'm not clear on
whether this is a pkg or DC issue.

Summary of the Situation:
When attempting to create a debug AI ISO using DC on a BE running
nv_143, with DC manifest specifying to install [email protected],5.11-0.143, the build fails because it says SUNWcs requires five packages at nv_145.

I think you misunderstood; you need to rebuild on-nightly on a system with build 143.

The pkg build process creates dependencies based on the OS version that the *build machine* is running? That doesn't seem right.

Instead, shouldn't pkg be using the OS version that the *source code* is based on when creating packages from that code? (This info is available in the macro "ONNV_BUILDNUM" in usr/src/Makefile.buildnum)


GIVEN THAT:
        SUNWcs requires packageX.
        Developer workspace is based on nv_143.
        Developer builds his workspace on a machine running nv_145.


CURRENT BEHAVIOR:
       sun...@143 depends on packa...@145.
       Why:  IPS uses the build machine OS version to set package
dependencies, regardless of the source code's OS version.

SHOULD BE:
       sun...@143 depends on packa...@143.
       Why:  IPS looks at the source code being built to determine the OS
                   version and then sets dependencies accordingly.


That's not a tractable problem to solve. pkgdepend is able to infer dependencies on the versions of @145 because it can determine what is in the packages @ 145 (because they're on your system). It's not safe to s/145/143 because a file may have moved in build 144, meaning the package dependencies should be different. One option is to change pkgdepend to run with -S (so it won't use any of your system information) and either accept that dependencies will be missed or provide more manifests on the command line.

There's possibly an RFE to file here to have pkgdepend resolve against an incorporation, but that's unlikely to be implemented any time in the near future. If that were implmented, then whatever build system you're using would still be responsible for determining what the relevant onnv build number was, determining which incorporations at that version should be resolved against, and providing pkgdepend with the appropriate command line options.

Thanks,
Brock


Let me know if I'm not understanding the situation correctly.
Janie



From the output above, the package:

pkg://on-nightly/[email protected],5.11-0.143*:20100924T102057Z

...is the one that has requirements on build 145+ packages.

If you look at the package manifest for SUNWcs, I imagine you'll find that it contains dependencies you don't expect.

-Shawn
_______________________________________________
caiman-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/caiman-discuss

_______________________________________________
caiman-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/caiman-discuss

Reply via email to