blob: c96989bfafcfbdc289df9e586a64366680c90bfb [file] [log] [blame]
Brad Bishopd7bf8c12018-02-25 22:55:05 -05001HOMEPAGE = "https://www.sourceware.org/lvm2/"
Patrick Williamsb48b7b42016-08-17 15:04:38 -05002SECTION = "utils"
3DESCRIPTION = "LVM2 is a set of utilities to manage logical volumes in Linux."
Andrew Geissler9aee5002022-03-30 16:27:02 +00004LICENSE = "GPL-2.0-only & LGPL-2.1-only"
Brad Bishop6e60e8b2018-02-01 10:27:11 -05005LIC_FILES_CHKSUM = "file://COPYING;md5=12713b4d9386533feeb07d6e4831765a \
Patrick Williamsb48b7b42016-08-17 15:04:38 -05006 file://COPYING.LIB;md5=fbc093901857fcd118f065f900982c24"
7
Brad Bishop665fd022019-08-26 01:32:28 -04008DEPENDS += "libaio"
Brad Bishop6e60e8b2018-02-01 10:27:11 -05009
Andrew Geissler4b7c1152020-11-30 19:55:29 -060010SRC_URI = "git://sourceware.org/git/lvm2.git;branch=main \
Patrick Williamsb48b7b42016-08-17 15:04:38 -050011 file://lvm.conf \
Brad Bishop6e60e8b2018-02-01 10:27:11 -050012 file://0001-implement-libc-specific-reopen_stream.patch \
Brad Bishop6e60e8b2018-02-01 10:27:11 -050013 file://0004-tweak-MODPROBE_CMD-for-cross-compile.patch \
14 file://0001-Avoid-bashisms-in-init-scripts.patch \
Brad Bishopd7bf8c12018-02-25 22:55:05 -050015 file://0005-do-not-build-manual.patch \
16 file://0006-start-lvm2-monitor.service-after-tmp.mount.patch \
Andrew Geisslerbffdb3e2020-08-21 16:13:29 -050017 file://reproducible-build.patch \
Patrick Williams169d7bc2024-01-05 11:33:25 -060018 file://0001-configure.ac-check-egrep.patch \
Patrick Williamsb48b7b42016-08-17 15:04:38 -050019 "
Andrew Geissler748a4832020-07-24 16:24:21 -050020
Patrick Williams169d7bc2024-01-05 11:33:25 -060021SRCREV = "016e469caf856f1eb8dde39df0d1aa2e74225aed"
Brad Bishop6a62e0e2019-10-21 08:11:42 -040022S = "${WORKDIR}/git"
Patrick Williamsb48b7b42016-08-17 15:04:38 -050023
Andrew Geissler595f6302022-01-24 19:11:47 +000024UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\_\d+)+)"
25
Andrew Geisslerf103a7f2021-05-07 16:09:40 -050026inherit autotools-brokensep pkgconfig systemd
Brad Bishopd7bf8c12018-02-25 22:55:05 -050027
Brad Bishop19323692019-04-05 15:28:33 -040028LVM2_PACKAGECONFIG = "dmeventd"
Patrick Williams213cb262021-08-07 19:21:33 -050029LVM2_PACKAGECONFIG:append:class-target = " \
Brad Bishopd7bf8c12018-02-25 22:55:05 -050030 ${@bb.utils.filter('DISTRO_FEATURES', 'selinux', d)} \
Brad Bishopd7bf8c12018-02-25 22:55:05 -050031"
Patrick Williamsb48b7b42016-08-17 15:04:38 -050032
Brad Bishop6e60e8b2018-02-01 10:27:11 -050033# odirect is always enabled because there currently is a bug in
34# lib/device/dev-io.c which prevents compiling without it. It is
35# better to stick to configurations that were actually tested by
36# upstream...
Brad Bishopd7bf8c12018-02-25 22:55:05 -050037PACKAGECONFIG ??= "odirect ${LVM2_PACKAGECONFIG}"
Patrick Williamsb48b7b42016-08-17 15:04:38 -050038
Brad Bishop6e60e8b2018-02-01 10:27:11 -050039PACKAGECONFIG[dmeventd] = "--enable-dmeventd,--disable-dmeventd"
Brad Bishop6e60e8b2018-02-01 10:27:11 -050040PACKAGECONFIG[odirect] = "--enable-o_direct,--disable-o_direct"
Patrick Williamsb48b7b42016-08-17 15:04:38 -050041PACKAGECONFIG[readline] = "--enable-readline,--disable-readline,readline"
42PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux"
Andrew Geisslerf103a7f2021-05-07 16:09:40 -050043# NOTE: Add thin-provisioning-tools only if your distro policy allows GPL-3.0 license
Patrick Williamsddad1a12017-02-23 20:36:32 -060044PACKAGECONFIG[thin-provisioning-tools] = "--with-thin=internal,--with-thin=none,,thin-provisioning-tools"
Brad Bishopd7bf8c12018-02-25 22:55:05 -050045
46# Unset user/group to unbreak install.
47EXTRA_OECONF = "--with-user= \
48 --with-group= \
49 --enable-realtime \
Brad Bishopd7bf8c12018-02-25 22:55:05 -050050 --enable-cmdlib \
51 --enable-pkgconfig \
52 --with-usrlibdir=${libdir} \
53 --with-systemdsystemunitdir=${systemd_system_unitdir} \
54 --disable-thin_check_needs_check \
55 --with-thin-check=${sbindir}/thin_check \
56 --with-thin-dump=${sbindir}/thin_dump \
57 --with-thin-repair=${sbindir}/thin_repair \
58 --with-thin-restore=${sbindir}/thin_restore \
59"
Andrew Geissler87f5cff2022-09-30 13:13:31 -050060
61# gold doesn't like multiple dm_bitset_parse_list definitions in libdm/.exported_symbols.DM_1_02_138 and libdm/.exported_symbols.DM_1_02_129
62# after it was uncommented in the later in 2.03.12 with https://github.com/lvmteam/lvm2/commit/60eb608d66c2056a78e81f27db3da14139d9faab
63LDFLAGS:append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', " -fuse-ld=bfd", '', d)}"