From owner-freebsd-toolchain@FreeBSD.ORG Mon Sep 17 20:37:19 2012 Return-Path: Delivered-To: toolchain@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 37AE8106566B; Mon, 17 Sep 2012 20:37:19 +0000 (UTC) (envelope-from brooks@lor.one-eyed-alien.net) Received: from lor.one-eyed-alien.net (lor.one-eyed-alien.net [69.66.77.232]) by mx1.freebsd.org (Postfix) with ESMTP id CFD078FC1C; Mon, 17 Sep 2012 20:37:17 +0000 (UTC) Received: from lor.one-eyed-alien.net (localhost [127.0.0.1]) by lor.one-eyed-alien.net (8.14.5/8.14.5) with ESMTP id q8HKbHVh043927; Mon, 17 Sep 2012 15:37:17 -0500 (CDT) (envelope-from brooks@lor.one-eyed-alien.net) Received: (from brooks@localhost) by lor.one-eyed-alien.net (8.14.5/8.14.5/Submit) id q8HKbH6u043926; Mon, 17 Sep 2012 15:37:17 -0500 (CDT) (envelope-from brooks) Date: Mon, 17 Sep 2012 15:37:17 -0500 From: Brooks Davis To: Dimitry Andric Message-ID: <20120917203717.GB43626@lor.one-eyed-alien.net> References: <20120917191028.GA42648@lor.one-eyed-alien.net> <505782D2.2030103@FreeBSD.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="IrhDeMKUP4DT/M7F" Content-Disposition: inline In-Reply-To: <505782D2.2030103@FreeBSD.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: toolchain@FreeBSD.org Subject: Re: enabling libc++ by default when building with clang X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Sep 2012 20:37:19 -0000 --IrhDeMKUP4DT/M7F Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Sep 17, 2012 at 10:06:42PM +0200, Dimitry Andric wrote: > On 2012-09-17 21:10, Brooks Davis wrote: > > Now that we have the COMPILER_TYPE variable I'm following up on an idea > > by theraven@ that we should enable libc++ by default when we are > > building world with a compiler that supports it. The following patch > > implements this: > > > > http://people.freebsd.org/~brooks/patches/libc%2b%2b-default.diff > > > > One key question is, when do we want to throw this switch? Do we do it > > now so people using clang start using it sooner or do we wait until > > we've switched the default compiler and things have settled a bit? >=20 > Well, building libc++ does not mean automatically using it. What is the > use case for only building (and installing) libc++, but not linking it > to anything? Just so people could build something with it later on? For now it's really so that people can start testing it without having to tweak more switches. From that perspective it probably makes sense to throw the switch sooner so it's readily available for people who want to start testing it. > In any case, I have been building libc++ for a long time now, and also > did some commits left and right to be able to actually use it for the > base system, e.g. all C++ programs in my installations are already > linked to libc++ (dynamically or statically). I have seen no problems > at all, and I am even working on a WITHOUT_LIBSTDCPLUSPLUS option. :) >=20 > I think the end goal should be to enable building and using libc++ with > one switch. And sooner or later, to make that the default. Then > FreeBSD will finally be able to use C++0x and C++11 features natively. It seems to me that installed, but not used by default is a useful transition state since it reduces the number of knobs required to try it out. If it turns out that other people's experiences match yours then we'll be a in a good position to flip the default linkage switch as well. -- Brooks --IrhDeMKUP4DT/M7F Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (FreeBSD) iD8DBQFQV4n8XY6L6fI4GtQRAqpOAKDl+HUUTzuN7Er0/aPRFty/TCQwZgCeM/d0 vt0/zybBdajdVZffxvJ66wM= =Ft9j -----END PGP SIGNATURE----- --IrhDeMKUP4DT/M7F--