Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 28 Oct 2001 00:24:44 -0400 (EDT)
From:      Mikhail Teterin <mi@aldan.algebra.com>
To:        will@physics.purdue.edu
Cc:        roam@FreeBSD.org, cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org, ports@FreeBSD.org
Subject:   parsing a port's Makefile (Re: cvs commit: ports/graphics/gd Makefile pkg-plist)
Message-ID:  <200110280424.f9S4Ola94466@aldan.algebra.com>
In-Reply-To: <20011027184442.V25747@squall.waterspout.com>

next in thread | previous in thread | raw e-mail | index | archive | help
			[Reply-To: set to ports]

On 27 Oct, Will Andrews wrote:
 
> No. make(1)  parses a  port's Makefile only  once per  invocation. The
> same goes for  bsd.port.mk; if something .include  bsd.port.mk then it
> will be parsed there. Not again.

There are  different invocations. Typical ones,  like ``make configure''
take MUCH more. :-( Here is my test. Add a line

	D!=     echo one more >> ${.CURDIR}/count 

into a  Makefile of any port.  Then do, say, ``make  configure'' of that
port. Then --

	wc -l count
		23 count

23  times just  to  do ``make  configure'' !!  There  are numerous  ``cd
${.CURDIR} && ${MAKE} <some target>'' in the bsd.port.mk...

Even on my PII-300, there is a noticable pausing even for a simple
	time make -V MASTER_SITES
	0.118u 0.125s 0:00.23 100.0%    274+304k 0+0io 0pf+0w

As was noted  before, the style of bsd.port.mk uses  make(1) as a script
processor,  for which  it  is poorly  suited, BTW,  since  it was  never
intended for it :( This is,  probably, something we'll just have to live
with for a while, but we need to know about it...

	-mi



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200110280424.f9S4Ola94466>