From nobody Fri Nov 26 19:06:42 2021 X-Original-To: freebsd-hackers@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 5BBDC18B5DEE for ; Fri, 26 Nov 2021 19:06:51 +0000 (UTC) (envelope-from bzeeb-lists@lists.zabbadoz.net) Received: from mx1.sbone.de (mx1.sbone.de [IPv6:2a01:4f8:13b:39f::9f:25]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mx1.sbone.de", Issuer "SBone.DE" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4J143v1Nz9z4b0F; Fri, 26 Nov 2021 19:06:50 +0000 (UTC) (envelope-from bzeeb-lists@lists.zabbadoz.net) Received: from mail.sbone.de (mail.sbone.de [IPv6:fde9:577b:c1a9:31::2013:587]) (using TLSv1 with cipher ADH-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by mx1.sbone.de (Postfix) with ESMTPS id 1ABD58D4A212; Fri, 26 Nov 2021 19:06:46 +0000 (UTC) Received: from content-filter.sbone.de (content-filter.sbone.de [IPv6:fde9:577b:c1a9:31::2013:2742]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.sbone.de (Postfix) with ESMTPS id 41A10E70816; Fri, 26 Nov 2021 19:06:45 +0000 (UTC) X-Virus-Scanned: amavisd-new at sbone.de Received: from mail.sbone.de ([IPv6:fde9:577b:c1a9:31::2013:587]) by content-filter.sbone.de (content-filter.sbone.de [fde9:577b:c1a9:31::2013:2742]) (amavisd-new, port 10024) with ESMTP id pr2YUdDQue4p; Fri, 26 Nov 2021 19:06:43 +0000 (UTC) Received: from nv.sbone.de (nv.sbone.de [IPv6:fde9:577b:c1a9:31::2013:138]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.sbone.de (Postfix) with ESMTPSA id 3AD8BE707D9; Fri, 26 Nov 2021 19:06:43 +0000 (UTC) Date: Fri, 26 Nov 2021 19:06:42 +0000 (UTC) From: "Bjoern A. Zeeb" To: Ed Maste cc: FreeBSD Hackers Subject: Re: Retiring WITHOUT_CXX In-Reply-To: Message-ID: References: <202111260909.1AQ99LY2023877@gndrsh.dnsmgr.net> X-OpenPGP-Key-Id: 0x14003F198FEFA3E77207EE8D2B58B8F83CCF1842 List-Id: Technical discussions relating to FreeBSD List-Archive: https://lists.freebsd.org/archives/freebsd-hackers List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-hackers@freebsd.org MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Rspamd-Queue-Id: 4J143v1Nz9z4b0F X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[] X-ThisMailContainsUnwantedMimeParts: N On Fri, 26 Nov 2021, Ed Maste wrote: > On Fri, 26 Nov 2021 at 04:09, Rodney W. Grimes > wrote: >> >> So is the feature model of FreeBSD becoming, oh it gets broken >> cause it is not regularly tested, so lets remove that feature. > > I don't agree with that. We have a large and growing CI infrastructure > to regularly test functionality and are continually adding to it over > time. But it's important to test and maintain what is actually used > and is useful. Disabling C++ support made sense when obrien@ added the > original knob in 2000, but it makes less sense today when parts of > FreeBSD are written in C++. I used to disable it in my images but started to need devd and that is really the only reason its there currently #WITHOUT_CXX= # devd needs it I used to have a conversation with Warner a while ago about it and the conclusion was the bits of C++ could be reimplemented in C if needed but obviously no one ever got to that. Maybe it would be good to list what it actually stops building. - devd / libdevdctl - a specific about libproc - dtc - atf / kyua - zfsd - users (that's a wow but okay); can't remember when I last typed that - "toolchain" but that's a dead end for tiny images anyway Ignoreing lib*.a it's still going to save 800-900k on libraries which is a lot of dead weight if you don't need it and removing the knob means one has to do it in post-processing on ones own so re-implementing the wheel... Even on 40MB images that is still more than 2% and I wish I could save those every time. Finding a 2% performance improvement for the kernel one wouldn't "waste" so easily. Here's an example of what happens over time (compressed!) just to give you an idea: 5.3M Dec 29 2007 base7-radiata-200712290220.gz 11M Aug 10 2020 base13-radiata-r364080.gz There's gazillions of things I'd rather remove or combine and things which never made sense to me to be MK_* src.conf knobs really but the explosion of options is elsewhere but not on CXX which never made more sense than it did today. my 2cts /bz -- Bjoern A. Zeeb r15:7