Re: It's not Rust, it's FreeBSD (and LLVM)

From: Alexander Leidinger <Alexander_at_Leidinger.net>
Date: Tue, 10 Sep 2024 17:35:01 UTC
Am 2024-09-10 11:05, schrieb Olivier Certner:

[your point of view]
> This is only my view, but I have the feeling it is implicitly shared by 
> many.  I'm very interested in hearing whether it is more or less 
> conform to reality and what people think about it as of now and for 
> FreeBSD's future.

I share a similar point of view. The difference is ... below.

> That said, I also think this debate is mostly independent from the 
> possibility of building FreeBSD without having to rebuild a full 
> compiler every time.  It is however relevant to the proposal of 
> removing LLVM's code from 'src', as this has bad consequences 
> (according to the principles I listed) that we probably can, and 
> should, remedy with tooling, although, as the saying goes, the daemon 
> is in the details.

IMO it doesn't hurt to move the toolchain out of src, as long as we have 
a port, e.g. freebsd/toolchain-for-version-X (or whatever we want to 
call it), which is buildable on all supported release we want to support 
the build of FreeBSD-X. As we support to build FreeBSD also on Linux and 
OS-X, we would also need to have support to make it not too hard to 
build said toolchain on those systems.

And I go even further, I would not only mind to install a port for a 
compiler, I would also be ok to install a port to install a tool which 
handles the build (replacing make in src). I would be ok to run "pkg 
install/update X Y Z" to be able to do "cd /usr/src; do_build freebsd && 
do_install freebsd". I fully agree that it should be easy to build the 
base system, to do what we do today, and I think is would be beneficial 
if apart from "make installworld" if we could also update via "pkg 
upgrade". I think we could provide what we provide currently while at 
the same time reap some benefits from having those parts managed in 
ports. IMO there are a lot of benefits with such an approach, be it 
system hardening, compile time, and more. I would not want to move 
everything to ports (toolchain yes, build system yes, now that we 
switched to DMA: sendmail yes, openssl/kerberos no -> too much 
integration with other parts), but I would not mind having a ports-like 
approach for src separate from ports (I don't know if pkgbase fits this 
or not, I haven't looked at it, but if I can define a pkg repo for base 
and populate it from e.g. "make pkgrepo DESTDIR=xxx" or similar and then 
just need to run pkg upgrade that would be nice).

Bye,
Alexander.

-- 
http://www.Leidinger.net Alexander@Leidinger.net: PGP 0x8F31830F9F2772BF
http://www.FreeBSD.org    netchild@FreeBSD.org  : PGP 0x8F31830F9F2772BF