From a1fd56cb3057c45cffbf5d41eaf70a26d2116b20 Mon Sep 17 00:00:00 2001 From: Eric Blake Date: Fri, 4 Jan 2013 14:21:59 -0700 Subject: [PATCH] build: install libvirt sysctl file correctly https://bugzilla.redhat.com/show_bug.cgi?id=887017 reports that even though libvirt attempts to set fs.aio-max-nr via sysctl, the file was installed with the wrong name and gets ignored by sysctl. Furthermore, 'man systcl.d' recommends that packages install into hard-coded /usr/lib/sysctl.d (even when libdir is /usr/lib64), so that sysadmins can use /etc/sysctl.d for overrides. * daemon/Makefile.am (install-sysctl, uninstall-sysctl): Use correct location. * libvirt.spec.in (network_files): Reflect this. --- daemon/Makefile.am | 10 ++++++---- libvirt.spec.in | 4 ++-- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/daemon/Makefile.am b/daemon/Makefile.am index 7bcc7e24ff..c59084c3a7 100644 --- a/daemon/Makefile.am +++ b/daemon/Makefile.am @@ -273,14 +273,16 @@ uninstall-sysconfig: rmdir $(DESTDIR)$(sysconfdir)/sysconfig || : if WITH_SYSCTL +# Use $(prefix)/lib rather than $(libdir), since man sysctl.d insists on +# /usr/lib/sysctl.d/ even when libdir is /usr/lib64 install-sysctl: - $(MKDIR_P) $(DESTDIR)$(sysconfdir)/sysctl.d + $(MKDIR_P) $(DESTDIR)$(prefix)/lib/sysctl.d $(INSTALL_DATA) $(srcdir)/libvirtd.sysctl \ - $(DESTDIR)$(sysconfdir)/sysctl.d/libvirtd + $(DESTDIR)$(prefix)/lib/sysctl.d/libvirtd.conf uninstall-sysctl: - rm -f $(DESTDIR)$(sysconfdir)/sysctl.d/libvirtd - rmdir $(DESTDIR)$(sysconfdir)/sysctl.d || : + rm -f $(DESTDIR)$(prefix)/lib/sysctl.d/libvirtd.conf + rmdir $(DESTDIR)$(prefix)/lib/sysctl.d || : else install-sysctl: uninstall-sysctl: diff --git a/libvirt.spec.in b/libvirt.spec.in index 3aaef02d68..0a5a8e008d 100644 --- a/libvirt.spec.in +++ b/libvirt.spec.in @@ -1681,9 +1681,9 @@ fi %config(noreplace) %{_sysconfdir}/sysconfig/virtlockd %config(noreplace) %{_sysconfdir}/libvirt/libvirtd.conf %if 0%{?fedora} >= 14 || 0%{?rhel} >= 6 -%config(noreplace) %{_sysconfdir}/sysctl.d/libvirtd +%config(noreplace) %{_prefix}/lib/sysctl.d/libvirtd.conf %else -rm -f $RPM_BUILD_ROOT%{_sysconfdir}/sysctl.d/libvirtd +rm -f $RPM_BUILD_ROOT%{_prefix}/lib/sysctl.d/libvirtd.conf %endif %dir %attr(0700, root, root) %{_localstatedir}/log/libvirt/qemu/ %dir %attr(0700, root, root) %{_localstatedir}/log/libvirt/lxc/