Created attachment 599474 [details] /var/log/portage/dev-libs:libpeas-1.22.0:20191214-075654.log The package fails after enabling py3.8: libtool: link: x86_64-pc-linux-gnu-gcc-9.2.0 -I/usr/include/pygobject-3.0 -I/usr/lib64/libffi/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/python3.8 -I/usr/include/python3.8 -march=x86-64 -mtune=k8 -mcx16 -msahf -msse3 --param l1-cache-size=64 --param l1-cache-line-size=64 --param l2-cache-size=512 -O2 -pipe -frecord-gcc-switches -Wl,-O1 -Wl,--defsym=__gentoo_check_ldflags__=0 -o .libs/extension-python3 extension_python3-extension-py.o -Wl,--export-dynamic -pthread -Wl,--as-needed ../../libpeas/.libs/libpeas-1.0.so ./introspection/.libs/libintrospection-1.0.so ./testing/.libs/libtesting.a /tmp/portage/dev-libs/libpeas-1.22.0/work/libpeas-1.22.0/tests/libpeas/introspection/.libs/libintrospection-1.0.so ../testing-util/.libs/libtesting-util.a /tmp/portage/dev-libs/libpeas-1.22.0/work/libpeas-1.22.0/libpeas/.libs/libpeas-1.0.so -lgmodule-2.0 -lgio-2.0 -lgirepository-1.0 -lgobject-2.0 -lglib-2.0 -lcrypt -lpthread -ldl -lutil -lm -pthread -Wl,-rpath -Wl,/nowhere extension_python3-extension-py.o:extension-py.c:function test_extension_py_already_initialized_subprocess: error: undefined reference to 'Py_IsInitialized' extension_python3-extension-py.o:extension-py.c:function test_extension_py_already_initialized_subprocess: error: undefined reference to 'Py_InitializeEx' extension_python3-extension-py.o:extension-py.c:function test_extension_py_already_initialized_subprocess: error: undefined reference to 'PyImport_ImportModule' extension_python3-extension-py.o:extension-py.c:function test_extension_py_already_initialized_subprocess: error: undefined reference to 'PyObject_GetAttrString'
The problem is this: PYTHON3_LIBS=`${PYTHON3_CONFIG} --libs` Since py3.8, it must include '--embed' to list the Python library. Ofc, this option is incompatible with earlier versions. FWICS, upstream's meson.build is already fixed.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=67c42e74dcd45c7716bc29be6368e512ded7439a commit 67c42e74dcd45c7716bc29be6368e512ded7439a Author: Mart Raudsepp <leio@gentoo.org> AuthorDate: 2020-02-16 09:36:57 +0000 Commit: Mart Raudsepp <leio@gentoo.org> CommitDate: 2020-02-16 10:34:21 +0000 dev-libs/libpeas: fix python:3.8 compatibility Looks like the addition of 3.8 to libpeas and almost all of its consumers months ago was completely untested; fix it up in straight-to-stable because all of those consumers already have 3.8 in their stable versions PYTHON_COMPAT. Closes: https://bugs.gentoo.org/702810 Package-Manager: Portage-2.3.84, Repoman-2.3.20 Signed-off-by: Mart Raudsepp <leio@gentoo.org> dev-libs/libpeas/files/1.22.0-py38-support.patch | 29 ++++++++++++++++++++++ ...s-1.22.0-r1.ebuild => libpeas-1.22.0-r2.ebuild} | 14 +++++------ 2 files changed, 36 insertions(+), 7 deletions(-)