GNOME Bugzilla – Bug 677428
Zeitgeist isn't truly a soft dependency of Folks
Last modified: 2012-06-15 12:31:33 UTC
As a follow-up to bug #672709 (which I thought didn't need another re-opening), we didn't quite make Zeitgeist a soft dependency. The "if HAVE_ZEITGEIST ... endif" construct we use in Tpf.PersonaStore ends up rolling Zeitgeist symbols into the generated C files, which we include in the release tarball by way of autotools' Vala integration (which forces generated C files bundling). So if you build the release tarball with --disable-zeitgeist, building fails on the missing zeitgeist.h header. I tried adding a dummy one to compile against, but of course it needs to contain the symbols referenced in our generated C code. Copying the header from Zeitgeist is just a recipe for disaster. I tried making Vala a hard dependency for our releases, but there's no option short of removing the autotools integration. That may be our only option, actually. We would have to add a lot of valac and cc rules to our Makefile.am files. If anyone can suggest a simpler option, I'd be very happy to hear it. But we can't ship another Folks release until we fix this.
Humm if it's *that* much of a problem, can't we just make Zeitgeist a hard dep? It's just a lib (not the datasource daemon) and I'd rather do that than hacking our build system to death.
(In reply to comment #1) > Humm if it's *that* much of a problem, can't we just make Zeitgeist a hard dep? > It's just a lib (not the datasource daemon) and I'd rather do that than hacking > our build system to death. Agreed.
Created attachment 216226 [details] [review] patch to make libzeitgeist a hard dependency of folks.
Philip, Guillaume, Could one of you take a look at that patch? It builds fine here, just would like a second set of eyes to make sure I didn't do something silly. I'll commit it and finish the 0.7.1 release after I get a review.
(In reply to comment #4) > Philip, Guillaume, > > Could one of you take a look at that patch? It builds fine here, just would > like a second set of eyes to make sure I didn't do something silly. I'll > commit it and finish the 0.7.1 release after I get a review. Looks good to me, but I am not a maintainer and also not the best reference for autofoo stuff :) But for me it looks really good. Thanks
Review of attachment 216226 [details] [review]: Without actually testing, this looks fine to me.
Review of attachment 216226 [details] [review]: ::: backends/telepathy/lib/Makefile.am @@ +149,2 @@ libfolks_telepathy_la_VALAFLAGS += --pkg zeitgeist-1.0 libfolks_telepathy_la_VALAFLAGS += --define=HAVE_ZEITGEIST This line can be removed and the “#if HAVE_ZEITGEIST” lines removed from tpf-persona.vala and tpf-persona-store.vala.
Ok, after I do that it builds fine here. However if I add --enable-docs doc generation fails with: http://pastebin.ca/2160907 It's like vala knows about Zeitgeist, but valadoc doesn't.
nevermind, apparently I needed to add it to docs/Makefile.am also.
Pushed to master, and will be part of the 0.7.1 release.