package/libmodsecurity: needs dynamic library

Commit 9fc652a373 was incomplete as
mbedtls can be pulled in libcurl through libssh2 resulting in the
following build failure:

/home/autobuild/autobuild/instance-4/output-1/host/lib/gcc/powerpc64le-buildroot-linux-musl/11.3.0/../../../../powerpc64le-buildroot-linux-musl/bin/ld: /home/autobuild/autobuild/instance-4/output-1/host/powerpc64le-buildroot-linux-musl/sysroot/usr/lib//libmbedcrypto.a(md5.c.o): in function `mbedtls_md5_init':
md5.c:(.text+0x0): multiple definition of `mbedtls_md5_init'; ../../src/.libs/libmodsecurity.a(libmbedtls_la-md5.o):md5.c:(.text+0x0): first defined here

Fixes:
 - http://autobuild.buildroot.org/results/4c235e46188f23d1a48297f4e5942cec7b25959a

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Fabrice Fontaine 2023-02-20 23:31:51 +01:00 committed by Thomas Petazzoni
parent 9cd2e6e090
commit 97bdc0616c
2 changed files with 11 additions and 14 deletions

View File

@ -2,8 +2,10 @@ config BR2_PACKAGE_LIBMODSECURITY
bool "libmodsecurity"
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_TOOLCHAIN_HAS_THREADS
# libmodsecurity embeds several mbedtls source files
depends on !(BR2_STATIC_LIBS && BR2_PACKAGE_LIBCURL_MBEDTLS)
# libmodsecurity embeds several mbedtls source files, causing
# various issues when static linking and other dependencies of
# libmodsecurity in turn use mbedtls
depends on !BR2_STATIC_LIBS
select BR2_PACKAGE_PCRE2
help
Libmodsecurity is one component of the ModSecurity
@ -17,8 +19,6 @@ config BR2_PACKAGE_LIBMODSECURITY
https://github.com/SpiderLabs/ModSecurity
comment "libmodsecurity needs a toolchain w/ C++, threads"
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS
comment "libmodsecurity needs a toolchain w/ dynamic library"
depends on BR2_STATIC_LIBS && BR2_PACKAGE_LIBCURL_MBEDTLS
comment "libmodsecurity needs a toolchain w/ C++, threads, dynamic library"
depends on !BR2_INSTALL_LIBSTDCPP || \
!BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS

View File

@ -3,7 +3,7 @@ config BR2_PACKAGE_NGINX_MODSECURITY
depends on BR2_PACKAGE_NGINX_HTTP
depends on BR2_INSTALL_LIBSTDCPP # libmodsecurity
depends on BR2_TOOLCHAIN_HAS_THREADS # libmodsecurity
depends on !(BR2_STATIC_LIBS && BR2_PACKAGE_LIBCURL_MBEDTLS) # libmodsecurity
depends on !BR2_STATIC_LIBS # libmodsecurity
select BR2_PACKAGE_LIBMODSECURITY
help
The ModSecurity-nginx connector is the connection
@ -12,10 +12,7 @@ config BR2_PACKAGE_NGINX_MODSECURITY
https://github.com/SpiderLabs/ModSecurity-nginx
comment "nginx-modsecurity needs a toolchain w/ C++, threads"
comment "nginx-modsecurity needs a toolchain w/ C++, threads, dynamic library"
depends on BR2_PACKAGE_NGINX_HTTP
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS
comment "nginx-modsecurity needs a toolchain w/ dynamic library"
depends on BR2_PACKAGE_NGINX_HTTP
depends on BR2_STATIC_LIBS && BR2_PACKAGE_LIBCURL_MBEDTLS
depends on !BR2_INSTALL_LIBSTDCPP || \
!BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS