Date: Tue, 15 Oct 2002 17:44:35 +0400 (MSD) From: "."@babolo.ru To: "Clark C. Evans" <cce@clarkevans.com> Cc: ports@FreeBSD.ORG Subject: Re: why is .install_done needed? It seems redundant. Message-ID: <200210151344.g9FDiZv5061123@aaz.links.ru> In-Reply-To: <20021015033313.GA37677@doublegemini.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> On Tue, Oct 15, 2002 at 03:52:18AM +0400, "."@babolo.ru wrote: > | > 2) Where are these ports storing the flag that says > | > they are already installed? Any good way to > | > reset this flag or have this flag be in the > | > /var partition (which is different for each install?) > | > | ${WRKDIR}/.STAGE_done.NAME-VERSION > | usually ${WRKDIR} is ./work > > Thanks. Is there a way to tell "make install" to use > pkg_info to deterimine if a port is installed rather > than keying from the .install_done.NAME-VERSION file? Remember, that all: - ports tree (usually /usr/ports) - distfiles (usually /usr/ports/distfiles) - WRKDIR (and WRKDIRPREFIX) - /var/db/pkg can be located on different hosts and shared, or in different roots on some hosts, so use "make reinstall" when you shure what you do. pkg_info's database used both install and reinstall, in addition to ${WRKDIR}/ marks. > Logic I'd like to see for "make install" --- > > grab the port name > check to see if it appears in pkg_info list > if so, check the version > if the versions match, do nothing > if the versions mis-match, complain loudly > check-dependencies using the same method > if not, > then install > > I don't see why "make install" should be using > .install_done at all, as installation is a > property of the system installed upon (/var) > and not a property of the package or its > current state of preparation. > > In short, I think the .install_done.NAME-VERSION is > not only useless, but perhaps even harmful? As a work-around > for this behavior, I've created to fill in the required > .install_done files from pkg_info... .... find ${WRKDIRPREFIX} -maxdepth 6 -name .install_done.\* -delete or cd ${WRKDIRPREFIX}; rm -f usr/ports/*/*/*/.install_done.* but remember make reinstall -- @BABOLO http://links.ru/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200210151344.g9FDiZv5061123>