Andrew Geissler | 595f630 | 2022-01-24 19:11:47 +0000 | [diff] [blame] | 1 | SUMMARY = "Initramfs generator using udev" |
| 2 | HOMEPAGE = "https://dracut.wiki.kernel.org/index.php/Main_Page" |
| 3 | DESCRIPTION = "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 | |
Andrew Geissler | 9aee500 | 2022-03-30 16:27:02 +0000 | [diff] [blame] | 5 | LICENSE = "GPL-2.0-only" |
Andrew Geissler | 595f630 | 2022-01-24 19:11:47 +0000 | [diff] [blame] | 6 | LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" |
| 7 | |
| 8 | PE = "1" |
| 9 | |
Patrick Williams | de0582f | 2022-04-08 10:23:27 -0500 | [diff] [blame] | 10 | SRCREV = "631d5f72a223288aa1f48bb8e8d0313e75947400" |
Andrew Geissler | 595f630 | 2022-01-24 19:11:47 +0000 | [diff] [blame] | 11 | SRC_URI = "git://git.kernel.org/pub/scm/boot/dracut/dracut.git;protocol=http;branch=master \ |
| 12 | file://0001-util.h-include-sys-reg.h-when-libc-glibc.patch \ |
Patrick Williams | de0582f | 2022-04-08 10:23:27 -0500 | [diff] [blame] | 13 | file://0001-Guard-against-__GLIBC_PREREQ-for-musl-libc.patch \ |
Andrew Geissler | 517393d | 2023-01-13 08:55:19 -0600 | [diff] [blame] | 14 | file://0001-install-Do-not-undef-_FILE_OFFSET_BITS.patch \ |
Andrew Geissler | 595f630 | 2022-01-24 19:11:47 +0000 | [diff] [blame] | 15 | " |
| 16 | |
| 17 | DEPENDS += "kmod" |
| 18 | DEPENDS:append:libc-musl = " fts" |
| 19 | |
| 20 | inherit bash-completion pkgconfig |
| 21 | |
| 22 | S = "${WORKDIR}/git" |
| 23 | |
| 24 | EXTRA_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 |
| 36 | PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" |
| 37 | PACKAGECONFIG[systemd] = "--with-systemdsystemunitdir=${systemd_unitdir}/system/,,,systemd" |
| 38 | |
| 39 | EXTRA_OEMAKE += 'libdir=${prefix}/lib LDLIBS="${LDLIBS}"' |
| 40 | |
Patrick Williams | de0582f | 2022-04-08 10:23:27 -0500 | [diff] [blame] | 41 | CFLAGS:append = " -fPIC" |
Andrew Geissler | 595f630 | 2022-01-24 19:11:47 +0000 | [diff] [blame] | 42 | LDLIBS:append:libc-musl = " -lfts" |
| 43 | |
| 44 | do_configure() { |
| 45 | ./configure ${EXTRA_OECONF} |
| 46 | } |
| 47 | |
| 48 | do_install() { |
| 49 | oe_runmake install DESTDIR=${D} |
| 50 | # Its Makefile uses cp -arx to install modules.d, so fix the owner |
| 51 | # to root:root |
| 52 | chown -R root:root ${D}/${prefix}/lib/dracut/modules.d |
| 53 | } |
| 54 | |
| 55 | FILES:${PN} += "${prefix}/lib/kernel \ |
| 56 | ${prefix}/lib/dracut \ |
| 57 | ${systemd_unitdir} \ |
| 58 | " |
| 59 | FILES:${PN}-dbg += "${prefix}/lib/dracut/.debug" |
| 60 | |
| 61 | CONFFILES:${PN} += "${sysconfdir}/dracut.conf" |
| 62 | |
| 63 | RDEPENDS:${PN} = "findutils cpio util-linux-blkid util-linux-getopt util-linux bash ldd" |
| 64 | |
| 65 | # This could be optimized a bit, but let's avoid non-booting systems :) |
| 66 | RRECOMMENDS:${PN} = " \ |
| 67 | kernel-modules \ |
Andrew Geissler | 595f630 | 2022-01-24 19:11:47 +0000 | [diff] [blame] | 68 | coreutils \ |
| 69 | " |
| 70 | |
Patrick Williams | 2a25492 | 2023-08-11 09:48:11 -0500 | [diff] [blame] | 71 | CVE_STATUS[CVE-2010-4176] = "not-applicable-platform: Applies only to Fedora" |