Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 29 Apr 2002 22:28:43 +1000
From:      Edwin Groothuis <edwin@mavetju.org>
To:        Peter Pentchev <roam@ringlet.net>
Cc:        Maxime Henrion <mux@freebsd.org>, ports@FreeBSD.org
Subject:   Re: patch to have make clean not recurse in ${PORTSDIR}
Message-ID:  <20020429222843.P56612@k7.mavetju.org>
In-Reply-To: <20020429121211.A342@straylight.oblivion.bg>; from roam@ringlet.net on Mon, Apr 29, 2002 at 12:12:11PM %2B0300
References:  <20020426204935.GA42922@elvis.mu.org> <3CC9D357.9010105@owt.com> <20020426224107.GB42922@elvis.mu.org> <20020427090419.F56612@k7.mavetju.org> <20020426232017.GC42922@elvis.mu.org> <20020427094000.H56612@k7.mavetju.org> <20020426235247.GD42922@elvis.mu.org> <20020427101938.A77837@k7.mavetju.org> <20020427002814.GE42922@elvis.mu.org> <20020429121211.A342@straylight.oblivion.bg>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Apr 29, 2002 at 12:12:11PM +0300, Peter Pentchev wrote:
> On Fri, Apr 26, 2002 at 05:28:14PM -0700, Maxime Henrion wrote:
> > Edwin Groothuis wrote:
> > > > Uh ?  In what way ?  The only case that my patch would broke that I am
> > > > able to imagine is if there was some port in /usr/ports depending on
> > > > another port not itself in this tree but elsewhere, which is *very*
> > > > unlikely.
> > > 
> > > It will break if the port itself has a clean-target. Not all of
> > > them, actually probably close to "none of them" has it, but they
> > > have the capability to have one and that is something which should
> > > be reserved.
> > 
> > That's right.  I think it's a good thing if my patch breaks something
> > which a port shouldn't do anyway, though. :-)
> 
> My feelings exactly.  A port's *build* should not affect anything,
> repeat, *anything*, outside its work directory.  This is even
> codified in the Porter's Handbook, section 15.3 (well, okay, so

I fully agree with this.

> rule as a hard-and-fast one).  The 'clean' target cleans up the files
> generated during the build and the build only.  From these two statements,
> it follows that the 'clean' target should not have - ever - to remove
> any files outside the port's work directory.

It doesn't have to remove the files outside the ports work directory,
but your statement of "cleans up files during the build process"
is not true, it does a full rm -rf of the work directory.

If my pre-fetch statement (for example one like the one from postfix)
creates a configuration file in the workdir (unlike postfix, which
does it in the port-dir), it shouldn't have to be deleted by the
clean-statement. Why does postfix store it in the port-dir? Because
a "make clean" doesn't throw it away then. Is this a good thing?
No (I've got shot at because I dared to do the same thing :-)
How can it be solved? Overrule the clean-target in the postfix
Makefile so that it will throw out the srcdir (iirc) and the .*done*
files, but that it leaves the configuration file intact.

Edwin

-- 
Edwin Groothuis      |           Personal website: http://www.MavEtJu.org
edwin@mavetju.org    |        Interested in MUDs? Visit Fatal Dimensions:
bash$ :(){ :|:&};:   |                    http://www.FatalDimensions.org/

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?20020429222843.P56612>