[packages/libcgroup] - updated to 0.41 - separated -libs so that development doesn't require daemon - added missing patch
qboosh
qboosh at pld-linux.org
Sat Feb 15 10:03:20 CET 2014
commit 38cd4e1d5399b19f610683f6e5f810f0325388b5
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Sat Feb 15 10:05:26 2014 +0100
- updated to 0.41
- separated -libs so that development doesn't require daemon
- added missing patch, build Python binding
libcgroup-missing.patch | 32 ++++++++++++++++++
libcgroup.spec | 86 ++++++++++++++++++++++++++++++++++++-------------
2 files changed, 96 insertions(+), 22 deletions(-)
---
diff --git a/libcgroup.spec b/libcgroup.spec
index 1dc094b..6da0107 100644
--- a/libcgroup.spec
+++ b/libcgroup.spec
@@ -1,13 +1,12 @@
-%define rcver rc1
Summary: Tools and library to control and monitor control groups
Summary(pl.UTF-8): Narzędzia i biblioteka do kontrolowania i monitorowania grup kontroli
Name: libcgroup
-Version: 0.40
-Release: 0.%{rcver}.2
+Version: 0.41
+Release: 1
License: LGPL v2+
-Group: Libraries
-Source0: http://downloads.sourceforge.net/libcg/%{name}-%{version}.%{rcver}.tar.bz2
-# Source0-md5: 979624adc559f534b34099f4dba7576d
+Group: Applications/System
+Source0: http://downloads.sourceforge.net/libcg/%{name}-%{version}.tar.bz2
+# Source0-md5: 3dea9d50b8a5b73ff0bf1cdcb210f63f
Source1: cgconfig.init
Source2: cgred.init
Source3: cgconfig.service
@@ -15,6 +14,7 @@ Source4: cgred.service
Source5: cgred.sysconfig
Patch0: %{name}-pam.patch
Patch1: %{name}-conf.patch
+Patch2: %{name}-missing.patch
URL: http://libcg.sourceforge.net/
BuildRequires: autoconf >= 2.61
BuildRequires: automake
@@ -23,13 +23,16 @@ BuildRequires: flex
BuildRequires: libstdc++-devel
BuildRequires: libtool
BuildRequires: pam-devel
+BuildRequires: python-devel >= 2
BuildRequires: rpmbuild(macros) >= 1.626
+BuildRequires: swig-python
Requires(post): /sbin/ldconfig
Requires(post,preun): /sbin/chkconfig
Requires(postun): /usr/sbin/groupdel
Requires(pre): /usr/bin/getgid
Requires(pre): /usr/sbin/groupadd
Requires(post,preun,postun): systemd-units >= 38
+Requires: %{name}-libs = %{version}-%{release}
Requires: procps
Requires: rc-scripts
Requires: systemd-units >= 38
@@ -49,11 +52,36 @@ Ten pakiet stanowi infrastrukturę grup kontroli (cgroups). Narzędzia i
biblioteka pomagają modyfikować, sterować, administrować i modyfikować
grupy kontroli i powiązane z nimi kontrolery.
+%package -n pam-pam_cgroup
+Summary: PAM module for libcgroup
+Summary(pl.UTF-8): Moduł PAM dla libcgroup
+Group: Libraries
+Requires: %{name} = %{version}-%{release}
+Obsoletes: libcgroup-pam
+
+%description -n pam-pam_cgroup
+PAM module for libcgroup.
+
+%description -n pam-pam_cgroup -l pl.UTF-8
+Moduł PAM dla libcgroup.
+
+%package libs
+Summary: Shared cgroup library
+Summary(pl.UTF-8): Biblioteka współdzielona cgroup
+Group: Libraries
+Conflicts: libcgroup < 0.41
+
+%description libs
+Shared cgroup library.
+
+%description libs -l pl.UTF-8
+Biblioteka współdzielona cgroup.
+
%package devel
Summary: Header files for cgroup library
Summary(pl.UTF-8): Pliki nagłówkowe biblioteki cgroup
Group: Development/Libraries
-Requires: %{name} = %{version}-%{release}
+Requires: %{name}-libs = %{version}-%{release}
%description devel
It provides API to create/delete and modify cgroup nodes. It will also
@@ -66,34 +94,36 @@ węzłów cgroup. W przyszłości pozwoli także na tworzenie trwałej
konfiguracji grup kontroli i udostępni skrypty do zarządzania taką
konfiguracją.
-%package -n pam-pam_cgroup
-Summary: PAM module for libcgroup
-Summary(pl.UTF-8): Moduł PAM dla libcgroup
-Group: Libraries
-Requires: %{name} = %{version}-%{release}
-Obsoletes: libcgroup-pam
+%package -n python-libcgroup
+Summary: Python binding for libcgroup
+Summary(pl.UTF-8): Wiązania Pythona do biblioteki libcgroup
+Group: Libraries/Python
+Requires: %{name}-libs = %{version}-%{release}
-%description -n pam-pam_cgroup
-PAM module for libcgroup.
+%description -n python-libcgroup
+Python binding for libcgroup.
-%description -n pam-pam_cgroup -l pl.UTF-8
-Moduł PAM dla libcgroup.
+%description -n python-libcgroup -l pl.UTF-8
+Wiązania Pythona do biblioteki libcgroup.
%prep
-%setup -q -n %{name}-%{version}.%{rcver}
+%setup -q
%patch0 -p1
%patch1 -p1
+%patch2 -p1
%build
%{__libtoolize}
%{__aclocal}
%{__autoconf}
+%{__autoheader}
%{__automake}
%configure \
--disable-silent-rules \
+ --enable-bindings \
--enable-initscript-install \
- --enable-pam-module-dir=/%{_lib}/security \
- --enable-opaque-hierarchy="name=systemd"
+ --enable-opaque-hierarchy="name=systemd" \
+ --enable-pam-module-dir=/%{_lib}/security
%{__make}
@@ -116,6 +146,8 @@ cp -a samples/cg{config,rules,snapshot_blacklist}.conf $RPM_BUILD_ROOT%{_sysconf
mv $RPM_BUILD_ROOT%{_libdir}/libcgroup.so.* $RPM_BUILD_ROOT/%{_lib}
ln -snf ../../%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libcgroup.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libcgroup.so
+install -d $RPM_BUILD_ROOT%{py_sitedir}
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/_libcgroup.so $RPM_BUILD_ROOT%{py_sitedir}
%{__rm} $RPM_BUILD_ROOT/%{_lib}/security/pam_cgroup.la
%{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
@@ -180,6 +212,9 @@ fi
%systemd_trigger cgconfig.service
%systemd_trigger cgred.service
+%post libs -p /sbin/ldconfig
+%postun libs -p /sbin/ldconfig
+
%files
%defattr(644,root,root,755)
%doc README README_daemon
@@ -189,8 +224,6 @@ fi
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/cg*.conf
%{systemdunitdir}/cgconfig.service
%{systemdunitdir}/cgred.service
-%attr(755,root,root) /%{_lib}/libcgroup.so.*.*.*
-%attr(755,root,root) %ghost /%{_lib}/libcgroup.so.1
%attr(755,root,root) /bin/cgclassify
%attr(755,root,root) /bin/cgcreate
%attr(755,root,root) /bin/cgdelete
@@ -212,9 +245,18 @@ fi
%defattr(644,root,root,755)
%attr(755,root,root) /%{_lib}/security/pam_cgroup.so
+%files libs
+%defattr(644,root,root,755)
+%attr(755,root,root) /%{_lib}/libcgroup.so.*.*.*
+%attr(755,root,root) %ghost /%{_lib}/libcgroup.so.1
+
%files devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libcgroup.so
%{_includedir}/libcgroup
%{_includedir}/libcgroup.h
%{_pkgconfigdir}/libcgroup.pc
+
+%files -n python-libcgroup
+%defattr(644,root,root,755)
+%attr(755,root,root) %{py_sitedir}/_libcgroup.so
diff --git a/libcgroup-missing.patch b/libcgroup-missing.patch
new file mode 100644
index 0000000..4a29d48
--- /dev/null
+++ b/libcgroup-missing.patch
@@ -0,0 +1,32 @@
+--- libcgroup-0.41/src/bindings/libcgroup.p.orig 1970-01-01 01:00:00.000000000 +0100
++++ libcgroup-0.41/src/bindings/libcgroup.p 2014-02-15 09:38:51.769175313 +0100
+@@ -0,0 +1,29 @@
++%module libcgroup
++%{
++#include "libcgroup.h"
++%}
++
++#ifdef __cplusplus
++#define __BEGIN_DECLS extern "C" {
++#define __END_DECLS }
++#else
++#define __BEGIN_DECLS
++#define __END_DECLS
++#endif
++
++%include typemaps.i
++%include cpointer.i
++%pointer_functions(int, intp);
++%typemap (in) void** (void *temp) {
++ void *arg;
++ if ((arg = PyCObject_AsVoidPtr($input)) != NULL) {
++ $1 = &arg;
++ } else
++ $1 = &temp;
++}
++
++%typemap (argout) void** {
++ PyObject *obj = PyCObject_FromVoidPtr(*$1, NULL);
++ $result = PyTuple_Pack(2, $result, obj);
++}
++
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/libcgroup.git/commitdiff/38cd4e1d5399b19f610683f6e5f810f0325388b5
More information about the pld-cvs-commit
mailing list