Say we have a GPL library (CGAL for example). We have a big tasks chain like pipes modeling and testing. We would love to use library for our indoors application yet we must open sources... so we make a minimal application that takes arguments and files in, and returns files and data out. And is being used like closedSourceApp > GPLApp > closedSourceApp.

And all interesting/relevant parts are excluded from GPL app. At the same time GPL library is not used at its full potential and does not get integrated into bigger applications.

So the question is what reasons were behind GPL license idea to force project new code to live under it?

  • What do you mean by indoors application? Do you mean an application used only within your organization?
    – HerbN
    Jun 24 '14 at 19:47

The Free Software Foundation (FSF) already explains their motivations pretty well. Their goal is to give users freedom. Freedom to modify the source code of the programs they use as they see fit, freedom to distribute their modifications to others.

The only way users can get that freedom is if they have access to your source code. The GPL therefore requires that, if you use a library that is so licensed, you must also make your source code available.

The way FSF defines usage is by a concept called "derived works." If you link a library into your application, and that library is a substantial part of your application's functionality (i.e. your application won't work without it), the GPL considers that a derived work, and you must open your source.

If, instead, you connect to a GPL application at arm's length, and your application will work without the GPL application, then the GPL considers them two different applications, and you don't have to open the source code for your application.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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