[packages/folks] - updated to 0.12.1 (now uses meson) - removed outdated tracer2 patch - added meson patch (workaroun

qboosh qboosh at pld-linux.org
Sun May 19 20:25:20 CEST 2019


commit e013a58d39044ed492e35cacca4b94002d342c0c
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Sun May 19 20:26:03 2019 +0200

    - updated to 0.12.1 (now uses meson)
    - removed outdated tracer2 patch
    - added meson patch (workaround for some vala related bug in meson)
    - added libsocialweb patch (fix socialweb backend build and install)
    - added module patch (don't build eds static module)

 folks-libsocialweb.patch |  31 +++++++++++++
 folks-meson.patch        |  29 +++++++++++++
 folks-module.patch       |  11 +++++
 folks-tracer2.patch      |  11 -----
 folks.spec               | 110 +++++++++++++++++++++++------------------------
 5 files changed, 124 insertions(+), 68 deletions(-)
---
diff --git a/folks.spec b/folks.spec
index 9772652..9d97c21 100644
--- a/folks.spec
+++ b/folks.spec
@@ -1,56 +1,61 @@
 #
 # Conditional build:
+%bcond_with	apidocs		# API documentation (currently built as devhelp part, not gtk-doc?)
 %bcond_without	vala		# do not build Vala API
 
 Summary:	GObject contact aggregation library
 Summary(pl.UTF-8):	Biblioteka GObject do agregowania kontaktów
 Name:		folks
-Version:	0.11.4
-Release:	3
+Version:	0.12.1
+Release:	1
 License:	LGPL v2.1+
 Group:		Libraries
-Source0:	http://ftp.gnome.org/pub/GNOME/sources/folks/0.11/%{name}-%{version}.tar.xz
-# Source0-md5:	08a0e9759d577c6ece43e2db4e0d039e
-Patch0:		folks-tracer2.patch
-URL:		https://live.gnome.org/Folks
-BuildRequires:	autoconf >= 2.65
-BuildRequires:	automake >= 1:1.12
+Source0:	http://ftp.gnome.org/pub/GNOME/sources/folks/0.12/%{name}-%{version}.tar.xz
+# Source0-md5:	58bcf65a7b744ecbbb53f44dc8919204
+Patch0:		%{name}-meson.patch
+Patch1:		%{name}-libsocialweb.patch
+Patch2:		%{name}-module.patch
+URL:		https://wiki.gnome.org/action/show/Projects/Folks
 BuildRequires:	dbus-devel
 BuildRequires:	dbus-glib-devel
 BuildRequires:	evolution-data-server-devel >= 3.13.90
 BuildRequires:	gettext-tools
-BuildRequires:	glib2-devel >= 1:2.40.0
+BuildRequires:	glib2-devel >= 1:2.44
 BuildRequires:	gobject-introspection-devel >= 1.30.0
-BuildRequires:	intltool >= 0.50.0
 BuildRequires:	libgee-devel >= 0.8.4
 BuildRequires:	libsocialweb-devel >= 0.25.20
-BuildRequires:	libtool >= 2:2
 BuildRequires:	libxml2-devel >= 2.0
+BuildRequires:	meson >= 0.49
 BuildRequires:	ncurses-devel
+BuildRequires:	ninja >= 1.5
 BuildRequires:	pkgconfig >= 1:0.21
+BuildRequires:	python3 >= 1:3.2
+BuildRequires:	rpmbuild(macros) >= 1.736
 BuildRequires:	readline-devel
 BuildRequires:	tar >= 1:1.22
 BuildRequires:	telepathy-glib-devel >= 0.19.9
-BuildRequires:	tracker-devel >= 1.0.0
+BuildRequires:	tracker-devel >= 2.0
 %if %{with vala}
 BuildRequires:	vala >= 2:0.22.1
 BuildRequires:	vala-evolution-data-server >= 3.13.90
 BuildRequires:	vala-libgee >= 0.8.4
 BuildRequires:	vala-libsocialweb >= 0.25.20
 BuildRequires:	vala-telepathy-glib >= 0.19.9
-BuildRequires:	vala-tracker >= 1.0.0
+BuildRequires:	vala-tracker >= 2.0
 BuildRequires:	vala-zeitgeist >= 0.9.14
-#BuildRequires:	valadoc >= 0.3.1
 %endif
+%{?with_apidocs:BuildRequires:	valadoc >= 0.3.1}
 BuildRequires:	xz
 BuildRequires:	zeitgeist-devel >= 0.9.14
 Requires:	evolution-data-server-libs >= 3.13.90
-Requires:	glib2 >= 1:2.40.0
+Requires:	glib2 >= 1:2.44
 Requires:	libgee >= 0.8.4
 Requires:	telepathy-glib >= 0.19.9
-Requires:	tracker-libs >= 1.0.0
+Requires:	tracker-libs >= 2.0
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
+%define		abiver	44
+
 %description
 libfolks is a library that aggregates people from multiple sources
 (e.g. Telepathy connection managers and eventually evolution data
@@ -67,11 +72,11 @@ Summary(pl.UTF-8):	Pliki programistyczne bibliotek folks
 Group:		Development/Libraries
 Requires:	%{name} = %{version}-%{release}
 Requires:	evolution-data-server-devel >= 3.13.90
-Requires:	glib2-devel >= 1:2.40.0
+Requires:	glib2-devel >= 1:2.44
 Requires:	libgee-devel >= 0.8.4
 Requires:	libsocialweb-devel >= 0.25.20
 Requires:	telepathy-glib-devel >= 0.19.9
-Requires:	tracker-devel >= 1.0.0
+Requires:	tracker-devel >= 2.0
 
 %description devel
 Development files for folks libraries.
@@ -89,7 +94,7 @@ Requires:	vala-evolution-data-server >= 3.13.90
 Requires:	vala-libgee >= 0.8.4
 Requires:	vala-libsocialweb >= 0.25.20
 Requires:	vala-telepathy-glib >= 0.19.9
-Requires:	vala-tracker >= 1.0.0
+Requires:	vala-tracker >= 2.0
 %if "%{_rpmversion}" >= "5"
 BuildArch:	noarch
 %endif
@@ -103,30 +108,22 @@ API folks dla języka Vala.
 %prep
 %setup -q
 %patch0 -p1
+%patch1 -p1
+%patch2 -p1
 
 %build
-%{__intltoolize}
-%{__libtoolize}
-%{__aclocal} -I m4
-%{__autoconf}
-%{__autoheader}
-%{__automake}
-%configure \
-	--disable-fatal-warnings \
-	--disable-silent-rules \
-	--enable-tracker-backend \
-	%{__enable_disable vala vala}
-
-%{__make}
+%meson build \
+	%{?with_apidocs:-Ddocs=true} \
+	-Dlibsocialweb_backend=true \
+	-Dtracker_backend=true \
+	-Dzeitgeist=true
+
+%ninja_build -C build
 
 %install
 rm -rf $RPM_BUILD_ROOT
 
-%{__make} install \
-	DESTDIR=$RPM_BUILD_ROOT
-
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/folks/*/backends/*/*.la \
-	$RPM_BUILD_ROOT%{_libdir}/*.la
+%ninja_install -C build
 
 %find_lang %{name}
 
@@ -138,7 +135,7 @@ rm -rf $RPM_BUILD_ROOT
 
 %files -f %{name}.lang
 %defattr(644,root,root,755)
-%doc AUTHORS ChangeLog NEWS README
+%doc AUTHORS MAINTAINERS NEWS README.md
 %attr(755,root,root) %{_bindir}/folks-import
 %attr(755,root,root) %{_bindir}/folks-inspect
 %attr(755,root,root) %{_libdir}/libfolks.so.*.*.*
@@ -160,25 +157,24 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/girepository-1.0/FolksTelepathy-0.6.typelib
 %{_libdir}/girepository-1.0/FolksTracker-0.6.typelib
 %dir %{_libdir}/folks
-%dir %{_libdir}/folks/43
-%dir %{_libdir}/folks/43/backends
-%dir %{_libdir}/folks/43/backends/bluez
-%attr(755,root,root) %{_libdir}/folks/43/backends/bluez/bluez.so
-%dir %{_libdir}/folks/43/backends/dummy
-%attr(755,root,root) %{_libdir}/folks/43/backends/dummy/dummy.so
-%dir %{_libdir}/folks/43/backends/eds
-%attr(755,root,root) %{_libdir}/folks/43/backends/eds/eds.so
-%dir %{_libdir}/folks/43/backends/key-file
-%attr(755,root,root) %{_libdir}/folks/43/backends/key-file/key-file.so
-%dir %{_libdir}/folks/43/backends/libsocialweb
-%attr(755,root,root) %{_libdir}/folks/43/backends/libsocialweb/libsocialweb.so
-%dir %{_libdir}/folks/43/backends/ofono
-%attr(755,root,root) %{_libdir}/folks/43/backends/ofono/ofono.so
-%dir %{_libdir}/folks/43/backends/telepathy
-%attr(755,root,root) %{_libdir}/folks/43/backends/telepathy/telepathy.so
-%dir %{_libdir}/folks/43/backends/tracker
-%attr(755,root,root) %{_libdir}/folks/43/backends/tracker/tracker.so
-%{_datadir}/GConf/gsettings/folks.convert
+%dir %{_libdir}/folks/%{abiver}
+%dir %{_libdir}/folks/%{abiver}/backends
+%dir %{_libdir}/folks/%{abiver}/backends/bluez
+%attr(755,root,root) %{_libdir}/folks/%{abiver}/backends/bluez/bluez.so
+%dir %{_libdir}/folks/%{abiver}/backends/dummy
+%attr(755,root,root) %{_libdir}/folks/%{abiver}/backends/dummy/dummy.so
+%dir %{_libdir}/folks/%{abiver}/backends/eds
+%attr(755,root,root) %{_libdir}/folks/%{abiver}/backends/eds/eds.so
+%dir %{_libdir}/folks/%{abiver}/backends/key-file
+%attr(755,root,root) %{_libdir}/folks/%{abiver}/backends/key-file/key-file.so
+%dir %{_libdir}/folks/%{abiver}/backends/libsocialweb
+%attr(755,root,root) %{_libdir}/folks/%{abiver}/backends/libsocialweb/libsocialweb.so
+%dir %{_libdir}/folks/%{abiver}/backends/ofono
+%attr(755,root,root) %{_libdir}/folks/%{abiver}/backends/ofono/ofono.so
+%dir %{_libdir}/folks/%{abiver}/backends/telepathy
+%attr(755,root,root) %{_libdir}/folks/%{abiver}/backends/telepathy/telepathy.so
+%dir %{_libdir}/folks/%{abiver}/backends/tracker
+%attr(755,root,root) %{_libdir}/folks/%{abiver}/backends/tracker/tracker.so
 %{_datadir}/glib-2.0/schemas/org.freedesktop.folks.gschema.xml
 
 %files devel
diff --git a/folks-libsocialweb.patch b/folks-libsocialweb.patch
new file mode 100644
index 0000000..e4a3564
--- /dev/null
+++ b/folks-libsocialweb.patch
@@ -0,0 +1,31 @@
+--- folks-0.12.1/backends/libsocialweb/lib/swf-persona-store.vala.orig	2019-04-24 13:20:07.000000000 +0200
++++ folks-0.12.1/backends/libsocialweb/lib/swf-persona-store.vala	2019-05-19 18:47:49.097438001 +0200
+@@ -272,7 +272,7 @@
+   /* This is safe to call multiple times concurrently (assuming libsocialweb
+    * itself is safe). */
+   private async ClientContactView? _contacts_query_open_view (string query,
+-      HashTable<weak string, weak string> parameters)
++      HashTable<string, string> parameters)
+     {
+       /* Take a reference to the PersonaStore while waiting for the async call
+        * to return. See: bgo#665039. */
+@@ -374,7 +374,7 @@
+ 
+           /* Open a contacts query view. */
+           var contact_view = yield this._contacts_query_open_view ("people",
+-              new HashTable<weak string, weak string> (str_hash,
++              new HashTable<string, string> (str_hash,
+                   str_equal));
+ 
+           Internal.profiling_point ("opened view in Swf.PersonaStore " +
+--- folks-0.12.1/backends/libsocialweb/meson.build.orig	2019-04-24 13:20:07.000000000 +0200
++++ folks-0.12.1/backends/libsocialweb/meson.build	2019-05-19 19:50:28.300405984 +0200
+@@ -30,7 +30,7 @@
+   vala_args: libsocialweb_backend_vala_flags,
+   c_args: libsocialweb_backend_c_flags,
+   name_prefix: '',
+-  install_dir: folks_backend_dir / dummy_backend_name,
++  install_dir: folks_backend_dir / libsocialweb_backend_name,
+   install: true,
+ )
+ 
diff --git a/folks-meson.patch b/folks-meson.patch
new file mode 100644
index 0000000..fb42e8f
--- /dev/null
+++ b/folks-meson.patch
@@ -0,0 +1,29 @@
+vala-generated sources doesn't seem to work properly when buiding both shared and static library (as of meson 0.50.1)
+
+Target[<SharedLibrary 5553389@@telepathy-test at sha: libtelepathy-test.so>]: OrderedDict([('../tests/lib/telepathy/test-case.vala', <File: tests/lib/telepathy/test-case.vala (not built)>)]) OrderedDict([('tests/lib/telepathy/contactlist/tp-test-contactlist.vapi', <VapiTarget e042cec@@tp-test-contactlist.vapi at cus: ['/usr/bin/vapigen', '--quiet', '--library=tp-test-contactlist', '--directory=/home/comp/rpm/BUILD/folks-0.12.1/build/tests/lib/telepathy/contactlist', '--pkg=gio-2.0', '--pkg=telepathy-glib', '--metadatadir=/home/comp/rpm/BUILD/folks-0.12.1/tests/lib/telepathy/contactlist', '/home/comp/rpm/BUILD/folks-0.12.1/build/tests/lib/telepathy/contactlist/TpTests-0.6.gir']>)]) (OrderedDict(), OrderedDict())
+
+Target[<StaticLibrary 5553389@@telepathy-test at sta: libtelepathy-test.a>]: OrderedDict() OrderedDict([('tests/lib/telepathy/contactlist/tp-test-contactlist.vapi', <VapiTarget e042cec@@tp-test-contactlist.vapi at cus: ['/usr/bin/vapigen', '--quiet', '--library=tp-test-contactlist', '--directory=/home/comp/rpm/BUILD/folks-0.12.1/build/tests/lib/telepathy/contactlist', '--pkg=gio-2.0', '--pkg=telepathy-glib', '--metadatadir=/home/comp/rpm/BUILD/folks-0.12.1/tests/lib/telepathy/contactlist', '/home/comp/rpm/BUILD/folks-0.12.1/build/tests/lib/telepathy/contactlist/TpTests-0.6.gir']>)]) (OrderedDict(), OrderedDict())
+
+#--- folks-0.12.1/tests/lib/telepathy/meson.build.orig	2019-04-24 13:20:07.000000000 +0200
+#+++ folks-0.12.1/tests/lib/telepathy/meson.build	2019-05-19 12:39:02.300642477 +0200
+#@@ -1,6 +1,6 @@
+#-telepathy_test_lib_sources = [
+#-  'test-case.vala',
+#-]
+#+telepathy_test_lib_sources = files(
+#+  'test-case.vala'
+#+)
+# 
+# telepathy_test_lib_deps = [
+#   common_test_lib_deps,
+--- folks-0.12.1/tests/lib/telepathy/meson.build.orig	2019-04-24 13:20:07.000000000 +0200
++++ folks-0.12.1/tests/lib/telepathy/meson.build	2019-05-19 17:28:29.319890596 +0200
+@@ -9,7 +9,7 @@
+   libkeyfile_test_dep,
+ ]
+ 
+-telepathy_test_lib = library('telepathy-test',
++telepathy_test_lib = static_library('telepathy-test',
+   telepathy_test_lib_sources,
+   dependencies: telepathy_test_lib_deps,
+   vala_args: common_test_lib_flags,
diff --git a/folks-module.patch b/folks-module.patch
new file mode 100644
index 0000000..2f29413
--- /dev/null
+++ b/folks-module.patch
@@ -0,0 +1,11 @@
+--- folks-0.12.1/backends/eds/meson.build.orig	2019-04-24 13:20:07.000000000 +0200
++++ folks-0.12.1/backends/eds/meson.build	2019-05-19 19:58:55.357659020 +0200
+@@ -25,7 +25,7 @@
+   '-DG_LOG_DOMAIN="@0@"'.format(eds_backend_name),
+ ]
+ 
+-eds_backend = library('eds',
++eds_backend = shared_library('eds',
+   eds_backend_sources,
+   dependencies: eds_backend_deps,
+   vala_args: eds_backend_vala_flags,
diff --git a/folks-tracer2.patch b/folks-tracer2.patch
deleted file mode 100644
index 364aef1..0000000
--- a/folks-tracer2.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- folks-0.11.4/backends/tracker/lib/FolksTracker-0.6.gir~	2017-04-19 11:38:36.000000000 +0200
-+++ folks-0.11.4/backends/tracker/lib/FolksTracker-0.6.gir	2017-11-26 15:06:25.856017119 +0100
-@@ -1,7 +1,7 @@
- <?xml version="1.0"?>
- <repository version="1.2" xmlns="http://www.gtk.org/introspection/core/1.0" xmlns:c="http://www.gtk.org/introspection/c/1.0" xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
- <include name="Folks" version="0.6"/>
--<include name="Tracker" version="1.0"/>
-+<include name="Tracker" version="2.0"/>
- <include name="Gee" version="0.8"/>
- <include name="GObject" version="2.0"/>
- <package name="folks-tracker"/>
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/folks.git/commitdiff/e013a58d39044ed492e35cacca4b94002d342c0c



More information about the pld-cvs-commit mailing list