"Finally and I think the most important thing, is to ask: had those technologies been GPLed, [...], or simply have refused to use that code?"
Yes, who would use (L)GPL code in their systems?
$ gcc -v
gcc version 4.2.1 (Apple Inc. build 5664)
$ make -v
GNU Make 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
[...]
This program built for i386-apple-darwin10.0
$ troff -v
GNU troff (groff) version 1.19.2
It's true that LLVM and Webkit (based on KHTML, which was LGPL) are exceptions. However, it remains to be seen what they contribute back to LLVM in the future. Probably just those bits that will give them the tools edge.
LLVM is being developed by someone that Apple hired, why would they keep contributing back? Why wouldn't they have closed the doors on that back before the project got bigger? It is not in their best interest to do so.
The OpenBSM implementation in FreeBSD is based on the BSM code in Darwin.
Submitted by Apple to FreeBSD (apple.com email addresses)
Also, since all of this is BSD code, and those of us who developed under the BSD license agree to the fact that the code may be taken and used, and that works for us. Companies that know what is ultimately good for them will contribute back, maybe not all of their secret sauce so that they can continue to make money but at least part of it.
"Except for a necessary parts to make it useful. From someone close to the source (the last paragraph pretty much wraps it up)"
I am not sure what you are referring to. I'll try to reply to a few of the points raised in the article (but I have only skimmed it, so if I missed your point feel free to point it out).
Darwin is still being updated. Back in 2006 Apple didn't release the x86 code straight away, but I think they did so after a while.
DarwinBuild still exists and (apparently from their webpage) it is still being updated. This is a project supported by Apple whose only purpose is to build Darwin
As for Apple not including some of the drivers code in Darwin I can't say I am surprised. By looking at the fights between kernel people and drivers developers on Linux it seems a lot of companies (e.g NVidia) simply would not accept their secret sauce to be open sourced for fear it will reveal secrets of their architecture. Though correct me if I am wrong.
Finally the article you linked to asks why should people contribute to Darwin if Apple is less than helpful. Here I agree with you. Apple could do much more to help and encourage Darwin. But I don't see how this would be any different if the code were GPL.
And incidentally Android uses the same technique (keep development closed and open source the final version once it's being used) but everybody praises Android for being open source. (which is true, since they did open source _everything_ and Apple keeps things like Aqua closed source, but my point is that you don't hear quite the complains about Android's development model, as you do for Darwin's).
As for your second point, I think X-instance replied better than I could.
You prove my point: both companies, Apple with Darwin/OS X, and Google with Android are not really trying to develop a healthy ecosystem around these systems. But at the very least Google needs to provide the source to GPL'ed software (kernel modifications, etc.). If you have to publish changes anyway, at some point it becomes more attractive to work with upstream, since you cannot differentiate your product via that software. We still have to see if this happens, but there is a long of history of companies that did not contribute much initially, but are now working with kernel.org much more reliably. (E.g. many big-iron vendors.)
But from what I hear in the Linux world, having GPLed code didn't make all hardware producers write their own drivers and publish them. Some did, others released only simpler versions, and other didn't release anything and it was up to volunteer to do it.
Between this and a Darwin world where the latter group would release good drivers but keep them close sourced, I don't think there's any advantage for the community either way.
While I do agree that Apple is most definitely not trying to build a healthy ecosystem around Darwin (or in fact _any_ ecosystem at all...), Apple itself still publishes all of its Darwin code, and hence it would have complied with the licence had that been GPL. (the only exception being drivers but that's not up to Apple, as the situation in the Linux world showed).
Apple could have still kept Aqua and the rest closed source. So using Apple as an example of a company that took but didn't give back because of the licence seems wrong.
Except for a necessary parts to make it useful. From someone close to the source (the last paragraph pretty much wraps it up):
http://www.synack.net/~bbraun/writing/oshistory.html
"b) The other BSDs have openly stated that Apple contributed back and thanked them for it."
Yes, see the <s>huge amount of code</s> that Apple contributed to the NetBSD kernel:
http://nxr.netbsd.org/source/search?q=apple&project=/src...
"Finally and I think the most important thing, is to ask: had those technologies been GPLed, [...], or simply have refused to use that code?"
Yes, who would use (L)GPL code in their systems?
It's true that LLVM and Webkit (based on KHTML, which was LGPL) are exceptions. However, it remains to be seen what they contribute back to LLVM in the future. Probably just those bits that will give them the tools edge.