blob: 857d20db7857d08053b21e92cb53965d68f83220 [file] [log] [blame]
Patrick Williamsc0f7c042017-02-23 20:41:17 -06001SUMMARY = "eudev is a fork of systemd's udev"
2HOMEPAGE = "https://wiki.gentoo.org/wiki/Eudev"
Brad Bishop37a0e4d2017-12-04 01:01:44 -05003LICENSE = "GPLv2.0+ & LGPL-2.1+"
4LICENSE_libudev = "LGPL-2.1+"
Patrick Williamsc0f7c042017-02-23 20:41:17 -06005LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
6
7DEPENDS = "glib-2.0 glib-2.0-native gperf-native kmod libxslt-native util-linux"
8
9PROVIDES = "udev"
10
11SRC_URI = "https://github.com/gentoo/${BPN}/archive/v${PV}.tar.gz \
12 file://devfs-udev.rules \
13 file://init \
14 file://links.conf \
15 file://local.rules \
16 file://permissions.rules \
17 file://run.rules \
18 file://udev-cache \
19 file://udev-cache.default \
20 file://udev.rules \
21"
22UPSTREAM_CHECK_URI = "https://github.com/gentoo/eudev/releases"
23
24SRC_URI[md5sum] = "9eb477cc8718db272b5d24dff1126b04"
25SRC_URI[sha256sum] = "37829d37f4beb7e358ca33abc1ad0907d87f917ce157777aeaeebeacae24efdc"
26
27inherit autotools update-rc.d qemu pkgconfig
28
29EXTRA_OECONF = " \
30 --sbindir=${base_sbindir} \
31 --with-rootlibdir=${base_libdir} \
32 --with-rootprefix= \
33"
34
35PACKAGECONFIG ??= "hwdb"
36PACKAGECONFIG[hwdb] = "--enable-hwdb,--disable-hwdb"
37
38do_install_append() {
39 install -d ${D}${sysconfdir}/init.d
40 install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/udev
41 install -m 0755 ${WORKDIR}/udev-cache ${D}${sysconfdir}/init.d/udev-cache
42 sed -i s%@UDEVD@%${base_sbindir}/udevd% ${D}${sysconfdir}/init.d/udev
43 sed -i s%@UDEVD@%${base_sbindir}/udevd% ${D}${sysconfdir}/init.d/udev-cache
44
45 install -d ${D}${sysconfdir}/default
46 install -m 0755 ${WORKDIR}/udev-cache.default ${D}${sysconfdir}/default/udev-cache
47
48 touch ${D}${sysconfdir}/udev/cache.data
49
50 install -d ${D}${sysconfdir}/udev/rules.d
51 install -m 0644 ${WORKDIR}/local.rules ${D}${sysconfdir}/udev/rules.d/local.rules
52
53 # Use classic network interface naming scheme
54 touch ${D}${sysconfdir}/udev/rules.d/80-net-name-slot.rules
55
56 # hid2hci has moved to bluez4. removed in udev as of version 169
57 rm -f ${D}${base_libdir}/udev/hid2hci
58}
59
60INITSCRIPT_PACKAGES = "eudev udev-cache"
61INITSCRIPT_NAME_eudev = "udev"
62INITSCRIPT_PARAMS_eudev = "start 04 S ."
63INITSCRIPT_NAME_udev-cache = "udev-cache"
64INITSCRIPT_PARAMS_udev-cache = "start 36 S ."
65
66PACKAGES =+ "libudev"
67PACKAGES =+ "udev-cache"
68PACKAGES =+ "eudev-hwdb"
69
70
71FILES_${PN} += "${libexecdir} ${base_libdir}/udev ${bindir}/udevadm"
72FILES_${PN}-dev = "${datadir}/pkgconfig/udev.pc \
73 ${includedir}/libudev.h ${libdir}/libudev.so \
74 ${includedir}/udev.h ${libdir}/libudev.la \
75 ${libdir}/libudev.a ${libdir}/pkgconfig/libudev.pc"
76FILES_libudev = "${base_libdir}/libudev.so.*"
77FILES_udev-cache = "${sysconfdir}/init.d/udev-cache ${sysconfdir}/default/udev-cache"
78FILES_eudev-hwdb = "${sysconfdir}/udev/hwdb.d"
79
80RDEPENDS_eudev-hwdb += "eudev"
81
82RRECOMMENDS_${PN} += "udev-cache"
83
84RPROVIDES_${PN} = "hotplug udev"
85
86python () {
87 if bb.utils.contains ('DISTRO_FEATURES', 'systemd', True, False, d):
88 raise bb.parse.SkipPackage("'systemd' in DISTRO_FEATURES")
89}
90
91pkg_postinst_eudev-hwdb () {
92 if test -n "$D"; then
93 ${@qemu_run_binary(d, '$D', '${bindir}/udevadm')} hwdb --update --root $D
94 chown root:root $D${sysconfdir}/udev/hwdb.bin
95 else
96 udevadm hwdb --update
97 fi
98}
99
100pkg_prerm_eudev-hwdb () {
101 rm -f $D${sysconfdir}/udev/hwdb.bin
102}