xfs
[Top] [All Lists]

Re: xfsprogs: .lai files not found

To: Jan Engelhardt <jengelh@xxxxxxx>
Subject: Re: xfsprogs: .lai files not found
From: Eric Sandeen <sandeen@xxxxxxxxxxx>
Date: Thu, 24 May 2012 11:25:26 -0500
Cc: xfs@xxxxxxxxxxx
In-reply-to: <alpine.LNX.2.01.1205241517400.10834@xxxxxxxxxxxxxxxx>
References: <alpine.LNX.2.01.1205241517400.10834@xxxxxxxxxxxxxxxx>
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:12.0) Gecko/20120428 Thunderbird/12.0.1
On 5/24/12 8:45 AM, Jan Engelhardt wrote:
> 
> So I tried changing the xfsprogs package in openSUSE to build without 
> static libraries, and what I got back from the build system was a 
> warning about completely improper rpath settings.
> 
> 
>       ERROR: RPATH "/home/abuild/rpmbuild/BUILD/xfsprogs-3.1.6/libxfs/.libs" 
>       on 
>       
> /home/abuild/rpmbuild/BUILDROOT/xfsprogs-3.1.6-0.x86_64/usr/sbin/mkfs.xfs 
>       is not allowed
>       [lots of these]
> 
> I therefore ripped out
> 
>       -LTLDFLAGS += -rpath $(PKG_ROOT_LIB_DIR)
> 
> from include/buildmacros, only to find that the install procedure then 
> does not work at all anymore.
> 
>       cd ../libhandle/.libs; ../../install-sh -o abuild -g abuild -m 755 -d 
> /lib64; ../../install-sh -o abuild -g abuild -m 644 -T so_dot_version 
> libhandle.lai /lib64; ../../install-sh -o abuild -g abuild -T so_dot_current 
> libhandle.lai /lib64
>       install-sh: Unable to find libtool library file libhandle.lai
>       install-sh: Unable to find libtool library file libhandle.lai
>       gmake[1]: *** [install] Error 2
>       make: *** [libhandle-install] Error 2
>       error: Bad exit status from /var/tmp/rpm-tmp.JjlSJb (%install)
> 
> (I frown upon using libtool directly and seek to replace it with an
> assisted version using automake. There is however __quite__ some
> cruft in the src tree.)

It's a little embarrassing to say so, but here's the hack I use in fedora for 
some of this stuff.

%configure \
        --enable-readline=yes   \
        --enable-blkid=yes

# Kill rpaths
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool

...

# nuke .la files, etc
rm -f $RPM_BUILD_ROOT/{%{_lib}/*.{la,a,so},%{_libdir}/*.{la,a}}

Agreed that the build system could use love, do we have a volunteer? :)

-Eric

<Prev in Thread] Current Thread [Next in Thread>