Welcome! Log In Create A New Profile

Advanced

Re: Is there a particular reason --with-compat isn't enabled by default?

Thomas Ward
May 16, 2018 12:46PM
Maxim,


On 05/16/2018 12:24 PM, Maxim Dounin wrote:
> Hello!
>
> On Wed, May 16, 2018 at 12:03:51PM -0400, Thomas Ward wrote:
>
>> On 05/10/2018 08:47 AM, Maxim Dounin wrote:
>>> More importantly, "--with-compat" provides compatibility between
>>> builds with different configure options.
>>>
>>> Without the "--with-compat" argument, one have to use exactly the
>>> same "./configure" line to build both nginx and a module. The
>>> "--with-compat" option relaxes this restriction, and it is more or
>>> less enough to build both nginx and a module with "--with-compat".
>>>
>>> This generally simplifies building dynamic modules, and also
>>> allows one to load the same module into different nginx variants
>>> built with different flags.
>> Is there a reason, then, that `--with-compat` is not a default build
>> option?  Is there a particular specific reason it was *not* set as a
>> default compile-time option?
> The main reasons are that "--with-compat" is not needed when not
> using dynamic modules built separately, and compiling nginx with
> "--with-compat" results in slightly less optimal binaries (with
> various otherwise unneeded placeholder fields added to
> structures).
>
> We've considered making it the default when it was introduced, but
> decided to keep it as an explicit option then. This might worth
> reconsidering.
>
I agree it might be worth a reconsideration, in fact I am a supporter of
making `--with-compat` a default option, not only to make my job as a
downstream packager easy, but because this would also benefit the
nginx.org open-source nginx repository as well.  With the number of
third-party dynamic modules increasing, and more users wanting to
utilize them, it may be detrimental to leave it disabled.  When the
support was first released, and dynamic modules were 'new', it made
sense to leave it disabled, but with more and more modules becoming
dynamically-supported it could be detrimental to leave this 'default
disabled'.

With specific regard to the nginx.org repositories, at last I checked a
couple weeks ago, they aren't currently built with `--with-compat`
(unless I missed a recent change to the OSS packaging on hg.nginx.org),
which means it's equally difficult for users to use the nginx
repositories without compiling NGINX themselves with third-party
modules.  If with-compat becomes the default, then this makes things
easier for users using the nginx.org repos as well as other downstream
distributions' packages going forward.



Thomas
_______________________________________________
nginx-devel mailing list
nginx-devel@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-devel
Subject Author Views Posted

Is there a particular reason --with-compat isn't enabled by default?

Thomas Ward 566 May 09, 2018 12:30PM

Re: Is there a particular reason --with-compat isn't enabled by default?

ru@nginx.com 496 May 10, 2018 06:20AM

Re: Is there a particular reason --with-compat isn't enabled by default?

Maxim Dounin 464 May 10, 2018 08:48AM

Re: Is there a particular reason --with-compat isn't enabled by default?

Thomas Ward 412 May 16, 2018 12:06PM

Re: Is there a particular reason --with-compat isn't enabled by default?

Maxim Dounin 380 May 16, 2018 12:26PM

Re: Is there a particular reason --with-compat isn't enabled by default?

Thomas Ward 367 May 16, 2018 12:46PM

Re: Is there a particular reason --with-compat isn't enabled by default?

Maxim Dounin 426 May 16, 2018 01:16PM

Re: Is there a particular reason --with-compat isn't enabled by default?

Thomas Ward 469 May 16, 2018 01:24PM



Sorry, you do not have permission to post/reply in this forum.

Online Users

Guests: 180
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready