Source: dpdk Version: 23.11.1-2.1 Tags: patch upstream User: debian-cr...@lists.debian.org Usertags: ftcbfs
dpdk fails to cross build from source for ppc64el, because it passes -mcpu=ppc64el there and that doesn't make gcc happy. Digging into it, its build system behaves differently for a cross build from a native build. When a cross build is encountered, it takes the host's cpu value and passes it to -mcpu directly whereas in a native build, it matches the host's cpu family and carefully crafts values accepted by gcc. In particular, a native ppc64el build causes the cpu value to be "ppc64el", which is not accepted by gcc. Hence there is no way of correctly supplying the host cpu in a cross build for ppc64el. As a result, I question the cross branch entirely and propose deleting it. Once it is absent, the option logic can be used again. Please do not blindly accept this patch but discuss it with upstream. I don't think someone added this branch with the intention of breaking stuff, but they solved some other problem and reverting their change will break their problem. I don't understand what problem is being solved with the branch, so revert is what I propose here, but I don't think it is the final solution. You may also consider adding it as a Debian-specific patch, but then you get to maintain the divergence forever. Helmut