Sandworm wrote:
On Friday, 25 August 2006 8:17 PM Nicolas Baradakis wrote:
Is it impossible to force rpmbuild to package the files installed by the Makefile in /usr/share/doc/... with a line the %files section?
%files ... %{_datadir}/doc/%{name}-%{version}/*/*
I don't know what this is supposed to do, but having it generates an error:
RPM build errors: create archive failed on file /var/tmp/freeradius- root/usr/share/doc/freeradius-1.1.3/examples/iplanet.ldif: cpio: open failed - Bad file descriptor
The line is supposed to pull the files to be found in $RPM_BUILD_ROOT/usr/share/doc/freeradius-1.1.3/ into the package. The files should be there: they're installed during the "make install". No idea why there's a "Bad file descriptor" error.
I've seen something similar in suse/freeradius.spec, but I think this is a violation of the packaging rules: files in the *source* directory should not be deleted while building a package.
I don't know if this deletion is so much of a problem. While building via rpmbuild, the source tarball is (normally) in /usr/src/redhat/SOURCES, the tarball is expanded into /usr/src/redhat/BUILD, and the (temporary) build root (which is what the spec variable $RPM_BUILD_ROOT points to) is in /var/tmp/freeradius-root. The deletion happens in this directory, which is supposed to be deleted anyway after the build. The *source* directory then does not get affected by the packaging.
Thanks for the explanation: I never used rpmbuild myself, so I didn't know the detailed mechanisms. Then it appears deletion is not really a problem. The only thing that is strange, is that you redo with rpmbuild what the Makefile has already done. -- Nicolas Baradakis