From owner-freebsd-current@FreeBSD.ORG Mon Sep 9 13:28:02 2013 Return-Path: Delivered-To: freebsd-current@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 8DBDAEC7; Mon, 9 Sep 2013 13:28:02 +0000 (UTC) (envelope-from uqs@FreeBSD.org) Received: from acme.spoerlein.net (acme.spoerlein.net [IPv6:2a01:4f8:131:23c2::1]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 0A7EA24D1; Mon, 9 Sep 2013 13:28:01 +0000 (UTC) Received: from localhost (acme.spoerlein.net [IPv6:2a01:4f8:131:23c2::1]) by acme.spoerlein.net (8.14.7/8.14.7) with ESMTP id r89DRwgd069218 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 9 Sep 2013 15:27:59 +0200 (CEST) (envelope-from uqs@FreeBSD.org) Date: Mon, 9 Sep 2013 15:27:58 +0200 From: Ulrich =?utf-8?B?U3DDtnJsZWlu?= To: David Chisnall Subject: Re: HEADS UP: No gcc by default in -HEAD on platforms where clang is cc Message-ID: <20130909132758.GK9030@acme.spoerlein.net> Mail-Followup-To: David Chisnall , freebsd-current CURRENT References: <23F19F73-738E-4490-BAE3-590C32FC141C@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <23F19F73-738E-4490-BAE3-590C32FC141C@FreeBSD.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: freebsd-current CURRENT X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 09 Sep 2013 13:28:02 -0000 On Fri, 2013-09-06 at 21:19:32 +0100, David Chisnall wrote: > Hi Everyone, > > As of r255321, we are no longer building gcc or libstdc++ as part of the default install on platforms where clang is cc. > > If you are using gcc, you have two options: > > 1) Install one of the lang/gcc* ports (Warner has been working on separating out the patches to our GCC, so these should soon be patched to provide the same features as the one in base) > > 2) Put WITH_GCC=yes and WITH_GNUCXX=yes in your src.conf when you build world. > > GCC will stay in the base system tree for at least the lifetime of the 10.x release, and possibly longer if it is still being actively used. It will remain used by tinderboxes and make universe for some architectures, so if you commit code without testing with gcc people will know very soon... > > Thanks to Warner for all of his recent work on disentangling the toolchain, to all of the people (Roman, Dimitry, Brooks, and others) who worked on getting clang integrated into FreeBSD and to everyone who tested it and filed bug reports. As of today, PowerPC64 joins x86 and ARM as platforms where world+kernel can be successfully built (and work) with clang (although it isn't the default yet and needs more testing), and hopefully other architectures will follow soon. > > Huge thanks to all of the ports people who have spent the last two weeks working on dealing with the fallout from iconv and ensuring that all of the ports work with clang and libc++. I think over the last week, the number of failing / ignored ports has dropped by about a thousand a day on the no-gcc test box that Bapt has been running, which is a phenomenal achievement. Indeed, thanks to all for their hard work, this is good news overall! To nitpick, however, what has been fixed is that ports "build" with clang and libc++, no effort can humanely be done to make sure they really *work* as before. Case in point, I only recently switched to clang in base and now the newsbeuter port crashes during startup (yeah, it builds fine). So all I'm asking for now is: how can I override a random port to be built with gcc (either from base or ports, I don't care). And what special considerations need to be done when the port uses C++. Cheers, Uli