Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 4 Aug 2014 15:09:29 -0400
From:      Matthew Pounsett <matt@conundrum.com>
To:        Melvyn Sopacua <melvyn@magemana.nl>
Cc:        ports@FreeBSD.org
Subject:   Re: WANT_PHP_WEB is just a synonym for WANT_PHP_CGI in automated build environments
Message-ID:  <53C30028-5EC5-41AC-A841-6DF28892DA22@conundrum.com>
In-Reply-To: <alpine.BSF.2.00.1408031806090.740@fire.magemana.nl>
References:  <F00B4361-E712-4E1D-B95F-E11C41BDA3C6@conundrum.com> <alpine.BSF.2.00.1408030749570.96074@fire.magemana.nl> <C11DB032-E822-4C6B-A93B-7A62B242CC6B@conundrum.com> <alpine.BSF.2.00.1408031806090.740@fire.magemana.nl>

next in thread | previous in thread | raw e-mail | index | archive | help

On Aug 3, 2014, at 12:29 , Melvyn Sopacua <melvyn@magemana.nl> wrote:

> Hi Matthew,
>=20
> On Sun, 3 Aug 2014, Matthew Pounsett wrote:
>=20
>> On Aug 3, 2014, at 02:07 , Melvyn Sopacua <melvyn@magemana.nl> wrote:
>=20
>>> For automated builds use the OPTIONS framework. Tinderbox can handle
>>> that just fine.
>>=20
>> Right, and I=92m speaking from the perspective of the admin building =
the
>> port, not the maintainer.  The maintainer can set that the port will
>> work with either .. but in an automated build environment it looks
>> like there is no knob for the administrator to tell the ports system
>> which to use.
>=20
> Unless that changed in recent years, you can have Tinderbox mount your
> options database in /var/db/ports into the build jail. So you can do =
one
> configure run and set it.

Do one configure run to set what?  The whole point of this thread is =
that there is no configure option to tell a port that uses WANT_PHP_WEB =
to require mod_php5. =20

Besides which, tinderbox has one options database per build.  It doesn=92t=
 use the options database in /var/db/ports.

>=20
> A second possibility is to simply add www/mod_php5 to ports to be =
built,
> since it's no longer part of lang/php5. This won't work for the
> upstream-abandoned php 5.3.
>=20
> A third is to set php53_SET=3DAPACHE in /etc/make.conf.

Manually telling the system to build a package will get it built, but =
doesn=92t solve the dependency problem.  The whole point of dependencies =
is that when you install a port/package the things it requires will also =
get installed .. if a port that uses WANT_PHP_WEB can=92t be told to =
require mod_php5, then the dependency doesn=92t exist.  Again, we=92re =
back to WANT_PHP_WEB being a synonym for WANT_PHP_CGI.

Your other suggestion seems to be that in order to get the php module to =
be a dependency of some other port I need to use an old version of php.. =
I=92m not sure how seriously I should take that.


>> Again.. unless I=92m missing some knob that exists to give guidance =
to
>> the ports system.   I=92m familiar with the options framework, but I
>> can=92t find anything in bsd.php.mk that could be used to give =
guidance
>> to the ports system that mod_php5 is desired when WANT_PHP_WEB is
>> defined.
>=20
> WANT_PHP_WEB actually pulls in the apache module if php is installed
> only with the CLI or EMBED backend. See this bit:
>=20
> if defined(WANT_PHP_MOD) || (defined(WANT_PHP_WEB) && =
defined(PHP_VERSION) && ${PHP_SAPI:Mcgi} =3D=3D "" && ${PHP_SAPI:Mfpm} =
=3D=3D "")
> USE_APACHE_RUN=3D 22+
> .include "${PORTSDIR}/Mk/bsd.apache.mk"
> RUN_DEPENDS+=3D   =
${PHPBASE}/${APACHEMODDIR}/libphp5.so:${PORTSDIR}/${MOD_PHP_PORT}
> .endif

That=92s not how I read that.  I=92ve read this piece of code and it=92s =
how I arrived at the conclusion that WANT_PHP_WEB is a synonym for =
WANT_PHP_CGI in automated build environments.  The above code seems to =
say that libphp5.so should only be set if WANT_PHP_MOD is set, OR if =
WANT_PHP_WEB is set AND PHP is installed AND the CGI and FPM options for =
the CGI module are unset.=20

As far as I can tell, the only way you get an installed version of PHP =
without either the CGI or FPM options set is to install mod_php5.  That =
makes installing mod_php5 a prerequisite to making mod_php5 a dependency =
to any port that uses WANT_PHP_WEB.





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?53C30028-5EC5-41AC-A841-6DF28892DA22>