On Mon, 16 Nov 2009 15:58:23 -0800, Doug Barton <do...@freebsd.org> wrote: > Sandra Kachelmann wrote: >> (portmaster author cc:ed) >> >> On Mon, Nov 16, 2009 at 1:06 AM, Erik Trulsson <ertr1...@student.uu.se> >> wrote: >>> On Sun, Nov 15, 2009 at 11:44:04PM +0100, Sandra Kachelmann wrote: >>>> Is there a reason why BUILD_DEPENDS aren't being removed after a port >>>> has been installed and if no other installed port depends on it? >>> How do you know that the user does not want that port installed? >>> And what if the user will install 20 other ports afterwards - all of >>> which >>> is that same port as a BUILD_DEPENDS - should that port be >>> installed/deinstalled each and every time? >> >> It would be nice if this was configurable. Maybe it could be even >> integrated into portupgrade or portmaster. If such a port is installed >> directly it could get a package entry DIRECT_INSTALLED=yes in >> /var/db/pkg/.. or something (there is probably a better way to do >> this). > > I have a new feature in the svn version of portmaster called > --packages-build that for any given run creates an internal list of > dependencies that are only ever listed as build deps (never run deps) > and installs packages for them but builds everything else. This > feature was created at the request of one of companies that sponsored > the package installation code. Currently it does not pkg_delete those > packages when it's done, but I could easily add that.
\o/ > Actually I suppose it would not be too hard to extend that "list of > build only deps" idea to a general feature which deletes them when > done. Something like --delete-build-only maybe? This would be limited > to the subset of the list of build-only deps that portmaster actually > installed. Just because something is build-only for a given run of > portmaster doesn't mean that it isn't a run dep for something else if > it is already installed. I think this can be handled better with a "--finish-cmd". After portmaster is done with everything, exec the finish command. A port build server can then pkg_delete -a and see what's still left in $PREFIX, while a casual user can run pkg_cutleaves -xRg to add the newly installed leafs to the exclude file and remove the build dependencies and their dependencies. >>> (Personally I would be *very* annoyed if, for example, libtool or >>> automake/autoconf would be reinstalled every time I installed a port >>> which >>> had one of them as a build-time dependency. > > Well then don't use the option. :) Options are generally good things. With libtool there is a gotcha though. If you change CC/CXX, libtool has to be rebuilt, so the package may not be valid. -- -- Mel _______________________________________________ freebsd-ports@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-ports To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"