Sign up ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

I'm considering using a project from that uses the CPOL license. Section 5e says:

"You may distribute the Executable Files and Source Code only under the terms of this License, and You must include a copy of, or the Uniform Resource Identifier for, this License with every copy of the Executable Files or Source Code You distribute and ensure that anyone receiving such Executable Files and Source Code agrees that the terms of this License apply to such Executable Files and/or Source Code. You may not offer or impose any terms on the Work that alter or restrict the terms of this License or the recipients' exercise of the rights granted hereunder. You may not sublicense the Work. You must keep intact all notices that refer to this License and to the disclaimer of warranties. You may not distribute the Executable Files or Source Code with any technological measures that control access or use of the Work in a manner inconsistent with the terms of this License."

Is not clear to me if I should include their source code with my executable or not. Or even worse, if I should make my own source code available such as with GPL license.

The reason why is not clear to me is because I'm not sure if by compiling their source code together with mine I'm "distributing" either their "Source Code" or "Executable Files"?

share|improve this question
I am not a lawyer, but the license does not say that you are required to distribute any source code. That distinction is found primarily in the GPL, a copyleft license. If the author wanted copyleft characteristics, they would almost certainly have used the GPL, not the CPOL. –  Robert Harvey Jul 5 '11 at 17:23

1 Answer 1

up vote 4 down vote accepted

Legally, compiling is like stapling. If you staple a copy of a DVD of your wedding to a copy of a DVD of The Phantom Menace, it is legally both your wedding and The Phantom Menace. If you deliver the two DVD's stapled together, you are distributing The Phantom Menace.

Compiling cannot produce a derivative work because a compiler is not creative. Legally, only a creative produce can produce a work.

However, if your source code contains protectable expression from the other work, then your source code is a derivative work. When you compile it, it's still a derivative work. I have read the license twice, and I see no place that it requires you to distribute the source code of derivative works like the GPL does.

Oddly, and for absolutely no reason (it's not legally necessary) the license requires you to get your users to agree to the terms of the license. That's awkward.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.