Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v4, 1/1] package/libmodsecurity: needs dynamic library
@ 2023-02-20 22:31 Fabrice Fontaine
  2023-02-21  8:32 ` Thomas Petazzoni via buildroot
  2023-03-05 17:14 ` Peter Korsgaard
  0 siblings, 2 replies; 3+ messages in thread
From: Fabrice Fontaine @ 2023-02-20 22:31 UTC (permalink / raw)
  To: buildroot; +Cc: Fabrice Fontaine, Frank Vanbever

Commit 9fc652a373034118535397fdd4042ab9f8fd7adf 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>
---
Changes v3 -> v4 (after review of Thomas Petazzoni):
 - Disable building statically
Changes v2 -> v3:
 - Fix syntax
Changes v1 -> v2:
 - Update nginx-modsecurity

 package/libmodsecurity/Config.in    | 10 ++++------
 package/nginx-modsecurity/Config.in |  9 +++------
 2 files changed, 7 insertions(+), 12 deletions(-)

diff --git a/package/libmodsecurity/Config.in b/package/libmodsecurity/Config.in
index b15d808759..2186d216f4 100644
--- a/package/libmodsecurity/Config.in
+++ b/package/libmodsecurity/Config.in
@@ -3,7 +3,7 @@ config BR2_PACKAGE_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)
+	depends on !BR2_STATIC_LIBS
 	select BR2_PACKAGE_PCRE2
 	help
 	  Libmodsecurity is one component of the ModSecurity
@@ -17,8 +17,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
diff --git a/package/nginx-modsecurity/Config.in b/package/nginx-modsecurity/Config.in
index 5cbe57a866..f3c270ff31 100644
--- a/package/nginx-modsecurity/Config.in
+++ b/package/nginx-modsecurity/Config.in
@@ -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
@@ -14,8 +14,5 @@ config BR2_PACKAGE_NGINX_MODSECURITY
 
 comment "nginx-modsecurity needs a toolchain w/ C++, threads"
 	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
-- 
2.39.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [Buildroot] [PATCH v4, 1/1] package/libmodsecurity: needs dynamic library
  2023-02-20 22:31 [Buildroot] [PATCH v4, 1/1] package/libmodsecurity: needs dynamic library Fabrice Fontaine
@ 2023-02-21  8:32 ` Thomas Petazzoni via buildroot
  2023-03-05 17:14 ` Peter Korsgaard
  1 sibling, 0 replies; 3+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-02-21  8:32 UTC (permalink / raw)
  To: Fabrice Fontaine; +Cc: Frank Vanbever, buildroot

Hello Fabrice,

On Mon, 20 Feb 2023 23:31:51 +0100
Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote:

> diff --git a/package/libmodsecurity/Config.in b/package/libmodsecurity/Config.in
> index b15d808759..2186d216f4 100644
> --- a/package/libmodsecurity/Config.in
> +++ b/package/libmodsecurity/Config.in
> @@ -3,7 +3,7 @@ config BR2_PACKAGE_LIBMODSECURITY
>  	depends on BR2_INSTALL_LIBSTDCPP
>  	depends on BR2_TOOLCHAIN_HAS_THREADS
>  	# libmodsecurity embeds several mbedtls source files

I've expanded a bit this comment, as it was not very clear why this
causes problem with static linking.

> -	depends on !(BR2_STATIC_LIBS && BR2_PACKAGE_LIBCURL_MBEDTLS)
> +	depends on !BR2_STATIC_LIBS
>  	select BR2_PACKAGE_PCRE2
>  	help
>  comment "nginx-modsecurity needs a toolchain w/ C++, threads"
>  	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

Something was wrong here: you forgot to update the comment prompt
itself to mention the dependency on dynamic library.

I fixed both minor issues and applied to master. Thanks a lot!

Thomas
-- 
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Buildroot] [PATCH v4, 1/1] package/libmodsecurity: needs dynamic library
  2023-02-20 22:31 [Buildroot] [PATCH v4, 1/1] package/libmodsecurity: needs dynamic library Fabrice Fontaine
  2023-02-21  8:32 ` Thomas Petazzoni via buildroot
@ 2023-03-05 17:14 ` Peter Korsgaard
  1 sibling, 0 replies; 3+ messages in thread
From: Peter Korsgaard @ 2023-03-05 17:14 UTC (permalink / raw)
  To: Fabrice Fontaine; +Cc: Frank Vanbever, buildroot

>>>>> "Fabrice" == Fabrice Fontaine <fontaine.fabrice@gmail.com> writes:

 > Commit 9fc652a373034118535397fdd4042ab9f8fd7adf 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>
 > ---
 > Changes v3 -> v4 (after review of Thomas Petazzoni):
 >  - Disable building statically
 > Changes v2 -> v3:
 >  - Fix syntax
 > Changes v1 -> v2:
 >  - Update nginx-modsecurity

Committed to 2022.11.x and 2022.02.x, thanks.

-- 
Bye, Peter Korsgaard
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2023-03-05 17:14 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-02-20 22:31 [Buildroot] [PATCH v4, 1/1] package/libmodsecurity: needs dynamic library Fabrice Fontaine
2023-02-21  8:32 ` Thomas Petazzoni via buildroot
2023-03-05 17:14 ` Peter Korsgaard

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox