On Tue, 30 Apr 2024 09:49:34 +0200
Florian Weimer <fweimer(a)redhat.com> wrote:
* Richard W. M. Jones:
> On Mon, Apr 29, 2024 at 02:21:56PM +0200, Florian Weimer wrote:
>> * Richard W. M. Jones:
>>
>> >> I don't want us to have RPM spec file hacks just to get RISC-V to
>> >> install in the correct locations. The symbolic link evidently does
not
>> >> cover all cases.
>> >
>> > What cases aren't covered by the symlink? We have a full, working
>> > Fedora/RISC-V distro using it at the moment.
>>
>> The symbolic link isn't in the buildroot.
>
> This is indeed a problem. The symlink should be moved from glibc to
> filesystem. I don't know why we put it in glibc, historical anomaly I
> guess. I'll prepare a couple of PRs today which will have to be
> carefully pushed in a single side tag to fix this.
>
>> If shared objects are listed
>> explicitly in %files (as some guidelines recommend) and upstream
>> hard-codes the ABI directory names for installation purposes, the build
>> fails.
>>
>> Setting %_libdir to /usr/lib64/lp64d instead might work. Fixing
>> upstream to honor --libdir=/usr/lib64 in ./configure might be another
>> option.
>
> I'm still unclear on what exactly the problem is that this solves.
> We've built hundreds of C libraries in Fedora/RISC-V with the current
> set up and it appears to work fine. Will moving the symlink (alone)
> fix this or is there some other error?
Sorry, see my other response. This is about the
%buildroot/$RPM_BUILDROOT staging area used during the rpmbuild process,
not the system installation.
perhaps rpmbuild could create a minimal directory structure
(%_bindir, %_libdir) when starting the %install section. And maybe it
could be generally beneficial ...
Dan