Re: Retiring WITHOUT_CXX
- Reply: Cameron Katri via freebsd-hackers : "Re: Retiring WITHOUT_CXX"
- Reply: John Baldwin : "Re: Retiring WITHOUT_CXX"
- Reply: Ed Maste : "Re: Retiring WITHOUT_CXX"
- In reply to: Ed Maste : "Re: Retiring WITHOUT_CXX"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 26 Nov 2021 19:06:42 UTC
On Fri, 26 Nov 2021, Ed Maste wrote:
> On Fri, 26 Nov 2021 at 04:09, Rodney W. Grimes
> <freebsd-rwg@gndrsh.dnsmgr.net> 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