Created attachment 695976 [details] build.log [...] checking librtas.h usability... yes checking librtas.h presence... yes checking for librtas.h... yes checking for rtas_errinjct_open in -lrtas... yes checking librtasevent.h usability... yes checking librtasevent.h presence... yes checking for librtasevent.h... yes checking for parse_rtas_event in -lrtasevent... no configure: error: in `/var/tmp/portage/sys-apps/ibm-powerpc-utils-1.3.8-r1/work/powerpc-utils-1.3.8': configure: error: librtasevent library is missing (--without-librtas to disable) See `config.log' for more details !!! Please attach the following file when seeking support: !!! /var/tmp/portage/sys-apps/ibm-powerpc-utils-1.3.8-r1/work/powerpc-utils-1.3.8/config.log * ERROR: sys-apps/ibm-powerpc-utils-1.3.8-r1::gentoo failed (configure phase): * econf failed
Created attachment 695979 [details] config.log
Created attachment 695982 [details] emerge --info
The library isn't missing, it is miscompiled. @ppc, I've filed upsteam: - https://github.com/ibm-power-utilities/librtas/issues/10 - https://github.com/ibm-power-utilities/powerpc-utils/pull/63 This basically amounts to this musl patch for librtas: --- a/librtasevent_src/rtas_event.h +++ b/librtasevent_src/rtas_event.h @@ -23,6 +23,8 @@ #ifndef _H_RTAS_EVENT #define _H_RTAS_EVENT +#include <endian.h> + #define PRNT_FMT "%-20s%08x" #define PRNT_FMT_L PRNT_FMT" " #define PRNT_FMT_R PRNT_FMT"\n" and the patch in the pull-request for ibm-powerpc-utils. Would you be ok with me committing the patches for musl support?
feel free to commit those patches to ppcutils and rtas straight to ::gentoo, as long as it still builds on glibc =)
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=201709d5fe0cb18bb6f8f1fd8942ee2cba15a18b commit 201709d5fe0cb18bb6f8f1fd8942ee2cba15a18b Author: Fabian Groffen <grobian@gentoo.org> AuthorDate: 2021-05-30 13:56:49 +0000 Commit: Fabian Groffen <grobian@gentoo.org> CommitDate: 2021-05-30 13:56:58 +0000 sys-libs/librtas-2.0.2-r1: fix resulting libs using musl Bug: https://bugs.gentoo.org/779109 Package-Manager: Portage-3.0.18, Repoman-3.0.2 Signed-off-by: Fabian Groffen <grobian@gentoo.org> sys-libs/librtas/files/librtas-2.0.2-musl.patch | 30 +++++++++++++++++++++++++ sys-libs/librtas/librtas-2.0.2-r1.ebuild | 4 +++- 2 files changed, 33 insertions(+), 1 deletion(-)
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9f43b91a9e3987fbb5aa958d0b32ed5759d7c230 commit 9f43b91a9e3987fbb5aa958d0b32ed5759d7c230 Author: Fabian Groffen <grobian@gentoo.org> AuthorDate: 2021-05-30 14:02:17 +0000 Commit: Fabian Groffen <grobian@gentoo.org> CommitDate: 2021-05-30 14:02:17 +0000 sys-apps/ibm-powerpc-utils: fix build using musl Closes: https://bugs.gentoo.org/779109 Package-Manager: Portage-3.0.18, Repoman-3.0.2 Signed-off-by: Fabian Groffen <grobian@gentoo.org> .../files/ibm-powerpc-utils-1.3.8-musl.patch | 95 ++++++++++++++++++++++ .../ibm-powerpc-utils-1.3.8-r1.ebuild | 3 +- .../ibm-powerpc-utils-99999.ebuild | 3 +- 3 files changed, 99 insertions(+), 2 deletions(-)
Thanks for your efforts but unfortunately it still does not build despite the musl.patch is pulled in: [...] checking for inflate in -lz... yes checking librtas.h usability... yes checking librtas.h presence... yes checking for librtas.h... yes checking for rtas_errinjct_open in -lrtas... yes checking librtasevent.h usability... yes checking librtasevent.h presence... yes checking for librtasevent.h... yes checking for parse_rtas_event in -lrtasevent... no configure: error: in `/var/tmp/portage/sys-apps/ibm-powerpc-utils-1.3.8-r1/work/powerpc-utils-1.3.8': configure: error: librtasevent library is missing (--without-librtas to disable) See `config.log' for more details !!! Please attach the following file when seeking support: !!! /var/tmp/portage/sys-apps/ibm-powerpc-utils-1.3.8-r1/work/powerpc-utils-1.3.8/config.log * ERROR: sys-apps/ibm-powerpc-utils-1.3.8-r1::gentoo failed (configure phase): * econf failed
Have you rebuilt librtas first?
Created attachment 712581 [details] build.log
Created attachment 712584 [details] config.log
Created attachment 712587 [details] emerge --info
configure:5417: checking for parse_rtas_event in -lrtasevent configure:5442: powerpc64-gentoo-linux-musl-gcc -o conftest -Os -mcpu=970 -mtune=970 -pipe -Wl,-O1 -Wl,--as-needed conftest.c -lrtasevent -lrtas -lz >&5 /usr/lib/gcc/powerpc64-gentoo-linux-musl/10.2.0/../../../../powerpc64-gentoo-linux-musl/bin/ld: /usr/lib/gcc/powerpc64-gentoo-linux-musl/10.2.0/../../../../lib/librtasevent.so: undefined reference to `be16toh' /usr/lib/gcc/powerpc64-gentoo-linux-musl/10.2.0/../../../../powerpc64-gentoo-linux-musl/bin/ld: /usr/lib/gcc/powerpc64-gentoo-linux-musl/10.2.0/../../../../lib/librtasevent.so: undefined reference to `be32toh' collect2: error: ld returned 1 exit status you probably didn't rebuild librtas
Oops, true! Now it builds fine. Sorry for the noise..
Is there a better way to catch this than we currently do? I know there was talk on IRC (in #g-portage) of a way to rebuild a package WITH all it's dependencies.. but I don't think this has come to fruition. It's probably one of a few cases, where a revbump makes adjustments easier to 'catch' ..
(In reply to Michael 'veremitz' Everitt from comment #14) > Is there a better way to catch this than we currently do? I know there was > talk on IRC (in #g-portage) of a way to rebuild a package WITH all it's > dependencies.. but I don't think this has come to fruition. > > It's probably one of a few cases, where a revbump makes adjustments easier > to 'catch' .. I suppose a policy change to make ALL changes to libs /require/ a revbump, might not be a bad thing? WTYT...
I did NOT revbump this on purpose, for I don't want to cause rebuilds for everyone just for 2 people running musl here. That being, me and OP :)
(In reply to Fabian Groffen from comment #16) > I did NOT revbump this on purpose, for I don't want to cause rebuilds for > everyone just for 2 people running musl here. That being, me and OP :) yeah I know how policy works, and I don't doubt your reasoning either! :]
Just for the record, revbumps would normally be in order here, but since musl on ppc64 isn't even official, let alone musl being very widespread at this point, I just want to keep the rebuild-noise down for "normal" users, this is the same tradeoff I make for Prefix users. Anyone observing this wrt policies will typically frown, I just keep the majority of users in mind.