Re: Cannot run "devtool mofidy linux-fslc" in Dunfell branch


Sam Van Den Berge
 

On Tue, Feb 16, 2021 at 12:13 PM Andrey Zhizhikin <andrey.z@gmail.com> wrote:

Hello Sam,

On Tue, Feb 16, 2021 at 12:05 PM Sam Van Den Berge
<sam.van.den.berge@gmail.com> wrote:

On Mon, Feb 15, 2021 at 11:10 PM Andrey Zhizhikin <andrey.z@gmail.com> wrote:

Hello Sam,

On Mon, Feb 15, 2021 at 9:35 PM <sam.van.den.berge@gmail.com> wrote:

I also have the exact same error with linux-fslc 5.10.12.
Can you try to change SRCBRANCH in
recipes-kernel/linux/linux-fslc_5.10.bb to KBRANCH? I've just tried it
out and it should solve the problem.

I have a patch for this and made a PR to address the issue, please
have a look at https://github.com/Freescale/meta-freescale/pull/652. I
would appreciate if you test it locally on your end and report here if
that solves your devtool errors.
Unfortunately it's not solved in my case. Depending on the path that
gets executed in
devtool/standard.py, I do think your patch does solve the issue in some cases.
Since linux-fslc[-imx] recipes are inheriting kernel-yocto class, it
is needed that the KBRANCH to be defined as it can be seen in
scripts/lib/devtool/standard.py on line 822.

Which particular error do you see when you apply the patch from PR?
Do you have any appends to the kernel recipe?
Which machine are you trying to build and which distro?
We have one small append to the kernel recipe but it's something with a dts. No
additional kernel configs or whatsoever. Machine is imx6q and distro
is an internal one.

I modified devtool a little bit so that it prints the variables from
line 822 and this is
what I get:

kernelVersion=5.10.12
kbranch=5.10.x+fslc
staging_kerVer=
staging_kbranch=

so in my case the if statement at line 822 is not True. I think this
is because we
do not clone the git repo but have extracted a tar.gz and we use that
as the source.
Not sure though...

As a result of the False if-statement, _extract_source will be executed.
Then at line 607 it will start executing the configure task. At the
point the execution
reaches the do_preconfigure() from fsl-kernel-localversion.bbclass
while the file
defconfig is not in ${WORKDIR} but in the ${WORKDIR}/../oe-local-files folder.
As a result, the following command in the do_preconfigure() will fail:

sed -e "${CONF_SED_SCRIPT}" < '${WORKDIR}/defconfig' >> '${B}/.config'

This is the error I get:
DEBUG: Executing shell function do_preconfigure
..../linux-fslc/5.10.12+gitAUTOINC+ed3accb10c-r0/devtooltmp-otiy_odb/temp/run.do_preconfigure.3336084:
line 160: ...../devtooltmp-otiy_odb/workdir/defconfig: No such file or directory
WARNING: ..../devtooltmp-otiy_odb/temp/run.do_preconfigure.3336084:160
exit 1 from
'sed -e "${CONF_SED_SCRIPT}" <
..../devtooltmp-otiy_odb/workdir/defconfig' >>
'....devtooltmp-otiy_odb/workdir/build/.config''

The problem really is that devtool copies Non-patch files to an
oe-local-files folder,
in contrast to just running bitbake which puts both patch and
non-patch files in the
${WORKDIR}.

--
Regards,
Andrey.

Join meta-freescale@lists.yoctoproject.org to automatically receive all group messages.