httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From William A Rowe Jr <wr...@rowe-clan.net>
Subject Issues with --enable_mod[ules|s-shared|s-static] 'few', 'none' and proxy
Date Thu, 23 Jun 2016 15:24:04 GMT
So digging deeper, this just seemed odd until I found...

On Thu, Jun 23, 2016 at 10:05 AM, William A Rowe Jr <wrowe@rowe-clan.net>
wrote:

> On Thu, Jun 23, 2016 at 6:13 AM, Jens Schleusener <
> Jens.Schleusener@t-online.de> wrote:
>
>> Just for curiosity I copied the soure code via
>>
>>  svn checkout http://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x
>>
>>  src/httpd-2.4.x> ./buildconf
>>
>>  src/httpd-2.4.x> ./configure --enable-mods-shared=few
>>
>>  configure: loading site script /usr/share/site/x86_64-unknown-linux-gnu
>>  checking for chosen layout... Apache
>>  [... many lines deleted ...]
>>  checking whether to enable mod_proxy_express... no (few)
>>  checking whether to enable mod_proxy_hcheck... checking dependencies
>>  configure: WARNING: "mod_proxy is disabled but required for
>> mod_proxy_hcheck"
>>  checking whether to enable mod_proxy_hcheck... configure: error:
>>  mod_proxy_hcheck has been requested but can not be built due to
>> prerequisite failures
>>
>> So it appears not the identical but a similar failure compared to that
>> one I reported some days ago ("Small problem in "configure" script with
>> 2.4.21"): Now "mod_watchdog" is replaced by "mod_proxy".
>>
>> And again: Since the option "--enable-mods-shared=few" doesn't include
>> any "proxy"-related modules I also don't expect to build the "reverse-proxy
>> health-check module".
>>
>> I am not sure if there is still a problem or if my "configure" building
>> and testing is incorrect.
>>
>
> There is still a problem, and it relates to a special case handling
> of the underlying 'few' token. Found it, more updates shortly...
>

  case "$enable_proxy_hcheck" in
    yes|static|shared)
      _apmod_required="yes"
      ;;
    *)
      case "$module_selection" in
      reallyall|all|most)
        _apmod_required="no"
        ;;
      *)
        _apmod_required="yes"
        ;;
      esac
  esac

What is going on here is that choosing few|none actually causes
every module dependency mismatch to become fatal, even if the
specific modules are not requested.

I believe this should be reduced in every module's test to simply;

  case "$enable_proxy_hcheck" in
    yes|static|shared)
      _apmod_required="yes"
      ;;
    *)
      _apmod_required="no"
  esac

Comments?

Mime
View raw message