They don't allow any kind of redistribution with 2.6, supposedly, unless you have licenses for it. But they don't sell licenses for it. But they give it away free. But, who knows, i think they just want us to buy an overpriced thing we don't need to write a free utility. I guess I'll look at NVelocity or TaHoGen...

I am concerned about placing some DLLs that go with a project, which is also free (on, but hasn't had a particular license associated with it yet. This is a bit lawerly, but hopefully not so much so that it can't be answered through experience. And there is a lot of that here :)

I think the issues is really with CodeSmith 2.6, since they have their own "custom" eula. To view the "sourcelicense.txt" you need to download the zip and open it, but i've copied the relevant parts into the post (sorry they are so long!)


What the app does it use CodeSmith 2.6 dlls, along with a collection of custom templates, to generate class files/etc. We don't need the codesmith source, only the compiled result. Of course, those dll's will be distributed with the application in the .exe. The question is whether or not stuffing them in to the repo is somehow different (or legally more questionable) than putting them into a .msi/.exe installer.

I'll approach codesmith about this, but I would like a better understanding than I have now, is all. They are currently not in the repo, but it would ease things for the dev processess if they were. End Edit

  • 1 MIT Licensed component (doesn't seem like an issue)
  • Mysql.Data.dll (not sure of the license)
  • CodeSmith 2.6 Freeware DLLS
    • Compiled to DLL form
    • SchemaExplorer.dll / etc
    • CodeSmith.Engine.dll

I'd like to be able to make the project self hosting, and not have the user go traipsing around, downloading and/or compiling copies of the source (especially if they find a newer version or older verision, which could easily happen with the MIT/msql components.)

There will be nice instructions if the DLLs can't be included, but life is infinitely simpler if they can, and there are no chances of the project going "dead" if one of them is suddenly yanked.

SOURCE CODE LICENSE (from CodeSmith 2.6 eula/sourcelicense.txt)

The SOURCE CODE is protected by United States copyright laws and international copyright treaties, as well as other intellectual property laws and treaties. The SOURCE CODE is licensed, not sold.

  1. GRANT OF LICENSE. This EULA grants you the following rights:

    1. Source Code. You may install and compile one copy of the SOURCE CODE on a single computer. The primary user of the computer on which the SOURCE CODE is installed may make a second copy for his or her exclusive use on a portable computer.
    2. Storage/Network Use. You may also store or install a copy of the SOURCE CODE on a storage device, such as a network server, used only to install or compile the SOURCE CODE on your other computers over an internal network; however, you must acquire and dedicate a license for each separate computer on which the SOURCE CODE is installed or compiled from the storage device. A license for the SOURCE CODE may not be shared or used concurrently on different computers.
    3. Use and Modification. SMITH grants you the right to use and modify the SOURCE CODE to better fit your needs. You may not distribute the SOURCE CODE, or any modified version of the SOURCE CODE, in any form. Any modifications made to the SOURCE CODE will continue to be subject to the terms and conditions of this EULA. Any modified versions of the SOURCE CODE may only be executed in object form by users also owning a SOURCE CODE LICENSE or by users owning a CodeSmith Professional license.
    4. Use of Generated Output. You may distribute the output of your custom templates or the included templates in any way.

    1. Separation of Components. The SOURCE CODE is licensed as a single product.
    2. Redistribution. The SOURCE CODE may not be redistributed in any way.
    3. Custom Template Distribution. You may distribute your custom templates for the SOURCE CODE only if they are offered free of charge.
    4. No Rental. You may not rent, lease, lend or provide commercial hosting services to third parties with the SOURCE CODE.
    5. Non-Transferable. This license may not be transfered or sold in any way.
    6. Termination. Without prejudice to any other rights, SMITH may terminate this EULA if you fail to comply with the terms and conditions of this EULA. In such event, you must destroy all copies of the SOURCE CODE and all of its component parts.

    1. Support Services. SMITH may, but is not obligated to, provide you with support services related to the SOURCE CODE.
    2. Supplements. This EULA applies to additional software and updates of the SOURCE CODE, including without limitation supplements, service packages, hot fixes, or add-on components (collectively "Supplements") that SMITH may provide to you or make available to you after the date you obtain your initial copy of the SOURCE CODE, unless other terms are provided along with such Supplements.
  4. COPYRIGHT. All title and copyrights in and to the SOURCE CODE (including but not limited to any images, photographs, animations, video, audio, music, text, SAMPLE CODE, and "applets" incorporated into the SOURCE CODE) and any copies of the SOURCE CODE are owned by SMITH. The SOURCE CODE is protected by copyright laws and international treaty provisions. Therefore, you must treat the SOURCE CODE like any other copyrighted material except that you may install the SOURCE CODE.

Was it helpful?


First: Stackoverflow is not a lawyer and can not provide legal advice. Take any legal information here with a grain of salt, and ask a lawyer if it matters.

Umm, that isn't anything close to a free software license, so I don't think it follows rules.

It doesn't grant you any permission to redistribute, either. In fact, it bars it:

2.2 Redistribution. The SOURCE CODE may not be redistributed in any way.

Possibly, your DLL is a "custom template", in which case it must be distributed free of charge, which violates clause 1 of the Open Source Definition

Custom Template Distribution. You may distribute your custom templates for the SOURCE CODE only if they are offered free of charge.

Other than that, you definitely need to clarify what you're doing.


I'm not familiar with what CodeSmith does, and I don't know exactly what you're doing with it. Obviously, you aren't going to redistribute source code, but they don't seem all that concerned with what you might redistribute.

There's that "Use of Generated Output" clause; are you going to be distributing template output only? Were you going to change their source code for this project? Without knowing the answers to questions like these, I can't advise you.

You could clarify what you're doing, or ask CodeSmith. I'm not sure that finding a lawyer who can answer your specific questions is going to be easy, as there's a lot of technical stuff going on in that license.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow