diff --git a/reference/conanfile/tools/apple.rst b/reference/conanfile/tools/apple.rst index cf9ebc13324..200c816d04b 100644 --- a/reference/conanfile/tools/apple.rst +++ b/reference/conanfile/tools/apple.rst @@ -66,36 +66,34 @@ case). The above commands generate the following files: .. code-block:: bash - . - ├── conan_libpng.xcconfig - ├── conan_libpng_debug_x86_64.xcconfig - ├── conan_libpng_release_x86_64.xcconfig - ├── conan_libpng_vars_debug_x86_64.xcconfig - ├── conan_libpng_vars_release_x86_64.xcconfig - ├── conan_zlib.xcconfig - ├── conan_zlib_debug_x86_64.xcconfig - ├── conan_zlib_release_x86_64.xcconfig - ├── conan_zlib_vars_debug_x86_64.xcconfig - ├── conan_zlib_vars_release_x86_64.xcconfig - ├── conandeps.xcconfig - └── conan_config.xcconfig + . + ├── conan_config.xcconfig + ├── conan_libpng.xcconfig + ├── conan_libpng_libpng.xcconfig + ├── conan_libpng_libpng_debug_x86_64.xcconfig + ├── conan_libpng_libpng_release_x86_64.xcconfig + ├── conan_zlib.xcconfig + ├── conan_zlib_zlib.xcconfig + ├── conan_zlib_zlib_debug_x86_64.xcconfig + ├── conan_zlib_zlib_release_x86_64.xcconfig + └── conandeps.xcconfig The first ``conan install`` with the default *Release* and *x86_64* configuration generates: -- *conan_libpng_vars_release_x86_64.xcconfig*: declares some intermediate variables that are included in *conan_libpng_release_x86_64.xcconfig* -- *conan_libpng_release_x86_64.xcconfig*: includes *conan_libpng_vars_release_x86_64.xcconfig* and declares variables with conditional logic to be considered only for the active configuration in *Xcode* or the one passed by command line to *xcodebuild*. -- *conan_libpng.xcconfig*: includes *conan_libpng_release_x86_64.xcconfig* and declares the following *Xcode* build settings: ``HEADER_SEARCH_PATHS``, ``GCC_PREPROCESSOR_DEFINITIONS``, ``OTHER_CFLAGS``, ``OTHER_CPLUSPLUSFLAGS``, ``FRAMEWORK_SEARCH_PATHS``, ``LIBRARY_SEARCH_PATHS``, ``OTHER_LDFLAGS``. It also includes the generated *xcconfig* files for transitive dependencies (*conan_zlib.xcconfig* in this case). -- Same 3 files will be generated for each dependency in the graph. In this case, as *zlib* is a dependency of *libpng* it will generate: *conan_zlib_vars_release_x86_64.xcconfig*, *conan_zlib_release_x86_64.xcconfig* and *conan_zlib.xcconfig*. +- *conan_libpng_libpng_release_x86_64.xcconfig*: declares variables with conditional logic to be considered only for the active configuration in *Xcode* or the one passed by command line to *xcodebuild*. +- *conan_libpng_libpng.xcconfig*: includes *conan_libpng_libpng_release_x86_64.xcconfig* and declares the following *Xcode* build settings: ``HEADER_SEARCH_PATHS``, ``GCC_PREPROCESSOR_DEFINITIONS``, ``OTHER_CFLAGS``, ``OTHER_CPLUSPLUSFLAGS``, ``FRAMEWORK_SEARCH_PATHS``, ``LIBRARY_SEARCH_PATHS``, ``OTHER_LDFLAGS``. It also includes the generated *xcconfig* files for transitive dependencies (*conan_zlib_zlib.xcconfig* in this case). +- *conan_libpng.xcconfig*: in this case it only includes *conan_libpng_libpng.xcconfig*, but in the case that the required package has components, this file will include all of the components of the package. +- Same 3 files will be generated for each dependency in the graph. In this case, as *zlib* is a dependency of *libpng* it will generate: *conan_zlib_zlib_release_x86_64.xcconfig*, *conan_zlib_zlib.xcconfig* and *conan_zlib.xcconfig*. - *conandeps.xcconfig*: configuration files including all direct dependencies, in this case, it just includes ``conan_libpng.xcconfig``. - The main *conan_config.xcconfig* file, to be added to the project. Includes both the files from this generator and the generated by the :ref:`XcodeToolchain` in case it was also set. The second ``conan install -s build_type=Debug`` generates: -- *conan_libpng_vars_debug_x86_64.xcconfig*: same variables as the one below for *Debug* configuration. -- *conan_libpng_debug_x86_64.xcconfig*: same variables as the one below for *Debug* configuration. -- *conan_libpng.xcconfig*: this file has been already creted by the previous command, now it's modified to add the include for *conan_libpng_debug_x86_64.xcconfig*. -- Like in the previous command the same 3 files will be generated for each dependency in the graph. In this case, as *zlib* is a dependency of *libpng* it will generate: *conan_zlib_vars_debug_x86_64.xcconfig*, *conan_zlib_debug_x86_64.xcconfig* and *conan_zlib.xcconfig*. +- *conan_libpng_libpng_debug_x86_64.xcconfig*: same variables as the one below for *Debug* configuration. +- *conan_libpng_libpng.xcconfig*: this file has been already creted by the previous command, now it's modified to add the include for *conan_libpng_debug_x86_64.xcconfig*. +- *conan_libpng.xcconfig*: this file will remain the same. +- Like in the previous command the same 3 files will be generated for each dependency in the graph. In this case, as *zlib* is a dependency of *libpng* it will generate: *conan_zlib_zlib_debug_x86_64.xcconfig*, *conan_zlib_zlib.xcconfig* and *conan_zlib.xcconfig*. - *conandeps.xcconfig*: configuration files including all direct dependencies, in this case, it just includes ``conan_libpng.xcconfig``. - The main *conan_config.xcconfig* file, to be added to the project. Includes both the files from this generator and the generated by the :ref:`XcodeToolchain` in case it was also set.