Created attachment 399048 [details] emerge --info phantomjs phantomjs-2 does not compile, when Python 3 is eselected: ... offlineasm: Parsing /tmp/portage/www-client/phantomjs-2.0.0/work/phantomjs-2.0.0/src/qt/qtwebkit/Source/JavaScriptCore/llint/LowLevelInterpreter.asm and LLIntOffsetsExtractor and creating assembly file generated/LLIntAssembly.h. Traceback (most recent call last): File "/tmp/portage/www-client/phantomjs-2.0.0/work/phantomjs-2.0.0/src/qt/qtwebkit/Source/JavaScriptCore/disassembler/udis86/itab.py", line 360, in <module> main() File "/tmp/portage/www-client/phantomjs-2.0.0/work/phantomjs-2.0.0/src/qt/qtwebkit/Source/JavaScriptCore/disassembler/udis86/itab.py", line 357, in main generator.genItab() File "/tmp/portage/www-client/phantomjs-2.0.0/work/phantomjs-2.0.0/src/qt/qtwebkit/Source/JavaScriptCore/disassembler/udis86/itab.py", line 347, in genItab self.genItabH() File "/tmp/portage/www-client/phantomjs-2.0.0/work/phantomjs-2.0.0/src/qt/qtwebkit/Source/JavaScriptCore/disassembler/udis86/itab.py", line 318, in genItabH operands.sort() AttributeError: 'dict_keys' object has no attribute 'sort' Makefile.JavaScriptCore.DerivedSources:2344: recipe for target 'generated/udis86_itab.c' failed ...
Created attachment 399088 [details, diff] Patch to fix itab.py with Python 3 See upstream bug https://github.com/ariya/phantomjs/issues/12713. Patch is based suggestion in upstream bug. To apply patch add epatch "${FILESDIR}"/${PN}-python3-udis86-itab.patch to src_prepare(){} in the ebuild.
I can confirm this issue, it failed to build on Python 3.3, but succeeded on Python 2.7.
Thanks, applied to phantomjs-2.0.0.