diff --git a/documentation/winelib-mfc.sgml b/documentation/winelib-mfc.sgml
index 7f46226fdb..47c8d73721 100644
--- a/documentation/winelib-mfc.sgml
+++ b/documentation/winelib-mfc.sgml
@@ -4,42 +4,42 @@
Introduction
- To use the MFC in a Winelib application you will first have to
- recompile the MFC with Winelib. In theory it should be possible to
- write a wrapper for the Windows MFC as described in
- . But in practice
- it does not seem to be a realistic approach for the MFC:
+ To use the MFC in a Winelib application you will first have to
+ recompile the MFC with Winelib. In theory it should be possible to
+ write a wrapper for the Windows MFC as described in
+ . But in practice
+ it does not seem to be a realistic approach for the MFC:
- the huge number of APIs makes writing the wrapper a big task in
+ the huge number of APIs makes writing the wrapper a big task in
itself.
- furthermore the MFC contain a huge number of APIs which are tricky
+ furthermore the MFC contain a huge number of APIs which are tricky
to deal with when making a wrapper.
- even once you have written the wrapper you will need to modify
+ even once you have written the wrapper you will need to modify
the MFC headers so that the compiler does not choke on them.
- a big part of the MFC code is actually in your application in
- the form of macros. This means even more of the MFC headers have
- to actually work to in order for you to be able to compile an
+ a big part of the MFC code is actually in your application in
+ the form of macros. This means even more of the MFC headers have
+ to actually work to in order for you to be able to compile an
MFC based application.
- This is why this guide includes a section dedicated to helping you
+ This is why this guide includes a section dedicated to helping you
compile the MFC with Winelib.
@@ -47,53 +47,54 @@
Legal issues
- (Extracted from the HOWTO-Winelib written by Wilbur Dale
+ (Extracted from the HOWTO-Winelib written by Wilbur Dale
<wilbur.dale@lumin.nl>)
- The purpose of this section is to make you aware of potential legal
- problems. Be sure to read your licenses and to consult your lawyers.
- In any case you should not consider the remainder of this section to
+ The purpose of this section is to make you aware of potential legal
+ problems. Be sure to read your licenses and to consult your lawyers.
+ In any case you should not consider the remainder of this section to
be authoritative since it has not been written by a lawyer.
Well, let's try to have a look at the situation anyway.
- During the compilation of your program, you will be combining code
- from several sources: your code, Winelib code, Microsoft MFC code,
- and possibly code from other vendor sources. As a result, you must
- ensure that the licenses of all code sources are obeyed. What you are
- allowed and not allowed to do can vary depending on how you compile
- your program and if you will be distributing it. For example, if you
- are releasing your code under the GPL, you cannot link your code to
- MFC code because the GPL requires that you provide ALL sources to your
- users. The MFC license forbids you from distributing the MFC source so
- you cannot both distribute your program and comply with the GPL
- license. On the other hand, if your code is released under the LGPL,
- you cannot statically link your program to the MFC and distribute it,
- but you can dynamically link your LGPL code and the MFC library and
- distribute it.
+ During the compilation of your program, you will be combining code
+ from several sources: your code, Winelib code, Microsoft MFC code,
+ and possibly code from other vendor sources. As a result, you must
+ ensure that the licenses of all code sources are obeyed. What you are
+ allowed and not allowed to do can vary depending on how you combine
+ the code and if you will be distributing it. For example, if you
+ are releasing your code under the GPL or LGPL, you cannot use MFC
+ because these licenses do not allow covered code to depend on
+ libraries with non-compatible licenses.
+ There is a workaround - in the license for your
+ code you can make an exception for the MFC library.
+ For details see
+ The GNU GPL FAQ.
- Wine/Winelib is distributed under an X11-like license. It places few
- restrictions on the use and distribution of Wine/Winelib code. I doubt
- the Wine license will cause you any problems. On the other hand, MFC
- is distributed under a very restrictive license and the restrictions
- vary from version to version and between service packs. There are
+ Wine/Winelib is distributed under the GNU Lesser General Public
+ License. See the license for restrictions on the modification and
+ distribution of Wine/Winelib code. In general it is possible to
+ satisfy these restrictions in any type of application.
+ On the other hand, MFC
+ is distributed under a very restrictive license and the restrictions
+ vary from version to version and between service packs. There are
basically three aspects you must be aware of when using the MFC.
- First you must legally get MFC source code on your computer. The MFC
- source code comes as a part of Visual Studio. The license for
+ First you must legally get MFC source code on your computer. The MFC
+ source code comes as a part of Visual Studio. The license for
Visual Studio implies it is a single product that can not
- be broken up into its components. So the cleanest way to get MFC on
- your system is to buy Visual Studio and install it on a dual boot
+ be broken up into its components. So the cleanest way to get MFC on
+ your system is to buy Visual Studio and install it on a dual boot
Linux box.
Then you must check that you are allowed to recompile MFC on a
- non-Microsoft operating system! This varies with the version of MFC.
+ non-Microsoft operating system! This varies with the version of MFC.
The MFC license from Visual Studio 6.0 reads in part:
@@ -108,7 +109,7 @@
So it appears you cannot even compile MFC for Winelib using this
- license. Fortunately the Visual Studio 6.0 service pack 3 license
+ license. Fortunately the Visual Studio 6.0 service pack 3 license
reads (the Visual Studio 5.0 license is similar):
@@ -124,12 +125,12 @@
So under this license it appears you can compile MFC for Winelib.
- Finally you must check whether you have the right to distribute an
- MFC library. Check the relevant section of the license on
- redistributables and your redistribution rights
. The
- license seems to specify that you only have the right to distribute
- binaries of the MFC library if it has no debug information and if
- you distribute it with an application that provides significant
+ Finally you must check whether you have the right to distribute an
+ MFC library. Check the relevant section of the license on
+ redistributables and your redistribution rights
. The
+ license seems to specify that you only have the right to distribute
+ binaries of the MFC library if it has no debug information and if
+ you distribute it with an application that provides significant
added functionality to the MFC library.
@@ -220,8 +221,8 @@
- Specific winemaker options,
- the configure options,
+ Specific winemaker options,
+ the configure options,
the initialization problem...