After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 728520 - folks cannot be build with tracker 1.0
folks cannot be build with tracker 1.0
Status: RESOLVED FIXED
Product: folks
Classification: Platform
Component: Tracker backend
0.9.x
Other Mac OS
: Normal normal
: 0.10.x
Assigned To: folks-maint
folks-maint
Depends on:
Blocks:
 
 
Reported: 2014-04-18 17:52 UTC by Maciej (Matthew) Piechotka
Modified: 2014-09-12 16:18 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Allow building with tracker 1.0 (1.95 KB, patch)
2014-04-18 17:52 UTC, Maciej (Matthew) Piechotka
needs-work Details | Review
build: Allow building with Tracker 0.16, 0.18 and 1.0 (2.31 KB, patch)
2014-09-12 16:16 UTC, Philip Withnall
committed Details | Review

Description Maciej (Matthew) Piechotka 2014-04-18 17:52:23 UTC
Created attachment 274700 [details] [review]
Allow building with tracker 1.0

Attached patch to build against newer trackers.
Comment 1 Travis Reitter 2014-04-18 19:58:41 UTC
Review of attachment 274700 [details] [review]:

The code looks good but for some reason, it always ends up with 1.0 for me (even if I only have Tracker 0.16 installed). I have no idea where it's picking them up, but the PKG_CHECK_MODULES succeeds for 0.16, 0.18, and 1.0. I don't think there's even been tracker-sparql-0.18.pc in the wild.

However, if I add bogus numbers to the list (eg, [fake] or [0.11]), the PKG_CHECK_MODULES correctly claims they were not found.

So, not sure if you know what's going wrong, but we need to work out what's going on here.
Comment 2 Philip Withnall 2014-09-12 16:16:30 UTC
Created attachment 286061 [details] [review]
build: Allow building with Tracker 0.16, 0.18 and 1.0

Allow configuring against one of several versions of Tracker. This uses
the chained PKG_CHECK_MODULES technique from
https://www.flameeyes.eu/autotools-mythbuster/pkgconfig/pkg_check_modules.html#idm103041829189696

Based on a patch by Maciej Piechotka <uzytkownik2@gmail.com>.
Comment 3 Philip Withnall 2014-09-12 16:18:01 UTC
m4_foreach() expands in-place, meaning there were essentially 3 sequential expansions of PKG_CHECK_MODULES(). So the final one would always end up setting TRACKER_SPARQL_[LIBS|CFLAGS], which would fail if Tracker 1.0 was not installed.

The correct way to do this is with chained invocations.

Attachment 286061 [details] pushed as 951b2aa - build: Allow building with Tracker 0.16, 0.18 and 1.0