On ppc m2crypto fails with: running build_ext building 'M2Crypto._m2crypto' extension swigging SWIG/_m2crypto.i to SWIG/_m2crypto_wrap.c swig -python -D__powerpc64__ -I/usr/include/python2.7 -I/usr/include -I/usr/include/openssl -I/usr/lib/gcc/powerpc-unknown-linux-gnu/8.3.0/include -I/usr/lib/gcc/powerpc-unknown-linux-gnu/8.3.0/include-fixed -I/usr/include -includeall -modern -builtin -outdir /var/tmp/portage/dev-python/m2crypto-0.31.0-r2/work/M2Crypto-0.31.0/M2Crypto -o SWIG/_m2crypto_wrap.c SWIG/_m2crypto.i /usr/include/gnu/stubs.h:11: Error: Unable to find 'gnu/stubs-64-v1.h' error: command 'swig' failed with exit status 1
Please provide the content of /usr/include/gnu/stubs.h. Please also provide emerge --info.
If you are running this in a ppc32 chroot on ppc64 hardware, please make sure you set the correct arch using the setarch(8) command.
Release autobuilds are failing with this, and I can confirm that setarch ppc32 seems to help. Not sure how we can integrate that in our catalyst-auto setup, though.
The m2crypto build system has relied on platform.machine() (uname -m) for quite a long time. If you want that changed, please send a patch upstream. It is possible you didn't run into this because a patch to support ppc64le was added recently. This may be causing the conditional logic to be evaluated differently. https://gitlab.com/m2crypto/m2crypto/commit/0bb9693a53eae94761498e8412684cd6ed339781
(In reply to Ben Kohler from comment #3) > Release autobuilds are failing with this, and I can confirm that setarch > ppc32 seems to help. Not sure how we can integrate that in our > catalyst-auto setup, though. From the catalyst code, it looks like it's already running 'setarch linux32 chroot ...'
I can't reproduce this failure in my 32-bit chroot on timberdoodle (64-bit system). I can confirm that uname -m prints "ppc64" without setarch linux32. Any ideas how I can reproduce this?
(In reply to Matt Turner from comment #5) > (In reply to Ben Kohler from comment #3) > > Release autobuilds are failing with this, and I can confirm that setarch > > ppc32 seems to help. Not sure how we can integrate that in our > > catalyst-auto setup, though. > > From the catalyst code, it looks like it's already running 'setarch linux32 > chroot ...' Doesn't look like it's working though: ppc32_installcd-stage1.log: chroot /var/tmp/catalyst/tmp/default/livecd-stage1-ppc-20191019T102306Z /tmp/livecd-stage1-chroot.sh ppc32_stage1.log: chroot /var/tmp/catalyst/tmp/default/stage1-ppc-20191019T102306Z /tmp/stage1-chroot.sh ppc32_stage1.log: chroot /var/tmp/catalyst/tmp/default/stage1-ppc-20191019T102306Z /tmp/stage1-preclean-chroot.sh ppc32_stage3.log: chroot /var/tmp/catalyst/tmp/default/stage3-ppc-20191019T102306Z /tmp/stage3-chroot.sh ppc32_stage3.log: chroot /var/tmp/catalyst/tmp/default/stage3-ppc-20191019T102306Z /tmp/stage3-preclean-chroot.sh ppc64_stage1.log: chroot /var/tmp/catalyst/tmp/default/stage1-ppc64-20191019T102306Z /tmp/stage1-chroot.sh ppc64_stage1.log: chroot /var/tmp/catalyst/tmp/default/stage1-ppc64-20191019T102306Z /tmp/stage1-preclean-chroot.sh ppc64_stage3.log: chroot /var/tmp/catalyst/tmp/default/stage3-ppc64-20191019T102306Z /tmp/stage3-chroot.sh ppc64_stage3.log: chroot /var/tmp/catalyst/tmp/default/stage3-ppc64-20191019T102306Z /tmp/stage3-preclean-chroot.sh
Okay, I've fixed catalyst to properly run setarch linux32, so unCcing release@.
Same for dev-python/m2crypto-0.35.2 (ppc32 userland on a Talos II).
Please run setarch if you are running a 32-bit userland on a 64-bit kernel.