In gnu.misc.discuss Hyman Rosen <[email protected]> wrote: > Alan Mackenzie wrote: >> That's one of the things that requires GPL licensing. The overarching >> thing that mandates new code being licensed under the GPL is its being a >> modification of a GPL program.
> And a separately written program which makes calls to existing > GPLed code is not a modification of that code. It depends entirely on what the "separate" program is. If it "contains" bits of another program, it isn't all that separate. The issue is what is meant by "contains". >> If the invoked function is essentially a part of the calling program, > > it must also be GPL. > First, you must distinguish between the source and binary. A separately > written piece of source code does not fall under any copyright but its > own, regardless of what function calls are embedded in its text. Assuming it's truly original, yes. If it's derived from some other piece of source code, it will require a copyright license. The fact that it calls certain functions is likely to indicate that the code is derived from the program containing those functions, since it will be using the internal data structures of the original. The exception is if the functions are designed to be callable from independent source, such as standard library functions like sin, cos, fopen, fseek. > If the compiled binary file incorporates a copy of the foreign code, > then to copy and distribute the binary in that form requires permission > from the copyright holder of the included work. If it does not > incorporate the foreign code (which is the case when dynamic linking is > used), .... Sorry, but that's irrelevant and not always true. A dynamically linked library could quite easily incorporate "foreign" code, even though most such libraries don't. > ..., then the binary also does not fall under any copyright but its > own. , unless, of course, it contains code derived from some other copyright work. >> This is covered by section 2 of GPL2 > As has been mentioned, before you read the GPL, you must decide whether > copyright law demands that any other rights aside from the author's need > to be considered. If the program does not physically include significant > parts of other copyrighted works, then no other copyright licenses need > to be considered. Whatever "physically" means. There's nothing physical here, only various levels of abstraction and sequences of bits. What you're saying here leads to absurdity. If Bob uses a different compiler from Alice, his binary won't "contain", physically or otherwise, any significant part of hers, even if he fails to change a single line of her source code. Considering binaries isn't helpful, it just leads to confusion. But you're going to carry on doing it, so I might as well go with you. ;-) You're probably going to retort (validly) that that Bob's binary was based on Alice's source, so it violates her copyright. OK, suppose Bob "writes" his own source by feeding Alice's source through an obfuscator, or a language translator which converts it from C to Haskell. You'll probably agree with me that Bob's binary is still derived from Alice's source. Now suppose instead that Bob manually changes Alice's source, say by changing the identifier names in the data structures, or by translating it manually into Haskell, then modifying this source and compiling it. This is the case where you've asserted (wrongly) that Bob's binary is independent of Alice's copyright. (Alice here has written GCC, and Bob writes a code generator for a new chip). In none of the above scenarios does the form of the binary and the call make any odds. Whether Bob adds bob.c into the build process, creates libbob.a or creates libbob.so.0.1 has no bearing on the copyright question. Even in literary works, there's no requirement for "physical" inclusion. If Bob translates Alice's novel from English to Russion, renaming London to Moscow, Bob to Ivan, and Alice to Natalia, not a single word of Alice's original will survive the translation. Yet the translated novel is derived from the original and needs a copyright license. -- Alan Mackenzie (Nuremberg, Germany). _______________________________________________ gnu-misc-discuss mailing list [email protected] http://lists.gnu.org/mailman/listinfo/gnu-misc-discuss
