Date: Fri, 23 Mar 2012 07:40:32 -0700 From: "Jason Helfman" <jhelfman@e-e.com> Cc: ports@freebsd.org, Michael Scheidell <scheidell@freebsd.org> Subject: Re: why :: in ports makefile ? Message-ID: <f4fefd80cdb1f201d042dd6fc063f41d.squirrel@mail.experts-exchange.com> In-Reply-To: <a388d035554cac675d983f40d131a030.squirrel@mail.experts-exchange.com> References: <4F6C8893.6040005@FreeBSD.org> <a388d035554cac675d983f40d131a030.squirrel@mail.experts-exchange.com>
next in thread | previous in thread | raw e-mail | index | archive | help
>> I have never seen this before, and I wanted to know what it does. >> >> diff -ruN /tmp/p5-Mail-SpamAssassin.org/Makefile >> /tmp/p5-Mail-SpamAssassin/Makefile >> --- /tmp/p5-Mail-SpamAssassin.org/Makefile 2012-02-08 00:17:28.000000000 >> +0900 >> +++ /tmp/p5-Mail-SpamAssassin/Makefile 2012-03-06 08:55:28.445163638 >> +0900 >> @@ -219,7 +219,7 @@ >> .endif >> @${INSTALL_DATA} ${WRKSRC}/spamc/libspamc.h ${PREFIX}/include >> >> -post-install: >> +post-install:: >> .if defined (WITH_SPAMC) >> @${STRIP_CMD} ${PREFIX}/bin/spamc >> .endif >> >> (this patch was sent to me by the maintainer of ja-p5-Mail-SpamAssassin. >> I suggested that he change his port to a slave port so that it would be >> easier to follow, and he has done a good job. >> >> I just wanted to know what the differences are in the port Makefile >> between a ':' and a '::' >> >> Does this have to do with slave port(ish) things? does this force it to >> execute? what is it? >> >> Pardon my ignorance, I have just never seen this before in any port I >> have >> maintained, or worked on. >> >> (reference this PR for context) >> >> <http://www.freebsd.org/cgi/query-pr.cgi?pr=165765> >> >> >> > > from make manapage > (http://www.freebsd.org/cgi/man.cgi?query=make&apropos=0&sektion=0&manpath=FreeBSD+9.0-RELEASE&arch=default&format=html): > > :: If no sources are specified, the target is always re-created. > Otherwise, a target is considered out-of-date if any of its sources > has been modified more recently than the target. Sources for a > target do not accumulate over dependency lines when this operator is > used. The target will not be removed if make is interrupted. > > This is typically used in ports for pre-everything target, but have never > seen it on post-install. I don't see why the :: is necessary, either, as > ':' should do in this case. > > -jgh Unless, of course, the maintainer wants to override the master target of the same name. I believe this may be the intention. -jgh
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?f4fefd80cdb1f201d042dd6fc063f41d.squirrel>