That's entirely possible, but does it hurt their bottom line? They switched from GCC, because LLVM was available (to grow and eventually use).
Their aversion to the GPL seems mostly cultural, which is interesting given that we skewer microsoft for their sins along those lines 20 years ago now.
Apple has an aversion to GPL 3 and not to GPL 2.x because of what 3 forces people to do. It's the same with FreeBSD: once libgcc_s went to 3 they could no longer use it.
It's the same reason why bash and rsync have not been upgraded on macOS to newer versions: they also started using GPL3.
Honestly curious what's the thing that "[GPLv]3 forces people to do" in context of those cases? IANAL but interested in perspective of choosing license for some of my current and future works
Not lock down people's devices basically. [L]GPLv3 requires that people are able to replace the [L]GPLv3'd binaries in their own devices if they want to (so they actually take advantage of the code being FLOSS instead of some nice theoretical novelty - ie. it is nice that my router uses Linux and find it amusing that it comes with the GPLv2 printed out, but what is the point if i can't open it up and fix/change some things that annoy me?). Apple wants to keep the devices they sell you under tight control, so [L]GPLv3 rubs them wrong.
It might also be about patents since IIRC [L]GPLv3 requires that if you use a [L]GPLv3'd program and that program infringes some of your patents then you are not allowed to sue others over their use of your patents in the same program.
GCC would not have taken it anyway, they tried to prevent parts of GCC getting used independently or as a library to keep the lock-in to GNU, while the architecture of LLVM is of embeddable reusable libraries.
I don't understand the bits about RMS' email configuration, but in that message in 2015 he indicated that he did not know about the offer in 2005 to give copyright of LLVM to the FSF.
That table doesn't have greens for apple clang that are missing for regular clang. As far as I know they take some time integrating upstream llvm changes, so the two columns are due to that.
Historically they've been very good about upstreaming. Sometimes it takes a while, but so far everything made it to the public repo.
Definitely got sympathy for that position. Upstreaming changes often takes a long time to get across context, get community buy in to changes, get approval cut a release, whereas internally, it's often just a code review, which can be prioritised according to business needs.
It's quite common for long standing forks to exist, where changes get pushed upstream from the fork, and the fork gets periodically re-cut.
> Apple doesn’t upstream of their changes already, hence why you have a specific Apple column
It looks to me like it’s the exact opposite, based solely on your link that is. Based on your link, they lag _behind_ upstream (vs being _ahead_ of upstream as you indicated) and don’t offer the same features, without a delay anyway, in “Apple Clang” that are in “Clang”.
Hence why I said it was a sign of the future rather than a prediction. It's not going to get any better for software freedom, especially as we move into the cloud.
We live in a post-FSF world, I think people are taking for granted the bean counters playing nice with open source software.
We need software that works on the client side sans internet connection. Devices are really powerful these days so it’s funny things move to the cloud. It’s funny I’ve been using cloud storage for the past several years but I wonder why I don’t just back up to external drive or two. The convenience doesn’t buy much. I think folks really buy into laziness and technology hype. But fundamentally not much had changed in the software space compared to 20 years ago.
I still hold out hope that things will get better in the future. Eventually Moore’s law will truly end. We will have to stop once we run up against hard physical limitations.
Why is this a reason for optimism? Because it shifts the outlet for innovation elsewhere. Costs of manufacturing will drop as competition in the fab space increases. I think RISC-V is a sign of things to come. There is great potential for open and amateur hardware.