Requested changes to lang/php5 port

Maxim Khitrov max at mxcrypt.com
Mon Feb 20 22:31:01 UTC 2012


On Fri, Feb 10, 2012 at 9:38 PM, Maxim Khitrov <max at mxcrypt.com> wrote:
> On Fri, Feb 10, 2012 at 8:43 PM,  <rflynn at acsalaska.net> wrote:
>>> On Fri, Feb 10, 2012 at 12:41 PM, Maxim Khitrov <max at mxcrypt.com> wrote:
>>>> Hello,
>>>>
>>>> I'd like to request two minor changes to the lang/php5 port:
>>>>
>>>> 1. Change 'CONFIGURE_ARGS=' line to 'CONFIGURE_ARGS+=' to allow
>>>> customizations to the arguments. One reason for this is that some
>>>> extensions, like security/php5-hash, have to be compiled into the
>>>> core. Otherwise, 'session.hash_function' option cannot use hash
>>>> algorithms offered by that extension. See the following bug report for
>>>> more info:
>>>>
>>>> https://bugs.php.net/bug.php?id=53789
>>>>
>>>> 2. Unless there is a very good reason for keeping them, I think
>>>> '--enable-libxml' and especially '--enable-mysqlnd' should be removed
>>>> from the default set of arguments. Make these two part of the options
>>>> dialog, if you want, but there are plenty of installations that have
>>>> no need for any MySQL or XML functionality. Why compile these into the
>>>> core by default?
>>>
>>> Actually, I now realize that changing 'CONFIGURE_ARGS=' to
>>> 'CONFIGURE_ARGS+=' wouldn't help me, because --disable-all would
>>> negate --enable-hash, which I was planning to specify.
>>
>> No, it won't negate it. --disable-all means "start with an empty set and
>> for each --enable-foo add foo to the set".
>>
>> You can add to CONFIGURE_ARGS using a Makefile.local which is included
>> at bsd.port.pre.mk time.
>
> Didn't know about Makefile.local, thanks! I tested the
> 'CONFIGURE_ARGS+=' solution and it does work. I was under the
> impression that order mattered.
>
> That method is slightly better than Makefile.local, because I try to
> manage all port customizations with portconf. Otherwise, it's easy to
> forget all the changes you made to get things working exactly right. I
> also exclude /usr/ports from backups, so all settings would revert to
> their defaults if I ever had to re-extract the entire tree.
>
>>> As for removing --enable-libxml, it seems to be required when building
>>> the port (maybe for fpm?), but --enable-mysqlnd should definitely be
>>> removed by default.
>>
>> As far as I can tell, --enable-mysqlnd does not add to dependencies, as:
>> make -C /usr/ports/lang/php5 all-depends-list
>> shows me as does:
>> % ls /var/db/pkg|egrep 'php|mysql'
>> php5-5.3.9
>
> True, but it's still unnecessary. It increases the size of all
> binaries (php, php-cgi, php-fpm) and adds a ton of useless information
> to phpinfo() output.
>
> I think that making it an option that is enabled by default is
> perfectly reasonable. I've attached a patch that does this. Tested it
> on FreeBSD 9.0-RELEASE amd64.
>
> - Max

Alex,

So would it be possible to get this patch committed or are there some
reasons why mysqlnd must be enabled in all cases?

- Max


More information about the freebsd-ports mailing list