%define soversion 1.0.36 %define soversion_major 1 Name: libcgroup Summary: Tools and libraries to control and monitor control groups Group: Development/Libraries Version: 0.36.2 Release: 1%{?dist} License: LGPLv2+ URL: http://libcg.sourceforge.net/ Source0: http://downloads.sourceforge.net/libcg/%{name}-%{version}.tar.bz2 Source1: README.Fedora Patch1: fedora-config.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: pam-devel BuildRequires: byacc BuildRequires: flex BuildRequires: coreutils Requires(post): chkconfig, /sbin/service Requires(preun): /sbin/chkconfig Requires: redhat-lsb %description Control groups infrastructure. The tools and library help manipulate, control, administrate and monitor control groups and the associated controllers. %package pam Summary: A Pluggable Authentication Module for libcgroup Group: System Environment/Base Requires: libcgroup = %{version}-%{release} %description pam Linux-PAM module, which allows administrators to classify the user's login processes to pre-configured control group. %package devel Summary: Development libraries to develop applications that utilize control groups Group: Development/Libraries Requires: libcgroup = %{version}-%{release} %description devel It provides API to create/delete and modify cgroup nodes. It will also in the future allow creation of persistent configuration for control groups and provide scripts to manage that configuration. %prep %setup -q %patch1 -p1 -b .config %build %configure --bindir=/bin --sbindir=/sbin --libdir=%{_libdir} --enable-initscript-install --enable-pam-module-dir=/%{_lib}/security make %{?_smp_mflags} %install rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install # install config files mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig cp samples/cgred.conf $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/cgred.conf cp samples/cgconfig.sysconfig $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/cgconfig cp samples/cgconfig.conf $RPM_BUILD_ROOT/%{_sysconfdir}/cgconfig.conf cp samples/cgrules.conf $RPM_BUILD_ROOT/%{_sysconfdir}/cgrules.conf # sanitize pam module, we need only pam_cgroup.so mv -f $RPM_BUILD_ROOT/%{_lib}/security/pam_cgroup.so.*.*.* $RPM_BUILD_ROOT/%{_lib}/security/pam_cgroup.so rm -f $RPM_BUILD_ROOT/%{_lib}/security/pam_cgroup.la $RPM_BUILD_ROOT/%{_lib}/security/pam_cgroup.so.* # move the libraries to / mkdir -p $RPM_BUILD_ROOT/%{_lib} mv -f $RPM_BUILD_ROOT/%{_libdir}/libcgroup.so.%{soversion} $RPM_BUILD_ROOT/%{_lib} rm -f $RPM_BUILD_ROOT/%{_libdir}/libcgroup.so.%{soversion_major} ln -sf libcgroup.so.%{soversion} $RPM_BUILD_ROOT/%{_lib}/libcgroup.so.%{soversion_major} ln -sf ../../%{_lib}/libcgroup.so.%{soversion} $RPM_BUILD_ROOT/%{_libdir}/libcgroup.so rm -f $RPM_BUILD_ROOT/%{_libdir}/*.la # pre-create /cgroup directory mkdir $RPM_BUILD_ROOT/cgroup # install README.Fedora cp %SOURCE1 . %clean rm -rf $RPM_BUILD_ROOT %post /sbin/ldconfig /sbin/chkconfig --add cgred /sbin/chkconfig --add cgconfig %preun if [ $1 = 0 ]; then /sbin/service cgred stop > /dev/null 2>&1 || : /sbin/service cgconfig stop > /dev/null 2>&1 || : /sbin/chkconfig --del cgconfig /sbin/chkconfig --del cgred fi %postun -p /sbin/ldconfig %files %defattr(-,root,root,-) %config(noreplace) %{_sysconfdir}/sysconfig/cgred.conf %config(noreplace) %{_sysconfdir}/sysconfig/cgconfig %config(noreplace) %{_sysconfdir}/cgconfig.conf %config(noreplace) %{_sysconfdir}/cgrules.conf /%{_lib}/libcgroup.so.* /bin/cgexec /bin/cgclassify /bin/cgcreate /bin/cgget /bin/cgset /bin/cgdelete /bin/lscgroup /bin/lssubsys /sbin/cgconfigparser /sbin/cgrulesengd /sbin/cgclear %attr(0644, root, root) %{_mandir}/man1/* %attr(0644, root, root) %{_mandir}/man5/* %attr(0644, root, root) %{_mandir}/man8/* %attr(0755,root,root) %{_initrddir}/cgconfig %attr(0755,root,root) %{_initrddir}/cgred %doc COPYING INSTALL README_daemon README.Fedora %attr(0755,root,root) %dir /cgroup %files pam %defattr(-,root,root,-) %attr(0755,root,root) /%{_lib}/security/pam_cgroup.so %files devel %defattr(-,root,root,-) %{_includedir}/libcgroup.h %{_includedir}/libcgroup/*.h %{_libdir}/libcgroup.* %{_libdir}/pkgconfig/libcgroup.pc %doc COPYING INSTALL %changelog * Tue Jun 22 2010 Jan Safranek 0.36.2-1 - Update to 0.36.2, fixing packaging the libraries (#605434) * Fri May 21 2010 Jan Safranek 0.36-1 - Update to 0.36.1 * Tue Mar 9 2010 Jan Safranek 0.35-1 - Update to 0.35.1 - Separate pam module to its own subpackage * Mon Jan 18 2010 Jan Safranek 0.34-4 - Added README.Fedora to describe initscript integration * Mon Oct 19 2009 Jan Safranek 0.34-3 - Change the default configuration to mount everything to /cgroup * Fri Jul 24 2009 Fedora Release Engineering - 0.34-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild * Tue Jul 7 2009 Jan Safranek 0.34-1 - Update to 0.34 * Mon Mar 09 2009 Dhaval Giani 0.33-3 - Add a workaround for rt cgroup controller. * Mon Mar 09 2009 Dhaval Giani 0.33-2 - Change the cgconfig script to start earlier - Move the binaries to /bin and /sbin * Mon Mar 02 2009 Dhaval Giani 0.33-1 - Update to latest upstream * Wed Feb 25 2009 Fedora Release Engineering 0.32.2-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild * Mon Jan 05 2009 Dhaval Giani 0.32.2-3 - Fix redhat-lsb dependency * Mon Dec 29 2008 Dhaval Giani 0.32.2-2 - Fix build dependencies * Mon Dec 29 2008 Dhaval Giani 0.32.2-1 - Update to latest upstream * Thu Oct 23 2008 Dhaval Giani 0.32.1-1 * Tue Feb 24 2009 Balbir Singh 0.33-1 - Update to 0.33, spec file changes to add Makefiles and pam_cgroup module * Fri Oct 10 2008 Dhaval Giani 0.32-1 - Update to latest upstream * Thu Sep 11 2008 Dhaval Giani 0.31-1 - Update to latest upstream * Sat Aug 2 2008 Dhaval Giani 0.1c-3 - Change release to fix broken upgrade path * Wed Jun 11 2008 Dhaval Giani 0.1c-1 - Update to latest upstream version * Tue Jun 3 2008 Balbir Singh 0.1b-3 - Add post and postun. Also fix Requires for devel to depend on base n-v-r * Sat May 31 2008 Balbir Singh 0.1b-2 - Fix makeinstall, Source0 and URL (review comments from Tom) * Mon May 26 2008 Balbir Singh 0.1b-1 - Add a generatable spec file * Tue May 20 2008 Balbir Singh 0.1-1 - Get the spec file to work * Tue May 20 2008 Dhaval Giani 0.01-1 - The first version of libcg