diff --git a/cmake/darling_framework.cmake b/cmake/darling_framework.cmake index e0e4266b1..4c9d5020e 100644 --- a/cmake/darling_framework.cmake +++ b/cmake/darling_framework.cmake @@ -3,14 +3,20 @@ include(darling_lib) include(InstallSymlink) function(add_framework name) - cmake_parse_arguments(FRAMEWORK "CURRENT_VERSION;FAT" "VERSION;LINK_FLAGS" "SOURCES;DEPENDENCIES" ${ARGN}) + cmake_parse_arguments(FRAMEWORK "CURRENT_VERSION;FAT;PRIVATE" "VERSION;LINK_FLAGS" "SOURCES;DEPENDENCIES" ${ARGN}) if (FRAMEWORK_CURRENT_VERSION) set(my_name "${name}") else (FRAMEWORK_CURRENT_VERSION) set(my_name "${name}_${FRAMEWORK_VERSION}") endif (FRAMEWORK_CURRENT_VERSION) - set(DYLIB_INSTALL_NAME "/System/Library/Frameworks/${name}.framework/Versions/${FRAMEWORK_VERSION}/${name}") + if (FRAMEWORK_PRIVATE) + set(dir_name "PrivateFrameworks") + else (FRAMEWORK_PRIVATE) + set(dir_name "Frameworks") + endif (FRAMEWORK_PRIVATE) + + set(DYLIB_INSTALL_NAME "/System/Library/${dir_name}/${name}.framework/Versions/${FRAMEWORK_VERSION}/${name}") add_darling_library(${my_name} SHARED ${FRAMEWORK_SOURCES}) if (FRAMEWORK_CURRENT_VERSION) @@ -34,11 +40,11 @@ function(add_framework name) set_property(TARGET ${my_name} APPEND_STRING PROPERTY LINK_FLAGS " ${FRAMEWORK_LINK_FLAGS}") endif (FRAMEWORK_LINK_FLAGS) - install(TARGETS ${my_name} DESTINATION "libexec/darling/System/Library/Frameworks/${name}.framework/Versions/${FRAMEWORK_VERSION}/") + install(TARGETS ${my_name} DESTINATION "libexec/darling/System/Library/${dir_name}/${name}.framework/Versions/${FRAMEWORK_VERSION}/") if (FRAMEWORK_CURRENT_VERSION) - InstallSymlink(${FRAMEWORK_VERSION} "${CMAKE_INSTALL_PREFIX}/libexec/darling/System/Library/Frameworks/${name}.framework/Versions/Current") - InstallSymlink("Versions/Current/${name}" "${CMAKE_INSTALL_PREFIX}/libexec/darling/System/Library/Frameworks/${name}.framework/${name}") + InstallSymlink(${FRAMEWORK_VERSION} "${CMAKE_INSTALL_PREFIX}/libexec/darling/System/Library/${dir_name}/${name}.framework/Versions/Current") + InstallSymlink("Versions/Current/${name}" "${CMAKE_INSTALL_PREFIX}/libexec/darling/System/Library/${dir_name}/${name}.framework/${name}") endif (FRAMEWORK_CURRENT_VERSION) endfunction(add_framework)