>> On 05/10/10 08:01 AM, Rick McNeal wrote: >>> I'm trying to build ON from the sources and it looks like I've got >>> one last problem to resolve. >>> >>> During the creation of the cpio archives I'm getting the following error: >>> >>> Failed to create generic usr archive: 483740 blocks >>> cpiotranslate: usr/has/bin/pfksh: no packaging info >>> >>> Now, the only place I can find pfksh referenced as package info is in >>> the pkg/manifests/{SUNWcs.mf,shell-ksh88.mf} files. I can probably >>> ignore the error since for my purposes I'm only going to using the >>> package files which have been created without error. I would like to >>> understand why I'm getting this error when clearly it's not >>> expected. >> >> Hi, Rick-- >> >> Any chance that the pfksh in your proto area is from an older build? >> > > This is the second time I've done the build and I already thought that maybe > I had some previous junk lying around. So, I removed archives, log, packages, > and proto in my build area and then kicked the nightly off again. > >> The usr/has/bin/pfksh object is currently produced by the closed build, >> and is not part of the closed bins tarball. Which means that it >> shouldn't be in your proto area, unless it's leftover.
I apologize. As your note indicates, this paragraph was stale information. A recent integration reworked pfexec, and moved the creation of the pfksh link from the closed code to the open pfexec code. > Here I believe is the key. My source tree still has usr/src/cmd/pfexec and I > looked at the install target which has the following: > > for s in $(BINSHELLS) ; do \ > $(RM) $(ROOTBIN)/pf$$s; \ > $(LN) $(ROOTBIN)/pfexec $(ROOTBIN)/pf$$s; \ > done > > So, the error is not that pfksh is old junk in my tree, but that I somehow > still have usr/src/cmd/pfexec in my tree which has been moved to the closed > binary package. Do you concur? Close. The actual link creation code for pfksh is a little bit below the code you quoted, because it lives in $ROOTHASBIN instead of $ROOTBIN. So the real error is that the pfexec link for pfksh is created by the open build, but the package that delivers it (shell/ksh88) is marked as nonredistributable, so the link is in the proto area but not delivered by an open build. The fix should be to add usr/has/bin/pfksh to $CODEMGR_WS/exception_lists/packaging.open. If you confirm that takes care of your problem, I'll integrate it. It's possible that the link count may then be wrong for pfexec, and protocmp will complain. In that case, I'll figure out the best way to silence it, probably via an RFE against validate_pkg. We have one case of an isaexec hardlink to a closed binary that causes the same kind of warning, and it would be nice to get it cleaned up more generally. Sorry to not look more closely the first time. --Mark _______________________________________________ opensolaris-help mailing list opensolaris-help@opensolaris.org