Eric Kohl wrote:
Another issues are licenses and copyrights. IMO, public headers and import libraries should not be licensed or copyrighted at all. They should be in the public domain, so anybody can use them the way they want.
This is the only option that makes the most sense. Headers and import libraries should remain in the public domain. MinGW will have to examine the w32api to possibly determine a license change. It is currently written as
<license file="windows.h"> /* windows.h - main header file for the Win32 API
Written by Anders Norlander anorland@hem2.passagen.se
This file is part of a free library for the Win32 API.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
*/ </license>
The email address for Anders isn't a valid email address any longer. I've modified the license once to remove a requirement to notify Anders of the use of the w32api, since that wasn't possible anyway.
Wine code is published under the LGPL, which is important because of Winelib. ReactOS on the other hand should use a clean mix of licenses: GFDL for the documentation, public domain for public headers and import libraries and GPL for the internal code. We should establish a GPL/LGPL dual-license agreement so that shared code automatically changes its license when it is moved from ReactOS to Wine or vice versa.
This makes sense, perhaps a clause similar to the one Cygwin uses?
<snippit file="CYGWIN_LICENSE"> In accordance with section 10 of the GPL, Cygnus permits programs whose sources are distributed under a license that complies with the Open Source definition to be linked with libcygwin.a without libcygwin.a itself causing the resulting program to be covered by the GNU GPL.
This means that you can port an Open Source(tm) application to cygwin, and distribute that executable as if it didn't include a copy of libcygwin.a linked into it. Note that this does not apply to the cygwin DLL itself. If you distribute a (possibly modified) version of the DLL you must adhere to the terms of the GPL, i.e., you must provide sources for the cygwin DLL.
See http://www.opensource.org/osd.html for the precise Open Source Definition referenced above. </snippit>
Earnie