Luca, Jean-Francois's patch did the trick. Thanks for the quick response!
Best, Michael Monaghan On 4/17/19, 3:09 AM, "Luca Ceresoli" <[email protected]> wrote: Hi Michael, On 16/04/19 21:57, Monaghan, Michael L. (GSFC-5870) wrote: > 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? append and prepend functions must use the same language as the function being appended/prepended. Either all python or all shell, no mixing allowed. That's because bitbake simply concatenates the prepends, base functions and appends and then parses the result as a whole. For the problem you're facing a patch has been sent by Jean-Francois, check it out: https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.yoctoproject.org_pipermail_meta-2Dxilinx_2019-2DJanuary_004205.html&d=DwIDaQ&c=ApwzowJNAKKw3xye91w7BE1XMRKi2LN9kiMk5Csz9Zk&r=AhQbwKgOZgBGATebE6Xpbon2PhUnmApX6zWRXj7OJp0&m=wK2Kn5G08_4rGMJ2SiJrk-pnV0MujJLuktOXt79uF28&s=VRX9jtvBEvfb5QV1Khv8rBjUW7Juw0Lm0KCrqX1VXbM&e= -- Luca -- _______________________________________________ meta-xilinx mailing list [email protected] https://lists.yoctoproject.org/listinfo/meta-xilinx
