Skip to content

Commit 8fefac1

Browse files
[incubating] Apple Frameworks (#4017)
* Added new field * Adding frameworks information * Reducing noise * Reducing noise
1 parent 6acc3ad commit 8fefac1

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

incubating.rst

+8-3
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,14 @@ This generator is designed as a replacement of the current ``CMakeDeps`` generat
2323
- Definition of ``cpp_info/component.exe`` information (should include the ``.location`` definition too), to define EXECUTABLE targets that can be run.
2424
- Executables from ``requires`` can also be used in non cross-build scenarios. When a ``tool_requires`` to the same depependency exists, then those executables will have priority.
2525
- Creation of a new ``conan_cmakedeps_paths.cmake`` that contains definitions of ``<pkg>_DIR`` paths for direct finding of the dependencies. This file is also planned to be used in ``cmake-conan`` to extend its usage and avoid some current limitations due to the fact that a CMake driven installation cannot inject a toolchain later.
26+
- (new since Conan 2.14) Better management of the system OSX Frameworks through ``cpp_info.frameworks``.
27+
- (new since Conan 2.14) Definition of ``cpp_info/component.package_framework`` information (should include the ``.location`` definition too,
28+
e.g., ``os.path.join(self.package_folder, "MyFramework.framework", "MyFramework")``) to define the custom OSX Framework library to be linked against.
2629

2730
.. note::
28-
31+
2932
This generator is only intended to generate ``config.cmake`` config files, it will not generate ``Find*.cmake`` find modules, and support for it is not planned.
30-
Use the ``CMakeDeps`` generator for that.
33+
Use the ``CMakeDeps`` generator for that.
3134

3235

3336
The new fields that can be defined in the ``cpp_info`` or ``cpp_info.components``, besides the already defined in :ref:`CppInfo<conan_conanfile_model_cppinfo>` are:
@@ -36,10 +39,12 @@ The new fields that can be defined in the ``cpp_info`` or ``cpp_info.components`
3639
3740
# EXPERIMENTAL FIELDS, used exclusively by new CMakeConfigDeps (-c tools.cmake.cmakedeps:new)
3841
self.cpp_info.type # The type of this artifact "shared-library", "static-library", etc (same as package_type)
39-
self.cpp_info.location # full location (path and filename with extension) of the artifact
42+
self.cpp_info.location # full location (path and filename with extension) of the artifact or the Apple Framework library one
4043
self.cpp_info.link_location # Location of the import library for Windows .lib associated to a dll
4144
self.cpp_info.languages # same as "languages" attribute, it can be "C", "C++"
4245
self.cpp_info.exe # Definition of an executable artifact
46+
self.cpp_info.package_framework # Definition of an Apple Framework (new since Conan 2.14)
47+
4348
4449
These fields will be auto-deduced from the other ``cpp_info`` and ``components`` definitions, like the ``libs`` or ``libdirs`` fields, but the automatic deduction might have limitations. Defining them explicitly will inhibit the auto deduction and use the value as provided by the recipe.
4550

0 commit comments

Comments
 (0)