this repo has no description
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Rework the separated framework function

This prevents everything that depends on
CoreFoundation from being relinked each time
Darling is built.

This was accomplished by reworking the
dependencies in order to avoid using the BYPRODUCTS
argument because that marks the output files as
GENERATED, causing CMake to build anyway
regardless of the date it was modified.

+13 -14
+12 -7
cmake/darling_framework.cmake
··· 114 114 115 115 if (FRAMEWORK_LINK_FLAGS) 116 116 set_property(TARGET ${my_name}_i386 APPEND_STRING PROPERTY LINK_FLAGS " ${FRAMEWORK_LINK_FLAGS}") 117 - set_property(TARGET ${my_name}_x86_64 APPEND_STRING PROPERTY LINK_FLAGS " ${FRAMEWORK_LINK_FLAGS}") 117 + set_property(TARGET ${my_name}_x86_64 APPEND_STRING PROPERTY LINK_FLAGS " ${FRAMEWORK_LINK_FLAGS}") 118 118 endif (FRAMEWORK_LINK_FLAGS) 119 - 120 - add_custom_target(${my_name}_build 119 + 120 + add_dependencies(${my_name}_x86_64 ${my_name}_i386) 121 + add_custom_command(TARGET ${my_name}_x86_64 POST_BUILD 121 122 COMMAND ${CMAKE_BINARY_DIR}/src/external/cctools-port/cctools/misc/lipo 122 123 -arch i386 $<TARGET_FILE:${my_name}_i386> 123 124 -arch x86_64 $<TARGET_FILE:${my_name}_x86_64> 124 125 -create 125 126 -output 126 127 ${CMAKE_CURRENT_BINARY_DIR}/${my_name} 127 - 128 - BYPRODUCTS ${CMAKE_CURRENT_BINARY_DIR}/${my_name} 129 - 130 - DEPENDS ${my_name}_i386 ${my_name}_x86_64 lipo 128 + COMMENT "Running lipo to create ${my_name}" 129 + ) 130 + add_library(${my_name} SHARED IMPORTED GLOBAL) 131 + set_target_properties(${my_name} PROPERTIES 132 + SUFFIX "" 133 + PREFIX "" 134 + IMPORTED_LOCATION ${CMAKE_CURRENT_BINARY_DIR}/${my_name} 131 135 ) 136 + add_dependencies(${my_name} ${my_name}_x86_64) 132 137 133 138 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${my_name} DESTINATION "libexec/darling/System/Library/${dir_name}/${name}.framework/Versions/${FRAMEWORK_VERSION}/") 134 139
+1 -7
src/CMakeLists.txt
··· 194 194 ${CMAKE_CURRENT_SOURCE_DIR}/ViewBridge/include 195 195 ) 196 196 197 - # It must be done in this scope 198 - add_library(CoreFoundation SHARED IMPORTED) 199 - set_property(TARGET CoreFoundation PROPERTY 200 - IMPORTED_LOCATION ${CMAKE_CURRENT_BINARY_DIR}/external/corefoundation/CoreFoundation 201 - ) 202 - add_dependencies(CoreFoundation CoreFoundation_build) 203 - set_target_properties(CoreFoundation PROPERTIES SUFFIX "" PREFIX "") 204 197 205 198 add_subdirectory(external/libkqueue) 206 199 ··· 244 237 add_subdirectory(external/icu/icuSources) 245 238 add_subdirectory(external/commoncrypto) 246 239 add_subdirectory(external/corefoundation) 240 + 247 241 add_subdirectory(external/openssl/src) 248 242 #add_subdirectory(external/configd/SystemConfiguration.fproj) 249 243 add_subdirectory(external/foundation)