OK, third draft: Q. I want to bundle Cygwin with a product, and ship it to customer sites. How can I do this without conflicting with any Cygwin installed by the user?
A. Third party developers who wish to use Cygwin should check if there is a version of cygwin installed and use the installed version if it is newer, or conditionally upgrade if it is not. (This is same scheme used by Microsoft with great success for its runtime DLLs for many years. If someone wrote a nice utility for doing this type of checking, the Cygwin developers would be happy to put it somewhere on the Cygwin site.) Also, remember that by distributing your project which depends on cygwin, you are bound by the license agreement, http://cygwin.com/licensing.html. Your application must either be under the GPL, or you must purchase a support contract through Red Hat; and if you choose to distribute cygwin1.dll, you must also ensure that you provide the cygwin source code that matches what you distribute. Q. Can I install a private version of cygwin that doesn't conflict with the system cygwin (in the same way that multiple versions of Wine can coexist)? A. The Cygwin maintainers will resist any suggestion to support this, no matter how sensible it might sound to you. Q. But doesn't that mean that if some application installs an older Cygwin library, my application will break? A. Yes. Tough. Don't install applications like that. Q. Doesn't this mean that Cygwin is fragile? A. No. Cygwin is *right*. It's those other applications, or perhaps the users, or both, that are wrong. -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/