Thank you Ron Ginsberg, and thank you Jack Portier.
Here's the crux of my problem:
I am developing an application written in MFC.
It also includes some open-source GPL code too.
So far, no problem. The Visual C++ 6.0 development environment's licensing
doesn't forbid me from doing anything except redistributing code written by
Microsoft, which I will not do anyway, because it is a commercial
application I am developing.
My problem arises here:
Because I am using some of Microsoft's advanced common controls that
normally ship with Internet Explorer 5.x, I have had to download the
Microsoft Platform SDK to "freshen" my header files.
The constants necessary to use the new controls are in the updated
header files in the MS Platform SDK.
The hitch is that the (newer) license for the MS Platform SDK seems to
be forbidding me from using open source source code in my application!!!
I'm not a lawyer, so I'm not absolutely sure if I've understood the
licensing properly, but if that IS the case, I have to completely move my
application development from Microsoft tools to open source tools.
I've included the relevant part of the MS Platform SDK licensing agreement,
if anyone wants to have a go at interpreting it, please do.
* Publicly Available Software. Your license rights to the Redistributable
Components are conditioned upon your not
incorporating into, combining with, or distributing in conjunction with the
Redistributable Components or a derivative work
thereof, or using in the development of a derivative work of the
Redistributable Components, other software which is licensed
pursuant to terms that (a) create, or purport to create, obligations for
Microsoft with respect to the Redistributable
Components or derivative work thereof or (b) grant, or purport to grant, to
any third party any rights or immunities under
Microsoft's intellectual property or proprietary rights in the
Redistributable Components or derivative work thereof. By way
of example but not limitation of the foregoing, You shall not (a)
incorporate any Publicly Available Software in whole or in
part into any part of a derivative work of the Redistributable Components;
(b) use Publicly Available Software in whole or in
part in the development of any part of a derivative work of the
Redistributable Components in a manner that may subject the
Redistributable Components or derivative work thereof, in whole or in part,
to all or part of the license obligations of any
Publicly Available Software, or (c) combine or distribute the
Redistributable Components or derivative thereof with any
Publicly Available Software. "Publicly Available Software" means each of
(i) any software that contains, or is derived in any
manner (in whole or in part) from, any software that is distributed as free
software, open source software (e.g. Linux), or
similar licensing or distribution models; and (ii) any software that
requires as a condition of use, modification and/or
distribution of such software that such software or other software
incorporated into, derived from or distributed with such
software be (a) disclosed or distributed in source code form; (b) be
licensed for the purpose of making derivative works; or
(c) be redistributable at no charge. Publicly Available Software includes,
without limitation, software licensed or
distributed under any of the following licenses or distribution models, or
licenses or distribution models similar to any of
the following: (a) GNU's General Public License (GPL) or Lesser/Library GPL
(LGPL), (b) The Artistic License (e.g., PERL), (c)
the Mozilla Public License, (d) the Netscape Public License, (e) the Sun
Community Source License (SCSL), (f) the Sun Industry
Standards Source License (SISL), and (g) the Apache Server license.