Date: Thu, 06 Feb 2014 22:23:37 +0100 From: olli hauer <ohauer@gmx.de> To: "freebsd-ports@freebsd.org" <freebsd-ports@FreeBSD.org> Cc: Dewayne Geraghty <dewayne.geraghty@heuristicsystems.com.au> Subject: Re: bsd.apache.mk Malformed conditional when APACHE_VERSION defined Message-ID: <52F3FD59.4060708@gmx.de> In-Reply-To: <52EF4613.9060006@heuristicsystems.com.au> References: <52EE0BD3.8000006@heuristicsystems.com.au> <52EE2337.9080809@gmx.de> <52EF4613.9060006@heuristicsystems.com.au>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2014-02-03 08:32, Dewayne Geraghty wrote: > > On 2/02/2014 9:51 PM, olli hauer wrote: >> On 2014-02-02 10:11, Dewayne Geraghty wrote: >>> I filed a PR against textproc/htdig which should really be against the >>> ports systems. >>> >>> Would someone be kind enough to advise the current method to specify the >>> apache version. In ports.conf, I currently use >>> USE_APACHE=22 | APACHE_VERSION=22 >>> to specify the required version of apache for: >>> textproc/htdig >>> www/mod_security >>> lang/php5 >>> >>> I believe this PR >>> >>> http://www.freebsd.org/cgi/query-pr.cgi?pr=186364 >>> >>> which probably should be routed to the ports system, and not textproc/htdig >>> >>> The error is: >>> cd /usr/ports/textproc/htdig && make -V UNIQUENAME >>> "/usr/ports/Mk/bsd.apache.mk", line 306: warning: String comparison >>> operator should be either == or != >>> "/usr/ports/Mk/bsd.apache.mk", line 306: Malformed conditional >>> (!empty(_APACHE_VERSION_MINIMUM) && (${_APACHE_VERSION} < >>> ${_APACHE_VERSION_MINIMUM})) >>> "/usr/ports/Mk/bsd.port.mk", line 6603: if-less endif >>> make: fatal errors encountered -- cannot continue >>> >>> which goes away if APACHE_VERSION isn't used, eg. >>> cd /usr/ports/textproc/htdig && make __MAKE_CONF=/dev/null -V UNIQUENAME >>> htdig >>> >> Hi Dewayne, >> >> APACHE_VERSION is a read only variable in case a port needs to know the >> installed / default Apache version -> do not set this variable! >> >> In case you want to specify a default apache use in etc/make.conf for example >> APACHE_PORT=www/apache22 >> >> See lines 12 - 25 in Mk/bsd.apache.mk >> >> > > Olli, > Thank-you for pointing me to the right place. I've removed > APACHE_VERSION=22; > but noted that > > PERL_VERSION=5.16.3 | PYTHON_VERSION=python2.7 > remain valid, which maintains my confusion. > > With the ongoing changes to the ports system, I've also retained this line in make.conf > DEFAULT_VERSIONS=perl5=5.16 python=2.7 python2=2.7 apache=22 Apache ports don't support the DEFAULT_VERSIONS variable because there are 5 different apache22 flavors that cannot run in a mix. See output from the command $ egrep 'apache2[24]' /usr/ports/www/Makefile | awk '{print "www/" $3}' www/apache22 (default prefork) www/apache22-event-mpm www/apache22-itk-mpm www/apache22-peruser-mpm www/apache22-worker-mpm www/apache24 So the only supported way for apache is to specify for example APACHE_PORT= www/apache22-worker-mpm > Though I suspect that using the latter is preferred and should be the stable way of constricting versions? > > The last rebuild of all ports occurred on Jan 20, strange that APACHE_VERSION=22 didn't halt that rebuild cycle, as bsd.apache.mk has been changed for 2 months... One of life's mysteries. The build of the www/htdig port has changed a little bit and does no longer include explicit <bsd.apache.mk> so your issue popped up. Anyway if you run the www/apache22 port and not one of the 4 other flavors you don't need to specify anything. PS: can I close PR 186364 -- Regards, olli
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?52F3FD59.4060708>