From owner-freebsd-current@FreeBSD.ORG Mon Oct 31 12:26:59 2011 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4D5D31065670 for ; Mon, 31 Oct 2011 12:26:59 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from tensor.andric.com (cl-327.ede-01.nl.sixxs.net [IPv6:2001:7b8:2ff:146::2]) by mx1.freebsd.org (Postfix) with ESMTP id 11D638FC0A for ; Mon, 31 Oct 2011 12:26:59 +0000 (UTC) Received: from [IPv6:2001:7b8:3a7:0:55a7:a9f1:1d0f:91f9] (unknown [IPv6:2001:7b8:3a7:0:55a7:a9f1:1d0f:91f9]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by tensor.andric.com (Postfix) with ESMTPSA id 45F045C37; Mon, 31 Oct 2011 13:26:58 +0100 (CET) Message-ID: <4EAE9412.2080905@FreeBSD.org> Date: Mon, 31 Oct 2011 13:26:58 +0100 From: Dimitry Andric Organization: The FreeBSD Project User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0) Gecko/20111019 Thunderbird/8.0 MIME-Version: 1.0 To: Jakub Lach References: <1320054824481-4951986.post@n5.nabble.com> In-Reply-To: <1320054824481-4951986.post@n5.nabble.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-current@freebsd.org Subject: Re: WITHOUT_GCC for build target / system without base gcc (9RC1) X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 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, 31 Oct 2011 12:26:59 -0000 On 2011-10-31 10:53, Jakub Lach wrote: > When one can expect being able to have system > without base gcc installed? There's quite some work to be done. The trickiest part is to get rid of GNU libstdc++, which is sort of a symbiote with gcc. Also, there are still some programs that hardcode ${CC}, and ignore any environment-supplied value. > Since I enabled clang, and > I'm using gcc46 for ports, having base gcc is largely > pointless for me, You should use clang for ports. :) But seriously, building ports which have not explicitly been marked as being gcc 4.5 or 4.6 compatible is taking a chance. It might work, or break in various interesting ways. That said, many problems that manifest in ports when you build them with clang, also pop up with newer versions of gcc, simply because both are more strict with regard to sloppy coding practices. > but couldn't build system with clang only, > because of: > > ===> usr.bin/xlint/llib (all) > lint -cghapbx -Cposix /usr/src/usr.bin/xlint/llib/llib-lposix > llib-lposix: > lint: cannot exec /usr/obj/usr/src/tmp/usr/bin/cc: No such file or directory > *** Error code 1 Yes, this is one of the programs that hardcodedly calls 'cc', and ignores environment values. I simply haven't got to fixing this yet, but I plan on doing so soon. > PS. If I'm doing something retarded, feel free to point out. > I'm just feeling that 3 compilers on one system is a bit much, > and most ports are developed with newest gcc in mind, while > for FreeBSD clang is obviously way to go. As I said, many ports compile fine with clang, so you could get by just with the compiler in base. On my systems, everything is clang-compiled, including all ports, but I am using just a subset of the available ones, of course. There are even people that would like to remove all compilers from the base system, and move them to an external package, so you can freely switch to whatever toolchain has your fancy. But that will take some time to materialize... :) > FWIW, right now I would need base gcc only for compiling > libreoffice, and I hope it will change sometime in future. I have no idea what the issues are with libreoffice, so I can't help you there, sorry.