Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v7 2/4] udev: convert to virtual package.
Date: Fri, 7 Feb 2014 22:14:33 +0100	[thread overview]
Message-ID: <20140207211433.GA7580@milhouse> (raw)
In-Reply-To: <CAAXf6LWN2F6YhoVHu3w-TcWnqBQ4G_gdV652xBD0kGbopfafWw@mail.gmail.com>

Hi!

On Fri, Feb 07, 2014 at 09:17:08PM +0100, Thomas De Schampheleire wrote:

> > diff --git a/Config.in.legacy b/Config.in.legacy
> > index 2fe9cf9..6d594c6 100644
> > --- a/Config.in.legacy
> > +++ b/Config.in.legacy
> > @@ -101,6 +101,61 @@ endif
> >  ###############################################################################
> >  comment "Legacy options removed in 2014.02"
> >
> > +config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV
> > +       bool "/dev management by udev removed"
> > +       select BR2_LEGACY
> > +       help
> > +         The 'udev' package has been converted to a virtual package.
> > +         There is currently one provider for this feature: 'eudev'.
> > +
> > +         Therefore, you must choose 'Dynamic using eudev' in the
> > +         '/dev management' menu to get the same behaviour as in your
> > +          old configuration.
> > +
> > +         You must also check the packages depending on 'udev' are still
> > +         selected.
>
> Is there a particular reason why you don't automatically select the
> suggested alternative?
> This will make the transition easier for users...

That's what I did on first try. BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV was
selected. But I ended up facing a limit of kconfig: this boolean symbol is
used in a choice/endchoice ("/dev management"), which prevents its value from
being recalculated when it is selected from Config.in.legacy.

For example, if BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV=y in
test_udev_legacy_defconfig and we perform:

  $ make test_udev_legacy_defconfig

output/.config will contain:

  # BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV is not set
  BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_DEVTMPFS=y

The default choice is selected. I discussed this issue on IRC with Yann E.
Morin last evening, but there is no workaround... So I chose to remove the
automatic selection of the new symbol and add detailed instructions.

> > diff --git a/package/libatasmart/Config.in b/package/libatasmart/Config.in
> > index a3e44f8..534e7c1 100644
> > --- a/package/libatasmart/Config.in
> > +++ b/package/libatasmart/Config.in
> > @@ -1,6 +1,6 @@
> >  config BR2_PACKAGE_LIBATASMART
> >         bool "libatasmart"
> > -       depends on BR2_PACKAGE_UDEV # libudev is configure dependency
> > +       depends on BR2_PACKAGE_HAS_UDEV # libudev is configure dependency
> >         help
> >           The libatasmart package is a disk reporting library.
> >           It only supports a subset of the ATA S.M.A.R.T. functionality.
> > @@ -8,4 +8,4 @@ config BR2_PACKAGE_LIBATASMART
> >           http://www.linuxfromscratch.org/blfs/view/svn/general/libatasmart.html
> >
> >  comment "libatasmart requires udev to be enabled"
> > -       depends on !BR2_PACKAGE_UDEV
> > +       depends on !BR2_PACKAGE_HAS_UDEV
>
> Finally we should also line up all the udev comments, but this can be
> done in a separate patch.
I will gladly do it.

> > +         udev is now a virtual package.
> > +         Packages requiring udevd at run time or libudev/gudev at build time
> > +         should select it.
>
> Does it make sense to adding a help option on a hidden option? Can the
> user ever make it visible?

The end user using the menu will not see it, but I added it for the user who
sometimes looks at the sources, as a kind of comment. When ThomasP suggested
to convert udev as a virtual package, I looked at opengl.mk hoping to find
information but found none... Maybe it would be better to add a section on how
to add virtual package and how to use it in the manual.

Thanks for your review.

Best regards,
ELB

  reply	other threads:[~2014-02-07 21:14 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-07 13:21 [Buildroot] [PATCH v7 0/4] udev is now provided by systemd or eudev Eric Le Bihan
2014-02-07 13:21 ` [Buildroot] [PATCH v7 1/4] eudev: new package Eric Le Bihan
2014-02-07 19:14   ` Thomas De Schampheleire
2014-02-10 11:16     ` Eric Le Bihan
2014-02-07 13:21 ` [Buildroot] [PATCH v7 2/4] udev: convert to virtual package Eric Le Bihan
2014-02-07 20:17   ` Thomas De Schampheleire
2014-02-07 21:14     ` Eric Le Bihan [this message]
2014-02-07 22:56       ` Yann E. MORIN
2014-02-07 21:30   ` Samuel Martin
2014-02-10 11:22     ` Eric Le Bihan
2014-02-07 13:21 ` [Buildroot] [PATCH v7 3/4] systemd: bump to v207 Eric Le Bihan
2014-02-07 20:24   ` Thomas De Schampheleire
2014-02-07 22:00   ` Samuel Martin
2014-02-10 13:26     ` Eric Le Bihan
2014-02-10 13:44       ` Samuel Martin
2014-02-07 13:21 ` [Buildroot] [PATCH v7 4/4] manual: update /dev management section Eric Le Bihan
2014-02-07 20:26   ` Thomas De Schampheleire
2014-02-07 22:04     ` Samuel Martin
2014-02-07 20:34 ` [Buildroot] [PATCH v7 0/4] udev is now provided by systemd or eudev Arnout Vandecappelle
2014-02-07 20:39   ` Thomas De Schampheleire
2014-02-10 13:44   ` Eric Le Bihan
2014-02-10 18:25     ` Thomas Petazzoni
2014-02-12 21:34 ` Peter Korsgaard

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140207211433.GA7580@milhouse \
    --to=eric.le.bihan.dev@free.fr \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox