Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Apr 2015 17:05:20 +0000 (UTC)
From:      Don Lewis <truckman@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r384997 - in head: databases/evolution-data-server mail/evolution
Message-ID:  <201504291705.t3TH5Kca015177@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: truckman
Date: Wed Apr 29 17:05:19 2015
New Revision: 384997
URL: https://svnweb.freebsd.org/changeset/ports/384997

Log:
  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

Modified:
  head/databases/evolution-data-server/Makefile
  head/mail/evolution/Makefile

Modified: head/databases/evolution-data-server/Makefile
==============================================================================
--- head/databases/evolution-data-server/Makefile	Wed Apr 29 16:57:40 2015	(r384996)
+++ head/databases/evolution-data-server/Makefile	Wed Apr 29 17:05:19 2015	(r384997)
@@ -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:${PORT
 		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

Modified: head/mail/evolution/Makefile
==============================================================================
--- head/mail/evolution/Makefile	Wed Apr 29 16:57:40 2015	(r384996)
+++ head/mail/evolution/Makefile	Wed Apr 29 17:05:19 2015	(r384997)
@@ -4,7 +4,7 @@
 
 PORTNAME=	evolution
 PORTVERSION=	3.12.11
-PORTREVISION=	1
+PORTREVISION=	2
 CATEGORIES=	mail gnome
 MASTER_SITES=	GNOME
 DIST_SUBDIR=	gnome3
@@ -107,11 +107,6 @@ CONFIGURE_ARGS+=--disable-contact-maps
 
 .include <bsd.port.options.mk>
 
-# webkit-gtk3 needs this
-.if ${OSVERSION} < 1000000
-USES+=	compiler:c++11-lib
-.endif
-
 post-patch:
 	@${REINPLACE_CMD} -e '/^plugins_standard_always/s/audio-inline//' \
 	    	-e 's|-lkrb5 -lcrypto -lasn1 -lcom_err -lroken -lgssapi|${KRB5_LIB}|g' \



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201504291705.t3TH5Kca015177>