summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOve Kåven <ovek@arcticnet.no>2012-08-05 04:07:37 +0200
committerOve Kåven <ovek@arcticnet.no>2012-08-07 01:32:09 +0200
commitea16d760117c3d9f60a9c34968e0df94b6ea1acd (patch)
tree20ca0ca2c9b977bf1ddef7c7250c13d2244f3427
parent8aff8fab34cd5aabf0b877933a5779cc2afffaa7 (diff)
Various packaging and build system patches for the Maemo 5 port.
-rwxr-xr-xautogen-maemo.sh24
-rw-r--r--configure.ac11
-rw-r--r--debian/control7
-rwxr-xr-xdebian/rules8
-rw-r--r--src/backends/evolution/configure-sub.in5
-rw-r--r--src/syncevo/eds_abi_wrapper.h2
6 files changed, 40 insertions, 17 deletions
diff --git a/autogen-maemo.sh b/autogen-maemo.sh
index 430ddb2a..73ca5502 100755
--- a/autogen-maemo.sh
+++ b/autogen-maemo.sh
@@ -3,25 +3,31 @@
set -e
# wipe out temporary autotools files, necessary
-# when switching between distros
-rm -rf aclocal.m4 m4 autom4te.cache config.guess config.sub config.h.in configure depcomp install-sh ltmain.sh missing
+# when switching between distros and SyncEvolution releases
+rm -rf aclocal.m4 m4 autom4te.cache config.guess config.sub config.h.in configure depcomp install-sh ltmain.sh missing configure.in src/Makefile.am
# intltoolize fails to copy its macros unless m4 exits
mkdir m4
-sh ./gen-autotools.sh
+#env GEN_AUTOTOOLS_SET_VERSION=1 sh ./gen-autotools.sh
-libtoolize -c
glib-gettextize --force --copy
intltoolize --force --copy --automake
-aclocal-1.9 -I m4 -I m4-repo
-autoheader
-automake-1.9 -a -c -Wno-portability
-autoconf
+ACLOCAL=aclocal-1.10 \
+AUTOMAKE=automake-1.10 \
+autoreconf2.50 -vifW all -W no-portability -W no-obsolete
+
+#libtoolize -c
+#glib-gettextize --force --copy
+#intltoolize --force --copy --automake
+#aclocal-1.10 -I m4 -I m4-repo
+#autoheader
+#automake-1.10 -a -c -Wno-portability
+#autoconf
# This hack is required for the autotools on Debian Etch.
# Without it, configure expects a po/Makefile where
# only po/Makefile.in is available. This patch fixes
# configure so that it uses po/Makefile.in, like more
# recent macros do.
-perl -pi -e 's;test ! -f "po/Makefile";test ! -f "po/Makefile.in";; s;mv "po/Makefile" "po/Makefile.tmp";cp "po/Makefile.in" "po/Makefile.tmp";;' configure
+#perl -pi -e 's;test ! -f "po/Makefile";test ! -f "po/Makefile.in";; s;mv "po/Makefile" "po/Makefile.tmp";cp "po/Makefile.in" "po/Makefile.tmp";;' configure
diff --git a/configure.ac b/configure.ac
index bf6b19ae..704da463 100644
--- a/configure.ac
+++ b/configure.ac
@@ -44,7 +44,7 @@ if test "$enable_release_mode" = "yes"; then
AC_DEFINE(SYNCEVOLUTION_STABLE_RELEASE, 1, [binary is meant for end-users])
fi
-AM_INIT_AUTOMAKE([1.11.1 silent-rules subdir-objects -Wno-portability])
+AM_INIT_AUTOMAKE([subdir-objects -Wno-portability])
AM_PROG_CC_C_O
@@ -55,7 +55,8 @@ dnl Specify git revisions/branches without prefix, i.e., without 'origin'.
dnl We'll sort that out below.
define([SYNTHESISSRC_REVISION], [syncevolution-0.9])
AC_CONFIG_HEADERS(config.h)
-LT_INIT([dlopen])
+AC_LIBTOOL_DLOPEN
+AC_PROG_LIBTOOL
dnl check for programs.
AC_PROG_CXX
@@ -615,7 +616,11 @@ AX_BOOST_BASE(1.34)
# C++ regular expression support is required often enough to make it
# mandatory.
-PKG_CHECK_MODULES(PCRECPP, libpcrecpp)
+PKG_CHECK_MODULES(PCRECPP, libpcrecpp,,
+AC_CHECK_LIB(pcrecpp,main,
+AC_SUBST(PCRECPP_LIBS,-lpcrecpp),
+AC_MSG_ERROR([pcrecpp not found])
+))
# need rst2man for man pages
AC_ARG_WITH(rst2man,
diff --git a/debian/control b/debian/control
index 4903cb69..796cf58d 100644
--- a/debian/control
+++ b/debian/control
@@ -2,9 +2,10 @@ Source: syncevolution
Section: utils
Priority: extra
Maintainer: Ove Kaaven <ovek@debian.org>
-Build-Depends: debhelper (>= 5), autotools-dev, libglib2.0-dev, libpcre3-dev,
- libcurl3-dev, libedataserver-dev, libebook-dev, calendar-backend-dev,
- libsqlite3-dev, libboost1.38-dev, libneon27-dev
+Build-Depends: debhelper (>= 5), autotools-dev, automake (>= 1:1.10),
+ libtool, libglib2.0-dev, libpcre3-dev, libcurl3-dev, libedataserver-dev,
+ libebook-dev, calendar-backend-dev, libsqlite3-dev, libboost1.42-dev,
+ libcppunit-dev, libneon27-dev
Standards-Version: 3.7.2
XSBC-Bugtracker: http://bugs.meego.com/buglist.cgi?product=SyncEvolution
diff --git a/debian/rules b/debian/rules
index 64136057..37e9bf9d 100755
--- a/debian/rules
+++ b/debian/rules
@@ -29,6 +29,12 @@ DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
LDFLAGS = -Wl,--as-needed
export LDFLAGS
+# For some reason, the Scratchbox cross-compiler doesn't
+# seem to honor rpaths. Compensate by adding rpath-link.
+LDFLAGS += \
+ -Wl,-rpath-link=src/build-synthesis/src/.libs \
+ -Wl,-rpath-link=src/gdbus/.libs
+
# some optified -dev packages may forget the symlink
PKG_CONFIG_PATH=/opt/maemo/usr/lib/pkgconfig
export PKG_CONFIG_PATH
@@ -46,7 +52,7 @@ CONFIGURE_FLAGS += --enable-maemo --enable-shared --disable-static \
# CONFIGURE_FLAGS += --enable-maemo --enable-shared
#endif
-configure: gen-autotools.sh configure-pre.in configure-post.in
+configure: configure.ac
./autogen-maemo.sh
libsynthesis/configure: libsynthesis/configure.in
diff --git a/src/backends/evolution/configure-sub.in b/src/backends/evolution/configure-sub.in
index 8ffad9dc..e27b0307 100644
--- a/src/backends/evolution/configure-sub.in
+++ b/src/backends/evolution/configure-sub.in
@@ -68,7 +68,10 @@ if test "$enable_evo" = "yes"; then
# Only the EClient code supports the API in EDS 3.5.x.
PKG_CHECK_MODULES(EDS_VERSION, [libedataserver-1.2 >= 3.5],
[AC_DEFINE(USE_EDS_CLIENT, 1, [use e_book/cal_client_* calls])],
- [true])
+ [CFLAGS_old="$CFLAGS"
+ CFLAGS="$CFLAGS $EPACKAGE_CFLAGS"
+ AC_CHECK_HEADERS(libedataserver/eds-version.h)
+ CFLAGS="$CFLAGS_old"])
else
EPACKAGE_CFLAGS=
EPACKAGE_LIBS=
diff --git a/src/syncevo/eds_abi_wrapper.h b/src/syncevo/eds_abi_wrapper.h
index 2750a57c..186fab29 100644
--- a/src/syncevo/eds_abi_wrapper.h
+++ b/src/syncevo/eds_abi_wrapper.h
@@ -55,7 +55,9 @@
#if defined(USE_EDS_CLIENT)
#include <libedataserver/libedataserver.h>
#else
+#ifdef HAVE_LIBEDATASERVER_EDS_VERSION_H
#include <libedataserver/eds-version.h>
+#endif
#include <libedataserver/e-source.h>
#include <libedataserver/e-source-list.h>
#endif