From owner-freebsd-gnome@FreeBSD.ORG Tue Mar 4 09:00:27 2008 Return-Path: Delivered-To: freebsd-gnome@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6BADD1065670 for ; Tue, 4 Mar 2008 09:00:27 +0000 (UTC) (envelope-from roy@marples.name) Received: from mail.marples.name (rsm.demon.co.uk [80.177.111.50]) by mx1.freebsd.org (Postfix) with ESMTP id 2EE9A8FC1E for ; Tue, 4 Mar 2008 09:00:26 +0000 (UTC) (envelope-from roy@marples.name) Received: from uberpc.marples.name (uberpc.marples.name [10.73.1.30]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.marples.name (Postfix) with ESMTP id B8B6419006C for ; Tue, 4 Mar 2008 08:42:48 +0000 (GMT) From: Roy Marles To: freebsd-gnome@freebsd.org Date: Tue, 4 Mar 2008 08:42:47 +0000 User-Agent: KMail/1.9.7 References: <20080301181608.5d393e02.ejcerejo@optonline.net> <1204424514.1262.36.camel@shumai.marcuscom.com> <20080303001237.28a45ba9.jylefort@brutele.be> In-Reply-To: <20080303001237.28a45ba9.jylefort@brutele.be> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200803040842.47946.roy@marples.name> Subject: Re: Evolution crawls on FreeBSD X-BeenThere: freebsd-gnome@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: GNOME for FreeBSD -- porting and maintaining List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Mar 2008 09:00:27 -0000 On Sunday 02 March 2008 23:12:37 Jean-Yves Lefort wrote: > Indeed, a casual inspection of libexec/rtdl-elf/rtld.c shows that the > SO_NEEDED lists (Obj_Entry.needed) are walked recursively. Removing > the useless entries might therefore have a dramatic impact on > performance. One thing that may help here is allowing the use of cutsom LDFLAGS - namely -Wl,--as-needed. This removes SO_NEEDED references when the library really isn't needed. For a more indepth discussion on the benefits of this, read this article [1]. I had a quick look at ports, but it doesn't seem to honor LDFLAGS in any port. Sadly most of the world needs to be compiled with this LDFLAG for it to really work, so I didn't look much futher. FreeBSD base system compiles fine with it though :) You should also note that as-needed isn't a default Gentoo build option but a lot of people use it safely and it's one of the optimisations developers try an fix. It's also useful to note that on Gentoo/FreeBSD-6.2 this problem does not exist at all. Yes, I'm very aware that G/FBSD isn't FBSD, as we backported some patches from 7 and make some of our own. One of these patches was to rtld.c, available here [2] Thanks Roy [1] http://www.gentoo.org/proj/en/qa/asneeded.xml [2] http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-freebsd/freebsd-libexec/files/freebsd-libexec-6.1-libfallback.patch?annotate=1.2