From 0c761e67a0e6dceaebc12f3625006b1fea8e7cb2fdf5326efacb60ec518bd053 Mon Sep 17 00:00:00 2001 From: Stephan Kulow Date: Sat, 11 Jan 2014 10:21:02 +0000 Subject: [PATCH] Accepting request 213417 from home:adrianSuSE:branches:devel:libraries:c_c++ split package to avoid build cycles due to glib2. requested by coolo OBS-URL: https://build.opensuse.org/request/show/213417 OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/gamin?expand=0&rev=13 --- gamin-devel.changes | 6 +++ gamin-devel.spec | 118 ++++++++++++++++++++++++++++++++++++++++++++ gamin.changes | 7 +++ gamin.spec | 75 +++++----------------------- 4 files changed, 142 insertions(+), 64 deletions(-) create mode 100644 gamin-devel.changes create mode 100644 gamin-devel.spec diff --git a/gamin-devel.changes b/gamin-devel.changes new file mode 100644 index 0000000..8837cc7 --- /dev/null +++ b/gamin-devel.changes @@ -0,0 +1,6 @@ +------------------------------------------------------------------- +Fri Jan 10 10:11:36 UTC 2014 - adrian@suse.de + +- split lib* packages into own spec file to avoid a build cycle + (avoiding glib2) + diff --git a/gamin-devel.spec b/gamin-devel.spec new file mode 100644 index 0000000..3bfadfe --- /dev/null +++ b/gamin-devel.spec @@ -0,0 +1,118 @@ +# +# spec file for package gamin-devel +# +# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + + +Name: gamin-devel +Version: 0.1.10 +Release: 0 +%define sonum 0 +%define vernum 1 +%define packnum %{vernum}-%{sonum} +%define famnum 0 +Summary: Libraries and includes to build against gamin +License: LGPL-2.1 +Group: Development/Libraries/C and C++ +# Both have libfam.so +Conflicts: fam-devel +Requires: libfam%{famnum}-gamin = %{version} +Requires: libgamin-%{packnum} = %{version} +Provides: %{name}-static = %{version} +Url: http://www.gnome.org/~veillard/gamin/ +Source: http://www.gnome.org/~veillard/gamin/sources/gamin-%{version}.tar.gz +Source2: gamin-rpmlintrc +Patch0: gamin-return.patch +Patch1: gamin-fam_abi_compatibility_FamErrlist.patch +Patch2: gamin-fix_python_main.patch +Patch3: gamin-obsol-glib.diff +# PATCH-FIX-UPSTREAM gamin-0.1.11-double-lock.patch (bgo#669292) +Patch4: gamin-0.1.11-double-lock.patch +# PATCH-FIX-UPSTREAM 0001-Poll-files-on-nfs4.patch (bgo#693006) +Patch5: 0001-Poll-files-on-nfs4.patch +BuildRequires: fdupes +BuildRequires: gcc-c++ +BuildRequires: libstdc++-devel +BuildRequires: pkgconfig +# No glib* requires here to avoid build cycles +BuildRoot: %{_tmppath}/%{name}-%{version}-build + +%description +Libraries, includes, etc. to use and build against gamin. + +%package -n libgamin-%{packnum} +Summary: Library providing the FAM File Alteration Monitor API +Group: System/Libraries +Provides: libgamin = %{version} +Obsoletes: libgamin < %{version} + +%description -n libgamin-%{packnum} +This C library provides an API and ABI compatible file alteration +monitor mechanism compatible with FAM, but not dependent on a system wide +daemon. + +%package -n libfam%{famnum}-gamin +Summary: Library providing the FAM File Alteration Monitor API +Group: System/Libraries +Conflicts: libfam0 + +%description -n libfam%{famnum}-gamin +This C library provides an API and ABI compatible file alteration +monitor mechanism compatible with FAM, but not dependent on a system wide +daemon. + +%prep +%setup -q -n gamin-%version +%patch0 -p0 +%patch1 +%patch2 +%patch3 -p1 +%patch4 -p1 +%patch5 -p1 + +%build +%configure --disable-static --disable-server +make %{?_smp_mflags} + +%install +%make_install +rm "%{buildroot}%{_libdir}"/*.la + +%post -n libgamin-%{packnum} -p /sbin/ldconfig +%postun -n libgamin-%{packnum} -p /sbin/ldconfig + +%post -n libfam%{famnum}-gamin -p /sbin/ldconfig +%postun -n libfam%{famnum}-gamin -p /sbin/ldconfig + +%files -n libgamin-%{packnum} +%defattr(-,root,root) +%doc AUTHORS ChangeLog NEWS README Copyright TODO +%{_libdir}/libgamin-%{vernum}.so.%{sonum} +%{_libdir}/libgamin-%{vernum}.so.%{sonum}.* + +%files -n libfam%{famnum}-gamin +%defattr(-,root,root) +%{_libdir}/libfam.so.%{famnum} +%{_libdir}/libfam.so.%{famnum}.* + +%files -n gamin-devel +%defattr(-,root,root) +%{_includedir}/fam.h +%{_libdir}/libfam.so +%{_libdir}/libgamin-%{vernum}.so +%{_libdir}/libgamin_shared.a +%{_libdir}/pkgconfig/gamin.pc + +%changelog diff --git a/gamin.changes b/gamin.changes index a291af5..c3f8851 100644 --- a/gamin.changes +++ b/gamin.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Fri Jan 10 10:08:35 UTC 2014 - adrian@suse.de + +- split lib* packages into own spec file to avoid a build cycle +- found a testsuite, run it, but ignore result since it show + breakages. Should be revisited. + ------------------------------------------------------------------- Tue Sep 24 21:33:01 UTC 2013 - hrvoje.senjan@gmail.com diff --git a/gamin.spec b/gamin.spec index c8855fa..0a16100 100644 --- a/gamin.spec +++ b/gamin.spec @@ -1,7 +1,7 @@ # # spec file for package gamin # -# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -50,27 +50,6 @@ This C library provides an API and ABI compatible file alteration monitor mechanism compatible with FAM, but not dependent on a system wide daemon. -%package -n lib%{name}-%{packnum} -Summary: Library providing the FAM File Alteration Monitor API -Group: System/Libraries -Provides: lib%{name} = %{version} -Obsoletes: lib%{name} < %{version} - -%description -n lib%{name}-%{packnum} -This C library provides an API and ABI compatible file alteration -monitor mechanism compatible with FAM, but not dependent on a system wide -daemon. - -%package -n libfam%{famnum}-%{name} -Summary: Library providing the FAM File Alteration Monitor API -Group: System/Libraries -Conflicts: libfam0 - -%description -n libfam%{famnum}-%{name} -This C library provides an API and ABI compatible file alteration -monitor mechanism compatible with FAM, but not dependent on a system wide -daemon. - %package -n python-%{name} Summary: Python bindings for the %{name} library Group: Development/Libraries/Python @@ -84,18 +63,6 @@ The python-%{name} package contains a module that allow monitoring of files and directories from the Python language based on the support of the %{name} package. -%package devel -Summary: Libraries and includes to build against %{name} -Group: Development/Libraries/C and C++ -# Both have libfam.so -Conflicts: fam-devel -Requires: lib%{name}-%{packnum} = %{version} -Requires: libfam%{famnum}-%{name} = %{version} -Provides: %{name}-devel-static = %{version} - -%description devel -Libraries, includes, etc. to use and build against %{name}. - %package doc Summary: Documentation for %{name} Group: Development/Libraries/C and C++ @@ -124,7 +91,7 @@ It is split off into its own subpackage to void file conflicts when both %patch5 -p1 %build -%configure --disable-static +%configure --disable-static --enable-tests make %{?_smp_mflags} %install @@ -134,22 +101,16 @@ mkdir -p .rpmdoc/python mv doc/python.html .rpmdoc/python/doc.html %fdupes %{buildroot} -%post -n lib%{name}-%{packnum} -p /sbin/ldconfig -%postun -n lib%{name}-%{packnum} -p /sbin/ldconfig +# drop files which are build via libgamin spec file +rm %buildroot%{_includedir}/fam.h \ + %buildroot%{_libdir}/lib%{name}_shared.a \ + %buildroot%{_libdir}/pkgconfig/gamin.pc \ + %buildroot%{_libdir}/libgamin-%{vernum}.so* \ + %buildroot%{_libdir}/libfam.so* -%post -n libfam%{famnum}-%{name} -p /sbin/ldconfig -%postun -n libfam%{famnum}-%{name} -p /sbin/ldconfig - -%files -n lib%{name}-%{packnum} -%defattr(-,root,root) -%doc AUTHORS ChangeLog NEWS README Copyright TODO -%{_libdir}/libgamin-%{vernum}.so.%{sonum} -%{_libdir}/libgamin-%{vernum}.so.%{sonum}.* - -%files -n libfam%{famnum}-%{name} -%defattr(-,root,root) -%{_libdir}/libfam.so.%{famnum} -%{_libdir}/libfam.so.%{famnum}.* +%check +# tests are currently broken :/ +make tests || echo "**** WARNING TESTSUITE FAILS ****" %files -n python-%{name} %defattr(-,root,root) @@ -157,20 +118,6 @@ mv doc/python.html .rpmdoc/python/doc.html %{py_sitedir}/gamin.py* %{py_sitedir}/_gamin* -%files devel -%defattr(-,root,root) -%{_includedir}/fam.h -%{_libdir}/libfam.so -%{_libdir}/lib%{name}-%{vernum}.so -%{_libdir}/lib%{name}_shared.a -%{_libdir}/pkgconfig/gamin.pc - -%files doc -%defattr(-,root,root) -%doc doc/*.gif -%doc doc/*.html -%doc doc/*.txt - %files server %defattr(-, root, root) %{_libexecdir}/gam_server