diff mbox series

[2/2] package/systemd: fix build with glibc 2.39

Message ID 20240401234013.3570820-2-james.hilliard1@gmail.com
State Accepted
Headers show
Series [1/2] package/libxcrypt: support host package build | expand

Commit Message

James Hilliard April 1, 2024, 11:40 p.m. UTC
When glibc was bumped to version 2.39 in commit
b5680f53d60acf8ff6010082f873438a39bd5d97 it removed the deprecated
libcrypt support.

As glibc's libcrypt was providing systemd's libcrypt dependency this
broke any systemd build using glibc version 2.39.

To fix this add the libxcrypt dependency to systemd which is the
preferred way of providing libcrypt support in systemd as the glibc
variant is only used as a fallback due to being deprecated.

We should also have host-systemd depend on host-libxcrypt in case
the host system does not provide glibc with libcrypt support.

Fixes:
 - http://autobuild.buildroot.net/results/36e/36efcfc76c015c9b4c955c13afa0f81a98b529f4

Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
 package/systemd/Config.in  | 1 +
 package/systemd/systemd.mk | 2 ++
 2 files changed, 3 insertions(+)

Comments

Yann E. MORIN April 2, 2024, 9:28 p.m. UTC | #1
James, All,

On 2024-04-01 17:40 -0600, James Hilliard spake thusly:
> When glibc was bumped to version 2.39 in commit
> b5680f53d60acf8ff6010082f873438a39bd5d97 it removed the deprecated
> libcrypt support.
> 
> As glibc's libcrypt was providing systemd's libcrypt dependency this
> broke any systemd build using glibc version 2.39.
> 
> To fix this add the libxcrypt dependency to systemd which is the
> preferred way of providing libcrypt support in systemd as the glibc
> variant is only used as a fallback due to being deprecated.
> 
> We should also have host-systemd depend on host-libxcrypt in case
> the host system does not provide glibc with libcrypt support.
> 
> Fixes:
>  - http://autobuild.buildroot.net/results/36e/36efcfc76c015c9b4c955c13afa0f81a98b529f4
> 
> Signed-off-by: James Hilliard <james.hilliard1@gmail.com>

Applied to master, thanks.

Regards,
Yann E. MORIN.

> ---
>  package/systemd/Config.in  | 1 +
>  package/systemd/systemd.mk | 2 ++
>  2 files changed, 3 insertions(+)
> 
> diff --git a/package/systemd/Config.in b/package/systemd/Config.in
> index aa5143d484..a94e9b73b8 100644
> --- a/package/systemd/Config.in
> +++ b/package/systemd/Config.in
> @@ -28,6 +28,7 @@ menuconfig BR2_PACKAGE_SYSTEMD
>  	select BR2_PACKAGE_HAS_UDEV
>  	select BR2_PACKAGE_DBUS if !BR2_PACKAGE_DBUS_BROKER # runtime
>  	select BR2_PACKAGE_LIBCAP
> +	select BR2_PACKAGE_LIBXCRYPT
>  	select BR2_PACKAGE_UTIL_LINUX
>  	select BR2_PACKAGE_UTIL_LINUX_LIBS
>  	select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT
> diff --git a/package/systemd/systemd.mk b/package/systemd/systemd.mk
> index c6b006d1fb..8987dc19a6 100644
> --- a/package/systemd/systemd.mk
> +++ b/package/systemd/systemd.mk
> @@ -55,6 +55,7 @@ SYSTEMD_DEPENDENCIES = \
>  	host-python-jinja2 \
>  	kmod \
>  	libcap \
> +	libxcrypt \
>  	util-linux-libs \
>  	$(TARGET_NLS_DEPENDENCIES)
>  
> @@ -882,6 +883,7 @@ HOST_SYSTEMD_DEPENDENCIES = \
>  	host-util-linux \
>  	host-patchelf \
>  	host-libcap \
> +	host-libxcrypt \
>  	host-gperf \
>  	host-python-jinja2
>  
> -- 
> 2.34.1
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
diff mbox series

Patch

diff --git a/package/systemd/Config.in b/package/systemd/Config.in
index aa5143d484..a94e9b73b8 100644
--- a/package/systemd/Config.in
+++ b/package/systemd/Config.in
@@ -28,6 +28,7 @@  menuconfig BR2_PACKAGE_SYSTEMD
 	select BR2_PACKAGE_HAS_UDEV
 	select BR2_PACKAGE_DBUS if !BR2_PACKAGE_DBUS_BROKER # runtime
 	select BR2_PACKAGE_LIBCAP
+	select BR2_PACKAGE_LIBXCRYPT
 	select BR2_PACKAGE_UTIL_LINUX
 	select BR2_PACKAGE_UTIL_LINUX_LIBS
 	select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT
diff --git a/package/systemd/systemd.mk b/package/systemd/systemd.mk
index c6b006d1fb..8987dc19a6 100644
--- a/package/systemd/systemd.mk
+++ b/package/systemd/systemd.mk
@@ -55,6 +55,7 @@  SYSTEMD_DEPENDENCIES = \
 	host-python-jinja2 \
 	kmod \
 	libcap \
+	libxcrypt \
 	util-linux-libs \
 	$(TARGET_NLS_DEPENDENCIES)
 
@@ -882,6 +883,7 @@  HOST_SYSTEMD_DEPENDENCIES = \
 	host-util-linux \
 	host-patchelf \
 	host-libcap \
+	host-libxcrypt \
 	host-gperf \
 	host-python-jinja2