On Monday 22 January 2007 17:38, Jon Pruente wrote:
On 1/22/07, Luke -Jr [email protected] wrote:
Both.
Linus posted to the kerneltrap list:
Linus is wrong. He's not the only copyright holder, either.
WINE is not GPL'd, but even if it were, it would be a similar situation to ndiswrapper-- "GPL'd" software does exist built on the Win32 API.
For WINE to function it must make calls into all sorts of areas of GPL code.
Not quite.
WINE lets a Win32 program execute and intercepts Windows API function calls and translates them into Linux API calls, and vice versa.
No, it translates them into libc and X11 API calls, in addition to implementing the Win32 API that has no libc/X11 equivalent.
Much of the Linux API is GPL code. I'm sure we all know that. The userspace exception applies to the kernel, not GPL components running on top of the kernel.
Linux *is* the kernel. libc is not Linux, and is a standard API with multiple implementations. GNU libc is LGPL, not GPL. Your claim is without basis.
A program can run on top of the kernel in userspace and be clear of _kernel_ GPL restrictions, but what about the huge base of GPL code that makes up a distro?
And that is exactly why proprietary software often uses GTK (which is LGPL) instead of Qt (which is GPL).
Linus has no say over that.
That's what I mean when I write that it makes all sorts of calls into GPL code.
You're still missing the point that there is a legitimate use of WINE when the program running is GPL-compatible. For example, VirtualDub. VirtualDub is GPL, running with WINE's LGPL API, running on glibc (LGPL) and X11 (compatible). Everything here is linking happily.
Linux specifically excludes userland from the GPL obligations. Even if it did not, the code itself is not technically linking to Linux until runtime if it has the potential to link against something else (for example, BSD) unmodified.
It also makes "tolerable" exceptions for kernel modules.
It doesn't, never has, and never will (legal impossibility).