[packages/libindicate] - split into base/gtk2/gtk3 + dotnet/python/vala bindings - pl - release 2
qboosh
qboosh at pld-linux.org
Mon Jun 2 16:51:51 CEST 2014
commit 44a84c273a2ca017af694bbfaeec584058041a5c
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Mon Jun 2 16:55:10 2014 +0200
- split into base/gtk2/gtk3 + dotnet/python/vala bindings
- pl
- release 2
libindicate.spec | 439 +++++++++++++++++++++++++++++++++++++++++++++++++------
1 file changed, 391 insertions(+), 48 deletions(-)
---
diff --git a/libindicate.spec b/libindicate.spec
index d520ca4..87aca67 100644
--- a/libindicate.spec
+++ b/libindicate.spec
@@ -1,37 +1,59 @@
-# TODO:
-# - python, sharp subpackages
-%bcond_without doc
-Summary: Libindicate
-Summary(pl.UTF-8): Libindicate
+#
+# Conditional build:
+%bcond_without apidocs # API documentation build
+%bcond_without gtk2 # GTK+ 2.x version
+%bcond_without gtk3 # GTK+ 3.x version
+%bcond_without dotnet # .NET/Mono bindings
+%bcond_without python # Python bindings
+#
+%if %{without gtk2}
+# .NET bindings depend on gtk-sharp2 and use GTK+ 2.x variant of libindicate-gtk
+%undefine with_dotnet
+%endif
+Summary: Libindicate library
+Summary(pl.UTF-8): Biblioteka libindicate
Name: libindicate
Version: 12.10.1
-Release: 1
+Release: 2
License: LGPL v2+
-Group: Applications
+Group: Libraries
Source0: https://launchpad.net/libindicate/12.10/%{version}/+download/%{name}-%{version}.tar.gz
# Source0-md5: aeed68ec8047a3325b4aa4aef38f010a
Patch0: %{name}-am.patch
Patch1: %{name}-doc.patch
URL: https://launchpad.net/libindicate/
-BuildRequires: autoconf
+BuildRequires: autoconf >= 2.53
BuildRequires: automake
-BuildRequires: dbus-glib-devel
+BuildRequires: dbus-glib-devel >= 0.76
+%{?with_dotnet:BuildRequires: dotnet-gtk-sharp2-devel >= 2.12.1}
+BuildRequires: gdk-pixbuf2-devel >= 2.12
BuildRequires: glibc-misc
+BuildRequires: glib2-devel >= 1:2.18
BuildRequires: gnome-common
BuildRequires: gnome-doc-utils
-BuildRequires: gobject-introspection-devel
-BuildRequires: gtk+3-devel
-BuildRequires: gtk-doc-automake
-BuildRequires: libdbusmenu-devel
+BuildRequires: gobject-introspection-devel >= 0.6.7
+%{?with_gtk2:BuildRequires: gtk+2-devel >= 2:2.12}
+%{?with_gtk3:BuildRequires: gtk+3-devel >= 3.0}
+BuildRequires: gtk-doc-automake >= 1.4
+BuildRequires: libdbusmenu-devel >= 0.3.97
BuildRequires: libtool
BuildRequires: libxml2-devel
+%{?with_dotnet:BuildRequires: mono-csharp >= 1.0}
+%{?with_dotnet:BuildRequires: mono-devel >= 1.0}
BuildRequires: pkgconfig
-BuildRequires: rpmbuild(macros) >= 1.198
+%if %{with python}
+BuildRequires: python-devel >= 2.3.5
+BuildRequires: python-pygobject-devel >= 0.22
+BuildRequires: python-pygtk-devel >= 2:2.14.0
+%endif
+BuildRequires: rpmbuild(macros) >= 1.219
+BuildRequires: vala
%if %{with doc}
BuildRequires: docbook-dtd412-xml
-BuildRequires: gtk-doc
+BuildRequires: gtk-doc >= 1.4
%endif
-Requires(post,preun): /sbin/chkconfig
+Requires: glib2 >= 1:2.18
+Requires: libdbusmenu >= 0.3.97
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
@@ -39,43 +61,247 @@ A small library for applications to raise "flags" on DBus for other
components of the desktop to pick up and visualize. Currently used by
the messaging indicator.
-#%description -l pl.UTF-8
+%description -l pl.UTF-8
+Mała biblioteka pozwalająca aplikacjom podnosić "flagi" na magistrali
+DBus, aby inne komponenty środowiska mogły je odebrać i zwizualizować.
+Obecnie jest używana przez wskaźnik komunikacji.
%package devel
-Summary: Header files for libindicate
-Summary(pl.UTF-8): Pliki nagłówkowe biblioteki indicate
+Summary: Header files for libindicate library
+Summary(pl.UTF-8): Pliki nagłówkowe biblioteki libindicate
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
+Requires: glib2-devel >= 1:2.18
+Requires: libdbusmenu-devel >= 0.3.97
%description devel
-Header files for libindicate.
+Header files for libindicate library.
%description devel -l pl.UTF-8
-Pliki nagłówkowe biblioteki indicate.
+Pliki nagłówkowe biblioteki libindicate.
%package static
-Summary: Static indicate library
-Summary(pl.UTF-8): Statyczna biblioteka indicate
+Summary: Static libindicate library
+Summary(pl.UTF-8): Statyczna biblioteka libindicate
Group: Development/Libraries
Requires: %{name}-devel = %{version}-%{release}
%description static
-Static indicate library.
+Static libindicate library.
%description static -l pl.UTF-8
-Statyczna biblioteka indicate.
+Statyczna biblioteka libindicate.
%package apidocs
-Summary: indicate library API documentation
-Summary(pl.UTF-8): Dokumentacja API biblioteki indicate
+Summary: libindicate library API documentation
+Summary(pl.UTF-8): Dokumentacja API biblioteki libindicate
Group: Documentation
Requires: gtk-doc-common
%description apidocs
-indicate library API documentation.
+libindicate library API documentation.
%description apidocs -l pl.UTF-8
-Dokumentacja API biblioteki indicate.
+Dokumentacja API biblioteki libindicate.
+
+%package -n dotnet-indicate-sharp
+Summary: indicate library for .NET
+Summary(pl.UTF-8): Biblioteka indicate dla .NET
+Group: Libraries
+Requires: %{name} = %{version}-%{release}
+Requires: dotnet-gtk-sharp2 >= 2.12.1
+
+%description -n dotnet-indicate-sharp
+indicate library for .NET.
+
+%description -n dotnet-indicate-sharp -l pl.UTF-8
+Biblioteka indicate dla .NET.
+
+%package -n dotnet-indicate-sharp-devel
+Summary: Development files for .NET indicate library
+Summary(pl.UTF-8): Pliki programistyczne biblioteki .NET indicate
+Group: Development/Libraries
+Requires: dotnet-gtk-sharp2-devel >= 2.12.1
+Requires: dotnet-indicate-sharp = %{version}-%{release}
+
+%description -n dotnet-indicate-sharp-devel
+Development files for .NET indicate library.
+
+%description -n dotnet-indicate-sharp-devel -l pl.UTF-8
+Pliki programistyczne biblioteki .NET indicate.
+
+%package -n python-indicate
+Summary: Python binding for libindicate library
+Summary(pl.UTF-8): Wiązanie Pythona do biblioteki libindicate
+Group: Libraries/Python
+Requires: %{name} = %{version}-%{release}
+Requires: python-pygobject >= 0.22
+Requires: python-pygtk-gtk >= 2:2.14.0
+
+%description -n python-indicate
+Python binding for libindicate library.
+
+%description -n python-indicate -l pl.UTF-8
+Wiązanie Pythona do biblioteki libindicate.
+
+%package -n python-indicate-devel
+Summary: Development file for Python libindicate binding
+Summary(pl.UTF-8): Plik programistyczny wiązania Pythona do biblioteki libindicate
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+Requires: python-indicate = %{version}-%{release}
+Requires: python-pygtk-devel >= 2:2.14.0
+
+%description -n python-indicate-devel
+Development file for Python libindicate binding>
+
+%description -n python-indicate-devel -l pl.UTF-8
+Plik programistyczny wiązania Pythona do biblioteki libindicate.
+
+%package -n vala-libindicate
+Summary: Vala API for libindicate library
+Summary(pl.UTF-8): API języka Vala do biblioteki libindicate
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+Requires: vala
+
+%description -n vala-libindicate
+Vala API for libindicate library.
+
+%description -n vala-libindicate -l pl.UTF-8
+API języka Vala do biblioteki libindicate.
+
+%package gtk
+Summary: Helpers for libindicate that require GTK+ (2.x) dependencies
+Summary(pl.UTF-8): Funkcje pomocnicze libindicate zależne od GTK+ (2.x)
+Group: X11/Libraries
+Requires: %{name} = %{version}-%{release}
+Requires: gtk+2 >= 2:2.12
+
+%description gtk
+Helpers for libindicate that require GTK+ (2.x) dependencies.
+
+%description gtk -l pl.UTF-8
+Funkcje pomocnicze libindicate zależne od GTK+ (2.x).
+
+%package gtk-devel
+Summary: Header files for libindicate-gtk library
+Summary(pl.UTF-8): Pliki nagłówkowe biblioteki libindicate-gtk
+Group: X11/Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+Requires: %{name}-gtk = %{version}-%{release}
+Requires: gtk+2-devel >= 2:2.12
+
+%description gtk-devel
+Header files for libindicate-gtk library.
+
+%description gtk-devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki libindicate-gtk.
+
+%package gtk-static
+Summary: Static libindicate-gtk library
+Summary(pl.UTF-8): Statyczna biblioteka libindicate-gtk
+Group: X11/Development/Libraries
+Requires: %{name}-gtk-devel = %{version}-%{release}
+
+%description gtk-static
+Static libindicate-gtk library.
+
+%description gtk-static -l pl.UTF-8
+Statyczna biblioteka libindicate-gtk.
+
+%package -n dotnet-indicate-gtk-sharp
+Summary: indicate-gtk library for .NET
+Summary(pl.UTF-8): Biblioteka indicate-gtk dla .NET
+Group: Libraries
+Requires: %{name}-gtk = %{version}-%{release}
+Requires: dotnet-indicate-sharp = %{version}-%{release}
+Requires: dotnet-gtk-sharp2 >= 2.12.1
+
+%description -n dotnet-indicate-gtk-sharp
+indicate-gtk library for .NET.
+
+%description -n dotnet-indicate-gtk-sharp -l pl.UTF-8
+Biblioteka indicate-gtk dla .NET.
+
+%package -n dotnet-indicate-gtk-sharp-devel
+Summary: Development files for .NET indicate-gtk library
+Summary(pl.UTF-8): Pliki programistyczne biblioteki .NET indicate-gtk
+Group: Development/Libraries
+Requires: dotnet-gtk-sharp2-devel >= 2.12.1
+Requires: dotnet-indicate-sharp-devel = %{version}-%{release}
+Requires: dotnet-indicate-gtk-sharp = %{version}-%{release}
+
+%description -n dotnet-indicate-gtk-sharp-devel
+Development files for .NET indicate-gtk library.
+
+%description -n dotnet-indicate-gtk-sharp-devel -l pl.UTF-8
+Pliki programistyczne biblioteki .NET indicate-gtk.
+
+%package -n vala-libindicate-gtk
+Summary: Vala API for libindicate-gtk library
+Summary(pl.UTF-8): API języka Vala do biblioteki libindicate-gtk
+Group: X11/Development/Libraries
+Requires: %{name}-gtk-devel = %{version}-%{release}
+Requires: vala-libindicate = %{version}-%{release}
+
+%description -n vala-libindicate-gtk
+Vala API for libindicate-gtk library.
+
+%description -n vala-libindicate-gtk -l pl.UTF-8
+API języka Vala do biblioteki libindicate-gtk.
+
+%package gtk3
+Summary: Helpers for libindicate that require GTK+ (3.x) dependencies
+Summary(pl.UTF-8): Funkcje pomocnicze libindicate zależne od GTK+ (3.x)
+Group: X11/Libraries
+Requires: %{name} = %{version}-%{release}
+Requires: gtk+3 >= 3.0.0
+
+%description gtk3
+Helpers for libindicate that require GTK+ (3.x) dependencies.
+
+%description gtk3 -l pl.UTF-8
+Funkcje pomocnicze libindicate zależne od GTK+ (3.x).
+
+%package gtk3-devel
+Summary: Header files for libindicate-gtk3 library
+Summary(pl.UTF-8): Pliki nagłówkowe biblioteki libindicate-gtk3
+Group: X11/Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+Requires: %{name}-gtk3 = %{version}-%{release}
+Requires: gtk+3-devel >= 3.0.0
+
+%description gtk3-devel
+Header files for libindicate-gtk3 library.
+
+%description gtk3-devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki libindicate-gtk3.
+
+%package gtk3-static
+Summary: Static libindicate-gtk3 library
+Summary(pl.UTF-8): Statyczna biblioteka libindicate-gtk3
+Group: X11/Development/Libraries
+Requires: %{name}-gtk3-devel = %{version}-%{release}
+
+%description gtk3-static
+Static libindicate-gtk3 library.
+
+%description gtk3-static -l pl.UTF-8
+Statyczna biblioteka libindicate-gtk3.
+
+%package -n vala-libindicate-gtk3
+Summary: Vala API for libindicate-gtk3 library
+Summary(pl.UTF-8): API języka Vala do biblioteki libindicate-gtk3
+Group: X11/Development/Libraries
+Requires: %{name}-gtk3-devel = %{version}-%{release}
+Requires: vala-libindicate = %{version}-%{release}
+
+%description -n vala-libindicate-gtk3
+Vala API for libindicate-gtk3 library.
+
+%description -n vala-libindicate-gtk3 -l pl.UTF-8
+API języka Vala do biblioteki libindicate-gtk3.
%prep
%setup -q
@@ -83,63 +309,180 @@ Dokumentacja API biblioteki indicate.
%patch1 -p1
%build
-%if %{with doc}
+%if %{with apidocs}
%{__gtkdocize}
%endif
%{__libtoolize}
%{__aclocal}
%{__autoconf}
%{__automake}
-%configure \
+
+%if %{with gtk2}
+install -d build-gtk2
+cd build-gtk2
+../%configure \
+ %{!?with_python:--disable-python} \
--disable-silent-rules \
- %{__enable_disable doc gtk-doc} \
+ %{__enable_disable apidocs gtk-doc} \
+ --with-gtk=2 \
--with-html-dir=%{_gtkdocdir}
# without -j1 introspection tries to link with system -lindicate
-%{__make} -j1 \
- PKG_CONFIG_PATH=$(pwd)/libindicate:$(pwd)/libindicate-gtk
+%{__make} -j1
+cd ..
+%endif
+
+%if %{with gtk3}
+install -d build-gtk3
+cd build-gtk3
+../%configure \
+ %{!?with_python:--disable-python} \
+ --disable-silent-rules \
+ %{__enable_disable apidocs gtk-doc} \
+ --with-gtk=3 \
+ --with-html-dir=%{_gtkdocdir}
+
+# without -j1 introspection tries to link with system -lindicate
+%{__make} -j1
+cd ..
+%endif
%install
rm -rf $RPM_BUILD_ROOT
-%{__make} install \
+%if %{with gtk2}
+%{__make} -C build-gtk2 install \
+ DESTDIR=$RPM_BUILD_ROOT
+%endif
+
+%if %{with gtk3}
+%{__make} -C build-gtk3 install \
DESTDIR=$RPM_BUILD_ROOT
+%endif
%{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
+%if %{with python}
+%{__rm} $RPM_BUILD_ROOT%{py_sitedir}/indicate/_indicate.{la,a}
+%py_postclean
+%endif
+
%clean
rm -rf $RPM_BUILD_ROOT
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
+%post gtk -p /sbin/ldconfig
+%postun gtk -p /sbin/ldconfig
+
+%post gtk3 -p /sbin/ldconfig
+%postun gtk3 -p /sbin/ldconfig
+
%files
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libindicate.so.5.*.*
+%doc AUTHORS ChangeLog NEWS
+%attr(755,root,root) %{_libdir}/libindicate.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libindicate.so.5
-%attr(755,root,root) %{_libdir}/libindicate-gtk3.so.3.*.*
-%attr(755,root,root) %ghost %{_libdir}/libindicate-gtk3.so.3
-%{_libdir}/girepository-1.0/Indicate-*.typelib
-%{_libdir}/girepository-1.0/IndicateGtk3-*.typelib
+%{_libdir}/girepository-1.0/Indicate-0.7.typelib
%files devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libindicate.so
-%attr(755,root,root) %{_libdir}/libindicate-gtk3.so
-%{_pkgconfigdir}/indicate-0.7.pc
-%{_pkgconfigdir}/indicate-gtk3-0.7.pc
%{_includedir}/libindicate-0.7
-%{_includedir}/libindicate-gtk3-0.7
-%{_datadir}/gir-1.0/Indicate-*.gir
-%{_datadir}/gir-1.0/IndicateGtk3-*.gir
+%{_datadir}/gir-1.0/Indicate-0.7.gir
+%{_pkgconfigdir}/indicate-0.7.pc
%files static
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libindicate.a
-%attr(755,root,root) %{_libdir}/libindicate-gtk3.a
-%if %{with doc}
+%if %{with apidocs}
%files apidocs
%defattr(644,root,root,755)
%{_gtkdocdir}/libindicate
%endif
+
+%if %{with dotnet}
+%files -n dotnet-indicate-sharp
+%defattr(644,root,root,755)
+%{_prefix}/lib/mono/gac/indicate-sharp
+
+%files -n dotnet-indicate-sharp-devel
+%defattr(644,root,root,755)
+%{_prefix}/lib/mono/indicate
+%{_libdir}/indicate-sharp-0.1
+%{_pkgconfigdir}/indicate-sharp-0.1.pc
+%endif
+
+%if %{with python}
+%files -n python-indicate
+%defattr(644,root,root,755)
+%dir %{py_sitedir}/indicate
+%attr(755,root,root) %{py_sitedir}/indicate/_indicate.so
+%{py_sitedir}/indicate/__init__.py[co]
+
+%files -n python-indicate-devel
+%defattr(644,root,root,755)
+%{_datadir}/pygtk/2.0/defs/indicate.defs
+%endif
+
+%files -n vala-libindicate
+%defattr(644,root,root,755)
+%{_datadir}/vala/vapi/Indicate-0.7.vapi
+
+%if %{with gtk2}
+%files gtk
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libindicate-gtk.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libindicate-gtk.so.3
+%{_libdir}/girepository-1.0/IndicateGtk-0.7.typelib
+
+%files gtk-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libindicate-gtk.so
+%{_includedir}/libindicate-gtk-0.7
+%{_datadir}/gir-1.0/IndicateGtk-0.7.gir
+%{_pkgconfigdir}/indicate-gtk-0.7.pc
+
+%files gtk-static
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libindicate-gtk.a
+
+%files -n dotnet-indicate-gtk-sharp
+%defattr(644,root,root,755)
+%{_prefix}/lib/mono/gac/indicate-gtk-sharp
+
+%files -n dotnet-indicate-gtk-sharp-devel
+%defattr(644,root,root,755)
+%{_prefix}/lib/mono/indicate-gtk
+%{_libdir}/indicate-gtk-sharp-0.1
+%{_pkgconfigdir}/indicate-gtk-sharp-0.1.pc
+
+%files -n vala-libindicate-gtk
+%defattr(644,root,root,755)
+%{_datadir}/vala/vapi/IndicateGtk-0.7.vapi
+%endif
+
+%if %{with gtk3}
+%files gtk3
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libindicate-gtk3.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libindicate-gtk3.so.3
+%{_libdir}/girepository-1.0/IndicateGtk3-0.7.typelib
+
+%files gtk3-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libindicate-gtk3.so
+%{_includedir}/libindicate-gtk3-0.7
+%{_datadir}/gir-1.0/IndicateGtk3-0.7.gir
+%{_pkgconfigdir}/indicate-gtk3-0.7.pc
+
+%files gtk3-static
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libindicate-gtk3.a
+
+%files -n vala-libindicate-gtk3
+%defattr(644,root,root,755)
+%{_datadir}/vala/vapi/IndicateGtk3-0.7.vapi
+%endif
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/libindicate.git/commitdiff/44a84c273a2ca017af694bbfaeec584058041a5c
More information about the pld-cvs-commit
mailing list