|
@@ -1,3 +1,5 @@
|
|
|
|
+%bcond_with systemd
|
|
|
|
+
|
|
%define soversion 1.0.42
|
|
%define soversion 1.0.42
|
|
%define soversion_major 1
|
|
%define soversion_major 1
|
|
|
|
|
|
@@ -5,22 +7,24 @@ Name: libcgroup
|
|
Summary: Tools and libraries to control and monitor control groups
|
|
Summary: Tools and libraries to control and monitor control groups
|
|
Summary(ja): CGROUPS を管理・監視するためのツールおよびライブラリ
|
|
Summary(ja): CGROUPS を管理・監視するためのツールおよびライブラリ
|
|
Version: 0.42.2
|
|
Version: 0.42.2
|
|
-Release: 1%{?_dist_release}
|
|
|
|
-
|
|
|
|
-License: LGPLv2+
|
|
|
|
-Group: System Environment/Libraries
|
|
|
|
|
|
+Release: 2%{?_dist_release}%{?with_systemd:.systemd}
|
|
|
|
+Group: system
|
|
Vendor: Project Vine
|
|
Vendor: Project Vine
|
|
Distribution: Vine Linux
|
|
Distribution: Vine Linux
|
|
|
|
|
|
|
|
+License: LGPLv2+
|
|
URL: http://libcg.sourceforge.net/
|
|
URL: http://libcg.sourceforge.net/
|
|
Source0: https://github.com/%{name}/%{name}/archive/v%{version}/%{name}-v%{version}.tar.gz
|
|
Source0: https://github.com/%{name}/%{name}/archive/v%{version}/%{name}-v%{version}.tar.gz
|
|
|
|
+Source1: cgconfig.conf.sysvinit
|
|
|
|
+Source2: cgconfig.sysconfig
|
|
|
|
+Source100: cgconfig.service
|
|
|
|
+Source101: cgconfig.conf.systemd
|
|
|
|
|
|
Patch1: libcgroup-0.37-chmod.patch
|
|
Patch1: libcgroup-0.37-chmod.patch
|
|
Patch2: libcgroup-0.40.rc1-coverity.patch
|
|
Patch2: libcgroup-0.40.rc1-coverity.patch
|
|
Patch3: libcgroup-0.40.rc1-fread.patch
|
|
Patch3: libcgroup-0.40.rc1-fread.patch
|
|
Patch4: libcgroup-0.40.rc1-templates-fix.patch
|
|
Patch4: libcgroup-0.40.rc1-templates-fix.patch
|
|
|
|
|
|
-Patch1000: 0001-modify-configurations.patch
|
|
|
|
Patch1001: 0002-fix-initscripts.patch
|
|
Patch1001: 0002-fix-initscripts.patch
|
|
|
|
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
|
|
@@ -29,27 +33,33 @@ BuildRequires: byacc
|
|
BuildRequires: flex
|
|
BuildRequires: flex
|
|
BuildRequires: coreutils
|
|
BuildRequires: coreutils
|
|
Requires(pre): shadow-utils
|
|
Requires(pre): shadow-utils
|
|
|
|
+%if %{with systemd}
|
|
|
|
+%{?systemd_requires}
|
|
|
|
+%else
|
|
Requires(post): chkconfig, /sbin/service
|
|
Requires(post): chkconfig, /sbin/service
|
|
Requires(preun): /sbin/chkconfig
|
|
Requires(preun): /sbin/chkconfig
|
|
|
|
+%endif
|
|
|
|
|
|
%description
|
|
%description
|
|
Control groups infrastructure. The tools and library help manipulate, control,
|
|
Control groups infrastructure. The tools and library help manipulate, control,
|
|
administrate and monitor control groups and the associated controllers.
|
|
administrate and monitor control groups and the associated controllers.
|
|
|
|
|
|
|
|
+
|
|
%package pam
|
|
%package pam
|
|
Summary: A Pluggable Authentication Module for libcgroup
|
|
Summary: A Pluggable Authentication Module for libcgroup
|
|
Summary(ja): Libcgroup の PAM モジュール
|
|
Summary(ja): Libcgroup の PAM モジュール
|
|
-Group: System Environment/Base
|
|
|
|
|
|
+Group: system
|
|
Requires: libcgroup = %{version}-%{release}
|
|
Requires: libcgroup = %{version}-%{release}
|
|
|
|
|
|
%description pam
|
|
%description pam
|
|
Linux-PAM module, which allows administrators to classify the user's login
|
|
Linux-PAM module, which allows administrators to classify the user's login
|
|
processes to pre-configured control group.
|
|
processes to pre-configured control group.
|
|
|
|
|
|
|
|
+
|
|
%package devel
|
|
%package devel
|
|
Summary: Development files for libcgroup
|
|
Summary: Development files for libcgroup
|
|
Summary(ja): libcgroup の開発用ファイル
|
|
Summary(ja): libcgroup の開発用ファイル
|
|
-Group: Development/Libraries
|
|
|
|
|
|
+Group: programming
|
|
Requires: libcgroup = %{version}-%{release}
|
|
Requires: libcgroup = %{version}-%{release}
|
|
|
|
|
|
%description devel
|
|
%description devel
|
|
@@ -57,67 +67,91 @@ 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
|
|
future allow creation of persistent configuration for control groups and
|
|
provide scripts to manage that configuration.
|
|
provide scripts to manage that configuration.
|
|
|
|
|
|
|
|
+
|
|
|
|
+%debug_package
|
|
|
|
+
|
|
|
|
+
|
|
%prep
|
|
%prep
|
|
%setup -q -n %{name}-%{version}
|
|
%setup -q -n %{name}-%{version}
|
|
%autopatch -p1
|
|
%autopatch -p1
|
|
-
|
|
|
|
autoreconf -vif
|
|
autoreconf -vif
|
|
|
|
|
|
|
|
+
|
|
%build
|
|
%build
|
|
-%configure --bindir=/bin --sbindir=/sbin --libdir=%{_libdir} --enable-initscript-install --enable-pam-module-dir=/%{_lib}/security
|
|
|
|
|
|
+%configure \
|
|
|
|
+ --bindir=/bin --sbindir=/sbin --libdir=%{_libdir} \
|
|
|
|
+ --enable-pam-module-dir=/%{_lib}/security \
|
|
|
|
+%if !%{with systemd}
|
|
|
|
+ --enable-initscript-install \
|
|
|
|
+%endif
|
|
|
|
+ %{nil}
|
|
|
|
|
|
make %{?_smp_mflags}
|
|
make %{?_smp_mflags}
|
|
|
|
|
|
|
|
|
|
%install
|
|
%install
|
|
-rm -rf $RPM_BUILD_ROOT
|
|
|
|
-make DESTDIR=$RPM_BUILD_ROOT install
|
|
|
|
|
|
+make DESTDIR=%{buildroot} install
|
|
|
|
|
|
# install config files
|
|
# 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
|
|
|
|
|
|
+mkdir -p %{buildroot}/%{_sysconfdir}/sysconfig
|
|
|
|
+cp samples/cgred.conf %{buildroot}/%{_sysconfdir}/sysconfig/cgred.conf
|
|
|
|
+cp %{SOURCE2} %{buildroot}/%{_sysconfdir}/sysconfig/cgconfig
|
|
|
|
+cp samples/cgrules.conf %{buildroot}/%{_sysconfdir}/cgrules.conf
|
|
|
|
+cp samples/cgsnapshot_blacklist.conf %{buildroot}/%{_sysconfdir}/cgsnapshot_blacklist.conf
|
|
|
|
+
|
|
|
|
+%if %{with systemd}
|
|
|
|
+install -Dpm644 %{SOURCE100} %{buildroot}/%{_unitdir}/cgconfig.service
|
|
|
|
+cp %{SOURCE101} %{buildroot}/%{_sysconfdir}/cgconfig.conf
|
|
|
|
+%else
|
|
|
|
+cp %{SOURCE1} %{buildroot}/%{_sysconfdir}/cgconfig.conf
|
|
|
|
+%endif
|
|
|
|
|
|
# sanitize pam module, we need only pam_cgroup.so
|
|
# 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.*
|
|
|
|
|
|
+mv -f %{buildroot}/%{_lib}/security/pam_cgroup.so.*.*.* %{buildroot}/%{_lib}/security/pam_cgroup.so
|
|
|
|
+rm -f %{buildroot}/%{_lib}/security/pam_cgroup.la %{buildroot}/%{_lib}/security/pam_cgroup.so.*
|
|
|
|
|
|
# move the libraries to /
|
|
# 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
|
|
|
|
|
|
+mkdir -p %{buildroot}/%{_lib}
|
|
|
|
+mv -f %{buildroot}/%{_libdir}/libcgroup.so.%{soversion} %{buildroot}/%{_lib}
|
|
|
|
+rm -f %{buildroot}/%{_libdir}/libcgroup.so.%{soversion_major}
|
|
|
|
+ln -sf libcgroup.so.%{soversion} %{buildroot}/%{_lib}/libcgroup.so.%{soversion_major}
|
|
|
|
+ln -sf ../../%{_lib}/libcgroup.so.%{soversion} %{buildroot}/%{_libdir}/libcgroup.so
|
|
|
|
+rm -f %{buildroot}/%{_libdir}/*.{a,la}
|
|
|
|
+rm -f %{buildroot}/%{_libdir}/libcgroupfortesting.*
|
|
|
|
+rm -f %{buildroot}/%{_lib}/security/*.a
|
|
|
|
|
|
# pre-create /cgroup directory
|
|
# pre-create /cgroup directory
|
|
-mkdir $RPM_BUILD_ROOT/cgroup
|
|
|
|
|
|
+mkdir %{buildroot}/cgroup
|
|
|
|
|
|
-%clean
|
|
|
|
-rm -rf $RPM_BUILD_ROOT
|
|
|
|
|
|
|
|
%pre
|
|
%pre
|
|
getent group cgred >/dev/null || groupadd -r cgred
|
|
getent group cgred >/dev/null || groupadd -r cgred
|
|
|
|
|
|
%post
|
|
%post
|
|
-/sbin/ldconfig
|
|
|
|
|
|
+%if %{with systemd}
|
|
|
|
+%systemd_post cgconfig.service
|
|
|
|
+%else
|
|
/sbin/chkconfig --add cgred
|
|
/sbin/chkconfig --add cgred
|
|
/sbin/chkconfig --add cgconfig
|
|
/sbin/chkconfig --add cgconfig
|
|
|
|
+%endif
|
|
|
|
|
|
%preun
|
|
%preun
|
|
-if [ $1 = 0 ]; then
|
|
|
|
|
|
+%if %{with systemd}
|
|
|
|
+%systemd_preun cgconfig.service
|
|
|
|
+%else
|
|
|
|
+if [ $1 = 0 -o -x /bin/systemctl ]; then
|
|
/sbin/service cgred stop > /dev/null 2>&1 || :
|
|
/sbin/service cgred stop > /dev/null 2>&1 || :
|
|
/sbin/service cgconfig stop > /dev/null 2>&1 || :
|
|
/sbin/service cgconfig stop > /dev/null 2>&1 || :
|
|
/sbin/chkconfig --del cgconfig
|
|
/sbin/chkconfig --del cgconfig
|
|
/sbin/chkconfig --del cgred
|
|
/sbin/chkconfig --del cgred
|
|
fi
|
|
fi
|
|
|
|
+%endif
|
|
|
|
+
|
|
|
|
+%if %{with systemd}
|
|
|
|
+%postun
|
|
|
|
+%systemd_postun_with_restart cgconfig.service
|
|
|
|
+%endif
|
|
|
|
|
|
-%postun -p /sbin/ldconfig
|
|
|
|
|
|
|
|
%files
|
|
%files
|
|
%defattr(-,root,root,-)
|
|
%defattr(-,root,root,-)
|
|
@@ -142,11 +176,14 @@ fi
|
|
%attr(0644, root, root) %{_mandir}/man1/*
|
|
%attr(0644, root, root) %{_mandir}/man1/*
|
|
%attr(0644, root, root) %{_mandir}/man5/*
|
|
%attr(0644, root, root) %{_mandir}/man5/*
|
|
%attr(0644, root, root) %{_mandir}/man8/*
|
|
%attr(0644, root, root) %{_mandir}/man8/*
|
|
|
|
+%if %{with systemd}
|
|
|
|
+%{_unitdir}/cgconfig.service
|
|
|
|
+%else
|
|
%attr(0755,root,root) %{_initrddir}/cgconfig
|
|
%attr(0755,root,root) %{_initrddir}/cgconfig
|
|
%attr(0755,root,root) %{_initrddir}/cgred
|
|
%attr(0755,root,root) %{_initrddir}/cgred
|
|
|
|
+%endif
|
|
%license COPYING
|
|
%license COPYING
|
|
%doc README_daemon
|
|
%doc README_daemon
|
|
-%attr(0755,root,root) %dir /cgroup
|
|
|
|
|
|
|
|
%files pam
|
|
%files pam
|
|
%defattr(-,root,root,-)
|
|
%defattr(-,root,root,-)
|
|
@@ -161,7 +198,13 @@ fi
|
|
/%{_libdir}/pkgconfig/libcgroup.pc
|
|
/%{_libdir}/pkgconfig/libcgroup.pc
|
|
%license COPYING
|
|
%license COPYING
|
|
|
|
|
|
|
|
+
|
|
%changelog
|
|
%changelog
|
|
|
|
+* Mon Mar 22 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.42.2-2
|
|
|
|
+- dropped ldconfig scriptlets.
|
|
|
|
+- updated Patch1001: made LSB free.
|
|
|
|
+- added systemd support (disabled as default).
|
|
|
|
+
|
|
* Thu Mar 19 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.42.2-1
|
|
* Thu Mar 19 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.42.2-1
|
|
- new upstream release.
|
|
- new upstream release.
|
|
- dropped Patch1-15.
|
|
- dropped Patch1-15.
|