[oe] menuconfig task for kernels

Przemyslaw Wesolek przemyslaw.wesolek at cs.put.poznan.pl
Tue Nov 10 13:14:07 UTC 2009


Martin Jansa wrote:
> If I need to enable some options temporary then I use
> -c configure (for sane .config)
> -c menuconfig (for temporary modification)
> -c build 

This is exactly what I want to do, as a *user*.

> But if you want to use menuconfig for updating defconfig used in OE tree
> or default config in kernel (like arch/arm/configs/gta02_defconfig) then
> do_configure phase would change some options you didn't want to touch
> (as they can be OE specific, ie disabling deprecated sysfs paths for
> ${UDEV_GE_141}.

This is what -- I guess -- recipes *maintainers* do.

> 
> So 1st case is easily workarounded by user in current state.
> 

Agreed, with the exception that this is a path hard to find, without
looking into the recipes and classes. And this is not what all *users*
are competent to do.

> 2nd will be a bit more difficult if its moved to after do_configure
> as you need to revert all changes automagically introduced in 
> do_configure_prepend in menuconfig or replace .config with defconfig
> between do_configure and do_menuconfig or just use load ../defconfig
> option from menuconfig. (Hmm doesn't look more difficult now :))

I think of two possible solutions:

1. Add another task, which will do the same as 'menuconfig' now, and
change 'menuconfig' to run after 'configure'. This way, users can work
under assumptions of "least surprise" (in my terms, I agree, but I'm a
mere user, too).

2. Change 'configure' to operate on existing .config, if there is one;
this way 'menuconfig' and 'configure' can cooperate, although resulting
.config can have contradicting options selected and lead to errors (but
maybe 'make oldconfig' can point them out?).

I opt for 1., as 2. seems hard and risky.

> Btw: haven't checked but if you use
> -c menuconfig (create custom config)
> -c build
> 
> isn't your custom .config rewritten in do_configure phase with defconfig
> + do_configure_prepend automagic?.

Yes, it is overwritten with 'echo "" >path/to/.config' at the beginning
of do_configure.

Przemek





More information about the Openembedded-devel mailing list