Maxim Dounin
December 04, 2022 04:12PM
Hello!

On Sun, Dec 04, 2022 at 11:12:55PM +0300, Dmitry Petrov wrote:

> >You may want to be more specific about issues you are talking
> about. In general, nginx build system requires little to no
> effort from developers.
>
> I'm speaking about manual vs automatic source-level dependency handling.
> For example, CORE_DEPS is an easy but inaccurate cross-platform hack. The
> same is true for ADDON_DEPS: if you add any header here, all addons will be
> rebuilt on that header change.
> That's not a big deal, because C compiles fast enough and ccache could be
> used to mitigate "false positives" of hand-written deps. But there's room
> for improvement for sure.
> For example, I had build issues because of forgetting to include headers
> into core/addon deps after splitting addon into a set of header/source
> files.

So, the issues you are talking about is the fact that nginx won't
magically find out which header files you are using, but instead
requires you to list them in the ngx_module_deps variable when
calling the auto/module in the module config script, correct?

Thanks for the explanation.

> >There are no plans to support CMake.
> Targeting any modern C-oriented build system would add many benefits
> including "standardized" routines for library detection, dependency
> handling, etc.

The "make" build system as used by nginx is a modern, C-oriented
build system. Further, it is standardized, and provides as much
portability as no other build system known. Shell, as used to
generate makefiles, is believed to be simple enough to implement
any needed library detection.

> Are there any plans on adding "per-addon header deps" so changes to a
> single header don't result in all addons recompiling?

As of now, there are no such plans. Just rebuilding all the
modules if a header changes is believed to be fast enough
approach. Further, it is usually trivial to configure a build
environment for development which does not contain any additional
modules, reducing potential benefits from such a change.

--
Maxim Dounin
http://mdounin.ru/
_______________________________________________
nginx-devel mailing list -- nginx-devel@nginx.org
To unsubscribe send an email to nginx-devel-leave@nginx.org
Subject Author Views Posted

Using cmake with nginx

Dmitry Petrov 432 December 02, 2022 06:10AM

Re: Using cmake with nginx

Maxim Dounin 118 December 02, 2022 11:08AM

Re: Using cmake with nginx

Dmitry Petrov 112 December 04, 2022 03:14PM

Re: Using cmake with nginx

Maxim Dounin 108 December 04, 2022 04:12PM

Re: Using cmake with nginx Attachments

Dmitry Petrov 106 December 04, 2022 07:18PM

Re: Using cmake with nginx

Maxim Dounin 130 December 05, 2022 06:04PM

Re: Using cmake with nginx

Alejandro Colomar 101 December 04, 2022 04:12PM



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

Online Users

Guests: 130
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