GitHub PR: https://github.com/gentoo/gentoo/pull/45178.

Differences from v1:

        - nginx-module.eclass: pushd uses absolute path to NGINX_MOD_CONFIG_DIR 
in
          src_prepare(); redundant pushd removed from src_test(); EAPI 9 sets 
and
          readonly'ies NGINX_MOD_INSTALL_CONF_STUB instead of adding the EAPI 
check
          to every relevant conditional.

        - nginx.eclass: Ditto for EAPI 9 for NGINX_SUPPORT_MODULE_STUBS.

        - www-nginx/ngx_devel_kit: Fix typo in NGINX_MOD_DONT_INSTALL_CONF_STUB.

See individual commits for bugs that are fixed by this series. Apart from the
bugfixes and some chores/refactors, there are two main highlights of this
series:
    
        - Automatic generation of `load_module` .conf config stubs. These stubs
          supplant manual management (enabling/disabling) of third-party 
modules.
          Now, toggling dynamic modules should be as easy as adding/removing
          symlinks between /etc/nginx/modules-{available,enabled}. There is WIP 
on
          eselect module to make this even more convenient. See bug 967022 for 
more
          details.

        - EAPI 9 support. Descriptions of the eclasses also include porting 
notes,
          to help out the consumers of the eclasses.

Zurab Kvachadze (9):
  nginx-module.eclass: Handle config's with no terminating LF in
    src_prepare
  nginx{,-module}.eclass: Return 0 in econf_ngx() if $1 == --help
  nginx.eclass: Use DESTDIR="${D}" instead of ${ED} in src_install()
  nginx-module.eclass: Use response file in ngx_mod_append_libs()
  nginx-module.eclass: Use S as NGINX_MOD_S, use NGINX_S for build
    system
  nginx.eclass: Support /etc/nginx/modules-{available,enabled}
  nginx-module.eclass: Autogenerate load_module .conf config stubs
  nginx.eclass: Support EAPI 9
  nginx-module.eclass: Support EAPI 9

 eclass/nginx-module.eclass                    | 350 ++++++++++--------
 eclass/nginx.eclass                           |  45 ++-
 .../ngx-auth-ldap-0.1_p20240424.ebuild        |   5 +-
 .../ngx-authpam/ngx-authpam-1.5.5.ebuild      |   7 +-
 .../ngx-brotli-1.0.0_rc_p20231109.ebuild      |   5 +-
 .../ngx-cache-purge-2.3.ebuild                |   5 +-
 .../ngx-dav-ext/ngx-dav-ext-3.0.0.ebuild      |   5 +-
 www-nginx/ngx-echo/ngx-echo-0.63.ebuild       |   5 +-
 .../ngx-encrypted-session-0.09.ebuild         |   5 +-
 .../ngx-eval/ngx-eval-0_p20240817.ebuild      |   5 +-
 www-nginx/ngx-geoip2/ngx-geoip2-3.4.ebuild    |   5 +-
 .../ngx-headers-more-0.37.ebuild              |   5 +-
 www-nginx/ngx-iconv/ngx-iconv-0.14.ebuild     |   5 +-
 .../ngx-lua-module-0.10.27.ebuild             |   7 +-
 .../ngx-lua-upstream-0.07.ebuild              |   5 +-
 www-nginx/ngx-memc/ngx-memc-0.20.ebuild       |   5 +-
 .../ngx-modsecurity-1.0.4.ebuild              |   5 +-
 www-nginx/ngx-naxsi/ngx-naxsi-1.7-r1.ebuild   |   9 +-
 .../ngx-push-stream-0.6.0.ebuild              |   5 +-
 www-nginx/ngx-rtmp/ngx-rtmp-1.2.2.ebuild      |   5 +-
 .../ngx-set-misc/ngx-set-misc-0.33.ebuild     |   5 +-
 www-nginx/ngx-srcache/ngx-srcache-0.33.ebuild |   5 +-
 .../ngx-upload-progress-0.9.3.ebuild          |   5 +-
 www-nginx/ngx-vod/ngx-vod-1.33.ebuild         |   5 +-
 www-nginx/ngx-vts/ngx-vts-0.2.4.ebuild        |   9 +-
 www-nginx/ngx-xss/ngx-xss-0.06.ebuild         |   5 +-
 .../ngx_devel_kit/ngx_devel_kit-0.3.4.ebuild  |   7 +-
 www-nginx/njs/njs-0.9.4.ebuild                |  10 +-
 .../files/{nginx-r4.conf => nginx-r5.conf}    |   3 +-
 ...x-1.28.1.ebuild => nginx-1.28.1-r1.ebuild} |   5 +-
 ...x-1.29.4.ebuild => nginx-1.29.4-r1.ebuild} |   3 +-
 www-servers/nginx/nginx-9999.ebuild           |   5 +-
 32 files changed, 326 insertions(+), 234 deletions(-)
 copy www-servers/nginx/files/{nginx-r4.conf => nginx-r5.conf} (94%)
 copy www-servers/nginx/{nginx-1.28.1.ebuild => nginx-1.28.1-r1.ebuild} (89%)
 copy www-servers/nginx/{nginx-1.29.4.ebuild => nginx-1.29.4-r1.ebuild} (92%)

-- 
2.52.0


Reply via email to