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

Reply via email to