[meta-xilinx] meta-xilinx-tools shell function parsed as python function

Manjukumar Harthikote Matha MANJUKUM at xilinx.com
Tue Apr 16 16:09:13 PDT 2019


Hi Michael,

You are on master and meta-xilinx-tools 2018.3 release. They don’t work together.
You can apply this RFC patch on meta-xilinx-tools to get going:
https://lists.yoctoproject.org/pipermail/meta-xilinx/2019-February/004250.html

Thanks,
Manju

From: meta-xilinx-bounces at yoctoproject.org [mailto:meta-xilinx-bounces at yoctoproject.org] On Behalf Of Monaghan, Michael L. (GSFC-5870)
Sent: Tuesday, April 16, 2019 12:58 PM
To: meta-xilinx at yoctoproject.org
Subject: [meta-xilinx] meta-xilinx-tools shell function parsed as python function

Hello all,

Thank you in advance for your time. I’m new to the Yocto Project and OpenEmbedded.

I am trying to add the meta-xilinx-tools layer to a working Yocto/OE build for the zcu102 board, but bitbake subsequently fails to parse meta-xilinx/meta-xilinx-bsp/recipes-bsp/device-tree/device-tree.bb. Here are some snippets from the console.

WARNING: /yocto/projects/yocto-zcu102/build/../meta-xilinx/meta-xilinx-bsp/recipes-bsp/device-tree/device-tree.bb: Error during finalise of /yocto/projects/yocto-zcu102/build/../meta-xilinx/meta-xilinx-bsp/recipes-bsp/device-tree/device-tree.bb
…
ERROR: Unable to parse /yocto/projects/yocto-zcu102/build/../meta-xilinx/meta-xilinx-bsp/recipes-bsp/device-tree/device-tree.bb:20:23
Traceback (most recent call last):
…
File "/yocto/projects/yocto-zcu102/bitbake/lib/bb/codeparser.py", line 327, in PythonParser.parse_python(node="\n\t[ -e ${DTS_FILES_PATH}/system.dts ] && rm ${DTS_FILES_PATH}/system.dts\n    bb.build.exec_func('devicetree_do_compile', d)\n", lineno=1, filename='autogenerated'):
             code = compile(check_indent(str(node)), filename, "exec",
    >                       ast.PyCF_ONLY_AST)

  File "autogenerated", line 2
    [ -e ${DTS_FILES_PATH}/system.dts ] && rm ${DTS_FILES_PATH}/system.dts
         ^
SyntaxError: invalid syntax


Summary: There were 10 WARNING messages shown.
Summary: There was 1 ERROR message shown, returning a non-zero exit code.

I found the offending function at meta-xilinx-tools/recipes-bsp/device-tree/device-tree.bbappend:71

do_compile_prepend() {
                                [ -e ${DTS_FILES_PATH}/system.dts ] && rm ${DTS_FILES_PATH}/system.dts
}

And it appears to ultimately override this python function at openembedded-core/meta/classes/devicetree.bbclass:119

python devicetree_do_compile() {
  …
}

devicetree.bbappend:do_compile_prepend() is clearly a shell script, but the “SyntaxError: invalid syntax” message indicates that it is being parsed as a python function! It looks like this could be a problem with bitbake or yocto/oe but I thought I would reach out to the community here first. Has anyone here encountered this?

I’m using the rel-v2018.3 branch for meta-xilinx-tools and the thud branch for everything else. I have tried using version 1.40 and the master branch of bitbake.

Thanks,
Michael Monaghan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/meta-xilinx/attachments/20190416/10fc290c/attachment.html>


More information about the meta-xilinx mailing list