[darwinbuild-dev] How to find build version difference
Kevin Van Vechten
kvv at apple.com
Tue Jan 8 18:09:52 PST 2008
Michael's plugin is a good start, however copying the whole Build
plist (with all project attributes) to inspect it is a rather
heavyweight process. It's possible to use the plugin API to search
the data in the sqlite database. The use of this API also answers the
On Jan 7, 2008, at 7:45 PM, Michael Franz wrote:
> I found a slight bug in my implementation. I do not use a complete
> set of project names, so, when the src build has many more projects
> than the destination the diff is incorrect. I am currently looking at
> a way to create a set of the two build project names. This way I will
> have a complete set of all projects in both builds.
CFArrayRef DBCopyProjectNames(CFStringRef build);
This function returns an array of all projects in the given build
(including inherited projects). I believe this is already sorted, but
I'm not 100% sure.
There's also the following function which you might be interested in:
CFArrayRef DBCopyChangedProjectNames(CFStringRef oldbuild, CFStringRef
Also it's not clear to me why DBSetPlist() is called at the end... I
don't think of "diff" as a mutagenic operation.
More information about the darwinbuild-dev