Submitting Patches

The best way to submit a patch is to do it via the email list; the best way to submit that is (assuming the patch is short) is with a “unified” diff that shows +/- changes as well as context.

You can generate this with the following command:

 diff -U 3 file.old file.new 

which will generate some text. Putting this text in your email message means everyone on the mailing list will immediately easily be able to read it.

Note- by submitting a patch for CRM114, you affirm that you have authority to grant full license to the patch submitted AND you assign full rights to the patch (including license to relicense in any way desired) to the author(s) of the code being patched. If your patch is *big*, and you want to reuse the code for other things, then please ask that the new code be licensed with full rights to relicense to both yourself and all current licensees. That way, everyone can have their cake and everyone can eat it too.

Licensing

CRM114 is licensed with the Free Software Foundation's GPL version 2 (and the license is included in the source kits).

To summarize:

1) Yes, you can use CRM114 internally in your organization. You don't need to ask permission from anybody. Just do it.

2) Really! No matter how big or how many users or if you modify it- if you keep it inside your organization, it's free, just do it (although feeding back good patches is always considered “neighborly” and means new versions will already contain your improvements).

3) Yes, you can incorporate it in a product; you just need to include the source code that YOU used to compile and build the executable that has CRM114 embedded in it, and allow your users to read, modify, and redistribute the CRM114 source code. It doesn't matter if you sell your product or give it away for free; you need to have all the source needed to build the CRM114-embedded binary.

4) You do NOT need to include any sources that don't build into CRM114-included binaries.(this is a simplification- read the GPL for full details)

5) You do NOT need to include any sources of CRM114 programs (that is, written in the CRM114 JIT language), nor any program that talks to the CRM114 engine via files or pipes or command scripts. Those are all yours.

6) If you really, really want a private no-source-code license, please talk to Bill Yerazunis. They can be done, but they ain't cheap.