blob: dd2e8bbb3da0f10168bc7b9302a10f16ab222f2d [file] [log] [blame]
Patrick Williamsb48b7b42016-08-17 15:04:38 -05001SUMMARY = "Initramfs generator using udev"
Brad Bishopd7bf8c12018-02-25 22:55:05 -05002HOMEPAGE = "https://dracut.wiki.kernel.org/index.php/Main_Page"
Patrick Williamsb48b7b42016-08-17 15:04:38 -05003DESCRIPTION = "Dracut is an event driven initramfs infrastructure. dracut (the tool) is used to create an initramfs image by copying tools and files from an installed system and combining it with the dracut framework, usually found in /usr/lib/dracut/modules.d."
4
5LICENSE = "GPLv2"
6LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
7
8PE = "1"
Brad Bishop1a4b7ee2018-12-16 17:11:34 -08009PV = "049"
Patrick Williamsb48b7b42016-08-17 15:04:38 -050010
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080011# v048 tag
12SRCREV = "225e4b94cbdb702cf512490dcd2ad9ca5f5b22c1"
Brad Bishopd7bf8c12018-02-25 22:55:05 -050013SRC_URI = "git://git.kernel.org/pub/scm/boot/dracut/dracut.git;protocol=http \
14 file://0001-util.h-include-sys-reg.h-when-libc-glibc.patch \
15 "
Patrick Williamsb48b7b42016-08-17 15:04:38 -050016
Brad Bishopd7bf8c12018-02-25 22:55:05 -050017DEPENDS += "kmod"
18DEPENDS_append_libc-musl = " fts"
19
20inherit bash-completion pkgconfig
Patrick Williamsb48b7b42016-08-17 15:04:38 -050021
22S = "${WORKDIR}/git"
23
24EXTRA_OECONF = "--prefix=${prefix} \
25 --libdir=${prefix}/lib \
26 --datadir=${datadir} \
27 --sysconfdir=${sysconfdir} \
28 --sbindir=${sbindir} \
29 --disable-documentation \
30 --bindir=${bindir} \
31 --includedir=${includedir} \
32 --localstatedir=${localstatedir} \
33 "
34
35# RDEPEND on systemd optionally
Brad Bishop6e60e8b2018-02-01 10:27:11 -050036PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
Patrick Williamsb48b7b42016-08-17 15:04:38 -050037PACKAGECONFIG[systemd] = "--with-systemdsystemunitdir=${systemd_unitdir}/system/,,,systemd"
38
Brad Bishopd7bf8c12018-02-25 22:55:05 -050039EXTRA_OEMAKE += 'libdir=${prefix}/lib LDLIBS="${LDLIBS}"'
40
41LDLIBS_append_libc-musl = " -lfts"
Patrick Williamsb48b7b42016-08-17 15:04:38 -050042
43do_configure() {
44 ./configure ${EXTRA_OECONF}
45}
46
47do_install() {
48 oe_runmake install DESTDIR=${D}
49 # Its Makefile uses cp -arx to install modules.d, so fix the owner
50 # to root:root
51 chown -R root:root ${D}/${prefix}/lib/dracut/modules.d
52}
53
54FILES_${PN} += "${prefix}/lib/kernel \
55 ${prefix}/lib/dracut \
56 ${systemd_unitdir} \
57 "
58FILES_${PN}-dbg += "${prefix}/lib/dracut/.debug"
59
60CONFFILES_${PN} += "${sysconfdir}/dracut.conf"
61
62RDEPENDS_${PN} = "findutils cpio util-linux-blkid util-linux-getopt util-linux bash ldd"
63
64# This could be optimized a bit, but let's avoid non-booting systems :)
65RRECOMMENDS_${PN} = " \
66 kernel-modules \
67 busybox \
Patrick Williamsddad1a12017-02-23 20:36:32 -060068 coreutils \
Patrick Williamsb48b7b42016-08-17 15:04:38 -050069 "