summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Ohly <patrick.ohly@gmx.de>2007-03-25 20:19:42 +0000
committerPatrick Ohly <patrick.ohly@gmx.de>2007-03-25 20:19:42 +0000
commit0a440c66ad48db0cfbc20832092e5cf1837618ad (patch)
tree7bba51fe9b8f756c24476f7d81cb615da737e180
parent07180da616124531ad623b46cf07f20b0204006c (diff)
- fixed building synccompare for Maemo
- added/fixed rules to build for Maemo - add new Algorithm::Diff files to source distribution git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@336 15ad00c4-1369-45f4-8270-35d70d36bdcd
-rw-r--r--HACKING21
-rw-r--r--configure.in10
-rwxr-xr-xdebian/rules19
-rw-r--r--src/Makefile.am9
4 files changed, 49 insertions, 10 deletions
diff --git a/HACKING b/HACKING
index e841f33f..f378f30a 100644
--- a/HACKING
+++ b/HACKING
@@ -111,4 +111,23 @@ Building a Release
- increase version number in configure.in/AM_INIT_AUTOMAKE
- ensure ChangeLog and NEW are up-to-date
- make distcheck
-- compile binary packages
+- compile binary .tar.gz packages for different Evolution versions;
+ done automatically by runtests.py on estamos.de (= Debian 3.0), using different Garnome
+ installations, and with special configure options to ensure maximum
+ portability (LDFLAGS=-W,--as-needed --enable-static-cxx)
+- compile .deb for Maemo:
+ build patched libdbus (apt-get source dbus; apply dbus-timeout.patch; fakeroot dpkg-buildpackage);
+ unpack source archive in Scratchbox (for maximum compatibility: use Mistral 2.0
+ rootstrap; for support of all backends: ensure that the EDS-DBus calendar dev packages
+ are installed),
+ DEB_BUILD_OPTIONS=maemo=<path of directory with patched libdbus-1.a> fakeroot dpkg-buildpackage
+
+Maemo EDS-DBus calendar dev packages /etc/apt/source.list:
+ deb http://maemo.o-hand.com/packages mistral/
+ deb-src http://maemo.o-hand.com/packages mistral/
+Installation _without_ updating more than strictly necessary (just to be sure
+that address book syncing uses the default libraries):
+ apt-get update
+ apt-cache showpkg libecal-dev libedata-cal-dev
+ ver=1.4.1-0zoh4; for i in libecal-dev libecal libedata-cal libedata-cal-dev; do wget http://maemo.o-hand.com/packages/mistral/${i}_${ver}_armel.deb; done
+ dpkg --force-depends -i *.deb
diff --git a/configure.in b/configure.in
index a22db1ec..f78e07e1 100644
--- a/configure.in
+++ b/configure.in
@@ -50,9 +50,17 @@ AC_ARG_ENABLE(maemo,
AS_HELP_STRING([--enable-maemo],
[enables some hacks which work around problems with the Maemo 2.0 until at least 3.0 EDS-Dbus]),
[AC_DEFINE(ENABLE_MAEMO, 1, [enable Maemo hacks])
- MODIFY_SYNCCOMPARE='-e "s/use encoding/#use encoding/;" -e s/:utf8//'])
+ MODIFY_SYNCCOMPARE='-e "s/use encoding/#use encoding/;" -e "s/:utf8//;"'])
AC_SUBST(MODIFY_SYNCCOMPARE)
+# Another Maemo hack:
+# - link main binaries against precompiled, patched libdbus-1.a
+AC_ARG_WITH(patched-libdbus,
+ AS_HELP_STRING([--with-patched-libdbus=<absolute path of directory with patched libdbus-1.a/so>],
+ [link main executables against special libdbus-1.a, for example one which supports DBUS_DEFAULT_TIMEOUT (required for Maemo)]),
+ [LIBDBUS="-L$withval"])
+AC_SUBST(LIBDBUS)
+
AC_CHECK_HEADERS(signal.h)
# cppunit needed?
diff --git a/debian/rules b/debian/rules
index cde4a036..94862110 100755
--- a/debian/rules
+++ b/debian/rules
@@ -10,6 +10,10 @@
# Modified to make a template file for a multi-binary package with separated
# build-arch and build-indep targets by Bill Allombert 2001
+# options that can be added to DEB_BUILD_OPTIONS:
+# - noopt: compile with -O0
+# - maemo[=<absolute path to directory which contains patched libdbus-1.a/so>]: enable maemo hacks
+
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
@@ -25,9 +29,15 @@ DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
CFLAGS = -Wall -g
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
- CFLAGS += -O0
-else
- CFLAGS += -O2
+ CONFIGURE_FLAGS += CXXFLAGS="-g -O0"
+endif
+
+ifneq (,$(findstring maemo,$(DEB_BUILD_OPTIONS)))
+ CONFIGURE_FLAGS += --enable-maemo --enable-shared
+endif
+
+ifneq (,$(findstring maemo=,$(DEB_BUILD_OPTIONS)))
+ CONFIGURE_FLAGS += --with-patched-libdbus=$(subst maemo=,,$(filter maemo=%,$(DEB_BUILD_OPTIONS)))
endif
config.status: configure
@@ -35,8 +45,7 @@ config.status: configure
# --enable-shared added to build SyncEvolution backends as modules,
# which is more flexible but not the default because it requires a
# specific installation layout.
- ./configure --enable-shared --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info CFLAGS="$(CFLAGS)"
-
+ ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) $(CONFIGURE_FLAGS) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info
#Architecture
build: build-arch build-indep
diff --git a/src/Makefile.am b/src/Makefile.am
index c6e47c92..0304eedd 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -8,7 +8,7 @@ bin_SCRIPTS = synccompare
EXTRA_LTLIBRARIES = syncecal.la syncebook.la
MOSTLYCLEANFILES = syncecal.la syncebook.la
pkglib_LTLIBRARIES = @SYNCEVOLUTION_LTLIBRARIES@
-EXTRA_DIST = normalize_vcard.pl testVCard.vcf testCalendar.ics testTask.ics vocl/README
+EXTRA_DIST = normalize_vcard.pl testVCard.vcf testCalendar.ics testTask.ics vocl/README Algorithm/Artistic Algorithm/copyright Algorithm/Diff.pm Algorithm/README
EXTRA_PROGRAMS = client-test
check_PROGRAMS = @CPPUNIT_TESTS@
TESTS = @CPPUNIT_TESTS@
@@ -64,7 +64,10 @@ syncevolution_SOURCES = \
# SYNCEVOLUTION_LDADD@ will be replaced with libsyncebook.la/libsyncecal.la
# if linking statically against them, empty otherwise;
# either way this does not lead to a dependency on those libs - done explicitly
-syncevolution_LDADD = @SYNCEVOLUTION_LDADD@ $(CORE_LDADD)
+#
+# LIBDBUS might be replaced with path to patched libdbus-1.a (required for
+# DBUS_DEFAULT_TIMEOUT hack on Maemo).
+syncevolution_LDADD = @SYNCEVOLUTION_LDADD@ @LIBDBUS@ $(CORE_LDADD)
syncevolution_DEPENDENCIES = @SYNCEVOLUTION_MODULES@
syncecal_la_SOURCES = $(SYNCECAL_SOURCES)
@@ -89,7 +92,7 @@ TestEvolution_SOURCES = \
TestEvolution_CXXFLAGS = `cppunit-config --cflags`
TestEvolution_LDFLAGS = `cppunit-config --libs`
-TestEvolution_LDADD = @SYNCEVOLUTION_MODULES@ $(CORE_LDADD)
+TestEvolution_LDADD = @SYNCEVOLUTION_MODULES@ @LIBDBUS@ $(CORE_LDADD)
TestEvolution_DEPENDENCIES = @SYNCEVOLUTION_MODULES@
EXTRA_PROGRAMS += vcardconverter