Commit graph

14 commits

Author SHA1 Message Date
Patrick Ohly
f1bffbc1a4 Merge commit 'syncevolution-1-2-2'
Conflicts:
	Makefile.am
	configure-post.in
	configure.ac
	src/Makefile-gen.am
	src/dbus/qt/Makefile.am
	src/syncevo-dbus-server.cpp
	test/test-dbus.py

Conflicts caused by renaming of files on master. Manually applied the
relevant changes to the renamed files.
2012-01-16 11:47:10 +01:00
Patrick Ohly
a42cc54cd0 --enable-warnings: allow set-but-not-used test
All code which failed that test has been fixed resp. removed,
so now the test can and should be enabled in gcc 4.6, because
it did indeed find a real problem in the GIO GDBus patch.
2011-11-30 08:45:45 +00:00
Patrick Ohly
8fc4a378ba GIO GDBus: fixed link error
Previously, DBUS_LIBS contained the dbus-1 libs required to link
executables. When enabling GIO GDBus, GIO_DBUS_LIBS was set instead,
but not used by most of the link rules (except for the new
example). This caused link failures when using dynamic linking on
recent Linux distros where all libraries used by an object file have
to be listed explicitly - indirectly through some other shared object
is not enough anymore.

To solve this with minimal changes, DBUS_LIBS and DBUS_CFLAGS are
reinterpreted as "the libs resp. flags needed for using D-Bus" and now
get set for both dbus-1 and gio.
2011-11-30 08:02:55 +00:00
Chris Kühl
551b50647c build: Make --disable-notify actually disable use of libnotify
When passing --disable-notify to configure and building, the binary
still built with libnotify.
2011-11-29 16:38:38 +00:00
Chris Kühl
dd3cc6afa9 dbus: Create dbus wrapper using the GIO GDBus dbus implementation
Background: Prior to this patch a C++ wrapper around Bluez gdbus, a
convienience wrapper around the low-level libdbus, was used by
syncevo-dbus-server. This patch introduces a second C++ wrapper around
the GIO GDBus implementation. The reason for introducing this second
wrapper is to move away from using the in-tree copy of Bluez gdbus and
towards a more well-maintained dbus implementation. Also, libdbus was
not designed to be thread-safe whereas GIO GDBus was.

The GIO GDBus wrapper retains the same public api as the first
one. This means the consumers of this wrapper (syncevo-dbus-server,
for example) have remained almost completely untouched. The only
exceptions are in the few case where libdbus objects where used
directly by the consuming class.

The choice of which wrapper is determined at configure time. The
option can be explicitly set using the --with-gio-gdbus and
--without-gio-gdbus flags or, if no flag is given, an adequate version
of GIO is search for. If found, the GIO GDBus wrapper is chosen.
2011-11-29 16:38:38 +00:00
Chris Kühl
103dfe4f73 build: Enable configure switch to build with GIO GDBus
syncEvolution has used an in-tree copy of Bluez's gdbus dbus
implentation.

With this patch there is now a configure switch which enables the use
of the GLib's GDBus dbus implmentation if the --with-gio-gdbus
configure flag is use or, if no flag is used, an adequate glib version
(2.26) is found.

This commit does *not* actually implement the use of GIO's GDBus. The
implmentation is coming soon. Thus only --without-gio-gdbus will
currently result in a working build.
2011-11-29 16:38:38 +00:00
Patrick Ohly
a88ba0a091 autotools: use pcre for regular expressions
Added the necessary autotools rules to use pcre in the src binaries
and libsyncevolution. It's unconditionally required now, which makes
it possible to add code depending on it without having to worry about
the case without pcre.

The alternative to pcre with its C++ binding would have been
boost::Xpressive. pcre was chosen because it has UTF-8 support and is
more common.

boost::regex introduces an undesirable library dependency. The C POSIX
regex code has no C++ binding and does not support easy replacement.

README was updated accordingly.
2011-11-28 10:18:19 +01:00
Patrick Ohly
4fc6c3e2c4 Merge remote-tracking branch 'origin/syncevolution-1-2-branch'
Conflicts:
	configure.ac
	src/syncevo-dbus-server.cpp
	src/syncevo/Cmdline.cpp
	test/ClientTest.cpp
	test/ClientTest.h
	test/generate-html.xsl
	test/runtests.py

Conflicts caused by backporting + merging back slightly modified
backports.
2011-11-28 10:16:57 +01:00
Patrick Ohly
6cd467bc55 autotools: depend on libsynthesis 3.4.0.16.5
Needed for BMC 22881.
2011-10-17 13:43:26 +02:00
Patrick Ohly
58b0f10871 autotools: sharing libical between backends
Various backends (Evolution, ActiveSync, WebDAV) depend on
libical. This wasn't done correctly, with the result that
--enable-activesync without --enable-evolution and --enable-webdav
failed to compile because ENABLE_ICAL was unset by the WebDAV
configure.

Now backends can request libical support by setting need_ical="yes",
then later LIBICAL_LIBS/CFLAGS, ENABLE_ICAL define and condition
variable will be set accordingly. Similar to need_glib="yes".
2011-10-17 13:17:42 +02:00
Patrick Ohly
a7f7c8eacf Merge remote branch 'origin/syncevolution-1-2-branch'
Conflicts:
	configure.ac
	test/ClientTest.cpp
	test/testcases/eds_event.ics.funambol.tem.patch

Conflicts because of version number and updated test cases resp. local
delete optimization.

ActiveSync backend had to be adapted to modified InsertItemResult: now
it requests a merge when it detects duplicates, like the CalDAV backend
already did on the 1.2 branch.
2011-10-17 13:16:33 +02:00
Patrick Ohly
a47cbc56cf autotools: updated warning flags
Suppressing known warnings must also be done at the "min" level. For a
recent gcc, -Wno-unused-but-set-variable is needed.
2011-09-13 07:13:23 +00:00
Patrick Ohly
f7a148b54a autotools: allow --enable-warnings=fatal
The previous set of "max" options included some which do not work with
SyncEvolution source code. Reduced to the set which is expected to work.
Also, allow sync-ui to use deprecated methods.
2011-08-31 12:09:17 +02:00
Krzesimir Nowak
a7ad98fabc Port build system to non-recursive Automake.
All but toplevel Makefile.am are replaced with their non-recursive
counterparts. The generation of configure.in was removed (and thus
configure-{pre,post}.in are also removed) in favor of configure.ac
and m4 macros adding backend specific configure parts.

Version number is generated like in old build system.

There are still many things to improve, but for now there are no
immediate regressions. AUTOTOOLS-TODO contains a list of possible
improvements and fixes. AUTOTOOLS-TESTING contains what was tested
with current build system (configure flags, make options).
2011-08-30 16:38:34 +02:00
Renamed from configure-pre.in (Browse further)