xref: /OK3568_Linux_fs/yocto/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2.inc (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunHOMEPAGE = "https://www.sourceware.org/lvm2/"
2*4882a593SmuzhiyunSECTION = "utils"
3*4882a593SmuzhiyunDESCRIPTION = "LVM2 is a set of utilities to manage logical volumes in Linux."
4*4882a593SmuzhiyunLICENSE = "GPL-2.0-only & LGPL-2.1-only"
5*4882a593SmuzhiyunLIC_FILES_CHKSUM = "file://COPYING;md5=12713b4d9386533feeb07d6e4831765a \
6*4882a593Smuzhiyun                    file://COPYING.LIB;md5=fbc093901857fcd118f065f900982c24"
7*4882a593Smuzhiyun
8*4882a593SmuzhiyunDEPENDS += "libaio"
9*4882a593Smuzhiyun
10*4882a593SmuzhiyunSRC_URI = "git://sourceware.org/git/lvm2.git;branch=main \
11*4882a593Smuzhiyun           file://lvm.conf \
12*4882a593Smuzhiyun           file://0001-implement-libc-specific-reopen_stream.patch \
13*4882a593Smuzhiyun           file://0002-Guard-use-of-mallinfo-with-__GLIBC__.patch \
14*4882a593Smuzhiyun           file://0004-tweak-MODPROBE_CMD-for-cross-compile.patch \
15*4882a593Smuzhiyun           file://0001-Avoid-bashisms-in-init-scripts.patch \
16*4882a593Smuzhiyun           file://0005-do-not-build-manual.patch \
17*4882a593Smuzhiyun           file://0006-start-lvm2-monitor.service-after-tmp.mount.patch \
18*4882a593Smuzhiyun           file://reproducible-build.patch \
19*4882a593Smuzhiyun           "
20*4882a593Smuzhiyun
21*4882a593SmuzhiyunSRCREV = "3e8bd8d1bd70691f09a170785836aeb4f83154e6"
22*4882a593SmuzhiyunS = "${WORKDIR}/git"
23*4882a593Smuzhiyun
24*4882a593SmuzhiyunUPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\_\d+)+)"
25*4882a593Smuzhiyun
26*4882a593Smuzhiyuninherit autotools-brokensep pkgconfig systemd
27*4882a593Smuzhiyun
28*4882a593SmuzhiyunLVM2_PACKAGECONFIG = "dmeventd"
29*4882a593SmuzhiyunLVM2_PACKAGECONFIG:append:class-target = " \
30*4882a593Smuzhiyun    ${@bb.utils.filter('DISTRO_FEATURES', 'selinux', d)} \
31*4882a593Smuzhiyun"
32*4882a593Smuzhiyun
33*4882a593Smuzhiyun# odirect is always enabled because there currently is a bug in
34*4882a593Smuzhiyun# lib/device/dev-io.c which prevents compiling without it. It is
35*4882a593Smuzhiyun# better to stick to configurations that were actually tested by
36*4882a593Smuzhiyun# upstream...
37*4882a593SmuzhiyunPACKAGECONFIG ??= "odirect ${LVM2_PACKAGECONFIG}"
38*4882a593Smuzhiyun
39*4882a593SmuzhiyunPACKAGECONFIG[dmeventd] = "--enable-dmeventd,--disable-dmeventd"
40*4882a593SmuzhiyunPACKAGECONFIG[odirect] = "--enable-o_direct,--disable-o_direct"
41*4882a593SmuzhiyunPACKAGECONFIG[readline] = "--enable-readline,--disable-readline,readline"
42*4882a593SmuzhiyunPACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux"
43*4882a593Smuzhiyun# NOTE: Add thin-provisioning-tools only if your distro policy allows GPL-3.0 license
44*4882a593SmuzhiyunPACKAGECONFIG[thin-provisioning-tools] = "--with-thin=internal,--with-thin=none,,thin-provisioning-tools"
45*4882a593Smuzhiyun
46*4882a593Smuzhiyun# Unset user/group to unbreak install.
47*4882a593SmuzhiyunEXTRA_OECONF = "--with-user= \
48*4882a593Smuzhiyun                --with-group= \
49*4882a593Smuzhiyun                --enable-realtime \
50*4882a593Smuzhiyun                --enable-cmdlib \
51*4882a593Smuzhiyun                --enable-pkgconfig \
52*4882a593Smuzhiyun                --with-usrlibdir=${libdir} \
53*4882a593Smuzhiyun                --with-systemdsystemunitdir=${systemd_system_unitdir} \
54*4882a593Smuzhiyun                --disable-thin_check_needs_check \
55*4882a593Smuzhiyun                --with-thin-check=${sbindir}/thin_check \
56*4882a593Smuzhiyun                --with-thin-dump=${sbindir}/thin_dump \
57*4882a593Smuzhiyun                --with-thin-repair=${sbindir}/thin_repair \
58*4882a593Smuzhiyun                --with-thin-restore=${sbindir}/thin_restore \
59*4882a593Smuzhiyun"
60