(Reposted in here because this is the more correct section.)
So the situation is this: I run a project which is a fork of an emulator licensed under GPL v2, my fork respects that and has not changed the license. Last year, a contributor joined my team and then this year, he quit the team due to a disagreement. He then forked my project.
Now the things he did that I am concerned about are two:
1. He relicensed his fork as BSD 3-clause, keeping individual GPL v2 licensed files GPL v2, but changing the overall project license - is that allowed?
2. On his fork's website, he is distributing Linux binaries of his fork but has to this day not released the source code of the Linux-specific parts, claiming on his site that he is going to as soon as he deems it ready for release - is that allowed?
Since the project includes GPLv2-licensed parts, the entire work must be distributed under the GPLv2. It is true that a downstream modifier is free to say, "If you use my code that I contributed to this GPL project in isolation, you may do so under this BSD license," but the software as a whole must be under GPLv2 as long as it contains someone else's GPLv2 work. Section 2(b) requires of derivatives:
You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
Certainly this is not allowed. Section 3 governs the conditions under which licensees may distribute the software in binary form:
You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange
There are other options, but they all involve offering the source code for the distributed binary. A vague promise to release the source at some point in the future does not satisfy any option of this requirement. If the downstream author does not feel ready to release their source code, they can simply wait to release the binary.