[OE-core] [PATCH 1/2] devtool/standard.py: Allow recipe to disable menuconfig logic

Peter Kjellerstedt peter.kjellerstedt at axis.com
Thu Nov 21 10:23:50 UTC 2019


> -----Original Message-----
> From: openembedded-core-bounces at lists.openembedded.org <openembedded-core-
> bounces at lists.openembedded.org> On Behalf Of Tom Hochstein
> Sent: den 20 november 2019 20:26
> To: openembedded-core at lists.openembedded.org
> Subject: [OE-core] [PATCH 1/2] devtool/standard.py: Allow recipe to
> disable menuconfig logic
> 
> u-boot.inc supports u-boot recipes with or without menuconfig [1].
> However, running devtool on a u-boot recipe that does not support
> menuconfig
> results in an error:
> 
> cp: cannot stat '/home/r60874/upstream/fsl-xwayland/tmp/work/imx8mmevk-
> fsl-linux/u-boot-imx/2018.03-r0/u-boot-imx-2018.03//.config': No such file
> or directory
> 
> The problem is the devtool logic assumes that any recipe with a
> do_menuconfig task
> will generate a .config in do_configure().
> 
> Fix the problem by removing the assumption with a flag that the recipe can
> control,
> like this:
> 
> do_configure() {
>     if [ menuconfig-supported ]; then
>         ...
>     else
>         DEVTOOL_DISABLE_MENUCONFIG=true
>     fi
> }
> 
> [1] https://github.com/openembedded/openembedded-
> core/commit/11278e3b2c75be80645b9841763a97dbb35daadc
> 
> Signed-off-by: Tom Hochstein <tom.hochstein at nxp.com>
> ---
>  scripts/lib/devtool/standard.py | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/scripts/lib/devtool/standard.py
> b/scripts/lib/devtool/standard.py
> index 8d9c1a3022..66bd1415c3 100644
> --- a/scripts/lib/devtool/standard.py
> +++ b/scripts/lib/devtool/standard.py
> @@ -940,8 +940,10 @@ def modify(args, config, basepath, workspace):
>                          '}\n')
>              if rd.getVarFlag('do_menuconfig','task'):
>                  f.write('\ndo_configure_append() {\n'
> -                '    cp ${B}/.config ${S}/.config.baseline\n'
> -                '    ln -sfT ${B}/.config ${S}/.config.new\n'
> +                '    if [ ! ${DEVTOOL_DISABLE_MENUCONFIG} ]; then\n'
> +                '        cp ${B}/.config ${S}/.config.baseline\n'
> +                '        ln -sfT ${B}/.config ${S}/.config.new\n'
> +                '    fi\n'

Why do you need the extra variable? Why not just check if the .config 
file exists before copying it:

                '    if -e ${B}/.config; then\n'
                '        cp ${B}/.config ${S}/.config.baseline\n'
                '        ln -sfT ${B}/.config ${S}/.config.new\n'
                '    fi\n'

>                  '}\n')
>              if initial_rev:
>                  f.write('\n# initial_rev: %s\n' % initial_rev)
> --
> 2.17.1

//Peter



More information about the Openembedded-core mailing list