Stephen Montgomery-Smith wrote:
I have looked into making the registration and package-building process
even faster. It seems to me that the easiest way would be to redesign
the package database so that it also includes a
package-name/+DEPENDENCIES file, which would be a kind of reverse of
package-name/+REQUIRED_BY. This could be used instead of "make
package-depends" in creating PKG_ARGS in bsd.port.mk. Creating
+DEPENDENCIES would be very easy - you "cat" together the files of the
immediate dependencies ${RUN_LIB_DEPENDS} and do a "uniq" to the final
result.
Stephen
OK, I am going to retract this suggestion. The real reason, I think,
that make package-depends is so slow is that invoking make is so slow.
Try adding these lines to /usr/ports/Mk/bsd.port.mk:
yyy:
@for dir in ${_LIB_RUN_DEPENDS:C,[^:]*:([^:]*):?.*,\1,}; do \
(cd $$dir; ${MAKE} xxx); \
done
xxx:
@${ECHO_CMD} ${PKGNAME}
Then cd to /usr/ports/x11/gnome2 and type
make yyy
All it is supposed to do is list the names of the immediate
dependencies. Even this is dead dog slow!!! And the problem is, there
simply is no other way to find out the name of the package except by
invoking make in the directory. So even if all the +DEPENDENCIES are in
/var/db/pkg-name, even to find pkg-name is going to take a long, long time.
Basically I think we are stuck on making "make package-depends" go any
faster.
However I do think that the modifications I made to pkg_create go a very
significant way to solving the problem of registration taking so very long.
Stephen
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "[EMAIL PROTECTED]"