diff options
author | truckman <truckman@FreeBSD.org> | 2015-04-30 01:05:19 +0800 |
---|---|---|
committer | truckman <truckman@FreeBSD.org> | 2015-04-30 01:05:19 +0800 |
commit | ee53b1a136430e97ea3c59ee9b01315c6c63b4fc (patch) | |
tree | 18e65f61c691f049a22d5258fba7ddb2cfce07d6 /databases | |
parent | 7487af19fcd57337adb0ac79efdff6165ce42d3f (diff) | |
download | freebsd-ports-gnome-ee53b1a136430e97ea3c59ee9b01315c6c63b4fc.tar.gz freebsd-ports-gnome-ee53b1a136430e97ea3c59ee9b01315c6c63b4fc.tar.zst freebsd-ports-gnome-ee53b1a136430e97ea3c59ee9b01315c6c63b4fc.zip |
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
Diffstat (limited to 'databases')
-rw-r--r-- | databases/evolution-data-server/Makefile | 6 |
1 files changed, 6 insertions, 0 deletions
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 |