You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/gnome-extra/evolution-data-server/evolution-data-server-2.32....

169 lines
4.8 KiB

# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/gnome-extra/evolution-data-server/evolution-data-server-2.32.3-r2.ebuild,v 1.13 2012/11/25 19:33:56 ulm Exp $
EAPI="4"
GCONF_DEBUG="no"
GNOME2_LA_PUNT="yes"
GNOME_TARBALL_SUFFIX="bz2"
WANT_AUTOMAKE="1.11"
inherit autotools db-use eutils flag-o-matic gnome2 versionator virtualx
DESCRIPTION="Evolution groupware backend"
HOMEPAGE="http://projects.gnome.org/evolution/"
SRC_URI="${SRC_URI} http://dev.gentoo.org/~pacho/gnome/${P}-patches.tar.xz"
# Note: explicitly "|| ( LGPL-2 LGPL-3 )", not "LGPL-2+".
LICENSE="|| ( LGPL-2 LGPL-3 ) BSD Sleepycat"
SLOT="0"
KEYWORDS="alpha amd64 arm ia64 ppc ppc64 sparc x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-solaris"
IUSE="ipv6 kerberos gnome-keyring ldap +weather"
RDEPEND=">=dev-libs/glib-2.25.12:2
>=x11-libs/gtk+-2.24:2
>=gnome-base/gconf-2
>=dev-db/sqlite-3.5
>=dev-libs/libgdata-0.6.3
>=dev-libs/libical-0.43
>=net-libs/libsoup-2.4:2.4
>=dev-libs/libxml2-2
>=sys-libs/db-4
sys-libs/zlib
virtual/libiconv
>=dev-libs/nspr-4.4
>=dev-libs/nss-3.9
gnome-keyring? ( >=gnome-base/gnome-keyring-2.20.1 )
kerberos? ( virtual/krb5 )
ldap? ( >=net-nds/openldap-2 )
weather? (
>=dev-libs/libgweather-2.25.4:2
<dev-libs/libgweather-2.91:2 )
"
DEPEND="${RDEPEND}
dev-util/gperf
virtual/pkgconfig
>=dev-util/intltool-0.35.5
sys-devel/bison
>=gnome-base/gnome-common-2
>=dev-util/gtk-doc-am-1.9"
# eautoreconf needs:
# >=gnome-base/gnome-common-2
pkg_setup() {
DOCS="ChangeLog MAINTAINERS NEWS TODO"
# ssl stuff always enabled as recommended in upstream bug #642984
G2CONF="${G2CONF}
$(use_enable gnome-keyring)
$(use_enable ipv6)
$(use_with kerberos krb5 /usr)
$(use_with ldap openldap)
$(use_with weather)
--disable-gtk3
--enable-largefile
--with-libdb=/usr
--enable-ssl
--enable-smime"
}
src_prepare() {
# Adjust to gentoo's /etc/service
epatch "${FILESDIR}/${PN}-2.31-gentoo_etc_services.patch"
# GNOME bug 611353 (skips failing test atm)
epatch "${FILESDIR}/e-d-s-camel-skip-failing-test.patch"
# GNOME bug 621763 (skip failing test-ebook-stress-factory--fifo)
sed -e 's/\(SUBDIRS =.*\)ebook/\1/' \
-i addressbook/tests/Makefile.{am,in} \
|| die "failing test sed 1 failed"
# Apply multiple backports and fixed from master and 2.32 branches
#
# 009 and 010 patches are broken, bug #372651
rm "${WORKDIR}/${P}-patches"/009*.patch || die
rm "${WORKDIR}/${P}-patches"/010*.patch || die
epatch "${WORKDIR}/${P}-patches"/*.patch
# Upstream bug #655167 - Messages moved from IMAP Inbox reappear
epatch "${FILESDIR}/${P}-imap-move.patch"
# Fix building with glib-2.32, bug #412109
epatch "${FILESDIR}/${P}-gmodule-explicit.patch"
epatch "${FILESDIR}/${P}-g_thread_init.patch"
# /usr/include/db.h is always db-1 on FreeBSD
# so include the right dir in CPPFLAGS
append-cppflags "-I$(db_includedir)"
# FIXME: Fix compilation flags crazyness
sed 's/^\(AM_CPPFLAGS="\)$WARNING_FLAGS/\1/' \
-i configure.ac configure || die "sed 3 failed"
sed -e "/AM_INIT_AUTOMAKE/s/-Werror//" -i configure.ac || die
eautoreconf
gnome2_src_prepare
}
src_install() {
# Prevent this evolution-data-server from linking to libs in the installed
# evolution-data-server libraries by adding -L arguments for build dirs to
# every .la file's relink_command field, forcing libtool to look there
# first during relinking. This will mangle the .la files installed by
# make install, but we don't care because we will be punting them anyway.
perl "${FILESDIR}/fix_relink_command.pl" . \
|| die "fix_relink_command.pl failed"
gnome2_src_install
if use ldap; then
MY_MAJORV=$(get_version_component_range 1-2)
insinto /etc/openldap/schema
doins "${FILESDIR}"/calentry.schema || die "doins failed"
dosym /usr/share/${PN}-${MY_MAJORV}/evolutionperson.schema /etc/openldap/schema/evolutionperson.schema
fi
}
src_test() {
unset DBUS_SESSION_BUS_ADDRESS
unset ORBIT_SOCKETDIR
unset SESSION_MANAGER
export XDG_DATA_HOME="${T}"
unset DISPLAY
Xemake check || die "Tests failed."
}
pkg_preinst() {
gnome2_pkg_preinst
for lib in libcamel-provider-1.2.so.14 libedata-cal-1.2.so.7 \
libgdata-1.2.so libgdata-google-1.2.so libcamel-1.2.so.14 \
libedata-book-1.2.so.2 libebook-1.2.so.9 \
libedataserver-1.2.so.13 libecal-1.2.so.7 libedataserverui-1.2.so.8
do
preserve_old_lib /usr/$(get_libdir)/$lib
done
}
pkg_postinst() {
gnome2_pkg_postinst
for lib in libcamel-provider-1.2.so.14 libedata-cal-1.2.so.7 \
libgdata-1.2.so libgdata-google-1.2.so libcamel-1.2.so.14 \
libedata-book-1.2.so.2 libebook-1.2.so.9 \
libedataserver-1.2.so.13 libecal-1.2.so.7 libedataserverui-1.2.so.8
do
preserve_old_lib_notify /usr/$(get_libdir)/$lib
done
if use ldap; then
elog ""
elog "LDAP schemas needed by evolution are installed in /etc/openldap/schema"
fi
}