diff options
author | Alejandro Hernandez <alejandro.hernandez@linux.intel.com> | 2016-03-01 02:52:47 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-03-02 22:39:43 +0000 |
commit | 3e5e540513665105b963262c2eaf33f197a0a36c (patch) | |
tree | 3ce445ae80c50cd303040a810ae478e0fdf1080d /meta/recipes-core/udev/eudev_3.1.5.bb | |
parent | 674e55f4169de8080b8453f951a4f68fc4b3fcd8 (diff) | |
download | poky-3e5e540513665105b963262c2eaf33f197a0a36c.tar.gz |
eudev: Replaces udev with eudev for compatibility when using sysvinit on newer kernels
udev has started to fail on new kernels (4.4), due to being deprecated in favor
of systemd's udev implementation. To maintain a sysvinit alternative we also
need to provide an alternative to udev. Eudev is a fork of systemds udev,
this new eudev recipe provides upstream udev 220 funcitonality.
- Removes patches that dont apply anymore
- ToDo: eudev-ptest?
[YOCTO #8998]
(From OE-Core rev: a22797f7c37a865420837b5c29b270f73ee4c6ce)
Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core/udev/eudev_3.1.5.bb')
-rw-r--r-- | meta/recipes-core/udev/eudev_3.1.5.bb | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/meta/recipes-core/udev/eudev_3.1.5.bb b/meta/recipes-core/udev/eudev_3.1.5.bb new file mode 100644 index 0000000000..8a23e6cb23 --- /dev/null +++ b/meta/recipes-core/udev/eudev_3.1.5.bb | |||
@@ -0,0 +1,93 @@ | |||
1 | SUMMARY = "eudev is a fork of systemd's udev" | ||
2 | HOMEPAGE = "https://wiki.gentoo.org/wiki/Eudev" | ||
3 | SRC_URI = "https://github.com/gentoo/${PN}/archive/v${PV}.tar.gz \ | ||
4 | file://init \ | ||
5 | file://local.rules \ | ||
6 | file://udev-cache \ | ||
7 | file://udev-cache.default \ | ||
8 | file://run.rules \ | ||
9 | file://udev.rules \ | ||
10 | file://devfs-udev.rules \ | ||
11 | file://links.conf \ | ||
12 | file://permissions.rules \ | ||
13 | " | ||
14 | |||
15 | LICENSE = "GPLv2.0+" | ||
16 | |||
17 | inherit autotools update-rc.d | ||
18 | |||
19 | SRC_URI[md5sum] = "e130f892d8744e292cb855db79935f68" | ||
20 | SRC_URI[sha256sum] = "ce9d5fa91e3a42c7eb95512ca0fa2a631e89833053066bb6cdf42046b2a88553" | ||
21 | |||
22 | LIC_FILES_CHKSUM="file://COPYING;md5=751419260aa954499f7abaabaa882bbe" | ||
23 | |||
24 | DEPENDS = "glib-2.0-native glib-2.0 util-linux libxslt-native gperf-native kmod" | ||
25 | |||
26 | PROVIDES = "udev" | ||
27 | RPROVIDES_${PN} = "hotplug udev" | ||
28 | |||
29 | PACKAGES =+ "udev-cache" | ||
30 | PACKAGES =+ "libudev" | ||
31 | |||
32 | INITSCRIPT_PACKAGES = "eudev udev-cache" | ||
33 | INITSCRIPT_NAME_eudev = "udev" | ||
34 | INITSCRIPT_PARAMS_eudev = "start 04 S ." | ||
35 | INITSCRIPT_NAME_udev-cache = "udev-cache" | ||
36 | INITSCRIPT_PARAMS_udev-cache = "start 36 S ." | ||
37 | |||
38 | RRECOMMENDS_${PN} += "udev-cache" | ||
39 | |||
40 | |||
41 | FILES_libudev = "${base_libdir}/libudev.so.*" | ||
42 | |||
43 | FILES_${PN} += "${libexecdir} ${nonarch_base_libdir}/udev ${bindir}/udevadm" | ||
44 | |||
45 | |||
46 | FILES_${PN}-dev = "${datadir}/pkgconfig/udev.pc \ | ||
47 | ${includedir}/libudev.h ${libdir}/libudev.so \ | ||
48 | ${includedir}/udev.h ${libdir}/libudev.la \ | ||
49 | ${libdir}/libudev.a ${libdir}/pkgconfig/libudev.pc \ | ||
50 | " | ||
51 | FILES_udev-cache = "${sysconfdir}/init.d/udev-cache ${sysconfdir}/default/udev-cache" | ||
52 | |||
53 | EXTRA_OECONF = "--with-rootlibdir=${base_libdir} \ | ||
54 | --sbindir=${base_sbindir} \ | ||
55 | --libexecdir=${nonarch_base_libdir} \ | ||
56 | --with-rootprefix= \ | ||
57 | " | ||
58 | do_install_append(){ | ||
59 | install -d ${D}${sysconfdir}/init.d | ||
60 | install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/udev | ||
61 | install -m 0755 ${WORKDIR}/udev-cache ${D}${sysconfdir}/init.d/udev-cache | ||
62 | sed -i s%@UDEVD@%${base_sbindir}/udevd% ${D}${sysconfdir}/init.d/udev | ||
63 | sed -i s%@UDEVD@%${base_sbindir}/udevd% ${D}${sysconfdir}/init.d/udev-cache | ||
64 | |||
65 | install -d ${D}${sysconfdir}/default | ||
66 | install -m 0755 ${WORKDIR}/udev-cache.default ${D}${sysconfdir}/default/udev-cache | ||
67 | |||
68 | touch ${D}${sysconfdir}/udev/cache.data | ||
69 | |||
70 | install -d ${D}${sysconfdir}/udev/rules.d/ | ||
71 | |||
72 | install -m 0644 ${WORKDIR}/local.rules ${D}${sysconfdir}/udev/rules.d/local.rules | ||
73 | |||
74 | # Fix for multilib systems where libs along with confs are installed incorrectly | ||
75 | if ! [ -d ${D}${nonarch_base_libdir}/udev ] | ||
76 | then | ||
77 | install -d ${D}${nonarch_base_libdir}/udev | ||
78 | mv ${D}${base_libdir}/udev ${D}${nonarch_base_libdir} | ||
79 | fi | ||
80 | |||
81 | # hid2hci has moved to bluez4. removed in udev as of version 169 | ||
82 | rm -f ${D}${base_libdir}/udev/hid2hci | ||
83 | |||
84 | echo 'udev_run="/var/run/udev"' >> ${D}${sysconfdir}/udev/udev.conf | ||
85 | |||
86 | # Use classic network interface naming scheme | ||
87 | touch ${D}${sysconfdir}/udev/rules.d/80-net-name-slot.rules | ||
88 | } | ||
89 | |||
90 | python () { | ||
91 | if bb.utils.contains ('DISTRO_FEATURES', 'systemd', True, False, d): | ||
92 | raise bb.parse.SkipPackage("'systemd' in DISTRO_FEATURES") | ||
93 | } | ||