blob: 785c6960e2bad6ac625350f830ee55f6bddd7959 [file] [log] [blame]
Brad Bishop19323692019-04-05 15:28:33 -04001require lvm2.inc
2
3SRCREV = "913c28917e62577a2ef67152b2e5159237503dda"
4
Brad Bishop0f291cc2019-09-01 15:16:57 -04005SRC_URI += " \
Brad Bishop19323692019-04-05 15:28:33 -04006 file://0001-dev-hdc-open-failed-No-medium-found-will-print-out-i.patch \
7 "
8
9DEPENDS += "autoconf-archive-native"
10
11inherit multilib_script
12
13MULTILIB_SCRIPTS = "${PN}:${sysconfdir}/lvm/lvm.conf"
14
15CACHED_CONFIGUREVARS += "MODPROBE_CMD=${base_sbindir}/modprobe"
16
17do_install_append() {
18 # Install machine specific configuration file
19 install -d ${D}${sysconfdir}/lvm
20 install -m 0644 ${WORKDIR}/lvm.conf ${D}${sysconfdir}/lvm/lvm.conf
21 sed -i -e 's:@libdir@:${libdir}:g' ${D}${sysconfdir}/lvm/lvm.conf
22 if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
23 oe_runmake 'DESTDIR=${D}' install install_systemd_units
24 sed -i -e 's:/usr/bin/true:${base_bindir}/true:g' ${D}${systemd_system_unitdir}/blk-availability.service
25 else
26 oe_runmake 'DESTDIR=${D}' install install_initscripts
27 mv ${D}${sysconfdir}/rc.d/init.d ${D}${sysconfdir}/init.d
28 rm -rf ${D}${sysconfdir}/rc.d
29 fi
30}
31
32PACKAGE_BEFORE_PN = "${PN}-scripts ${PN}-udevrules"
33
34SYSTEMD_PACKAGES = "${PN}"
35SYSTEMD_SERVICE_${PN} = "${@bb.utils.contains('PACKAGECONFIG', 'dmeventd', 'lvm2-monitor.service dm-event.socket dm-event.service', '', d)} \
36 blk-availability.service lvm2-pvscan@.service"
37SYSTEMD_AUTO_ENABLE = "disable"
38
39TARGET_CC_ARCH += "${LDFLAGS}"
40
41EXTRA_OECONF_append_class-nativesdk = " --with-confdir=${sysconfdir}"
42
Brad Bishop665fd022019-08-26 01:32:28 -040043DEPENDS += "util-linux"
44LVM2_PACKAGECONFIG_append_class-target = " \
45 udev \
46"
47PACKAGECONFIG[udev] = "--enable-udev_sync --enable-udev_rules --with-udevdir=${nonarch_base_libdir}/udev/rules.d,--disable-udev_sync --disable-udev_rules,udev"
48
Brad Bishop0f291cc2019-09-01 15:16:57 -040049PACKAGES =+ "libdevmapper"
50FILES_libdevmapper = " \
51 ${libdir}/libdevmapper.so.* \
52 ${sbindir}/dmsetup \
53 ${sbindir}/dmstats \
54"
55
Brad Bishop19323692019-04-05 15:28:33 -040056FILES_${PN} += "${libdir}/device-mapper/*.so"
57FILES_${PN}-scripts = " \
58 ${sbindir}/blkdeactivate \
59 ${sbindir}/fsadm \
60 ${sbindir}/lvmconf \
61 ${sbindir}/lvmdump \
62"
63# Specified explicitly for the udev rules, just in case that it does not get picked
64# up automatically:
65FILES_${PN}-udevrules = "${nonarch_base_libdir}/udev/rules.d"
Brad Bishop26bdd442019-08-16 17:08:17 -040066RDEPENDS_${PN}-udevrules = "libdevmapper"
Brad Bishop19323692019-04-05 15:28:33 -040067RDEPENDS_${PN}_append_class-target = " libdevmapper"
68RDEPENDS_${PN}_append_class-nativesdk = " libdevmapper"
69
70RDEPENDS_${PN}-scripts = "${PN} (= ${EXTENDPKGV}) bash"
71RRECOMMENDS_${PN}_class-target = "${PN}-scripts (= ${EXTENDPKGV})"
72
73CONFFILES_${PN} += "${sysconfdir}/lvm/lvm.conf"
74
Brad Bishop0f291cc2019-09-01 15:16:57 -040075SYSROOT_PREPROCESS_FUNCS_append = " remove_libdevmapper_sysroot_preprocess"
76remove_libdevmapper_sysroot_preprocess() {
77 rm -f ${SYSROOT_DESTDIR}${libdir}/libdevmapper.so* \
78 ${SYSROOT_DESTDIR}${sbindir}/dmsetup \
79 ${SYSROOT_DESTDIR}${sbindir}/dmstats \
80 ${SYSROOT_DESTDIR}${includedir}/libdevmapper.h \
81 ${SYSROOT_DESTDIR}${libdir}/pkgconfig/devmapper.pc
82}
83
Brad Bishop19323692019-04-05 15:28:33 -040084BBCLASSEXTEND = "native nativesdk"