On 01/09/2013 05:18 AM, Yufang Zhang wrote:
When building libvirt rpms on rhel5, I got the following error:
File must begin with "/": rm
File must begin with "/": -f
File must begin with "/": $RPM_BUILD_ROOT/etc/sysctl.d/libvirtd
Installed (but unpackaged) file(s) found:
/etc/sysctl.d/libvirtd
It is triggerd by the %files list of libvirt daemon:
%if 0%{?fedora} >= 14 || 0%{?rhel} >= 6
%config(noreplace) %{_prefix}/lib/sysctl.d/libvirtd.conf
%else
rm -f $RPM_BUILD_ROOT%{_prefix}/lib/sysctl.d/libvirtd.conf
%endif
After checking document of rpm spec file, I think it would be better
to move the file deleting line from %files list to %install script.
Correct intention, but not quite the right patch.
+%if 0%{?fedora} < 14 || 0%{?rhel} == 5
Oops; this fails on RHEL 6 (since there, %{?fedora} is 0 so the left
half is always true); and on RHEL 4 (if anyone seriously tries to port
that far back). The correct inversion of:
%if 0%{?fedora} >= 14 || 0%{?rhel} >= 6
would be:
%if 0%{?fedoa} < 14 && 0%{?rhel} < 6
ACK with that change, and will push shortly.
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library
http://libvirt.org