Since nobody seems around, a few notes I have: 1. Why don't we pass --thread --shared to the build? 2. USE=xml seems redundant and people already do 'xml(+)' [1]. I suggest dropping it. 3. USE=examples does nothing. 4. cross-compilation love seems useless and broken. 5. runpython() helper seems unnecessarily complex. 6. pypy fails hard on hardened with USE=-shadowstack. We should probably force it there. Just a general questions so far. I'm working on an improved ebuild and binary packages, so I'd prefer if you just answered the questions here rather than modifying in-tree ebuild. [1]:https://wiki.gentoo.org/wiki/Python/Implementation_USE_flags#The_table
(In reply to Michał Górny from comment #0) > Since nobody seems around, a few notes I have: > > 1. Why don't we pass --thread --shared to the build? Ok, I see that --shared gives us a library with no SONAME or version, and an executable with no rpath. Not something easy to make use of.
The current results of my work can be seen in ::mgorny. Those include: 1. dev-python/pypy with a few changes, 2. dev-python/pypy-bin which is a masterpiece, 3. dev-python/pypy-binpackage, eternally internal ebuild which I use to build binpackages for pypy.
Did you forget to push the changes? I don't see anything pypy related in your overlay. http://git.overlays.gentoo.org/gitweb/?p=dev/mgorny.git;a=tree
(In reply to Mike Gilbert from comment #3) > Did you forget to push the changes? I don't see anything pypy related in > your overlay. > > http://git.overlays.gentoo.org/gitweb/?p=dev/mgorny.git;a=tree Yes, I did. Fixed that now. One thing I've noticed during the night-time build is that '--sandbox' forces '--no-thread' for some reason. This probably makes '--thread' a candidate for USE flag.
To be honest, I'm not really sure what '--thread' does. The docs [1] say that it is responsible for threading and the 'thread' module. However, my pre-thread build from floppym has the 'thread' module anyway. Moreover, the code triggered by the option seems not to be really relevant. It looks like it merely is saved in a few places but never really used back. [1]:http://pypy.readthedocs.org/en/latest/config/translation.thread.html
I've checked more and I don't see any significant differences after removing '--thread'. FreeBSD doesn't seem to use it either. Therefore, I have withdrawn that change and dev-python/pypy::mgorny has mostly cosmetical changes from ::gentoo. I'd like someone to re-test it and I'll commit it afterwards.
Using commit message: ------------------------------------------------------------------------------ Clean up and drop meaningless USE flags (bug #477514). Drop USE=ssl (automagic dep, bug #477642). Add sphinx to deps. Add USE=sse2 to control JIT backend on x86. No revbump since this will not cause changes in install unless USE flags are changed. (Portage version: 2.2.0_alpha188/cvs/Linux x86_64, signed Manifest commit with key 9627F456F9DA7643!) ------------------------------------------------------------------------------ /var/cvsroot/gentoo-x86/dev-python/pypy/pypy-2.0.2.ebuild,v <-- pypy-2.0.2.ebuild new revision: 1.4; previous revision: 1.3 /var/cvsroot/gentoo-x86/dev-python/pypy/pypy-1.9-r2.ebuild,v <-- pypy-1.9-r2.ebuild new revision: 1.5; previous revision: 1.4
Since the xml flag has been removed from dev-lang/pypy package, the emerge of app-portage/gentoolkit fails as it defines PYTHON_USE_WITH="xml" The ebuild log below: Emerging (1 of 1) app-portage/gentoolkit-0.3.0.7 * gentoolkit-0.3.0.7.tar.gz SHA256 SHA512 WHIRLPOOL size ;-) ... [ ok ] * Please rebuild virtual/pypy:2.0 with the following USE flags enabled: xml * ERROR: app-portage/gentoolkit-0.3.0.7::gentoo failed (setup phase): * Please rebuild virtual/pypy:2.0 with the following USE flags enabled: xml * * Call stack: * ebuild.sh, line 93: Called pkg_setup * ebuild.sh, line 317: Called python_pkg_setup * python.eclass, line 469: Called python_execute_function '-q' 'python_pkg_setup_check_USE_flags' * python.eclass, line 1104: Called python_pkg_setup_check_USE_flags * python.eclass, line 452: Called die * The specific snippet of code: * die "Please rebuild ${python_atom} with the following USE flags enabled: ${PYTHON_USE_WITH}" * * If you need support, post the output of `emerge --info '=app-portage/gentoolkit-0.3.0.7::gentoo'`, * the complete build log and the output of `emerge -pqv '=app-portage/gentoolkit-0.3.0.7::gentoo'`. * The complete build log is located at '/var/tmp/portage/app-portage/gentoolkit-0.3.0.7/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/app-portage/gentoolkit-0.3.0.7/temp/die.env'. * Working directory: '/usr/lib64/portage/pym' * S: '/var/tmp/portage/app-portage/gentoolkit-0.3.0.7/work/gentoolkit-0.3.0.7'
Impossible to install javatoolkit neither: >> Emerging (1 of 72) dev-java/javatoolkit-0.3.0-r6 * javatoolkit-0.3.0.tar.bz2 SHA256 SHA512 WHIRLPOOL size ;-) ... [ ok ] * ERROR: dev-java/javatoolkit-0.3.0-r6::gentoo failed (setup phase): * virtual/pypy:2.0 is not installed * * Call stack: * ebuild.sh, line 93: Called pkg_setup * ebuild.sh, line 317: Called python_pkg_setup * python.eclass, line 430: Called _python_calculate_PYTHON_ABIS * python.eclass, line 876: Called _python_final_sanity_checks * python.eclass, line 362: Called die * The specific snippet of code: * die "$(python_get_implementational_package) is not installed" * * If you need support, post the output of `emerge --info '=dev-java/javatoolkit-0.3.0-r6::gentoo'`, * the complete build log and the output of `emerge -pqv '=dev-java/javatoolkit-0.3.0-r6::gentoo'`. * The complete build log is located at '/var/tmp/portage/dev-java/javatoolkit-0.3.0-r6/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/dev-java/javatoolkit-0.3.0-r6/temp/die.env'. * Working directory: '/usr/lib64/portage/pym' * S: '/var/tmp/portage/dev-java/javatoolkit-0.3.0-r6/work/javatoolkit-0.3.0'