Skip to content

Commit

Permalink
mail-client/evolution: bump to 3.24.6, fix fresh install sandbox viol…
Browse files Browse the repository at this point in the history
…ation, libical3 compat

Bump, patch to honor DESTDIR and not update caches when set (might cause sandbox
violation for us and be generally wrong), patches for libical:0/3 compatibility.
As one more instance of libical3 problematic direct is_utc usage would have remained
with just cherry-picked compat patch, the libical compat patch contains a different
change as well, which removes that code, as is done in 3.26 (details in patch headers).

Closes: https://bugs.gentoo.org/628460
Package-Manager: Portage-2.3.19, Repoman-2.3.6
  • Loading branch information
leio committed Jan 8, 2018
1 parent 7e60543 commit 08dbc54
Show file tree
Hide file tree
Showing 4 changed files with 480 additions and 0 deletions.
1 change: 1 addition & 0 deletions mail-client/evolution/Manifest
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
DIST evolution-3.22.4.tar.xz 12272488 BLAKE2B 7740d1d6e734fb7212d2b36f0a64dca03360ab059f0ca716522312c490f2b071a8fc6b383c98b429a6cb22ea5afec0e7e6c05dcb63b3908053ee891aa4129cdb SHA512 dd73a11d4d7903be6a99bf0d937f5a217a26f0dffb9dc0cea2ca81142d5783c42f889a8b913d565678e9f55b7f2f2a1d42f06c30e3cb004926c19f44dae3b70f
DIST evolution-3.22.6.tar.xz 12288232 BLAKE2B d9412ee86621fd87bbfdb5799de64a148c766642e62b6781a7a9111819ea9b3cd1aa94d95f71df2e46fdb347aedc8b28488a7ca6f7940f08644b00cdfc9f190d SHA512 c699adae640d05558b583b05eda5c5ad3de99aa1d1bbfa24af6110be41251f715ff4b16ff0efb96c8de7faa8c895d82460b504c2704974d4c9731f1bc3e7739f
DIST evolution-3.24.5.tar.xz 12140736 BLAKE2B e144307693f6ae1824aafd3444b38e435414aa1e7900b3622b5f36098d1c8d073ff565896bea07ad9eca076482d98c3bcea70e7d08d37c5fdcd68226d8bc4588 SHA512 daba1ebd9407219b3abe959b27adb32eb0038a9c1653c360a19cf28f8849004a8cd4a652562d696045311c13d19030f93d3578e09d06fff01534ada28f883f2c
DIST evolution-3.24.6.tar.xz 12153692 BLAKE2B ced20d9e08f6b9aac65be6f5ecd5beb861feec40dddc4411b1bdc6519e249de8db8b3319450808d7a31b80386f9830f351b7edacb3c6fcd28fe5fdfe343329f7 SHA512 da5c9062791996735e52575894763597cc957cb17bc0abe46a966f0e3e6706550ce534ae03b2c444d142547119f3a59aec6ee17e0302a002d8437da166ef7178
161 changes: 161 additions & 0 deletions mail-client/evolution/evolution-3.24.6.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,161 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=6
GNOME2_LA_PUNT="yes"

inherit cmake-utils gnome2 flag-o-matic readme.gentoo-r1

DESCRIPTION="Integrated mail, addressbook and calendaring functionality"
HOMEPAGE="https://wiki.gnome.org/Apps/Evolution"

# Note: explicitly "|| ( LGPL-2 LGPL-3 )", not "LGPL-2+".
LICENSE="|| ( LGPL-2 LGPL-3 ) CC-BY-SA-3.0 FDL-1.3+ OPENLDAP"
SLOT="2.0"

IUSE="archive +bogofilter crypt geolocation highlight ldap spamassassin spell ssl +weather"

KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~x86"

# We need a graphical pinentry frontend to be able to ask for the GPG
# password from inside evolution, bug 160302
PINENTRY_DEPEND="|| ( app-crypt/pinentry[gnome-keyring] app-crypt/pinentry[gtk] app-crypt/pinentry[qt4] app-crypt/pinentry[qt5] )"

# glade-3 support is for maintainers only per configure.ac
# pst is not mature enough and changes API/ABI frequently
# dconf explicitely needed for backup plugin
# gnome-desktop support is optional with --enable-gnome-desktop
COMMON_DEPEND="
>=app-crypt/gcr-3.4:=[gtk]
>=app-text/enchant-1.1.7
>=dev-libs/glib-2.46:2[dbus]
>=dev-libs/libxml2-2.7.3:2
>=gnome-base/gnome-desktop-2.91.3:3=
>=gnome-base/gsettings-desktop-schemas-2.91.92
>=gnome-extra/evolution-data-server-${PV}:=[gtk,weather?]
>=media-libs/libcanberra-0.25[gtk3]
>=net-libs/libsoup-2.42:2.4
>=net-libs/webkit-gtk-2.13.90:4
>=x11-libs/cairo-1.9.15:=[glib]
>=x11-libs/gdk-pixbuf-2.24:2
>=x11-libs/gtk+-3.10:3
>=x11-libs/libnotify-0.7:=
>=x11-misc/shared-mime-info-0.22
>=app-text/iso-codes-0.49
dev-libs/atk
gnome-base/dconf
dev-libs/libical:=
x11-libs/libSM
x11-libs/libICE
archive? ( >=app-arch/gnome-autoar-0.1.1[gtk] )
crypt? (
>=app-crypt/gnupg-1.4
${PINENTRY_DEPEND}
x11-libs/libcryptui )
geolocation? (
>=media-libs/libchamplain-0.12:0.12[gtk]
>=media-libs/clutter-1.0.0:1.0
>=media-libs/clutter-gtk-0.90:1.0
>=sci-geosciences/geocode-glib-3.10.0
x11-libs/mx:1.0 )
ldap? ( >=net-nds/openldap-2:= )
spell? ( app-text/gtkspell:3 )
ssl? (
>=dev-libs/nspr-4.6.1:=
>=dev-libs/nss-3.11:= )
weather? ( >=dev-libs/libgweather-3.10:2= )
"
DEPEND="${COMMON_DEPEND}
app-text/docbook-xml-dtd:4.1.2
app-text/yelp-tools
dev-util/gdbus-codegen
>=dev-util/gtk-doc-am-1.14
>=dev-util/intltool-0.40.0
>=sys-devel/gettext-0.18.3
virtual/pkgconfig
"
RDEPEND="${COMMON_DEPEND}
bogofilter? ( mail-filter/bogofilter )
highlight? ( app-text/highlight )
spamassassin? ( mail-filter/spamassassin )
!gnome-extra/evolution-exchange
"

DISABLE_AUTOFORMATTING="yes"
DOC_CONTENTS="To change the default browser if you are not using GNOME, edit
~/.local/share/applications/mimeapps.list so it includes the
following content:
[Default Applications]
x-scheme-handler/http=firefox.desktop
x-scheme-handler/https=firefox.desktop
(replace firefox.desktop with the name of the appropriate .desktop
file from /usr/share/applications if you use a different browser)."

PATCHES=(
"${FILESDIR}"/${PV}-DESTDIR-honoring.patch
"${FILESDIR}"/${PV}-libical3-compat.patch
)

src_prepare() {
# Leave post-install actions to eclass
sed -e "s;\(find_program(GTK_UPDATE_ICON_CACHE\).*;\1 $(type -P true));" \
-i "${S}"/cmake/modules/IconCache.cmake || die

gnome2_src_prepare
}

src_configure() {
# Use NSS/NSPR only if 'ssl' is enabled.
local mycmakeargs=(
-DENABLE_SCHEMAS_COMPILE=OFF
-DENABLE_GTK_DOC=OFF
-DWITH_OPENLDAP=$(usex ldap)
-DENABLE_SMIME=$(usex ssl)
-DENABLE_GNOME_DESKTOP=ON
-DENABLE_CANBERRA=ON
-DENABLE_AUTOAR=$(usex archive)
-DWITH_HELP=ON
-DENABLE_LIBCRYPTUI=$(usex crypt)
-DENABLE_YTNEF=OFF
-DWITH_BOGOFILTER=$(usex bogofilter)
-DWITH_SPAMASSASSIN=$(usex spamassassin)
-DENABLE_GTKSPELL=$(usex spell)
-DENABLE_TEXT_HIGHLIGHT=$(usex highlight)
-DENABLE_WEATHER=$(usex weather)
-DENABLE_CONTACT_MAPS=$(usex geolocation)
-DENABLE_PST_IMPORT=OFF
-DWITH_GLADE_CATALOG=OFF
)

cmake-utils_src_configure
}

src_compile() {
cmake-utils_src_compile
}

src_test() {
cmake-utils_src_test
}

src_install() {
cmake-utils_src_install

# Problems with prelink:
# https://bugzilla.gnome.org/show_bug.cgi?id=731680
# https://bugzilla.gnome.org/show_bug.cgi?id=732148
# https://bugzilla.redhat.com/show_bug.cgi?id=1114538
echo PRELINK_PATH_MASK=/usr/bin/evolution > ${T}/99${PN}
doenvd "${T}"/99${PN}

readme.gentoo_create_doc
}

pkg_postinst() {
gnome2_pkg_postinst
readme.gentoo_print_elog
}
53 changes: 53 additions & 0 deletions mail-client/evolution/files/3.24.6-DESTDIR-honoring.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
From cb845f462072d1d1e4045eac5f16b4db1f552309 Mon Sep 17 00:00:00 2001
From: Milan Crha <[email protected]>
Date: Mon, 2 Oct 2017 19:22:41 +0200
Subject: [PATCH] Bug 781645 - Skip GSettings schema compile and icon cache
update when DESTDIR is set

(cherry picked from commit b40001cac702a74f818afb3f38acf9521e9d7b62)
---
cmake/modules/GLibTools.cmake | 8 +++++---
cmake/modules/IconCache.cmake | 8 +++++---
2 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/cmake/modules/GLibTools.cmake b/cmake/modules/GLibTools.cmake
index fc8eb827c8..f0be5586db 100644
--- a/cmake/modules/GLibTools.cmake
+++ b/cmake/modules/GLibTools.cmake
@@ -238,9 +238,11 @@ macro(add_gsettings_schemas _target _schema0)
if(_install_code)
# Compile gsettings schemas and ensure that all of them are in the place.
install(CODE
- "execute_process(${_install_code}
- COMMAND ${CMAKE_COMMAND} -E chdir . \"${GLIB_COMPILE_SCHEMAS}\" \"${GSETTINGS_SCHEMAS_DIR}\"
- )")
+ "if(\"\$ENV{DESTDIR}\" STREQUAL \"\")
+ execute_process(${_install_code}
+ COMMAND ${CMAKE_COMMAND} -E chdir . \"${GLIB_COMPILE_SCHEMAS}\" \"${GSETTINGS_SCHEMAS_DIR}\"
+ )
+ endif(\"\$ENV{DESTDIR}\" STREQUAL \"\")")
endif(_install_code)
endmacro(add_gsettings_schemas)

diff --git a/cmake/modules/IconCache.cmake b/cmake/modules/IconCache.cmake
index 6f7f5f0f24..145b843f1d 100644
--- a/cmake/modules/IconCache.cmake
+++ b/cmake/modules/IconCache.cmake
@@ -60,9 +60,11 @@ macro(add_icon_cache_files _destdir _fileslistvar)

if(GTK_UPDATE_ICON_CACHE)
install(CODE
- "execute_process(${_install_code}
- COMMAND ${CMAKE_COMMAND} -E chdir . ${_update_icon_cache_cmd}
- )")
+ "if(\"\$ENV{DESTDIR}\" STREQUAL \"\")
+ execute_process(${_install_code}
+ COMMAND ${CMAKE_COMMAND} -E chdir . ${_update_icon_cache_cmd}
+ )
+ endif(\"\$ENV{DESTDIR}\" STREQUAL \"\")")
endif(GTK_UPDATE_ICON_CACHE)
endmacro(add_icon_cache_files)

--
2.15.1

Loading

0 comments on commit 08dbc54

Please sign in to comment.