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>