dev-lang/python-2.7.9-r2 fails install phase on 'pyfpe.h' when cross compiling against uClibc. The build bails out with RuntimeError: this can't happen (bad char ' ') Reproducible: Always Steps to Reproduce: 1. Have cross toolchain for uclibc on amd64 at hand 2.Try crosscompiling/emerging python-2.7.9-r2 Actual Results: Failure during install phase Expected Results: Clean Build.
Created attachment 404416 [details] build.log build.log
Created attachment 404420 [details] build.log for python-2.7.10 python-2.7.10 emits the similiar behavior for a different file (pyconfig.h)
Created attachment 409130 [details] failing command The actual command that is failing
I looked into this a little further but am stuck completely: What happens is, that in util.py in split_quoted string.whitespace is used for matching. While the actual input does have a whitespace, the test fails, because from some unobvious reason string.whitespace='' is the empty string. Taking a closer look, string.lowercase and all it's friends seem to have irrational contents too. Any idea how I could investigate this any further?
Further investigation brought the following to my attention: When I remove /usr/x86_64-pc-linux-uclibc/tmp/portage/dev-lang/python-2.7.10/work/x86_64-pc-linux-uclibc/build/lib.linux2-x86_64-2.7 from PYPATH and rerun the failing command manually it won't fail. After some testing with starting python interactively, I can confirm that when that particle is removed from the path, string whitespace does indeed hold the whitespace characters. It seems string.whitespace gets borked, when strop.so is loaded by string.py. The actual problem seems to be strop.so which is somehow broken. I looked at strop.so and how it fills string.whitespace. For the sake of completeness I wrote a small C programm doing the same and linked it against uclibc. The program itself seems to work as expected.
Is this still reproducible with in-tree version?
uclibc support in Gentoo has been removed.