Files
CMake/Tests/RunCMake/CMakePackage/apple-export-common.cmake
T
Brad King 2a398cd9b6 CMakePackageConfigHelpers: Clarify generate_apple_*_selection_file signatures
The helpers added by:

* commit 37bc3400cd (CMakePackageConfigHelpers: Add
                     generate_apple_platform_selection_file(), 2023-11-03)
* commit 4ac5a2f866 (CMakePackageConfigHelpers: Add
                     generate_apple_architecture_selection_file(), 2023-12-19)

were worded in terms of including package configuration files, but the
actual functionality is to include files *from* package configuration
files.  The included files do not themselves need to be usable as
package configuration files.

Rename the options and clarify the documentation accordingly.

Issue: #25262
Issue: #25516
2024-01-04 19:01:35 -05:00

30 lines
1.5 KiB
CMake

include(apple-common.cmake)
add_library(mylib STATIC src/mylib.c)
target_sources(mylib PUBLIC FILE_SET HEADERS BASE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/include FILES include/mylib.h)
install(TARGETS mylib EXPORT mylib-targets FILE_SET HEADERS ARCHIVE DESTINATION lib/${platform_name})
install(EXPORT mylib-targets DESTINATION lib/${platform_name}/cmake/mylib)
if(IOS_SIMULATOR_SELECT_ARCHS)
set(IOS_SIMULATOR_INCLUDE_FILE lib/ios-simulator/cmake/mylib/mylib-select-arch.cmake)
else()
set(IOS_SIMULATOR_INCLUDE_FILE lib/ios-simulator/cmake/mylib/mylib-targets.cmake)
endif()
include(CMakePackageConfigHelpers)
generate_apple_platform_selection_file(mylib-config-install.cmake
INSTALL_DESTINATION lib/cmake/mylib
INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}
MACOS_INCLUDE_FILE lib/macos/cmake/mylib/mylib-targets.cmake
IOS_INCLUDE_FILE lib/ios/cmake/mylib/mylib-targets.cmake
IOS_SIMULATOR_INCLUDE_FILE ${IOS_SIMULATOR_INCLUDE_FILE}
TVOS_INCLUDE_FILE lib/tvos/cmake/mylib/mylib-targets.cmake
TVOS_SIMULATOR_INCLUDE_FILE lib/tvos-simulator/cmake/mylib/mylib-targets.cmake
VISIONOS_INCLUDE_FILE lib/watchos/cmake/mylib/mylib-targets.cmake
VISIONOS_SIMULATOR_INCLUDE_FILE lib/watchos-simulator/cmake/mylib/mylib-targets.cmake
WATCHOS_INCLUDE_FILE lib/watchos/cmake/mylib/mylib-targets.cmake
WATCHOS_SIMULATOR_INCLUDE_FILE lib/watchos-simulator/cmake/mylib/mylib-targets.cmake
)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/mylib-config-install.cmake DESTINATION lib/cmake/mylib RENAME mylib-config.cmake)