[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