]> git.pld-linux.org Git - packages/libcgroup.git/commitdiff
- updated to 0.41
authorJakub Bogusz <qboosh@pld-linux.org>
Sat, 15 Feb 2014 09:05:26 +0000 (10:05 +0100)
committerJakub Bogusz <qboosh@pld-linux.org>
Sat, 15 Feb 2014 09:05:26 +0000 (10:05 +0100)
- separated -libs so that development doesn't require daemon
- added missing patch, build Python binding

libcgroup-missing.patch [new file with mode: 0644]
libcgroup.spec

diff --git a/libcgroup-missing.patch b/libcgroup-missing.patch
new file mode 100644 (file)
index 0000000..4a29d48
--- /dev/null
@@ -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);
++}
++
index 1dc094b7c8fcbbb281ae971554f2ef75e2eb74d5..6da01070659f904fb4a28acec7e5172ab036f8c9 100644 (file)
@@ -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
This page took 0.05171 seconds and 4 git commands to generate.