[Bug 242896] lang/python*: Fail to package in poudriere (testport) when cross-building

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Fri Dec 27 14:11:51 UTC 2019


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=242896

Christian Ullrich <chris at chrullrich.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #210252|                            |maintainer-approval?
              Flags|                            |

--- Comment #2 from Christian Ullrich <chris at chrullrich.net> ---
Created attachment 210252
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=210252&action=edit
Patch.

This patch fixes this bug and two related ones.

Firstly, it recompiles the .pyc files after modifying the .py file. This
applies to lang/python3[578] because lang/python36 already has (most of) it.

Secondly, it adds the missing recompilation with -OO to lang/python36.

Thirdly, it generates correct file names involving ${ABIFLAGS}. There are
several places in post-install where file names are assembled that include ABI
flags. Previously, these were fixed as "m" (PYMALLOC enabled) for 3.[67] and
empty for 3.8 (where the "m" flag has been removed upstream). (This only fixes
the clearly somewhat rare case of cross-building 3.[67] with native-xtools and
without PYMALLOC.)

Tested lang/python3[5-8] using poudriere bulk -t cross-building to aarch64,
with and without PYMALLOC. Once the packages were successfully built, I
manually checked that the .pycs are newer than the .py and that neither
contains the /nxb-bin prefix.

Tested devel/py-zope.interface at py3[5-8] using poudriere bulk -t cross-building
to aarch64, with and without PYMALLOC, using BUILD_ALL_PYTHON_FLAVORS. This
port includes a binary extension, for added ABIFLAGS enjoyment. (I noticed that
this .so is linked to the respective libpython....so with 3.[567], but not with
3.8. It can be imported and calling random functions on it does not crash, so I
assume this is by design.)

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are on the CC list for the bug.


More information about the freebsd-python mailing list