[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[MiNT] MiNTLib and GPL/BSD copyright



Hi,

As I mentioned in another mail I'm trying hard to get the MiNTLib
up-to-date with other libc implementations to aid in the porting of
software to MiNT.  Of course, the easiest way to do this is to look out
for existing implementations which are mostly either available under the
GNU General Public License or the BSD Copyright.

My current strategy is as follows: If a particular function already exists
in the MiNTLib but has limitations/bugs so that I decide that it should be
replaced I provide the old routine under a different name.  An example
would be the getopt() function.  I have replaced that with GNU getopt
(used by default), if the programmer #defines _AVOID_GPL (or something
similar, I have forgetten the exact name), the old version will be used.  
Since this can only be done on the preprocessor resp. source code level,
it requires some discipline of people that don't want to link GPL'd code
into their programs

As long as no namespace problems occur, I simply provide both interfaces.
An example is the regex stuff.  I don't have the knowledge to say whether
the old MiNTLib regex implementation was good or not but I know that I
never came across any program from outside the MiNT world that ever
used it.

Then, some functions are "typically" GNU or BSD, for example error() resp.
error_at_line() (GNU) or BSD db functionality.  In my opinion such
functions should rather be provided under the GPL or BSD license then not
at all.

Last, for some functions I feel that I could only provide a buggy or
limited implementation if I wrote it myself.  For example the 48 bit
random functions drand48(), srand48(), etc.  As long as nobody volunteers
to rewrite such code from the scratch and makes it public domain, I
"steal" that from GPL'd code and make it available for the development of
free software.

Of course I take care that functions that are currently free are not
modified in such a way that they drag code with copyright restrictions
into the link although this is sometimes only possible with some nuisance
or extra work for people whose software doesn't meet the conditions of the
typical open source licenses (see comments on getopt).

I want to avoid that somebody thinks I would silently change the copying
policy of the MiNTLib by such extensions.  Thus I would be glad to here
your comments on the subject.

BTW, an alternative would be to split up the library into a "free for
commercial use" and an "open source policy" part.  As long as you follow
open source policy you could even merge these libraries into one but in
any case it would require quite some work and care for both the maintainer
and the user of the library.

Thanks for your attention!

Guido
-- 
http://stud.uni-sb.de/~gufl0000
mailto:gufl0000@stud.uni-sb.de