1require lvm2.inc 2 3SRC_URI += " \ 4 file://0001-fix-command-bin-findmnt-bin-lsblk-bin-sort-not-found.patch \ 5 " 6 7DEPENDS += "autoconf-archive-native" 8 9inherit multilib_script 10 11MULTILIB_SCRIPTS = "${PN}:${sysconfdir}/lvm/lvm.conf" 12 13CACHED_CONFIGUREVARS += "MODPROBE_CMD=${base_sbindir}/modprobe" 14 15do_install:append() { 16 # Install machine specific configuration file 17 install -d ${D}${sysconfdir}/lvm 18 install -m 0644 ${WORKDIR}/lvm.conf ${D}${sysconfdir}/lvm/lvm.conf 19 sed -i -e 's:@libdir@:${libdir}:g' ${D}${sysconfdir}/lvm/lvm.conf 20 # We don't want init scripts/systemd units for native SDK utilities 21 if [ "${PN}" != "nativesdk-lvm2" ]; then 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 fi 31} 32 33PACKAGE_BEFORE_PN = "${PN}-scripts ${PN}-udevrules" 34 35SYSTEMD_PACKAGES = "${PN}" 36SYSTEMD_SERVICE:${PN} = "${@bb.utils.contains('PACKAGECONFIG', 'dmeventd', 'lvm2-monitor.service dm-event.socket dm-event.service', '', d)} \ 37 blk-availability.service" 38SYSTEMD_AUTO_ENABLE = "disable" 39 40TARGET_CC_ARCH += "${LDFLAGS}" 41 42EXTRA_OECONF:append:class-nativesdk = " --with-confdir=${sysconfdir}" 43 44DEPENDS += "util-linux" 45LVM2_PACKAGECONFIG:append:class-target = " \ 46 udev \ 47" 48PACKAGECONFIG[udev] = "--enable-udev_sync --enable-udev_rules --with-udevdir=${nonarch_base_libdir}/udev/rules.d,--disable-udev_sync --disable-udev_rules,udev,${PN}-udevrules" 49 50PACKAGES =+ "libdevmapper" 51FILES:libdevmapper = " \ 52 ${libdir}/libdevmapper.so.* \ 53 ${sbindir}/dmsetup \ 54 ${sbindir}/dmstats \ 55" 56 57FILES:${PN} += " \ 58 ${libdir}/device-mapper/*.so \ 59 ${systemd_system_unitdir}/lvm2-pvscan@.service \ 60" 61 62FILES:${PN}-scripts = " \ 63 ${sbindir}/blkdeactivate \ 64 ${sbindir}/fsadm \ 65 ${sbindir}/lvmconf \ 66 ${sbindir}/lvmdump \ 67" 68# Specified explicitly for the udev rules, just in case that it does not get picked 69# up automatically: 70FILES:${PN}-udevrules = "${nonarch_base_libdir}/udev/rules.d" 71RDEPENDS:${PN}-udevrules = "libdevmapper" 72RDEPENDS:${PN}:append:class-target = " libdevmapper" 73RDEPENDS:${PN}:append:class-nativesdk = " libdevmapper" 74 75RDEPENDS:${PN}-scripts = "${PN} (= ${EXTENDPKGV}) \ 76 bash \ 77 util-linux-lsblk \ 78 util-linux-findmnt \ 79 coreutils \ 80" 81RRECOMMENDS:${PN}:class-target = "${PN}-scripts (= ${EXTENDPKGV})" 82 83CONFFILES:${PN} += "${sysconfdir}/lvm/lvm.conf" 84 85SYSROOT_PREPROCESS_FUNCS:append = " remove_libdevmapper_sysroot_preprocess" 86remove_libdevmapper_sysroot_preprocess() { 87 rm -f ${SYSROOT_DESTDIR}${libdir}/libdevmapper.so* \ 88 ${SYSROOT_DESTDIR}${sbindir}/dmsetup \ 89 ${SYSROOT_DESTDIR}${sbindir}/dmstats \ 90 ${SYSROOT_DESTDIR}${includedir}/libdevmapper.h \ 91 ${SYSROOT_DESTDIR}${libdir}/pkgconfig/devmapper.pc 92} 93 94BBCLASSEXTEND = "native nativesdk" 95