Skip to content

Commit

Permalink
Disable shared cache when building for staged environments
Browse files Browse the repository at this point in the history
rdar://123287806
https://bugs.webkit.org/show_bug.cgi?id=271750

Reviewed by Elliott Williams.

For macOS, we are already disabling shared cache for WebCore and WebKit in case WK_RELOCATABLE_FRAMEWORKS is YES.
We are now disabling shared cache in case USE_STAGING_INSTALL_PATH is YES.

* Source/WebCore/Configurations/WebCore.xcconfig:
* Source/WebKit/Configurations/WebKit.xcconfig:

Canonical link: https://commits.webkit.org/276835@main
  • Loading branch information
youennf authored and emw-apple committed Mar 29, 2024
1 parent ba78602 commit ade6a77
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 6 deletions.
11 changes: 8 additions & 3 deletions Source/WebCore/Configurations/WebCore.xcconfig
Original file line number Diff line number Diff line change
Expand Up @@ -191,7 +191,7 @@ WEBCORE_ALLOWABLE_CLIENTS = $(WEBCORE_ALLOWABLE_CLIENTS_$(WK_NOT_$(ENABLE_LIBFUZ
WEBCORE_ALLOWABLE_CLIENTS_YES = -allowable_client WebCoreTestSupport -allowable_client WebKitLegacy -allowable_client WebKit -allowable_client TestIPC -allowable_client TestWebKitAPI -allowable_client DumpRenderTree -allowable_client WebKitTestRunner $(WEBCORE_ALLOWABLE_CLIENTS_PLATFORM_$(WK_COCOA_TOUCH));
WEBCORE_ALLOWABLE_CLIENTS_PLATFORM_cocoatouch = -allowable_client iTunesU -allowable_client Casablanca -allowable_client Remote -allowable_client TVBooks;

OTHER_LDFLAGS = $(inherited) $(WK_RELOCATABLE_FRAMEWORK_LDFLAGS) $(JSC_SEC_LD_FLAGS) -weak-lxslt -lsqlite3 -lobjc $(WEBCORE_ALLOWABLE_CLIENTS) -force_load $(BUILT_PRODUCTS_DIR)/libPAL.a -lswiftCore -framework CFNetwork -framework CoreAudio -framework CoreGraphics -framework CoreText -framework Foundation -framework IOSurface -framework ImageIO -framework Metal -framework Network -lFontParser $(OTHER_LDFLAGS_PLATFORM_$(WK_PLATFORM_NAME)) $(WK_ANGLE_LDFLAGS) $(WK_WEBGPU_LDFLAGS) $(WK_APPKIT_LDFLAGS) $(WK_APPSUPPORT_LDFLAGS) $(WK_AUDIO_UNIT_LDFLAGS) $(WK_CARBON_LDFLAGS) $(WK_CORE_UI_LDFLAGS) $(WK_DATA_DETECTORS_CORE_LDFLAGS) $(WK_GRAPHICS_SERVICES_LDFLAGS) $(WK_IOSURFACE_ACCELERATOR_LDFLAGS) $(WK_LIBWEBRTC_LDFLAGS) $(WK_MOBILE_CORE_SERVICES_LDFLAGS) $(WK_MOBILE_GESTALT_LDFLAGS) $(WK_NETWORK_EXTENSION_LDFLAGS) $(WK_SYSTEM_CONFIGURATION_LDFLAGS) $(WK_CORE_IMAGE_LDFLAGS) $(WK_URL_FORMATTING_LDFLAGS) $(WK_UNIFORM_TYPE_IDENTIFIERS_LDFLAGS) $(WK_XR_RUNTIME_SUPPORT_LDFLAGS) $(WK_SCENEKIT_LDFLAGS) $(SOURCE_VERSION_LDFLAGS) $(PROFILE_GENERATE_OR_USE_LDFLAGS) $(WK_NO_STATIC_INITIALIZERS) $(WK_APPLEJPEGXL_LDFLAGS) $(WK_DEBUG_LDFLAGS);
OTHER_LDFLAGS = $(inherited) $(OTHER_LDFLAGS_SHARED_CACHE) $(JSC_SEC_LD_FLAGS) -weak-lxslt -lsqlite3 -lobjc $(WEBCORE_ALLOWABLE_CLIENTS) -force_load $(BUILT_PRODUCTS_DIR)/libPAL.a -lswiftCore -framework CFNetwork -framework CoreAudio -framework CoreGraphics -framework CoreText -framework Foundation -framework IOSurface -framework ImageIO -framework Metal -framework Network -lFontParser $(OTHER_LDFLAGS_PLATFORM_$(WK_PLATFORM_NAME)) $(WK_ANGLE_LDFLAGS) $(WK_WEBGPU_LDFLAGS) $(WK_APPKIT_LDFLAGS) $(WK_APPSUPPORT_LDFLAGS) $(WK_AUDIO_UNIT_LDFLAGS) $(WK_CARBON_LDFLAGS) $(WK_CORE_UI_LDFLAGS) $(WK_DATA_DETECTORS_CORE_LDFLAGS) $(WK_GRAPHICS_SERVICES_LDFLAGS) $(WK_IOSURFACE_ACCELERATOR_LDFLAGS) $(WK_LIBWEBRTC_LDFLAGS) $(WK_MOBILE_CORE_SERVICES_LDFLAGS) $(WK_MOBILE_GESTALT_LDFLAGS) $(WK_NETWORK_EXTENSION_LDFLAGS) $(WK_SYSTEM_CONFIGURATION_LDFLAGS) $(WK_CORE_IMAGE_LDFLAGS) $(WK_URL_FORMATTING_LDFLAGS) $(WK_UNIFORM_TYPE_IDENTIFIERS_LDFLAGS) $(WK_XR_RUNTIME_SUPPORT_LDFLAGS) $(WK_SCENEKIT_LDFLAGS) $(SOURCE_VERSION_LDFLAGS) $(PROFILE_GENERATE_OR_USE_LDFLAGS) $(WK_NO_STATIC_INITIALIZERS) $(WK_APPLEJPEGXL_LDFLAGS) $(WK_DEBUG_LDFLAGS);

OTHER_LDFLAGS_PLATFORM_macosx = -sub_library libobjc $(PROFILE_GENERATE_OR_USE_LDFLAGS);

Expand All @@ -204,8 +204,13 @@ EXCLUDED_SOURCE_FILE_NAMES[sdk=iphone*] = $(inherited) *.tiff *Cursor.png npapi.
INCLUDED_SOURCE_FILE_NAMES = $(INCLUDED_SOURCE_FILE_NAMES_$(ENABLE_PDFJS));
INCLUDED_SOURCE_FILE_NAMES_ENABLE_PDFJS = pdfjs*/*;

WK_RELOCATABLE_FRAMEWORK_LDFLAGS = $(WK_RELOCATABLE_FRAMEWORK_LDFLAGS_$(WK_RELOCATABLE_FRAMEWORKS)_$(WK_PLATFORM_NAME));
WK_RELOCATABLE_FRAMEWORK_LDFLAGS_YES_macosx = -Wl,-not_for_dyld_shared_cache;
ALLOW_SHARED_CACHE = $(ALLOW_SHARED_CACHE_$(WK_RELOCATABLE_FRAMEWORKS)_$(USE_STAGING_INSTALL_PATH)_$(WK_PLATFORM_NAME));
ALLOW_SHARED_CACHE_YES_YES_macosx = NO;
ALLOW_SHARED_CACHE_YES__macosx = NO;
ALLOW_SHARED_CACHE__YES_macosx = NO;

OTHER_LDFLAGS_SHARED_CACHE = $(OTHER_LDFLAGS_SHARED_CACHE_$(ALLOW_SHARED_CACHE));
OTHER_LDFLAGS_SHARED_CACHE_NO = -Wl,-not_for_dyld_shared_cache;

// Enable InstallAPI support, when built with WEBCORE_ENABLE_INSTALLAPI=YES.
SUPPORTS_TEXT_BASED_API = $(SUPPORTS_TEXT_BASED_API_$(TARGET_NAME))
Expand Down
11 changes: 8 additions & 3 deletions Source/WebKit/Configurations/WebKit.xcconfig
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,7 @@ WK_NO_STATIC_INITIALIZERS_Release_NO_ = $(WK_ERROR_WHEN_LINKING_WITH_STATIC_INIT
WK_NO_STATIC_INITIALIZERS_Production__ = $(WK_ERROR_WHEN_LINKING_WITH_STATIC_INITIALIZERS);
WK_NO_STATIC_INITIALIZERS_Production_NO_ = $(WK_ERROR_WHEN_LINKING_WITH_STATIC_INITIALIZERS);

OTHER_LDFLAGS = $(inherited) -lsqlite3 -iframework $(SDK_DIR)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks $(UNEXPORTED_SYMBOL_LDFLAGS) $(FRAMEWORK_AND_LIBRARY_LDFLAGS) $(WK_RELOCATABLE_FRAMEWORK_LDFLAGS) $(SOURCE_VERSION_LDFLAGS) $(PROFILE_GENERATE_OR_USE_LDFLAGS) $(WK_NO_STATIC_INITIALIZERS);
OTHER_LDFLAGS = $(inherited) -lsqlite3 -iframework $(SDK_DIR)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks $(UNEXPORTED_SYMBOL_LDFLAGS) $(FRAMEWORK_AND_LIBRARY_LDFLAGS) $(OTHER_LDFLAGS_SHARED_CACHE) $(SOURCE_VERSION_LDFLAGS) $(PROFILE_GENERATE_OR_USE_LDFLAGS) $(WK_NO_STATIC_INITIALIZERS);

REEXPORTED_FRAMEWORK_NAMES = WebKitLegacy;
// Needed for bincompat (rdar://117360317)
Expand Down Expand Up @@ -276,8 +276,13 @@ APPLY_RULES_IN_COPY_HEADERS = YES;
WK_FRAMEWORK_HEADER_POSTPROCESSING_DISABLED = YES;
WK_FRAMEWORK_HEADER_POSTPROCESSING_DISABLED[config=Production] = $(WK_USE_OVERRIDE_FRAMEWORKS_DIR);

WK_RELOCATABLE_FRAMEWORK_LDFLAGS = $(WK_RELOCATABLE_FRAMEWORK_LDFLAGS_$(WK_RELOCATABLE_FRAMEWORKS)_$(WK_PLATFORM_NAME));
WK_RELOCATABLE_FRAMEWORK_LDFLAGS_YES_macosx = -Wl,-not_for_dyld_shared_cache;
ALLOW_SHARED_CACHE = $(ALLOW_SHARED_CACHE_$(WK_RELOCATABLE_FRAMEWORKS)_$(USE_STAGING_INSTALL_PATH)_$(WK_PLATFORM_NAME));
ALLOW_SHARED_CACHE_YES_YES_macosx = NO;
ALLOW_SHARED_CACHE_YES__macosx = NO;
ALLOW_SHARED_CACHE__YES_macosx = NO;

OTHER_LDFLAGS_SHARED_CACHE = $(OTHER_LDFLAGS_SHARED_CACHE_$(ALLOW_SHARED_CACHE));
OTHER_LDFLAGS_SHARED_CACHE_NO = -Wl,-not_for_dyld_shared_cache;

WK_HAVE_URL_FORMATTING = $(WK_HAVE_URL_FORMATTING_$(WK_PLATFORM_NAME));
WK_HAVE_URL_FORMATTING_iphoneos = YES;
Expand Down

0 comments on commit ade6a77

Please sign in to comment.