Bug 6202 - Linux-yocto.bb suggests running bitbake -c devshell on do_patch failure
Summary: Linux-yocto.bb suggests running bitbake -c devshell on do_patch failure
Status: RESOLVED FIXED
Alias: None
Product: Kernel
Classification: Yocto Project Subprojects
Component: linux-yocto (show other bugs)
Version: 1.6
Hardware: Other other
: Medium enhancement
Target Milestone: 1.9 M2
Assignee: Bruce Ashfield
QA Contact:
URL:
Whiteboard:
Depends on:
Blocks:
 
Reported: 2014-04-22 02:38 UTC by Brian Lloyd
Modified: 2015-06-16 04:04 UTC (History)
3 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: No (bug/feature does not impact docs)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Brian Lloyd 2014-04-22 02:38:24 UTC
When a do_patch operation fails for Linux-yocto, it recommends running 'bitbake -c devshell Linux-yocto' to troubleshoot/fix the error.
However, With Dylan and later, running the suggested command gives the same error instead of opening a development terminal.

To see this in practice, you will need to break a machine by modifying an .scc file such that another included .scc file is not found.  The file not found causes the do_patch to fail, which prints the
"Patch failures can be resolved in the devshell (bitbak -c devshell ${PN})"

However, since devshell runs after do_patch, and do_patch fails, there is no way into the devshell.


This bug is not to report a broken do_patch (it should have been broken), but is to report the invalid help message printed when an error does occur.
Comment 1 Paul Eggleton 2014-04-24 14:49:00 UTC
devshell.bbclass sets do_devshell to run after do_patch, so it seems that a broken patch could block devshell from executing for any recipe, not just the kernel. We could change devshell to be run after do_unpack instead, but then that would break some people's workflow if they expect to start with the patched source as they do currently.

We do have another option here - we have a proper shell-based interactive patch resolution feature that is enabled by setting PATCHRESOLVE to "user". Since kernel-yocto.bbclass has its own custom do_patch it may not currenly work with this however; perhaps the best solution would be to make it work with that if it doesn't and change the message (which is specific to kernel-yocto.bbclass) to recommend using that rather than devshell which won't work anyway.
Comment 2 Bruce Ashfield 2015-02-10 21:11:06 UTC
For now, we'll get the message update and worry about changing the devshell dependencies
in 1.9.

Changing the status to "in design".