On Wed, Aug 2, 2023 at 9:15 AM Joel Stanley <[email protected]> wrote: > > On Wed, 2 Aug 2023 at 12:45, Frédéric Martinsons > <[email protected]> wrote: > > > > > > > > On Wed, 2 Aug 2023 at 13:47, Joel Stanley <[email protected]> wrote: > >> > >> The one liner tests using `[ ] && action` need to have || true after the > >> action, > >> otherwise the line returns false and the recipie fails. > >> > >> Signed-off-by: Joel Stanley <[email protected]> > >> --- > >> meta/classes-recipe/kernel.bbclass | 4 ++-- > >> 1 file changed, 2 insertions(+), 2 deletions(-) > >> > >> diff --git a/meta/classes-recipe/kernel.bbclass > >> b/meta/classes-recipe/kernel.bbclass > >> index 247ef4a48aa7..f1bc41e82be8 100644 > >> --- a/meta/classes-recipe/kernel.bbclass > >> +++ b/meta/classes-recipe/kernel.bbclass > >> @@ -486,7 +486,7 @@ kernel_do_install() { > >> install -m 0644 System.map > >> ${D}/${KERNEL_IMAGEDEST}/System.map-${KERNEL_VERSION} > >> install -m 0644 .config > >> ${D}/${KERNEL_IMAGEDEST}/config-${KERNEL_VERSION} > >> install -m 0644 vmlinux > >> ${D}/${KERNEL_IMAGEDEST}/vmlinux-${KERNEL_VERSION} > >> - [ -e Module.symvers ] && install -m 0644 Module.symvers > >> ${D}/${KERNEL_IMAGEDEST}/Module.symvers-${KERNEL_VERSION} > >> + [ -e Module.symvers ] && install -m 0644 Module.symvers > >> ${D}/${KERNEL_IMAGEDEST}/Module.symvers-${KERNEL_VERSION} || true > >> } > >> > > > > By doing that, you simply silent possible error of the action after the > > test, below is a little snippet showing that > > Sure. But the test is looking for the file, so if it doesn't exist > then the command install won't run.
Something doesn't seem quite right, that test for Module.symvers (there and in the shared workdir code) were put in place for the scenario you are mentioning .. if Modules are disabled and hence Module.symvers doesn't exist. At one point, we even tested that sort of configuration. I didn't dig more through the logs, but maybe we had lines after that command previously, so the last return code wasn't a failure and hence no task failure. As was mentioned, we could make the test more explicit if the shorthand of just checking for the symvers file isn't working, since really, if we have an || true in the one-liner, we probably can tweak things to not test for Module.symvers at all. Bruce > > I can't think of any realistic situation where install would fail if > the file is present. > > > I think the origin of your issue is that the action failed , having the log > > of kernel_do_install task would help. > > That isn't the case. > > The issue is the Modules.symvers file is not found. This is expected, > because the kernel does not use modules. > > Here is the log, with paths trimmed: > > DEBUG: Executing shell function do_install > NOTE: no modules to install > WARNING: temp/run.do_install.2584671:225 exit 1 from '[ -e Module.symvers ]' > WARNING: Backtrace (BB generated script): > #1: do_install, temp/run.do_install.2584671, line 225 > #2: main, temp/run.do_install.2584671, line 283 > > > -- - Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end - "Use the force Harry" - Gandalf, Star Trek II
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#185398): https://lists.openembedded.org/g/openembedded-core/message/185398 Mute This Topic: https://lists.openembedded.org/mt/100503145/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
