%define soversion 1.0.42 %define soversion_major 1 Name: libcgroup Summary: Tools and libraries to control and monitor control groups Summary(ja): CGROUPS を管理・監視するためのツールおよびライブラリ Version: 0.42.2 Release: 1%{?_dist_release} License: LGPLv2+ Group: System Environment/Libraries Vendor: Project Vine Distribution: Vine Linux URL: http://libcg.sourceforge.net/ Source0: https://github.com/%{name}/%{name}/archive/v%{version}/%{name}-v%{version}.tar.gz Patch1: libcgroup-0.37-chmod.patch Patch2: libcgroup-0.40.rc1-coverity.patch Patch3: libcgroup-0.40.rc1-fread.patch Patch4: libcgroup-0.40.rc1-templates-fix.patch Patch1000: 0001-modify-configurations.patch Patch1001: 0002-fix-initscripts.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root BuildRequires: pam-devel BuildRequires: byacc BuildRequires: flex BuildRequires: coreutils Requires(pre): shadow-utils Requires(post): chkconfig, /sbin/service Requires(preun): /sbin/chkconfig %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 Summary(ja): Libcgroup の PAM モジュール 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 files for libcgroup Summary(ja): libcgroup の開発用ファイル 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 -n %{name}-%{version} %autopatch -p1 autoreconf -vif %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 cp samples/cgsnapshot_blacklist.conf $RPM_BUILD_ROOT/%{_sysconfdir}/cgsnapshot_blacklist.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}/*.{a,la} rm -f $RPM_BUILD_ROOT/%{_libdir}/libcgroupfortesting.* rm -f $RPM_BUILD_ROOT/%{_lib}/security/*.a # pre-create /cgroup directory mkdir $RPM_BUILD_ROOT/cgroup %clean rm -rf $RPM_BUILD_ROOT %pre getent group cgred >/dev/null || groupadd -r cgred %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 %config(noreplace) %{_sysconfdir}/cgsnapshot_blacklist.conf /%{_lib}/libcgroup.so.* %attr(2755, root, cgred) /bin/cgexec /bin/cgclassify /bin/cgcreate /bin/cgget /bin/cgset /bin/cgdelete /bin/lscgroup /bin/lssubsys /sbin/cgconfigparser /sbin/cgrulesengd /sbin/cgclear /bin/cgsnapshot %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 %license COPYING %doc README_daemon %attr(0755,root,root) %dir /cgroup %files pam %defattr(-,root,root,-) %attr(0755,root,root) /%{_lib}/security/pam_cgroup.so %license COPYING %files devel %defattr(-,root,root,-) %{_includedir}/libcgroup.h %{_includedir}/libcgroup/*.h %{_libdir}/libcgroup.* /%{_libdir}/pkgconfig/libcgroup.pc %license COPYING %changelog * Thu Mar 19 2020 Tomohiro "Tomo-p" KATO 0.42.2-1 - new upstream release. - dropped Patch1-15. - imported Patch1-4 from rawhide. - updated Patch1001. * Thu May 23 2019 Tomohiro "Tomo-p" KATO 0.41-2 - updated Patch1000: add line for systemd-container. * Sat Jan 12 2019 Tomohiro "Tomo-p" KATO 0.41-1 - updated and renumbered Patch0 to Patch1000. - updated and renumbered Patch1 to Patch1001. - imported Patch1-15 from rawhide. * Sun Oct 12 2014 Ryoichi INAGAKI 0.37.1-2 - moved libcgroup to System Environment/Libraries * Wed Mar 23 2011 Daisuke SUZUKI 0.37.1-1 - initial build for Vine Linux * Thu Mar 3 2011 Jan Safranek 0.37.1-1 - Update to 0.37.1 * Mon Feb 07 2011 Fedora Release Engineering - 0.37-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Mon Jan 17 2011 Jan Safranek 0.37-2 - Create the 'cgred' group as system group, not as user - Fix cgclassify exit code * Mon Dec 13 2010 Jan Safranek 0.37-1 - Update to 0.37 - use /sys/fs/cgroup as default directory to mount control groups (and rely on systemd mounting tmpfs there) * Fri Nov 12 2010 Jan Safranek 0.36.2-3 - Ignore systemd hierarchy - it's now invisible to libcgroup (#627378) * Mon Aug 2 2010 Jan Safranek 0.36.2-2 - Fix initscripts to report stopped cgconfig service as not running (#619091) * Tue Jun 22 2010 Jan Safranek 0.36.2-1 - Update to 0.36.2, fixing packaging the libraries (#605434) - Remove the dependency on redhat-lsb (#603578) * 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