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