On Fri, Feb 10, 2012 at 8:43 PM,  <rfl...@acsalaska.net> wrote:
>> On Fri, Feb 10, 2012 at 12:41 PM, Maxim Khitrov <m...@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

Attachment: php5-mysqlnd.patch
Description: Binary data

_______________________________________________
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"

Reply via email to