Alexander Pyhalov
2018-11-14 e5ce0bbdf74916ba267eef37e2e37694e8f2b48a
transforms/python-3-soabi
@@ -20,7 +20,7 @@
#
#
# Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2014, 2018, Oracle and/or its affiliates. All rights reserved.
#
# Python 2's ABI for .so files is to simply append ".so".  But for Python
@@ -28,6 +28,16 @@
# "d" is added if built --with-pydebug (we don't), "m" is added if built
# --with-pymalloc (we do) and "u" is added if built --with-wide-unicode
# (we don't).  See http://legacy.python.org/dev/peps/pep-3149/ for details.
<transform file -> edit path \
    (usr/lib/python3.)([4-9])(/vendor-packages/(.*/)?(64/)?.*)\.so$ \
    \\1\\2\\3.cpython-3\\2m.so >
$(PY3_CYTHON_NAMING)<transform file -> edit path \
$(PY3_CYTHON_NAMING)      (usr/lib/python3.)([4-9])(/vendor-packages/(.*/)?(64/)?.*)\.so$ \
$(PY3_CYTHON_NAMING)      \\1\\2\\3.cpython-3\\2m.so >
# A newer version of python setup tools enables to create ABI3 compliant
# extensions that should support all python3.X versions where X >= 2.
# The compiled shared libraries have ".abi3.so" suffix to indicate the
# usage of the limited API. Currently, only the components that depend on
# library/python/cffi are forced to generate ABI3 compliant extensions.
# See https://www.python.org/dev/peps/pep-0384/ for more information.
$(PY3_ABI3_NAMING)<transform file -> edit path \
$(PY3_ABI3_NAMING)      (usr/lib/python3.)([4-9])(/vendor-packages/(.*/)?(64/)?.*)\.so$ \
$(PY3_ABI3_NAMING)      \\1\\2\\3.abi3.so >