From owner-freebsd-stable@freebsd.org Wed Aug 31 23:23:36 2016 Return-Path: Delivered-To: freebsd-stable@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5F3EEBC949D for ; Wed, 31 Aug 2016 23:23:36 +0000 (UTC) (envelope-from kmacybsd@gmail.com) Received: from mail-it0-x22a.google.com (mail-it0-x22a.google.com [IPv6:2607:f8b0:4001:c0b::22a]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 24A04D4D for ; Wed, 31 Aug 2016 23:23:36 +0000 (UTC) (envelope-from kmacybsd@gmail.com) Received: by mail-it0-x22a.google.com with SMTP id i184so37874261itf.1 for ; Wed, 31 Aug 2016 16:23:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc:content-transfer-encoding; bh=RtOBcLRkCMFkpecANENrYxE4KRaColJGty7avespND0=; b=ak5FCXAxVNkBFZr+ArHJ07SS9i66tuE5mzPkPpX4GZZUq8Hq5+o8ZQWoHLJAczGkE5 u3Nq15VXNBuynmv4RAHnYjjCkEjRvFiXbzByznWUvqWIBb1pypbeExdHtILrrAo3r5md yDwjwfJ7SCOF6fvhxbW1ake2cYse2Rk4h16rxQxOGVkED+eykW5PGsQMsLT2IoZgfAAR K45bPBAilhePxfdON/h1aIvFGBoXE21O47lG5njE2cY6T+Nn0fpPmBQNUFgLLsC/QQSl Ay1DBW9dwPbz2pYm0VFSyE/UFHYhxKoPcsTQ04dOPhOh4c6GA58iIyus3zvMbeXdMCRF C7og== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc:content-transfer-encoding; bh=RtOBcLRkCMFkpecANENrYxE4KRaColJGty7avespND0=; b=IuQ1gCHzMMpk9raxifcfeSpdasOFO7XXtunfo3wa2hioocHXUUtTrg0J0L9TDQubNM HaAMnEeB20QYTCO3XNTlilvqUtNSbZVCxC7zQGx0Ptwbh7d/cc/Uo/CgqOlEeKpSjVDB a45Y9xu07wRgSrTj2eR0AZfXVWu+FDIQN1+JLMDDX7z1RyPvJy6cZcSAu8783J+njbKJ uQUqT0By2DpiSEUnj6NHW2MF4edR/5pJnTJ+i0Yc18aUjiuou8ziXyTLEb8iEn/oHTdV iLERwB2T5ZwRbWTGKD1LRVuw/3dAPR0jRPpe1H38DiLMKFNDclYseJj8QAtagEv24B+a GO1g== X-Gm-Message-State: AE9vXwM+ht2aVY//7+rGcT8Ilv0V6iiw6hRfK45nA3a4bjI+kSc+728nG+K6zSz8BkL5IknQU9PuMH9ODzJnXg== X-Received: by 10.36.156.197 with SMTP id b188mr37691644ite.28.1472685815300; Wed, 31 Aug 2016 16:23:35 -0700 (PDT) MIME-Version: 1.0 Sender: kmacybsd@gmail.com Received: by 10.107.143.11 with HTTP; Wed, 31 Aug 2016 16:23:34 -0700 (PDT) In-Reply-To: <20160901065518.6a3a4179@X220.alogt.com> References: <20160822120215.GV22212@zxy.spb.ru> <20160823110159.GU18643@e-new.0x20.net> <20160824045558.18c86764@X220.alogt.com> <3234db29c228879cc473deec0b09568c@schema31.it> <20160826132059.63c23ee5@X220.alogt.com> <20160828060601.08ea91a8@X220.alogt.com> <20160830074656.18bfaf05@X220.alogt.com> <20160831133642.GA25574@lonesome.com> <20160901065518.6a3a4179@X220.alogt.com> From: "K. Macy" Date: Wed, 31 Aug 2016 16:23:34 -0700 X-Google-Sender-Auth: dlzKW2sgvq5Gp7D5BPrjnOv-Wso Message-ID: Subject: Re: Benchmarks results for Compilers on FreeBSD 11 To: Erich Dollansky Cc: Mark Linimon , Andrea Brancatelli , =?UTF-8?Q?Fernando_Herrero_Carr=C3=B3n?= , freebsd-stable Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Aug 2016 23:23:36 -0000 On Wed, Aug 31, 2016 at 3:55 PM, Erich Dollansky wrote: > Hi, > > On Wed, 31 Aug 2016 12:16:16 -0700 > "K. Macy" wrote: > >> On Wednesday, August 31, 2016, Mark Linimon >> wrote: >> >> > But for me an attraction has always been "you can build it out of >> > the box", even if I rarely do it (e.g. I am not working in the >> > kernel/driver area), >> > >> >> Can clang actually bootstrap from something like lcc? As far as I can >> tell you need a fairly advanced C++ compiler just to build that >> compiler in src >> - which already needs to be installed. It's not exactly bootstrapping >> from Bourne shell. So I'm not sure "it's self-hosting" is even true, >> not to mention that you needed a network connection to get src in the >> first place. Thus the whole argument strikes me as circular if not >> outright deceptive. >> > what do you want to say? > > CLang builds on FreeBSD after installing FreeBSD either binary or from > source. If the installation is older, it might be required to move up > the version ladder step by step. > > The only problem I see is the time it take to build it. As long it is > the choice a user has, it is part of the game. > > Or with your words, it is not a shell. The argument I've been given for including clang is that doing so makes the FreeBSD base somehow self-contained. But the fact is that FreeBSD can't be built on anything but FreeBSD with an existing modern C++ compiler. In order to actually bootstrap it with something less you'd need to start by bootstrapping gcc. Beyond core pieces like the kernel, libc, ls, and sh what constitutes an intrinsic part of "base" is highly subjective. Very few people today would consider the results of a buildworld a complete system. I asked JKH, a fellow former committer, about it and his take was: "[it] is probably a by-product of just inheriting the CSRG=E2=80=99s original topology and calling it gospel". The situation with the system compiler is definitely improving and some (but not all) of the build overhead is avoided by SYSTEM_CC checks. But since we've established that the end result of a trebled buildworld time (for me 47 minutes with vs 15 minutes without) is still incomplete it seems like a bit of a waste. In any event, the external toolchain support seems to work satisfactorily - allowing me to disconnect the otherwise redundant clang build from buildworld in my branches. -M