lvm2 doesn't build with musl toolchains due to several assignment of read-only
variable like stdin, stdout and stderr.
Also, it use mallinfo function which is not available with musl.
These issues has been reported upstream [2] but some of them remains
even with the latest stable release 2.02.163.
Fixes:
http://autobuild.buildroot.net/results/
3d4df873a3d4fa199e03d8aa8694eafeac474e5a
[...]
[1] http://lists.busybox.net/pipermail/buildroot/2016-August/170592.html
[2] https://www.redhat.com/archives/linux-lvm/2016-February/msg00024.html
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
depends on BR2_TOOLCHAIN_HAS_THREADS # lvm2
depends on BR2_USE_MMU # lvm2
depends on !BR2_STATIC_LIBS # lvm2
+ depends on !BR2_TOOLCHAIN_USES_MUSL # lvm2
depends on BR2_USE_WCHAR # util-linux
select BR2_PACKAGE_POPT
select BR2_PACKAGE_LVM2
https://gitlab.com/cryptsetup/cryptsetup
-comment "cryptsetup needs a toolchain w/ wchar, threads, dynamic library"
+comment "cryptsetup needs a glibc or uClibc toolchain w/ wchar, threads, dynamic library"
depends on BR2_USE_MMU
- depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS
+ depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS \
+ || BR2_TOOLCHAIN_USES_MUSL
depends on BR2_TOOLCHAIN_HAS_THREADS # lvm2
depends on BR2_USE_MMU # lvm2
depends on !BR2_STATIC_LIBS # lvm2
+ depends on !BR2_TOOLCHAIN_USES_MUSL # lvm2
select BR2_PACKAGE_LVM2
help
dmraid discovers, activates, deactivates and displays properties
dmraid uses the Linux device-mapper to create devices with
respective mappings for the ATARAID sets discovered.
-comment "dmraid needs a toolchain w/ threads, dynamic library"
+comment "dmraid needs a glibc or uClibc toolchain w/ threads, dynamic library"
depends on BR2_USE_MMU
- depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS
+ depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS \
+ || BR2_TOOLCHAIN_USES_MUSL
depends on BR2_TOOLCHAIN_HAS_THREADS # lvm2
depends on BR2_USE_MMU # lvm2
depends on !BR2_STATIC_LIBS # lvm2
+ depends on !BR2_TOOLCHAIN_USES_MUSL # lvm2
select BR2_PACKAGE_LVM2
select BR2_PACKAGE_LVM2_APP_LIBRARY
help
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_USE_MMU # needs fork()
depends on !BR2_STATIC_LIBS # It fails to build statically
+ # http://lists.busybox.net/pipermail/buildroot/2016-August/170592.html
+ depends on !BR2_TOOLCHAIN_USES_MUSL
help
This is LVM2, the rewrite of The Linux Logical Volume Manager.
LVM supports enterprise level volume management of disk and disk
endif
-comment "lvm2 needs a toolchain w/ threads, dynamic library"
+comment "lvm2 needs a glibc or uClibc toolchain w/ threads, dynamic library"
depends on BR2_USE_MMU
- depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS
+ depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_MUSL
depends on BR2_TOOLCHAIN_HAS_THREADS # dbus-glib -> glib2
depends on BR2_USE_MMU # lvm2
depends on !BR2_STATIC_LIBS # lvm2
+ depends on !BR2_TOOLCHAIN_USES_MUSL # lvm2
select BR2_PACKAGE_DBUS
select BR2_PACKAGE_DBUS_GLIB
depends on BR2_USE_WCHAR # dbus-glib -> glib2
depends on BR2_USE_MMU
depends on !BR2_PACKAGE_HAS_UDEV
-comment "udisks needs a toolchain w/ wchar, threads, dynamic library"
+comment "udisks needs a glibc or uClibc toolchain w/ wchar, threads, dynamic library"
depends on BR2_USE_MMU
depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \
- BR2_STATIC_LIBS
+ BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL