Hi, On Wed, May 24, 2017 at 04:23:15PM +0200, René J.V. Bertin wrote: > AFAIK the way rev-upgrade works is > - rev-upgrade scans a list of all supposed-to-be-present binary files
Correct. > - for each file on that list it determines the list of dependencies > (or list of deps provided by active ports) The part outside of parentheses is correct, the part inside isn't. rev-upgrade doesn't care whether the dep is provided by an active port, it just makes sure the library is there and will load. > It seems to me that we thus have the basic features available to write > a SpotLight importer for MachO binary files which would enter this > reverse dependency information in the SpotLight database. IOW, > associate the dependent to each found dependency. Yes, that could be done. The relevant code is in src/machista1.0, with Tcl bindings and in C. I don't see a particular reason why we should involve Spotlight there, especially considering Apple's tendency to break APIs whenever they see fit and introduce a maintenance burden. A SQLite database would do just fine. > Does that sound like a feasible and useful idea (and one that won't > overload SpotLight)? Or maybe someone already invented this wheel > (wouldn't that be nice :))? Most of this is done, really. You just need the file iteration, invoke libmachista/machista1.0 APIs, run over the results and put them into some database. I'm not aware of a finished tool that does it. -- Clemens
