Hi, I have read your mail on hackers@ (I'm not subscribed) with great interest. We're certainly interested in any optimizations for the pkg_install suite.
The pkg database in /var/db/pkg stores two-way dependency chains.
Each port lists all it's dependencies in +CONTENTS file, and all ports
that depend on it in +REQUIRED_BY. When you delete package, all
dependencies of deleted package are iterated and the name of deleted
package is removed from dependency's +REQUIRED_BY file. That's what
undepend() do.
Quick solution would be to gather all depnames for the deleted package,
and then do a single pass over /var/db/pkg entries looking for origins.
Ultimate solution would be to implement a database which would
concentrate origins for all packages with linear lookup time.
The OpenSSL thing I assume is only relevant for people who happen to
have OpenSSL installed from ports. For that, it could be solved by
spamming the required value into /etc/make.conf, similar what perl ports
do. But that really is up to the openssl port maintainer
([EMAIL PROTECTED]).
--
Pav Lucistnik <[EMAIL PROTECTED]>
<[EMAIL PROTECTED]>
If God is perfect, why did He create discontinuous functions?
signature.asc
Description: Toto je digitálně podepsaná část zprávy
