- 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
This commit is contained in:
Patrick Ohly 2007-03-25 20:19:42 +00:00
parent 07180da616
commit 0a440c66ad
4 changed files with 49 additions and 10 deletions

21
HACKING
View file

@ -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

View file

@ -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?

19
debian/rules vendored
View file

@ -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

View file

@ -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