lvm2: make basic package available under musl
PATCH 1/1 lvm2: make basic package available under musl
The basic lvm2 package (libdevmapper / dmsetup) does build under musl, only the standard (full) installation doesn't.
Many setups only need the basic package, so move the !musl dependencies down to the sub options and adjust the reverse dependencies (cryptsetup/dmraid) to match.
--- package/cryptsetup/Config.in | 6 ++---- package/dmraid/Config.in | 6 ++---- package/lvm2/Config.in | 9 +++++++-- 3 files changed, 11 insertions(+), 10 deletions(-)
package/cryptsetup/Config.in +2 -4
@@ -3,7 +3,6 @@ config BR2_PACKAGE_CRYPTSETUP 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_POPT select BR2_PACKAGE_LVM2 select BR2_PACKAGE_UTIL_LINUX
@@ -14,7 +13,6 @@ config BR2_PACKAGE_CRYPTSETUP https://gitlab.com/cryptsetup/cryptsetup -comment "cryptsetup needs a glibc or uClibc toolchain w/ threads, dynamic library" +comment "cryptsetup needs a toolchain w/ threads, dynamic library" depends on BR2_USE_MMU - depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS \ - || BR2_TOOLCHAIN_USES_MUSL + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS
package/dmraid/Config.in +2 -4
@@ -3,7 +3,6 @@ config BR2_PACKAGE_DMRAID 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
@@ -13,7 +12,6 @@ config BR2_PACKAGE_DMRAID dmraid uses the Linux device-mapper to create devices with respective mappings for the ATARAID sets discovered. -comment "dmraid needs a glibc or uClibc toolchain w/ threads, dynamic library" +comment "dmraid needs a toolchain w/ threads, dynamic library" depends on BR2_USE_MMU - depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS \ - || BR2_TOOLCHAIN_USES_MUSL + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS
package/lvm2/Config.in +7 -2
@@ -3,8 +3,6 @@ config BR2_PACKAGE_LVM2 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
@@ -27,6 +25,8 @@ if BR2_PACKAGE_LVM2 config BR2_PACKAGE_LVM2_STANDARD_INSTALL bool "standard install instead of only dmsetup" + # http://lists.busybox.net/pipermail/buildroot/2016-August/170592.html + depends on !BR2_TOOLCHAIN_USES_MUSL default y if !BR2_PACKAGE_LVM2_DMSETUP_ONLY # legacy 2013.11 help Install the standard suite of lvm2 programs. When this option
@@ -34,10 +34,15 @@ config BR2_PACKAGE_LVM2_STANDARD_INSTALL config BR2_PACKAGE_LVM2_APP_LIBRARY bool "install application library" + # http://lists.busybox.net/pipermail/buildroot/2016-August/170592.html + depends on !BR2_TOOLCHAIN_USES_MUSL select BR2_PACKAGE_LVM2_STANDARD_INSTALL help Install application library (liblvm2app). +comment "lvm2 standard install needs a glibc or uClibc toolchain" + depends on BR2_TOOLCHAIN_USES_MUSL + endif comment "lvm2 needs a glibc or uClibc toolchain w/ threads, dynamic library"
Signature · 1 line
2.11.0
PATCH 1/1 lvm2: make basic package available under musl
Hello,
Quoted 9 lines · Peter Korsgaard
config
BR2_PACKAGE_LVM2_STANDARD_INSTALLpackage/lvm2/Config.in +2
-0bool "standard install instead of only dmsetup" + # http://lists.busybox.net/pipermail/buildroot/2016-August/170592.html + depends on !BR2_TOOLCHAIN_USES_MUSL default y if !BR2_PACKAGE_LVM2_DMSETUP_ONLY # legacy 2013.11 help Install the standard suite of lvm2 programs. When this option@@ -34,10 +34,15 @@ config BR2_PACKAGE_LVM2_STANDARD_INSTALL
package/lvm2/Config.in config BR2_PACKAGE_LVM2_STANDARD_INSTALL · line 44
Quoted 10 lines
package/lvm2/Config.in +4
-0config BR2_PACKAGE_LVM2_APP_LIBRARY bool "install application library" + # http://lists.busybox.net/pipermail/buildroot/2016-August/170592.html + depends on !BR2_TOOLCHAIN_USES_MUSL select BR2_PACKAGE_LVM2_STANDARD_INSTALL help Install application library (liblvm2app). +comment "lvm2 standard install needs a glibc or uClibc toolchain" + depends on BR2_TOOLCHAIN_USES_MUSL
For consistency, I've moved this comment below the "standard install" option, and added another comment for the "application library" option.
package/lvm2/Config.in config BR2_PACKAGE_LVM2_STANDARD_INSTALL · line 48
Quoted 4 lines
package/lvm2/Config.in +1
-0+ endif comment "lvm2 needs a glibc or uClibc toolchain w/ threads, dynamic library"
You had forgotten to update this comment: lvm2 no longer needs glibc or uClibc, and you also had forgotten to drop the BR2_TOOLCHAIN_USES_MUSL part of this comment dependencies.
Applied with those nits fixed. Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
PATCH 1/1 lvm2: make basic package available under musl
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Thomas" == Thomas Petazzoni <[email protected]> writes:
Hi,
Quoted 7 lines
package/lvm2/Config.in config BR2_PACKAGE_LVM2_STANDARD_INSTALL · line 44
Quoted 4 lines
Install application library (liblvm2app).
package/lvm2/Config.in +2
-0+comment "lvm2 standard install needs a glibc or uClibc toolchain" + depends on BR2_TOOLCHAIN_USES_MUSLFor consistency, I've moved this comment below the "standard install" option, and added another comment for the "application library" option.
Ok. In the general case this would screw up indentation of further sub option, but as the dependencies are the same this won't happen here.
Quoted 5 lines
Quoted 1 line
comment "lvm2 needs a glibc or uClibc toolchain w/ threads, dynamic library"
You had forgotten to update this comment: lvm2 no longer needs glibc or uClibc, and you also had forgotten to drop the
BR2_TOOLCHAIN_USES_MUSLpart of this comment dependencies.
Ups, thanks for fixing it!
Signature · 1 line
Bye, Peter Korsgaard