From 351ab93eed07cc7deba26d936976afeba18c2a5e Mon Sep 17 00:00:00 2001 From: Don Lewis Date: Wed, 29 Apr 2015 17:05:19 +0000 Subject: Remove USES=compiler:c++11-lib from mail/evolution. While it fixes the build failure on FreeBSD 8 (and probably 9), the application fails to start because the base version of libstdc++ is loaded at runtime, which does not satify the requirements of webkit-gtk3. The reason is that evolution does not directly link to libstdc++, so the rpath added to it by USES=compiler:c++11-lib has no effect. The first shared library that links to libstdc++ belongs to evolution-data-server, which does not have USES=compiler:c++11-lib, which causes the base version of libstdc++ to be loaded. Unconditionally add USES=compiler:c++11-lib to databases/evolution-data-server. Adding the rpath to its shared libraries will cause the newer version of libstdc++ to be loaded when evolution starts and fix the runtime error on FreeBSD 8 and 9. For standard versions of FreeBSD 10 and higher on amd64 and i386, it is a no-op, so there is no harm in doing this. If FreeBSD 10 or higher is configured to build with base gcc and clang is not present, which is an option on amd64 and i386 and is mandatory on some tier 2 platforms that don't have clang support, then USES=compiler:c++11-lib is needed. PR: 199746 Differential Revision: https://reviews.freebsd.org/D2388 Reviewed by: kwm Approved by: mat (mentor) MFH: 2015Q2 --- databases/evolution-data-server/Makefile | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'databases/evolution-data-server') diff --git a/databases/evolution-data-server/Makefile b/databases/evolution-data-server/Makefile index 0aeb931ccf67..4fbdf22be5a0 100644 --- a/databases/evolution-data-server/Makefile +++ b/databases/evolution-data-server/Makefile @@ -4,6 +4,7 @@ PORTNAME= evolution-data-server PORTVERSION= 3.12.11 +PORTREVISION= 1 CATEGORIES= databases gnome MASTER_SITES= GNOME DIST_SUBDIR= gnome3 @@ -26,6 +27,11 @@ LIB_DEPENDS= libsoup-gnome-2.4.so:${PORTSDIR}/devel/libsoup-gnome \ libgnome-keyring.so:${PORTSDIR}/security/libgnome-keyring USES= bison gettext gmake gperf libtool pathfix pkgconfig tar:xz +# Unbreak mail/evolution with webkit-gtk3 on FreeBSD 8 and 9. Normally +# this change would be done there, but it is not a C++ application, so it +# does not link directly to libstdc++ and adding the libstdc++ rpath to +# the executable does not work at runtime. +USES+= compiler:c++11-lib USE_GNOME= gnomeprefix gtk30 intlhack introspection:build \ libxml2 USE_OPENLDAP= yes -- cgit v1.3