Hide Forgot
rpmbuild fails as we removed static libraries in %files list.
PATCH: http://patches.gluster.com/patch/2402 in master (Excluding static libraries.)
PATCH: http://patches.gluster.com/patch/2403 in release-2.0 (Excluding static libraries)
Hi, sorry to reopen this, but the commit 04da2ae78b83e1cb3e14379dd72d694fa03fc5e1 rebroke this for me on fedora 11, with: Processing files: glusterfs-devel-3.0.0git-1.pix1.x86_64 error: File not found by glob: /home/erickt/rpmbuild/BUILDROOT/glusterfs-3.0.0git-1.x86_64/usr/lib64/*.a Perhaps we're running into one os generating .a files, and another not? These are the only files I have in the .../usr/lib64 directory: glusterfs libglusterfsclient.la libglusterfsclient.so libglusterfsclient.so.0 libglusterfsclient.so.0.0.0 libglusterfs.la libglusterfs.so libglusterfs.so.0 libglusterfs.so.0.0.0 It doesn't look like explicitly listing out the files works, as in: %files devel %defattr(-,root,root,-) %{_includedir}/glusterfs %{_includedir}/libglusterfsclient.h %exclude %{_includedir}/glusterfs/y.tab.h %exclude %{_libdir}/libglusterfsclient.la %exclude %{_libdir}/libglusterfsclient.a %{_libdir}/libglusterfsclient.so %{_libdir}/libglusterfsclient.so.0 %{_libdir}/libglusterfsclient.so.0.0.0 %exclude %{_libdir}/libglusterfs.la %exclude %{_libdir}/libglusterfs.a %{_libdir}/libglusterfs.so %{_libdir}/libglusterfs.so.0 %{_libdir}/libglusterfs.so.0.0.0 Which just errors out for me with: File not found: /home/erickt/rpmbuild/BUILDROOT/glusterfs-3.0.0git-1.x86_64/usr/lib64/libglusterfsclient.a File not found: /home/erickt/rpmbuild/BUILDROOT/glusterfs-3.0.0git-1.x86_64/usr/lib64/libglusterfs.a So, long story short, there are two solutions I can see. First, generate a FILES file after compiling that determines whether or not *.a files were generated, and use the "%files -f FILES devel" argument. Or even simpler, just delete all the *.la and *.a files as in: diff --git a/glusterfs.spec.in b/glusterfs.spec.in index 9ce6f1b..446018a 100644 --- a/glusterfs.spec.in +++ b/glusterfs.spec.in @@ -143,7 +143,8 @@ sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool %{buildroot}%{_includedir}/glusterfs/ # Remove unwanted files from all the shared libraries -find %{buildroot}%{_libdir}/glusterfs -name '*.la' | xargs rm -f +find %{buildroot}%{_libdir} -name '*.la' | xargs rm -f +find %{buildroot}%{_libdir} -name '*.a' | xargs rm -f %clean %{__rm} -rf %{buildroot} @@ -197,8 +198,6 @@ fi %{_includedir}/glusterfs %{_includedir}/libglusterfsclient.h %exclude %{_includedir}/glusterfs/y.tab.h -%exclude %{_libdir}/*.la -%exclude %{_libdir}/*.a %{_libdir}/*.so %changelog
We saw that without Harsha's commit it was failing in rpmbuild in our testing machines here.
Fixed in Author: Erick Tryzelaar <idadesub.net> Date: Wed Dec 2 17:32:05 2009 +0000 Hopefully fix rpm building for everyone by rm-ing *.a and *.la My Fedora 11 machine doesn't seem to make the .a files, so it errors out, but it appears someone else's machine does, so try to fix it by explicitly removing the .a and .la files, rather than excluding them from the %files section. Signed-off-by: Anand V. Avati <avati.com>