[oe] [RFC][meta-oe][meta-systemd][PATCH] systemd: update to 186+git

Martin Jansa martin.jansa at gmail.com
Mon Jul 16 12:08:23 UTC 2012


On Mon, Jul 16, 2012 at 11:24:12AM +0200, Koen Kooi wrote:
> This is a combined udev+systemd recipe: it will build both udev and systemd in one go, but keep the old (sub)package layout:
> 
> 	udev
> 	udev-utils
> 	udev-systemd
> 	systemd
> 	systemd-vconsole-setup
> 	systemd-analyze
> 	systemd-initramfs
> 
> And all libraries are seperated out:
> 	
> 	libgudev-1.0-0
> 	libsystemd-daemon0
> 	libsystemd-id128-0
> 	libsystemd-journal0
> 	libsystemd-login0
> 	libudev1
> 
> The SRCREV is 94 patches ahead of the v186 tag to drag in compile fixes for 'old' gcc versions like 4.5.x.
> 
> Runtime tested with build from scratch and opkg upgrade with angstrom

With this upgrade (opkg upgraded) I see few services failing to start.
I'll try to reproduce it on other devices (this is on qemux86-64) and
maybe it was caused by some other changes (like meta-systemd move).

SHR root at qemux86-64 ~ $ systemctl status systemd-modules-load.service
systemd-modules-load.service - Load Kernel Modules
          Loaded: loaded (/lib/systemd/system/systemd-modules-load.service; static)
          Active: failed (Result: exit-code) since Mon, 16 Jul 2012 12:03:35 +0000; 2s ago
            Docs: man:systemd-modules-load.service(8)
                  man:modules-load.d(5)
         Process: 524 ExecStart=/lib/systemd/systemd-modules-load (code=exited, status=1/FAILURE)
          CGroup: name=systemd:/system/systemd-modules-load.service

Jul 16 12:03:35 qemux86-64 systemd-modules-load[524]: Failed to find module '...

SHR root at qemux86-64 ~ $ systemctl status busybox-syslog.service
busybox-syslog.service - System Logging Service
          Loaded: loaded (/lib/systemd/system/busybox-syslog.service; enabled)
          Active: failed (Result: exit-code) since Mon, 16 Jul 2012 12:03:55 +0000; 1s ago
         Process: 532 ExecStartPre=/bin/systemctl stop systemd-kmsg-syslogd.service (code=exited, status=1/FAILURE)
          CGroup: name=systemd:/system/busybox-syslog.service

Jul 16 12:03:56 qemux86-64 systemctl[532]: Failed to issue method call: Unit....

Cheers,

> Signed-off-by: Koen Kooi <koen at dominion.thruhere.net>
> ---
> 
> This is an RFC, it builds & works, but it can use cleanup.
> 
> A regression from the previous udev recipe are the 2 missing OE rule files: touchscreen.rules and modprobe.rules. These should certainly get added.
> A potential cleanup would be to give each lib its own -dev, -dbg and -staticdev to avoid dragging in systemd with installing libudev1-dbg, which is what people are currently griping about.
> 
>  .../systemd/systemd/format-replace-m-uclibc.patch  |  389 --------------------
>  .../recipes-core/systemd/systemd}/gtk-doc.make     |    0
>  .../systemd/systemd/paper-over-mkostemp.patch      |   19 -
>  meta-systemd/recipes-core/systemd/systemd_git.bb   |   89 ++++-
>  4 files changed, 75 insertions(+), 422 deletions(-)
>  delete mode 100644 meta-systemd/recipes-core/systemd/systemd/format-replace-m-uclibc.patch
>  copy {meta-oe/recipes-core/udev/udev => meta-systemd/recipes-core/systemd/systemd}/gtk-doc.make (100%)
>  delete mode 100644 meta-systemd/recipes-core/systemd/systemd/paper-over-mkostemp.patch
> 
> diff --git a/meta-systemd/recipes-core/systemd/systemd/format-replace-m-uclibc.patch b/meta-systemd/recipes-core/systemd/systemd/format-replace-m-uclibc.patch
> deleted file mode 100644
> index dd86121..0000000
> --- a/meta-systemd/recipes-core/systemd/systemd/format-replace-m-uclibc.patch
> +++ /dev/null
> @@ -1,389 +0,0 @@
> -Patch from Henning. %m is a glibc only thing. For uclibc we need to do it
> -differently. So we use static strings instead of mallocing them and free'ing
> -
> -I dont know if upstream systemd have plans to make systemd work on non
> -glibc system libraries if not then this patch would not make sense for 
> -upstream
> -
> -Signed-off-by: Khem Raj <raj.khem at gmail.com>
> -
> -Index: git/src/mount-setup.c
> -===================================================================
> ---- git.orig/src/mount-setup.c	2012-01-26 21:15:12.573084007 -0800
> -+++ git/src/mount-setup.c	2012-01-26 21:15:16.005084174 -0800
> -@@ -182,10 +182,10 @@
> -         (void) fgets(buf, sizeof(buf), f);
> - 
> -         for (;;) {
> --                char *controller;
> -+                char controller[30];
> -                 int enabled = 0;
> - 
> --                if (fscanf(f, "%ms %*i %*i %i", &controller, &enabled) != 2) {
> -+                if (fscanf(f, "%s %*i %*i %i", controller, &enabled) != 2) {
> - 
> -                         if (feof(f))
> -                                 break;
> -@@ -196,14 +196,12 @@
> -                 }
> - 
> -                 if (!enabled) {
> --                        free(controller);
> -                         continue;
> -                 }
> - 
> -                 r = set_put(controllers, controller);
> -                 if (r < 0) {
> -                         log_error("Failed to add controller to set.");
> --                        free(controller);
> -                         goto finish;
> -                 }
> -         }
> -@@ -273,7 +271,6 @@
> -                 p.fatal = false;
> - 
> -                 r = mount_one(&p, true);
> --                free(controller);
> -                 free(where);
> - 
> -                 if (r < 0) {
> -Index: git/src/socket-util.c
> -===================================================================
> ---- git.orig/src/socket-util.c	2012-01-26 21:15:12.593084008 -0800
> -+++ git/src/socket-util.c	2012-01-26 21:15:16.005084174 -0800
> -@@ -192,7 +192,7 @@
> - int socket_address_parse_netlink(SocketAddress *a, const char *s) {
> -         int family;
> -         unsigned group = 0;
> --        char* sfamily = NULL;
> -+        char sfamily[50];
> -         assert(a);
> -         assert(s);
> - 
> -@@ -200,17 +200,14 @@
> -         a->type = SOCK_RAW;
> - 
> -         errno = 0;
> --        if (sscanf(s, "%ms %u", &sfamily, &group) < 1)
> -+        if (sscanf(s, "%49s %u", &sfamily, &group) < 1)
> -                 return errno ? -errno : -EINVAL;
> - 
> -         if ((family = netlink_family_from_string(sfamily)) < 0)
> -                 if (safe_atoi(sfamily, &family) < 0) {
> --                        free(sfamily);
> -                         return -EINVAL;
> -                 }
> - 
> --        free(sfamily);
> --
> -         a->sockaddr.nl.nl_family = AF_NETLINK;
> -         a->sockaddr.nl.nl_groups = group;
> - 
> -Index: git/src/swap.c
> -===================================================================
> ---- git.orig/src/swap.c	2012-01-26 21:15:12.593084008 -0800
> -+++ git/src/swap.c	2012-01-26 21:15:16.005084174 -0800
> -@@ -1049,11 +1049,12 @@
> -         (void) fscanf(m->proc_swaps, "%*s %*s %*s %*s %*s\n");
> - 
> -         for (i = 1;; i++) {
> --                char *dev = NULL, *d;
> -+                char *d;
> -+                char dev[20];
> -                 int prio = 0, k;
> - 
> -                 if ((k = fscanf(m->proc_swaps,
> --                                "%ms "  /* device/file */
> -+                                "%19s "  /* device/file */
> -                                 "%*s "  /* type of swap */
> -                                 "%*s "  /* swap size */
> -                                 "%*s "  /* used */
> -@@ -1064,12 +1065,10 @@
> -                                 break;
> - 
> -                         log_warning("Failed to parse /proc/swaps:%u.", i);
> --                        free(dev);
> -                         continue;
> -                 }
> - 
> -                 d = cunescape(dev);
> --                free(dev);
> - 
> -                 if (!d)
> -                         return -ENOMEM;
> -Index: git/src/tmpfiles.c
> -===================================================================
> ---- git.orig/src/tmpfiles.c	2012-01-26 21:15:12.617084010 -0800
> -+++ git/src/tmpfiles.c	2012-01-26 23:17:01.185437712 -0800
> -@@ -73,8 +73,8 @@
> - typedef struct Item {
> -         ItemType type;
> - 
> --        char *path;
> --        char *argument;
> -+        char path[50];
> -+        char argument[50];
> -         uid_t uid;
> -         gid_t gid;
> -         mode_t mode;
> -@@ -822,7 +822,6 @@
> -         case CREATE_CHAR_DEVICE:
> -         case CREATE_BLOCK_DEVICE:
> -         case IGNORE_PATH:
> --        case RELABEL_PATH:
> -         case RECURSIVE_RELABEL_PATH:
> -         case WRITE_FILE:
> -                 break;
> -@@ -858,8 +857,6 @@
> - static void item_free(Item *i) {
> -         assert(i);
> - 
> --        free(i->path);
> --        free(i->argument);
> -         free(i);
> - }
> - 
> -@@ -906,7 +903,7 @@
> - 
> - static int parse_line(const char *fname, unsigned line, const char *buffer) {
> -         Item *i, *existing;
> --        char *mode = NULL, *user = NULL, *group = NULL, *age = NULL;
> -+        char mode[50], user[50], group[50], age[50];
> -         char type;
> -         Hashmap *h;
> -         int r, n = -1;
> -@@ -923,18 +920,18 @@
> - 
> -         if (sscanf(buffer,
> -                    "%c "
> --                   "%ms "
> --                   "%ms "
> --                   "%ms "
> --                   "%ms "
> --                   "%ms "
> -+                   "%s "
> -+                   "%s "
> -+                   "%s "
> -+                   "%s "
> -+                   "%s "
> -                    "%n",
> -                    &type,
> -                    &i->path,
> --                   &mode,
> --                   &user,
> --                   &group,
> --                   &age,
> -+                   mode,
> -+                   user,
> -+                   group,
> -+                   age,
> -                    &n) < 2) {
> -                 log_error("[%s:%u] Syntax error.", fname, line);
> -                 r = -EIO;
> -@@ -944,7 +941,7 @@
> -         if (n >= 0)  {
> -                 n += strspn(buffer+n, WHITESPACE);
> -                 if (buffer[n] != 0 && (buffer[n] != '-' || buffer[n+1] != 0)) {
> --                        i->argument = unquote(buffer+n, "\"");
> -+                        strcpy(i->argument, unquote(buffer+n, "\""));
> -                         if (!i->argument) {
> -                                 log_error("Out of memory");
> -                                 return -ENOMEM;
> -@@ -1096,11 +1093,6 @@
> -         r = 0;
> - 
> - finish:
> --        free(user);
> --        free(group);
> --        free(mode);
> --        free(age);
> --
> -         if (i)
> -                 item_free(i);
> - 
> -Index: git/src/mount.c
> -===================================================================
> ---- git.orig/src/mount.c	2012-01-26 21:15:12.573084007 -0800
> -+++ git/src/mount.c	2012-01-26 21:15:16.005084174 -0800
> -@@ -24,6 +24,7 @@
> - #include <mntent.h>
> - #include <sys/epoll.h>
> - #include <signal.h>
> -+#include <string.h>
> - 
> - #include "unit.h"
> - #include "mount.h"
> -@@ -1561,7 +1562,13 @@
> - static int mount_load_proc_self_mountinfo(Manager *m, bool set_flags) {
> -         int r = 0;
> -         unsigned i;
> --        char *device, *path, *options, *options2, *fstype, *d, *p, *o;
> -+        char *d, *p, *o;
> -+        char device[50];
> -+        char path[50];
> -+        char options[50];
> -+        char options2[50];
> -+        char fstype[50];
> -+
> - 
> -         assert(m);
> - 
> -@@ -1570,26 +1577,26 @@
> -         for (i = 1;; i++) {
> -                 int k;
> - 
> --                device = path = options = options2 = fstype = d = p = o = NULL;
> -+                d = p = o = NULL;
> - 
> -                 if ((k = fscanf(m->proc_self_mountinfo,
> -                                 "%*s "       /* (1) mount id */
> -                                 "%*s "       /* (2) parent id */
> -                                 "%*s "       /* (3) major:minor */
> -                                 "%*s "       /* (4) root */
> --                                "%ms "       /* (5) mount point */
> --                                "%ms"        /* (6) mount options */
> -+                                "%49s "       /* (5) mount point */
> -+                                "%49s"        /* (6) mount options */
> -                                 "%*[^-]"     /* (7) optional fields */
> -                                 "- "         /* (8) separator */
> --                                "%ms "       /* (9) file system type */
> --                                "%ms"        /* (10) mount source */
> --                                "%ms"        /* (11) mount options 2 */
> -+                                "%49s "       /* (9) file system type */
> -+                                "%49s"        /* (10) mount source */
> -+                                "%49s"        /* (11) mount options 2 */
> -                                 "%*[^\n]",   /* some rubbish at the end */
> --                                &path,
> --                                &options,
> --                                &fstype,
> --                                &device,
> --                                &options2)) != 5) {
> -+                                path,
> -+                                options,
> -+                                fstype,
> -+                                device,
> -+                                options2)) != 5) {
> - 
> -                         if (k == EOF)
> -                                 break;
> -@@ -1613,22 +1620,12 @@
> -                         r = k;
> - 
> - clean_up:
> --                free(device);
> --                free(path);
> --                free(options);
> --                free(options2);
> --                free(fstype);
> -                 free(d);
> -                 free(p);
> -                 free(o);
> -         }
> - 
> - finish:
> --        free(device);
> --        free(path);
> --        free(options);
> --        free(options2);
> --        free(fstype);
> -         free(d);
> -         free(p);
> -         free(o);
> -Index: git/src/umount.c
> -===================================================================
> ---- git.orig/src/umount.c	2012-01-26 21:15:12.617084010 -0800
> -+++ git/src/umount.c	2012-01-26 21:15:16.005084174 -0800
> -@@ -60,7 +60,9 @@
> - 
> - static int mount_points_list_get(MountPoint **head) {
> -         FILE *proc_self_mountinfo;
> --        char *path, *p;
> -+        char *p;
> -+        char path[50];
> -+
> -         unsigned int i;
> -         int r;
> - 
> -@@ -72,17 +74,17 @@
> -         for (i = 1;; i++) {
> -                 int k;
> -                 MountPoint *m;
> --                char *root;
> -+                char root[50];
> -                 bool skip_ro;
> - 
> --                path = p = NULL;
> -+                p = NULL;
> - 
> -                 if ((k = fscanf(proc_self_mountinfo,
> -                                 "%*s "       /* (1) mount id */
> -                                 "%*s "       /* (2) parent id */
> -                                 "%*s "       /* (3) major:minor */
> --                                "%ms "       /* (4) root */
> --                                "%ms "       /* (5) mount point */
> -+                                "%49s "       /* (4) root */
> -+                                "%49s "       /* (5) mount point */
> -                                 "%*s"        /* (6) mount options */
> -                                 "%*[^-]"     /* (7) optional fields */
> -                                 "- "         /* (8) separator */
> -@@ -90,24 +92,21 @@
> -                                 "%*s"        /* (10) mount source */
> -                                 "%*s"        /* (11) mount options 2 */
> -                                 "%*[^\n]",   /* some rubbish at the end */
> --                                &root,
> --                                &path)) != 2) {
> -+                                root,
> -+                                path)) != 2) {
> -                         if (k == EOF)
> -                                 break;
> - 
> -                         log_warning("Failed to parse /proc/self/mountinfo:%u.", i);
> - 
> --                        free(path);
> -                         continue;
> -                 }
> - 
> -                 /* If we encounter a bind mount, don't try to remount
> -                  * the source dir too early */
> -                 skip_ro = !streq(root, "/");
> --                free(root);
> - 
> -                 p = cunescape(path);
> --                free(path);
> - 
> -                 if (!p) {
> -                         r = -ENOMEM;
> -@@ -152,28 +151,28 @@
> - 
> -         for (i = 2;; i++) {
> -                 MountPoint *swap;
> --                char *dev = NULL, *d;
> -+                char *d;
> -+                char dev[50];
> -+
> -                 int k;
> - 
> -                 if ((k = fscanf(proc_swaps,
> --                                "%ms " /* device/file */
> -+                                "%50s " /* device/file */
> -                                 "%*s " /* type of swap */
> -                                 "%*s " /* swap size */
> -                                 "%*s " /* used */
> -                                 "%*s\n", /* priority */
> --                                &dev)) != 1) {
> -+                                dev)) != 1) {
> - 
> -                         if (k == EOF)
> -                                 break;
> - 
> -                         log_warning("Failed to parse /proc/swaps:%u.", i);
> - 
> --                        free(dev);
> -                         continue;
> -                 }
> - 
> -                 if (endswith(dev, "(deleted)")) {
> --                        free(dev);
> -                         continue;
> -                 }
> - 
> diff --git a/meta-oe/recipes-core/udev/udev/gtk-doc.make b/meta-systemd/recipes-core/systemd/systemd/gtk-doc.make
> similarity index 100%
> copy from meta-oe/recipes-core/udev/udev/gtk-doc.make
> copy to meta-systemd/recipes-core/systemd/systemd/gtk-doc.make
> diff --git a/meta-systemd/recipes-core/systemd/systemd/paper-over-mkostemp.patch b/meta-systemd/recipes-core/systemd/systemd/paper-over-mkostemp.patch
> deleted file mode 100644
> index ca10440..0000000
> --- a/meta-systemd/recipes-core/systemd/systemd/paper-over-mkostemp.patch
> +++ /dev/null
> @@ -1,19 +0,0 @@
> -uclibc does not have mkostemp() so we redefine it to use mkstemp()
> -
> -Signed-off-by: Khem Raj <raj.khem at gmail.com>
> -
> -Index: git/src/macro.h
> -===================================================================
> ---- git.orig/src/macro.h	2011-06-30 10:33:53.000000000 -0700
> -+++ git/src/macro.h	2011-06-30 15:07:28.285270006 -0700
> -@@ -27,6 +27,10 @@
> - #include <sys/uio.h>
> - #include <inttypes.h>
> - 
> -+#ifdef __UCLIBC__
> -+/* uclibc does not implement mkostemp GNU extention */
> -+#define mkostemp(x,y) mkstemp(x)
> -+#endif
> - #define _printf_attr_(a,b) __attribute__ ((format (printf, a, b)))
> - #define _sentinel_ __attribute__ ((sentinel))
> - #define _noreturn_ __attribute__((noreturn))
> diff --git a/meta-systemd/recipes-core/systemd/systemd_git.bb b/meta-systemd/recipes-core/systemd/systemd_git.bb
> index f4ca72a..e275576 100644
> --- a/meta-systemd/recipes-core/systemd/systemd_git.bb
> +++ b/meta-systemd/recipes-core/systemd/systemd_git.bb
> @@ -1,9 +1,14 @@
>  DESCRIPTION = "Systemd a init replacement"
>  HOMEPAGE = "http://www.freedesktop.org/wiki/Software/systemd"
> -LICENSE = "GPLv2+"
> -LIC_FILES_CHKSUM = "file://LICENSE;md5=751419260aa954499f7abaabaa882bbe"
>  
> -DEPENDS = "xz kmod docbook-sgml-dtd-4.1-native intltool-native gperf-native acl readline udev dbus libcap libcgroup tcp-wrappers"
> +LICENSE = "GPLv2 & LGPLv2.1 & MIT"
> +LIC_FILES_CHKSUM = "file://LICENSE.GPL2;md5=751419260aa954499f7abaabaa882bbe \
> +                    file://LICENSE.LGPL2.1;md5=fb919cc88dbe06ec0b0bd50e001ccf1f \
> +                    file://LICENSE.MIT;md5=544799d0b492f119fa04641d1b8868ed"
> +
> +PROVIDES = "udev"
> +
> +DEPENDS = "xz kmod docbook-sgml-dtd-4.1-native intltool-native gperf-native acl readline dbus libcap libcgroup tcp-wrappers"
>  DEPENDS += "${@base_contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
>  
>  SERIAL_CONSOLE ?= "115200 /dev/ttyS0"
> @@ -14,19 +19,14 @@ inherit gitpkgv
>  PKGV = "v${GITPKGVTAG}"
>  
>  PV = "git"
> -PR = "r27"
> +PR = "r1"
>  
>  inherit useradd pkgconfig autotools vala perlnative
>  
> -SRCREV = "3eff4208ffecedd778fec260f0d4b18e94dab443"
> +SRCREV = "17ec33d69e1222ea11bfffe7c5a08fe435e8b4f2"
>  
>  SRC_URI = "git://anongit.freedesktop.org/systemd/systemd;protocol=git \
> -           ${UCLIBCPATCHES} \
> -          "
> -UCLIBCPATCHES = ""
> -UCLIBCPATCHES_libc-uclibc = "file://paper-over-mkostemp.patch \
> -                             file://format-replace-m-uclibc.patch \
> -                            "
> +           file://gtk-doc.make"
>  
>  LDFLAGS_libc-uclibc_append = " -lrt"
>  
> @@ -39,17 +39,27 @@ SYSTEMDDISTRO_angstrom = "angstrom"
>  EXTRA_OECONF = " --with-distro=${SYSTEMDDISTRO} \
>                   --with-rootprefix=${base_prefix} \
>                   --with-rootlibdir=${base_libdir} \
> +                 --sbindir=${base_sbindir} \
> +                 --libexecdir=${base_libdir} \
>                   ${@base_contains('DISTRO_FEATURES', 'pam', '--enable-pam', '--disable-pam', d)} \
> -                 --disable-gtk \
>                   --enable-xz \
>                   --disable-manpages \
>                   --disable-coredump \
> +                 --disable-introspection \
> +                 --with-pci-ids-path=/usr/share/misc \
> +                 ac_cv_file__usr_share_pci_ids=no \
> +                 ac_cv_file__usr_share_hwdata_pci_ids=no \
> +                 ac_cv_file__usr_share_misc_pci_ids=yes \
> +                 --disable-gtk-doc-html \ 
> +                 --disable-tcpwrap \
>                 "
>  
>  # There's no docbook-xsl-native, so for the xsltproc check to false
>  do_configure_prepend() {
>  	sed -i /xsltproc/d configure.ac
>  
> +	cp ${WORKDIR}/gtk-doc.make ${S}/docs/
> +
>  	# we only have /home/root, not /root
>  	sed -i -e 's:=/root:=/home/root:g' units/*.service*
>  }
> @@ -100,10 +110,18 @@ FILES_${PN} = " ${base_bindir}/* \
>                  ${datadir}/dbus-1/system-services \
>                  ${datadir}/polkit-1 \
>                  ${datadir}/${PN} \
> -                ${sysconfdir} \
> +                ${sysconfdir}/bash_completion.d/ \
> +                ${sysconfdir}/binfmt.d/ \
> +                ${sysconfdir}/dbus-1/ \
> +                ${sysconfdir}/machine-id \
> +                ${sysconfdir}/modules-load.d/ \
> +                ${sysconfdir}/sysctl.d/ \
> +                ${sysconfdir}/systemd/ \
> +                ${sysconfdir}/tmpfiles.d/ \
> +                ${sysconfdir}/xdg/ \
>                  ${systemd_unitdir}/* \
>                  ${systemd_unitdir}/system/* \
> -                ${base_libdir}/udev/rules.d \
> +                ${base_libdir}/udev/rules.d/99-systemd.rules \
>                  ${base_libdir}/security/*.so \
>                  /cgroup \
>                  ${bindir}/systemd* \
> @@ -114,6 +132,10 @@ FILES_${PN} = " ${base_bindir}/* \
>                  ${libdir}/sysctl.d \
>                  ${localstatedir} \
>                  ${libexecdir} \
> +                ${base_libdir}/udev/rules.d/70-uaccess.rules \
> +                ${base_libdir}/udev/rules.d/71-seat.rules \
> +                ${base_libdir}/udev/rules.d/73-seat-late.rules \
> +                ${base_libdir}/udev/rules.d/99-systemd.rules \
>                 "
>  
>  FILES_${PN}-dbg += "${systemd_unitdir}/.debug ${systemd_unitdir}/*/.debug ${base_libdir}/security/.debug/"
> @@ -136,6 +158,45 @@ RRECOMMENDS_${PN} += "systemd-serialgetty \
>                        kernel-module-autofs4 kernel-module-unix kernel-module-ipv6 \
>  "
>  
> +PACKAGES =+ "udev-dbg udev udev-consolekit udev-utils udev-systemd"
> +
> +FILES_udev-dbg += "${base_libdir}/udev/.debug"
> +
> +RDEPENDS_udev += "udev-utils"
> +RPROVIDES_udev = "hotplug"
> +
> +FILES_udev += "${base_libdir}/udev/udevd \
> +               ${base_libdir}/systemd/systemd-udevd \
> +               ${base_libdir}/udev/accelerometer \
> +               ${base_libdir}/udev/ata_id \
> +               ${base_libdir}/udev/cdrom_id \
> +               ${base_libdir}/udev/collect \
> +               ${base_libdir}/udev/findkeyboards \
> +               ${base_libdir}/udev/keyboard-force-release.sh \
> +               ${base_libdir}/udev/keymap \
> +               ${base_libdir}/udev/mtd_probe \
> +               ${base_libdir}/udev/scsi_id \
> +               ${base_libdir}/udev/v4l_id \
> +               ${base_libdir}/udev/keymaps \
> +               ${base_libdir}/udev/rules.d/4*.rules \
> +               ${base_libdir}/udev/rules.d/5*.rules \
> +               ${base_libdir}/udev/rules.d/6*.rules \
> +               ${base_libdir}/udev/rules.d/70-power-switch.rules \
> +               ${base_libdir}/udev/rules.d/75*.rules \
> +               ${base_libdir}/udev/rules.d/78*.rules \
> +               ${base_libdir}/udev/rules.d/8*.rules \
> +               ${base_libdir}/udev/rules.d/95*.rules \
> +               ${sysconfdir}/udev \
> +              "
> +
> +FILES_udev-consolekit += "${libdir}/ConsoleKit"
> +RDEPENDS_udev-consolekit += "${@base_contains('DISTRO_FEATURES', 'x11', 'consolekit', '', d)}"
> +
> +FILES_udev-utils = "${bindir}/udevadm"
> +
> +FILES_udev-systemd = "${base_libdir}/systemd/system/*udev* ${base_libdir}/systemd/system/*.wants/*udev*"
> +RDEPENDS_udev-systemd = "udev"
> +
>  # TODO:
>  # u-a for runlevel and telinit
>  
> -- 
> 1.7.10
> 
> 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-devel/attachments/20120716/8223d613/attachment-0002.sig>


More information about the Openembedded-devel mailing list