Re: Bug#383481: Must source code be easy to understand to fall under DFSG?
Anthony W. Youngman wrote:
In message <20061031162638.GA483@srcf.ucam.org>, Matthew Garrett
No, the preferred form *for* modification.
The only requirement on the original author (as I can determine) is that
you get source code for it, not that it is in preferred form for making
That's perfectly acceptable. Upstream can do whatever they want.
However, if upstream do not provide the preferred form for modification
(ie, the unobfuscated version), Debian can not distribute it under the
terms of the GPL.
If upstream own the copyright, and the obfuscated form is the only one
available under the GPL, I can't see any problem - at least as far as
the GPL is concerned.
There's no problem for the copyright holder: he already has the right to
distribute, so he doesn't need to comply with the GPL.
For Debian, and everyone else that /does/ need to comply with the GPL,
there's the obligation to
a) Accompany [the program] with the complete corresponding
machine-readable source code
The source code for a work means *the preferred form of the work for
making modifications to it*. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable.
(My emphasis and elision)
The key phrase here is 'the preferred form of the work for making
modifications to it'; notice that it's not 'the preferred form of the
work for making modifications to it that's been published under the
GPL'. If development is carried out on an unobfuscated version, no
matter what its licence, or whether it's been published, this means that
the obfuscated version cannot be the preferred form for modification.
If unpublished unobfuscated source code did not cause a problem with the
GPL, then neither would publishing a blob under the GPL, claiming that
there is no published source code, and then integrating it with an
existing GPL work. In effect, the GPL would become the LGPL.