1SUMMARY = "eudev is a fork of systemd's udev" 2HOMEPAGE = "https://wiki.gentoo.org/wiki/Eudev" 3DESCRIPTION = "eudev is Gentoo's fork of udev, systemd's device file manager for the Linux kernel. It manages device nodes in /dev and handles all user space actions when adding or removing devices." 4LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later" 5LICENSE:libudev = "LGPL-2.1-or-later" 6LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" 7 8DEPENDS = "glib-2.0 glib-2.0-native gperf-native kmod libxslt-native util-linux" 9 10PROVIDES = "udev" 11 12SRC_URI = "https://dev.gentoo.org/~blueness/${BPN}/${BP}.tar.gz \ 13 file://0014-Revert-rules-remove-firmware-loading-rules.patch \ 14 file://Revert-udev-remove-userspace-firmware-loading-suppor.patch \ 15 file://devfs-udev.rules \ 16 file://init \ 17 file://links.conf \ 18 file://local.rules \ 19 file://permissions.rules \ 20 file://run.rules \ 21 file://udev.rules \ 22" 23 24SRC_URI[md5sum] = "60b135a189523f333cea5f71a3345c8d" 25SRC_URI[sha256sum] = "87bb028d470fd1b85169349b44c55d5b733733dc2d50ddf1196e026725ead034" 26 27inherit autotools update-rc.d qemu pkgconfig features_check 28 29CONFLICT_DISTRO_FEATURES = "systemd" 30 31EXTRA_OECONF = " \ 32 --sbindir=${base_sbindir} \ 33 --with-rootlibdir=${base_libdir} \ 34 --with-rootlibexecdir=${nonarch_base_libdir}/udev \ 35 --with-rootprefix= \ 36" 37 38PACKAGECONFIG ??= "hwdb" 39PACKAGECONFIG[hwdb] = "--enable-hwdb,--disable-hwdb" 40 41do_install:append() { 42 install -d ${D}${sysconfdir}/init.d 43 install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/udev 44 sed -i s%@UDEVD@%${base_sbindir}/udevd% ${D}${sysconfdir}/init.d/udev 45 46 install -d ${D}${sysconfdir}/udev/rules.d 47 install -m 0644 ${WORKDIR}/local.rules ${D}${sysconfdir}/udev/rules.d/local.rules 48 49 # Use classic network interface naming scheme 50 touch ${D}${sysconfdir}/udev/rules.d/80-net-name-slot.rules 51 52 # hid2hci has moved to bluez4. removed in udev as of version 169 53 rm -f ${D}${base_libdir}/udev/hid2hci 54} 55 56do_install:prepend:class-target () { 57 # Remove references to buildmachine 58 sed -i -e 's:${RECIPE_SYSROOT_NATIVE}::g' \ 59 ${B}/src/udev/keyboard-keys-from-name.h 60} 61 62INITSCRIPT_NAME = "udev" 63INITSCRIPT_PARAMS = "start 04 S ." 64 65PACKAGES =+ "libudev" 66PACKAGES =+ "eudev-hwdb" 67 68 69FILES:${PN} += "${libexecdir} ${nonarch_base_libdir}/udev ${bindir}/udevadm" 70FILES:${PN}-dev = "${datadir}/pkgconfig/udev.pc \ 71 ${includedir}/libudev.h ${libdir}/libudev.so \ 72 ${includedir}/udev.h ${libdir}/libudev.la \ 73 ${libdir}/libudev.a ${libdir}/pkgconfig/libudev.pc" 74FILES:libudev = "${base_libdir}/libudev.so.*" 75FILES:eudev-hwdb = "${sysconfdir}/udev/hwdb.d" 76 77RDEPENDS:eudev-hwdb += "eudev" 78 79RPROVIDES:${PN} = "hotplug udev" 80RPROVIDES:eudev-hwdb += "udev-hwdb" 81 82PACKAGE_WRITE_DEPS += "qemu-native" 83pkg_postinst:eudev-hwdb () { 84 if test -n "$D"; then 85 $INTERCEPT_DIR/postinst_intercept update_udev_hwdb ${PKG} mlprefix=${MLPREFIX} binprefix=${MLPREFIX} 86 else 87 udevadm hwdb --update 88 fi 89} 90 91pkg_prerm:eudev-hwdb () { 92 rm -f $D${sysconfdir}/udev/hwdb.bin 93} 94