Folks on pkg-discuss: this is how we plan to use the functionality I
sent a review request on pkg-discuss for a few moments ago.
The bugs:
11127 need to handle export build
13565 nightly mail_msg shouldn't contain manifest build output
13932 package makefiles should not contain package metadata
The webrevs:
http:/cr.opensolaris.org/~mjnelson/webrev.pkgmetadata/
http://cr.opensolaris.org/~mjnelson/webrev.pkgmetadata.manifests/
The caveats:
- I haven't built my repository since I pulled the latest sync, so I
haven't run a full publication build since I synced to on_ips tip.
I have, however, verified that the failure is expected: the first
several-to-many packages are published correctly, until they hit a
failure trying to locate newer objects in an older proto area.
- Similarly, I have not retested the export and crypt targets since I
initially implemented them, and that was before the majore rewhack.
- Unless you're insanely bored, I don't recommend looking at the
manifests webrev. Seriously. It contains the removal of a the
org.opensolaris.consolidation property from every single manifest.
There were two manifests (SUNWcryptoint and SUNWonbld) that had
other changes, and those manifests both appear in both webrevs. So
I'm serious, I don't think you need to look at the second webrev.
- On a related note, if you don't think I should have pulled the
consolidation specification out of the manifests and into the default
transform set, please let me know. And yes, I know it's not a
transform, but it IS a default.
- The mechanism by which I accomplished depend_incorp is somewhat ad
hoc. Unless we make dramatic changes to pkgmogrify (ie we violate
the 1:1 line mapping for transforms), or we allow a separate make
target to modify the same files, I didn't think of a much better
way.
- I'm open to suggestions on the semantics of a "standalone" package.
This could be "noincorp" instead, leaving it in the group package.
But SUNWonbld, at the least, needs to be unincorporated.
- I changed the incorporation to include (during a closed build) incorporate
dependencies on the packages in the extra repository. If y'all
think that's wrong, then I think we would want a separate, extra
incorporation. But I'm pretty sure what I did is better.
- This work depends on updates to pkgmogrify. I'm sending that webrev
out momentarily, and will cc the same lists.
- After this update, usr/src/pkg/Makefile will have no user
serviceable parts. Users should interact with the packaging
infrastructure by adding/changing the contents of
usr/src/pkg/manifests.
- I owe a more complete "how to" doc, but for now I commented the
Makefile pretty liberally, and updated README.src minimally.
- I went to a fair amount of trouble to fully specify the dependency
chain, and to document it in the Makefile. I believe that
incremental builds now work correctly with regard to that chain.
But I could sure use a sanity check there.
- On a related note, I tried to keep the metadata as side effects of
package processing, and to rebuild it completely each time a package
is reprocessed. I could use some sharp eyes on that, too.
--Mark
_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss