Until this change httpd was linking libsystemd to the main httpd binary. If you want to run lightweight version of httpd in container, sometimes you just want to install
httpd binary with as little dependencies as possible to make container small in size and do not pull uncencessary dependencies and libraries.
This change will move all systemd library calls from listen.c to mod_systemd module and remove systemd linking from the main httpd bin.
Fixed mixed declaration and wrongly declared variable.
Submitted by: Luboš Uhliarik <luhliari redhat.com>
Github: closes#312
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1899784 13f79535-47bb-0310-9956-ffa450edef68
* Makefile.in: Define the update-changes target to merge the change files
from the changes directory to the top of the CHANGES file and remove
them afterwards. If a Subversion binary was found during configure try
to svn rm them otherwise just delete them.
* configure.in: Search for the Subversion binary.
* acinclude.m4: Set the corresponding Makefile variable for the Subversion
binary.
* README.CHANGES: New file to document the new approach.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1879822 13f79535-47bb-0310-9956-ffa450edef68
with default from config.layout, configurable via DefaultStateDir.
* server/core.c (set_state_dir, ap_state_dir_relative):
New functions.
* config.layout, acinclude.m4, Makefile.in, configure.in: Define
statedir variables, drop davlockdb.
* include/ap_config_layout.h.in: Define DEFAULT_REL_STATEDIR,
DEFAULT_EXP_STATEDIR in place of _DAVLOCKDB.
* include/ap_mmn.h: Bump MMN minor.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1842929 13f79535-47bb-0310-9956-ffa450edef68
As suggested by Joe, add --maintainer/debugger-mode's CFLAGS in
NOTEST_CFLAGS to avoid interractions with autoconf's AC_LANG_PROGRAM.
APACHE_ADD_GCC_CFLAG now also forces -Wno-strict-prototypes for -Werror
to work despite AC_LANG_PROGRAM generating this warning by itself.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1812301 13f79535-47bb-0310-9956-ffa450edef68
CRYPTO_THREADID_set_callback() is write-once, so if mod_ssl is unloaded
and reloaded into a different address, we'll crash if OpenSSL wasn't
also unloaded and reloaded at the same time. This can happen if another
module or library is using OpenSSL as well.
- OpenSSL 1.1.0 isn't affected.
- Certain platforms (Windows, BeOS, and POSIX-compliant systems) can
make use of the default THREADID callback in OpenSSL 1.0.x.
- If the deprecated CRYPTO_set_id_callback() is available, we can use it
instead of CRYPTO_THREADID_set_callback().
Otherwise, we have to fall back to CRYPTO_THREADID_set_callback(), but
hopefully that applies to a small percentage of users at this point.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/trunk-openssl-threadid@1791732 13f79535-47bb-0310-9956-ffa450edef68
This is step one for fixing, or at least mitigating, PR60947. Determine
which platforms can use the default OpenSSL (1.0.x) threadid-callback,
by recording the address of errno for several threads and testing that
they're all different.
The result of this test is put into the new macro,
AP_OPENSSL_USE_ERRNO_THREADID.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/trunk-openssl-threadid@1791054 13f79535-47bb-0310-9956-ffa450edef68
APACHE_MODULE macro, as a comma separated list, e.g.
APACHE_MODULE(proxy_http2, [...], [proxy,http2])
will evaluate the availability of mod_proxy, followed by mod_http2
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1749658 13f79535-47bb-0310-9956-ffa450edef68
modules and MPMs during build.
Normal modules and MPMs follow different
rules in the config, e.g. we are only
allowed to have one active LoadModule
for an MPM in the config.
As a side effect, LoadModule for MPMs
will now come before LoadModule for
the normal modules.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1730079 13f79535-47bb-0310-9956-ffa450edef68
- don't check for SSLeay_version() in configure
The function no longer exists in 1.1.0.
It was replaced by OpenSSL_version().
- Switch between SSLeay_version(U) and
OpenSSL_version() depending on version
in modules/ssl/ssl_util_ssl.h.
- Use MODSSL_LIBRARY_DYNTEXT everywhere.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1728981 13f79535-47bb-0310-9956-ffa450edef68
with mod_http2 doing it first. Because the result of APACHE_CHECK_OPENSSL
is cached this causes MOD_LDFLAGS and MOD_CFLAGS to remain unset for mod_ssl
which in turn causes it not to be linked against Openssl which means that
mod_ssl cannot be loaded if the Openssl libs haven't been loaded by other means
already.
Fix this by caching the values for MOD_LDFLAGS and MOD_CFLAGS created during
the first run and set them in the cached case.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1725325 13f79535-47bb-0310-9956-ffa450edef68
Fixes the build with LibreSSL which does not provide this function.
Submitted by: Bernard Spil <pil.oss gmail com>, stsp
Committed by: stsp
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1674542 13f79535-47bb-0310-9956-ffa450edef68
also use pkg-config for determining the -l flags (and fall back
to a hardcoded default of "-lssl -lcrypto")
add --static to pkg-config invocations, so that libraries for
static linking are also taken into account (PR 54252 - note that
the additional flags will only appear in modules/ssl/modules.mk
and ab_LDFLAGS, so potential side effects are limited)
separate --libs-only-L and --libs-only-other into two invocations
(can't be used concurrently, only the first takes effect)
use --silence-errors where applicable
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1428184 13f79535-47bb-0310-9956-ffa450edef68
mod_systemd: Specify "all" instead of "yes" (on Unix) so that APACHE_MODULE doesn't
act as if the user requested it.
General: Fix APACHE_MODULE so that failed prereqs will disable a module unless the
user requested it explicitly.
Result: By default systemd will be enabled where it actually works and disabled otherwise,
but if the user requests it and the prereqs fail then configure will halt.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1396440 13f79535-47bb-0310-9956-ffa450edef68
r1385216 broke building of mpm event with serf support. To fix,
* introduce APACHE_MPMPATH_INIT/FINISH similar to
APACHE_MODPATH_INIT/FINISH to create modules.mk and add
MOD_* vars to it.
* change APACHE_MPM_MODULE to only append to modules.mk, not
overwrite
* add APACHE_MPMPATH_INIT/FINISH to all MPMs
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1395252 13f79535-47bb-0310-9956-ffa450edef68
[second try, supersedes r1385214]
Add MOD_CFLAGS, MOD_LDFLAGS variables etc. to the build commands,
which are available to modules for customization on a per-subdir
basis (by adding definitions to modules.mk). Reduces the risk
of side-effects when a module needs to add CFLAGS, LDFLAGS etc.
and these would be added to the global settings (ALL_CFLAGS etc.).
Adapt build settings for mod_ssl, mod_socache_dc, mod_deflate,
mod_xml2enc, mod_proxy_html, and mod_lua to use the new MOD_xxx
build variables.
Change PICFLAGS, SHLTCFLAGS and LTCFLAGS into config vars, instead
of AC_SUBSTing them in build/rules.mk.in. For support/ab, introduce
ab_CFLAGS and ab_LDFLAGS, and define explicit make targets where
they appear at the proper position in the build commands.
Consistently use "--with-xxx=PATH" in configure help strings which
are used to specify a path to the installation directory of an
auxiliary package.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1385216 13f79535-47bb-0310-9956-ffa450edef68