The doc building code is currently broken as it is subject to Sphinx
version mismatch, and given that we would need separate logic to select
interpreter for the PyPy build, and for the sphinx call, it's better
to remove the doc building altogether and possible reintroduce it
as a separate package in the future.
Closes: https://bugs.gentoo.org/643046
Ensure to preserve file mtimes while copying them from the source tree
to the installation image. This ensures that the generated files
are newer than source files, and that PyPy does not attempt to rewrite
them at runtime.
Replace the autogenerated || dependency with an inlined version,
and include dev-python/pycparser in it when using CPython 2.7 (it is
built-in in dev-python/pypy, through CFFI). Enforce the dependency
only when USE=-low-memory, since otherwise CPython is not used, and we
can't enforce the dependency on PyPy anyway as it would cause circular
deps.
Closes: https://bugs.gentoo.org/634306
Use the patchset from CPython 2.7.13 to avoid keeping old patches
around. Disable the Turkish locale patch since it now alters the C
sources of CPython -- we need to figure out if pypy needs similar
alteration at all, and port it if necessary.
Use the --source option to disable automatic compiling of generating C
sources, and build them manually afterwards. Most importantly, this
significantly reduces memory use because pypy failed to free memory that
was used for the translation, and that is no longer needed when
the compilation is started. Furthermore, it makes resuming compilation
possible.
Set subslot on pypy-5.4.0+ to match upstream ABI version, to avoid
unnecessary rebuilds on ABI-compatible upgrades. I was planning to do
this for quite some time but waited for next major bump to avoid
needless rebuilds. Sadly, with each bump I forgot again. Therefore,
let's do this in place while 5.4.0 is still fresh.
Force unified quoting in all metadata.xml files since lxml does not
preserve original use of single and double quotes. Ensuring unified
quoting before the process allows distinguishing the GLEP 67-related
metadata.xml changes from unrelated quoting changes.
Prefer the shadowstack gcrootfinder over asmgcc since the latter
strongly relies on specific assembly being generated by gcc and is often
broken by various optimization flags.