3

The program I'm planning to use for obtaining the code coverage of my tests (OpenCppCoverage) is licensed under GPL v3.0, which implies some obligations for those who modify or redistribute this code or part of it, mainly making the code that uses it GPL as well. As far as I understand the GPL license, the output of a GPL program is not covered by the license, which is only applied to the code itself, except for some cases, such as videogames.

Since I will be using this tool for code coverage, I won't be modifying its code, and of course I won't be distributing it with my work ever, I understand that my use case falls under the category of only using the output of this program. In this specific case -no modifications, no redistribution-, in the event that I end up giving my work a commercial use, is the code whose tests are going to be processed by OpenCppCoverage under any kind of obligation listed by the GPL license?

2
  • Are you planning to modify or redistribute this code or part of it?
    – user253751
    Mar 6, 2023 at 14:37
  • @user253751 I'm planning to not touch the code in any form, and distributing it wouldn't make sense, since it's for calculating the code coverage achieved by internal tests that won't be distributed either.
    – Pablo
    Mar 8, 2023 at 20:19

1 Answer 1

4

Correct. You can use GPL-licensed developer tools to develop proprietary software. Use of Linux, GCC, Emacs, OpenCppCoverage all don't matter.

To be pendantic, it can depend on how these tools work. For example, some coverage tools work by instrumenting the software under test with additional code. If that additional code were GPL-licensed, the instrumented software could only be distributed under the GPL as well. However, that is quite irrelevant here:

  • it would be very unusual to distribute such instrumented binaries, and GPL only triggers requirements when you give someone else a copy of the software
  • GPL-covered tools that inject code snippets typically include a license exception to avoid such problems (this is the case for GCC)
  • OpenCppCoverage doesn't work that way. Instead, it runs the software under a debugger.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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