cc'ing bkuhn even though he is subscribed to this list as he may be
the most qualified person in the world to answer at least one of the
following questions, and perhaps it will be more likely to reach his
attention this way.
On 12/30/2012 10:33 AM, Richard Fontana wrote:
> (iii) all relevant interface definition files;
Is this intended to mean: the API?
There are one or more interesting questions implied by this one.
The reference to "interface definition files" was IIRC introduced in
GPLv2's definition of complete corresponding source code. It was
retained in GPLv3's definition of "Corresponding Source", and also in
copyleft-next (with the addition of the adjective 'relevant' which I
suppose reflected the germ of some questioning of this by me).
I do not know what the GitHub commenter means by "the API", but in a
way that itself is an interesting point. I have always assumed that
the "interface definition files" referred to in GPLv2 are .h files of
programs written in C (or C++).
I know there are a few archaic programming languages (unlikely to be
placed under copyleft-next in any reasonably foreseeable sense) that
have counterparts to C header files. What non-archaic programming
languages (other than *very* close descendants of C) use the
equivalent of .h files?
Could "interface definition files" mean something other than .h files
in any sort of foreseeable GPL compliance context?
And, finally, what's an example of a GPLv2 violation where the
violation is specifically the failure to provide an "interface
definition file"? (Put it another way: an accused GPLv2 violator comes
into compliance except that the GPLv2 enforcer accuses it of failure
to supply an "interface definition file". Is this realistic, and if so
can someone supply a detailed example?
Oh, post-finally: if this user found the term "interface definition
file" sufficiently confusing or unclear as to ask whether this meant
"the API" (leaving aside the fact that that is too unclear a
question), does this suggest that there is a clearer phrase to use
than "interface definition file"? If my understanding of the intention
is correct, would it be better to say something like "For example, if
the Covered Work was written in C, you need to include all relevant
header files"?
- RF