blob: d08e0b5b90d03bd1a5be81d5d49089f7b2fb15b4 [file] [log] [blame]
developer03e474f2023-02-15 13:25:01 +08001HOMEPAGE = "https://www.sourceware.org/lvm2/"
2SECTION = "utils"
3DESCRIPTION = "LVM2 is a set of utilities to manage logical volumes in Linux."
4LICENSE = "GPLv2 & LGPLv2.1"
5LIC_FILES_CHKSUM = "file://COPYING;md5=12713b4d9386533feeb07d6e4831765a \
6 file://COPYING.LIB;md5=fbc093901857fcd118f065f900982c24"
7
8DEPENDS += "libaio"
9
10SRC_URI = "git://sourceware.org/git/lvm2.git \
11 file://lvm.conf \
12 file://0001-implement-libc-specific-reopen_stream.patch \
13 file://0002-Guard-use-of-mallinfo-with-__GLIBC__.patch \
14 file://0004-tweak-MODPROBE_CMD-for-cross-compile.patch \
15 file://0001-Avoid-bashisms-in-init-scripts.patch \
16 file://0005-do-not-build-manual.patch \
17 file://0006-start-lvm2-monitor.service-after-tmp.mount.patch \
18 "
19SRCREV = "b9391b1b9f0b73303fa21f8f92574d17ce4c2b02"
20S = "${WORKDIR}/git"
21
22inherit autotools-brokensep pkgconfig systemd license
23
24LVM2_PACKAGECONFIG = "dmeventd"
25LVM2_PACKAGECONFIG_append_class-target = " \
26 ${@bb.utils.filter('DISTRO_FEATURES', 'selinux', d)} \
27 ${@incompatible_license_contains('GPLv3', '', 'thin-provisioning-tools', d)} \
28"
29
30# odirect is always enabled because there currently is a bug in
31# lib/device/dev-io.c which prevents compiling without it. It is
32# better to stick to configurations that were actually tested by
33# upstream...
34PACKAGECONFIG ??= "odirect ${LVM2_PACKAGECONFIG}"
35
36PACKAGECONFIG[dmeventd] = "--enable-dmeventd,--disable-dmeventd"
37PACKAGECONFIG[odirect] = "--enable-o_direct,--disable-o_direct"
38PACKAGECONFIG[readline] = "--enable-readline,--disable-readline,readline"
39PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux"
40PACKAGECONFIG[thin-provisioning-tools] = "--with-thin=internal,--with-thin=none,,thin-provisioning-tools"
41
42# Unset user/group to unbreak install.
43EXTRA_OECONF = "--with-user= \
44 --with-group= \
45 --enable-realtime \
46 --enable-cmdlib \
47 --enable-pkgconfig \
48 --with-usrlibdir=${libdir} \
49 --with-systemdsystemunitdir=${systemd_system_unitdir} \
50 --disable-thin_check_needs_check \
51 --with-thin-check=${sbindir}/thin_check \
52 --with-thin-dump=${sbindir}/thin_dump \
53 --with-thin-repair=${sbindir}/thin_repair \
54 --with-thin-restore=${sbindir}/thin_restore \
55"
56
57
58
59DEPENDS += "autoconf-archive-native"
60
61TARGET_CC_ARCH += "${LDFLAGS}"
62
63do_install() {
64 oe_runmake 'DESTDIR=${D}' -C libdm install
65}
66
67
68
69BBCLASSEXTEND = "native nativesdk"