Blame SPECS/libcgroup.spec

da3e87
%global soversion_major 1
da3e87
%global soversion 1.0.40
da3e87
%global _hardened_build 1
da3e87
da3e87
Summary: Library to control and monitor control groups
da3e87
Name: libcgroup
da3e87
Version: 0.40
da3e87
Release: 0.rc1.3%{?dist}
da3e87
License: LGPLv2+
da3e87
Group: Development/Libraries
da3e87
URL: http://libcg.sourceforge.net/
da3e87
Source0: http://downloads.sourceforge.net/libcg/%{name}-%{version}.rc1.tar.bz2
da3e87
Source1: cgconfig.service
da3e87
da3e87
Patch0:  fedora-config.patch
da3e87
Patch1:  libcgroup-0.37-pam_cgroup.patch
da3e87
Patch2:  libcgroup-0.37-cgred-empty-config.patch
da3e87
Patch3:  libcgroup-0.37-chmod.patch
da3e87
Patch4:  libcgroup-0.40.rc1-coverity.patch
da3e87
Patch5:  libcgroup-0.40.rc1-restorecon.patch
da3e87
Patch6:  libcgroup-0.40.rc1-cgred-order.patch
da3e87
Patch7:  libcgroup-0.40.rc1-cast-and-typo.patch
da3e87
Patch8:  libcgroup-0.40.rc1-config-table.patch
da3e87
Patch9:  libcgroup-0.40.rc1-fread.patch
da3e87
Patch10: libcgroup-0.40.rc1-change-all-cgroups-cache.patch
da3e87
Patch11: libcgroup-0.40.rc1-templates-fix.patch
da3e87
Patch12: libcgroup-0.40.rc1-valgrind.patch
da3e87
Patch13: libcgroup-0.40.rc1-coverity2.patch
da3e87
da3e87
BuildRequires: byacc, coreutils, flex, pam-devel, systemd
da3e87
Requires(pre): shadow-utils
da3e87
Requires(post): systemd
da3e87
Requires(preun): systemd
da3e87
Requires(postun): systemd
da3e87
da3e87
%description
da3e87
Control groups infrastructure. The library helps manipulate, control,
da3e87
administrate and monitor control groups and the associated controllers.
da3e87
da3e87
%package tools
da3e87
Summary: Command-line utility programs, services and daemons for libcgroup
da3e87
Group: System Environment/Base
da3e87
Requires: %{name}%{?_isa} = %{version}-%{release}
da3e87
da3e87
%description tools
da3e87
This package contains command-line programs, services and a daemon for
da3e87
manipulating control groups using the libcgroup library.
da3e87
da3e87
%package pam
da3e87
Summary: A Pluggable Authentication Module for libcgroup
da3e87
Group: System Environment/Base
da3e87
Requires: %{name}%{?_isa} = %{version}-%{release}
da3e87
da3e87
%description pam
da3e87
Linux-PAM module, which allows administrators to classify the user's login
da3e87
processes to pre-configured control group.
da3e87
da3e87
%package devel
da3e87
Summary: Development libraries to develop applications that utilize control groups
da3e87
Group: Development/Libraries
da3e87
Requires: %{name}%{?_isa} = %{version}-%{release}
da3e87
da3e87
%description devel
da3e87
It provides API to create/delete and modify cgroup nodes. It will also in the
da3e87
future allow creation of persistent configuration for control groups and
da3e87
provide scripts to manage that configuration.
da3e87
da3e87
%prep
da3e87
%setup   -q  -n %{name}-%{version}.rc1
da3e87
%patch0  -p1 -b .config-patch
da3e87
%patch1  -p1 -b .flags
da3e87
%patch2  -p1 -b .empty-config
da3e87
%patch3  -p1 -b .chmod
da3e87
%patch4  -p1 -b .coverity
da3e87
%patch5  -p1 -b .restorecon
da3e87
%patch6  -p1 -b .cgred-order
da3e87
%patch7  -p1 -b .cast-and-typo
da3e87
%patch8  -p1 -b .config-table
da3e87
%patch9  -p1 -b .fread
da3e87
%patch10 -p1 -b .change-all-cache
da3e87
%patch11 -p1 -b .templates-fix
da3e87
%patch12 -p1 -b .valgrind
da3e87
%patch13 -p1 -b .coverity2
da3e87
da3e87
%build
da3e87
%configure --enable-pam-module-dir=%{_libdir}/security \
da3e87
           --enable-opaque-hierarchy="name=systemd" \
da3e87
           --disable-daemon
da3e87
make %{?_smp_mflags}
da3e87
da3e87
%install
da3e87
make DESTDIR=$RPM_BUILD_ROOT install
da3e87
da3e87
# install config files
da3e87
install -d ${RPM_BUILD_ROOT}%{_sysconfdir}
da3e87
install -m 644 samples/cgconfig.conf $RPM_BUILD_ROOT/%{_sysconfdir}/cgconfig.conf
da3e87
install -m 644 samples/cgsnapshot_blacklist.conf $RPM_BUILD_ROOT/%{_sysconfdir}/cgsnapshot_blacklist.conf
da3e87
da3e87
# sanitize pam module, we need only pam_cgroup.so
da3e87
mv -f $RPM_BUILD_ROOT%{_libdir}/security/pam_cgroup.so.*.*.* $RPM_BUILD_ROOT%{_libdir}/security/pam_cgroup.so
da3e87
rm -f $RPM_BUILD_ROOT%{_libdir}/security/pam_cgroup.la $RPM_BUILD_ROOT/%{_libdir}/security/pam_cgroup.so.*
da3e87
da3e87
rm -f $RPM_BUILD_ROOT/%{_libdir}/*.la
da3e87
da3e87
rm -f $RPM_BUILD_ROOT/%{_mandir}/man5/cgred.conf.5*
da3e87
rm -f $RPM_BUILD_ROOT/%{_mandir}/man5/cgrules.conf.5*
da3e87
rm -f $RPM_BUILD_ROOT/%{_mandir}/man8/cgrulesengd.8*
da3e87
da3e87
# install unit and sysconfig files
da3e87
install -d ${RPM_BUILD_ROOT}%{_unitdir}
da3e87
install -m 644 %SOURCE1 ${RPM_BUILD_ROOT}%{_unitdir}/
da3e87
install -d ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig
da3e87
da3e87
%pre
da3e87
getent group cgred >/dev/null || groupadd -r cgred
da3e87
da3e87
%post -p /sbin/ldconfig
da3e87
da3e87
%postun -p /sbin/ldconfig
da3e87
da3e87
%post tools
da3e87
%systemd_post cgconfig.service
da3e87
da3e87
%preun tools
da3e87
%systemd_preun cgconfig.service
da3e87
da3e87
%postun tools
da3e87
%systemd_postun_with_restart cgconfig.service
da3e87
da3e87
%triggerun -- libcgroup < 0.38
da3e87
# Save the current service runlevel info
da3e87
# User must manually run systemd-sysv-convert --apply cgconfig
da3e87
# to migrate them to systemd targets
da3e87
/usr/bin/systemd-sysv-convert --save cgconfig >/dev/null 2>&1 ||:
da3e87
da3e87
# Run these because the SysV package being removed won't do them
da3e87
/sbin/chkconfig --del cgconfig >/dev/null 2>&1 || :
da3e87
/bin/systemctl try-restart cgconfig.service >/dev/null 2>&1 || :
da3e87
da3e87
%files
da3e87
%doc COPYING README
da3e87
%{_libdir}/libcgroup.so.*
da3e87
da3e87
%files tools
da3e87
%doc COPYING README README_systemd
da3e87
%config(noreplace) %{_sysconfdir}/cgconfig.conf
da3e87
%config(noreplace) %{_sysconfdir}/cgsnapshot_blacklist.conf
da3e87
/usr/bin/cgcreate
da3e87
/usr/bin/cgget
da3e87
/usr/bin/cgset
da3e87
/usr/bin/cgdelete
da3e87
/usr/bin/lscgroup
da3e87
/usr/bin/lssubsys
da3e87
/usr/sbin/cgconfigparser
da3e87
/usr/sbin/cgclear
da3e87
/usr/bin/cgsnapshot
da3e87
%attr(2755, root, cgred) /usr/bin/cgexec
da3e87
%attr(2755, root, cgred) /usr/bin/cgclassify
da3e87
%attr(0644, root, root) %{_mandir}/man1/*
da3e87
%attr(0644, root, root) %{_mandir}/man5/*
da3e87
%attr(0644, root, root) %{_mandir}/man8/*
da3e87
%{_unitdir}/cgconfig.service
da3e87
da3e87
%files pam
da3e87
%doc COPYING README
da3e87
%attr(0755,root,root) %{_libdir}/security/pam_cgroup.so
da3e87
da3e87
%files devel
da3e87
%doc COPYING README
da3e87
%{_includedir}/libcgroup.h
da3e87
%{_includedir}/libcgroup/*.h
da3e87
%{_libdir}/libcgroup.so
da3e87
%{_libdir}/pkgconfig/libcgroup.pc
da3e87
da3e87
%changelog
da3e87
* Mon Nov  4 2013 Peter Schiffer <pschiffe@redhat.com> 0.40-0.rc1.3
da3e87
- related: #819568
da3e87
  fixed some coverity findings
da3e87
da3e87
* Fri Nov  1 2013 Peter Schiffer <pschiffe@redhat.com> 0.40-0.rc1.2
da3e87
- related: #1016810
da3e87
  returned creation of cgred group, which was removed in previous commit by mistage
da3e87
da3e87
* Fri Nov  1 2013 Peter Schiffer <pschiffe@redhat.com> 0.40-0.rc1.1
da3e87
- resolves: #819568, #740113
da3e87
  rebased to 0.40.rc1
da3e87
- resolves: #983264
da3e87
  rebuilt with full relro and PIE
da3e87
- resolves: #1016810
da3e87
  removed cgrulesengd daemon
da3e87
da3e87
* Fri Nov 23 2012 Peter Schiffer <pschiffe@redhat.com> - 0.38-3
da3e87
- resolves: #850183
da3e87
  scriptlets replaced with new systemd macros (thanks to vpavlin)
da3e87
- cleaned .spec file
da3e87
da3e87
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.38-2
da3e87
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
da3e87
da3e87
* Mon Feb 20 2012 Jan Safranek <jsafrane@redhat.com> 0.38-1
da3e87
- updated to 0.38
da3e87
da3e87
* Fri Feb  3 2012 Jan Safranek <jsafrane@redhat.com> 0.38-0.rc1
da3e87
- updated to 0.38.rc1
da3e87
da3e87
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.37.1-5
da3e87
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
da3e87
da3e87
* Mon May 30 2011 Jan Safranek <jsafrane@redhat.com> 0.37.1-4
da3e87
- fixed cgconfig service not to unmount stuff it did not mount
da3e87
- added better sample cgconfig.conf file to reflect systemd
da3e87
  mounting all controllers during boot (#702111)
da3e87
da3e87
* Wed May 25 2011 Ivana Hutarova Varekova <varekova@redhat.com> 0.37.1-3
da3e87
- split tools part from libcgroup package
da3e87
da3e87
* Fri Apr  8 2011 Jan Safranek <jsafrane@redhat.com> 0.37.1-2
da3e87
- Remove /cgroup directory, groups are created in /sys/fs/cgroup
da3e87
  (#694687)
da3e87
da3e87
* Thu Mar  3 2011 Jan Safranek <jsafrane@redhat.com> 0.37.1-1
da3e87
- Update to 0.37.1
da3e87
da3e87
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.37-3
da3e87
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
da3e87
da3e87
* Mon Jan 17 2011 Jan Safranek <jsafrane@redhat.com> 0.37-2
da3e87
- Create the 'cgred' group as system group, not as user
da3e87
- Fix cgclassify exit code
da3e87
da3e87
* Mon Dec 13 2010 Jan Safranek <jsafrane@redhat.com> 0.37-1
da3e87
- Update to 0.37
da3e87
- use /sys/fs/cgroup as default directory to mount control groups (and rely on
da3e87
  systemd mounting tmpfs there)
da3e87
da3e87
* Fri Nov 12 2010 Jan Safranek <jsafrane@redhat.com> 0.36.2-3
da3e87
- Ignore systemd hierarchy - it's now invisible to libcgroup (#627378)
da3e87
da3e87
* Mon Aug  2 2010 Jan Safranek <jsafrane@redhat.com> 0.36.2-2
da3e87
- Fix initscripts to report stopped cgconfig service as not running
da3e87
  (#619091)
da3e87
da3e87
* Tue Jun 22 2010 Jan Safranek <jsafrane@redhat.com> 0.36.2-1
da3e87
- Update to 0.36.2, fixing packaging the libraries (#605434)
da3e87
- Remove the dependency on redhat-lsb (#603578)
da3e87
da3e87
* Fri May 21 2010 Jan Safranek <jsafrane@redhat.com> 0.36-1
da3e87
- Update to 0.36.1
da3e87
da3e87
* Tue Mar  9 2010 Jan Safranek <jsafrane@redhat.com> 0.35-1
da3e87
- Update to 0.35.1
da3e87
- Separate pam module to its own subpackage
da3e87
da3e87
* Mon Jan 18 2010 Jan Safranek <jsafrane@redhat.com> 0.34-4
da3e87
- Added README.Fedora to describe initscript integration
da3e87
da3e87
* Mon Oct 19 2009 Jan Safranek <jsafrane@redhat.com> 0.34-3
da3e87
- Change the default configuration to mount everything to /cgroup
da3e87
da3e87
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.34-2
da3e87
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
da3e87
da3e87
* Tue Jul  7 2009 Jan Safranek <jsafrane@redhat.com> 0.34-1
da3e87
- Update to 0.34
da3e87
* Mon Mar 09 2009 Dhaval Giani <dhaval@linux.vnet.ibm.com> 0.33-3
da3e87
- Add a workaround for rt cgroup controller.
da3e87
* Mon Mar 09 2009 Dhaval Giani <dhaval@linux.vnet.ibm.com> 0.33-2
da3e87
- Change the cgconfig script to start earlier
da3e87
- Move the binaries to /bin and /sbin
da3e87
* Mon Mar 02 2009 Dhaval Giani <dhaval@linux.vnet.ibm.com> 0.33-1
da3e87
- Update to latest upstream
da3e87
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> 0.32.2-4
da3e87
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
da3e87
da3e87
* Mon Jan 05 2009 Dhaval Giani <dhaval@linux.vnet.ibm.com> 0.32.2-3
da3e87
- Fix redhat-lsb dependency
da3e87
* Mon Dec 29 2008 Dhaval Giani <dhaval@linux.vnet.ibm.com> 0.32.2-2
da3e87
- Fix build dependencies
da3e87
* Mon Dec 29 2008 Dhaval Giani <dhaval@linux.vnet.ibm.com> 0.32.2-1
da3e87
- Update to latest upstream
da3e87
* Thu Oct 23 2008 Dhaval Giani <dhaval@linux.vnet.ibm.com> 0.32.1-1
da3e87
* Tue Feb 24 2009 Balbir Singh <balbir@linux.vnet.ibm.com> 0.33-1
da3e87
- Update to 0.33, spec file changes to add Makefiles and pam_cgroup module
da3e87
* Fri Oct 10 2008 Dhaval Giani <dhaval@linux.vnet.ibm.com> 0.32-1
da3e87
- Update to latest upstream
da3e87
* Thu Sep 11 2008 Dhaval Giani <dhaval@linux-vnet.ibm.com> 0.31-1
da3e87
- Update to latest upstream
da3e87
* Sat Aug 2 2008 Dhaval Giani <dhaval@linux.vnet.ibm.com> 0.1c-3
da3e87
- Change release to fix broken upgrade path
da3e87
* Wed Jun 11 2008 Dhaval Giani <dhaval@linux.vnet.ibm.com> 0.1c-1
da3e87
- Update to latest upstream version
da3e87
* Tue Jun 3 2008 Balbir Singh <balbir@linux.vnet.ibm.com> 0.1b-3
da3e87
- Add post and postun. Also fix Requires for devel to depend on base n-v-r
da3e87
* Sat May 31 2008 Balbir Singh <balbir@linux.vnet.ibm.com> 0.1b-2
da3e87
- Fix makeinstall, Source0 and URL (review comments from Tom)
da3e87
* Mon May 26 2008 Balbir Singh <balbir@linux.vnet.ibm.com> 0.1b-1
da3e87
- Add a generatable spec file
da3e87
* Tue May 20 2008 Balbir Singh <balbir@linux.vnet.ibm.com> 0.1-1
da3e87
- Get the spec file to work
da3e87
* Tue May 20 2008 Dhaval Giani <dhaval@linux.vnet.ibm.com> 0.01-1
da3e87
- The first version of libcg