FindMFC, CMAKE_MFC_FLAG: Update documentation

FindMFC:
- Synced module documentation with other similar find modules.
- Added examples section.
- Added reference link to CMAKE_MFC_FLAG variable.

CMAKE_MFC_FLAG:
- Added separate examples section.
- Mentioned FindMFC module.
- Used target_compile_definitions() instead of add_definitions().
This commit is contained in:
Peter Kokot
2025-04-28 02:32:56 +02:00
parent b73c194b98
commit bc9faec5e5
2 changed files with 50 additions and 9 deletions

View File

@@ -8,13 +8,25 @@ It should be set to ``1`` for the static MFC library, and
``2`` for the shared MFC library. This is used in Visual Studio
project files.
Contents of ``CMAKE_MFC_FLAG`` may use
:manual:`generator expressions <cmake-generator-expressions(7)>`.
Examples
^^^^^^^^
Usage example:
.. code-block:: cmake
add_definitions(-D_AFXDLL)
set(CMAKE_MFC_FLAG 2)
add_executable(CMakeSetup WIN32 ${SRCS})
Contents of ``CMAKE_MFC_FLAG`` may use
:manual:`generator expressions <cmake-generator-expressions(7)>`.
# Visual Studio generators add this flag automatically based on the
# CMAKE_MFC_FLAG value, but generators matching "Make" require it:
target_compile_definitions(CMakeSetup PRIVATE _AFXDLL)
See Also
^^^^^^^^
* The :module:`FindMFC` module to check whether MFC is installed and available.

View File

@@ -5,16 +5,45 @@
FindMFC
-------
Find Microsoft Foundation Class Library (MFC) on Windows
Finds the native Microsoft Foundation Class Library (MFC) for developing MFC
applications on Windows.
Find the native MFC - i.e. decide if an application can link to the
MFC libraries.
.. note::
::
MFC is an optional component in Visual Studio and must be installed
separately for this module to succeed.
MFC_FOUND - Was MFC support found
Once the MFC libraries and headers are found, no additional manual linking is
needed, as they are part of the development environment.
You don't need to include anything or link anything to use it.
Result Variables
^^^^^^^^^^^^^^^^
This module defines the following variables:
``MFC_FOUND``
Boolean indicating whether MFC support is found.
Examples
^^^^^^^^
Using this module to check if the application can link to the MFC libraries:
.. code-block:: cmake
find_package(MFC)
if(MFC_FOUND)
# Example logic when MFC is available...
set(CMAKE_MFC_FLAG 2)
add_executable(app WIN32 main.cpp)
target_compile_definitions(app PRIVATE _AFXDLL)
endif()
See Also
^^^^^^^^
* The :variable:`CMAKE_MFC_FLAG` variable.
#]=======================================================================]
# Assume no MFC support