Add support for new StagedFrameworks layout
authorkrollin@apple.com <krollin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 13 Mar 2019 23:24:19 +0000 (23:24 +0000)
committerkrollin@apple.com <krollin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 13 Mar 2019 23:24:19 +0000 (23:24 +0000)
https://bugs.webkit.org/show_bug.cgi?id=195543

Reviewed by Alexey Proskuryakov.

Source/JavaScriptCore:

When creating the WebKit layout for out-of-band Safari/WebKit updates,
use an optional path prefix when called for.

* Configurations/Base.xcconfig:

Source/ThirdParty/libwebrtc:

When creating the WebKit layout for out-of-band Safari/WebKit updates,
use an optional path prefix when called for.

* Configurations/Base.xcconfig:

Source/WebCore:

When creating the WebKit layout for out-of-band Safari/WebKit updates,
use an optional path prefix when called for.

No new tests since there should be no observable behavior difference.

* Configurations/WebCore.xcconfig:

Source/WebCore/PAL:

When creating the WebKit layout for out-of-band Safari/WebKit updates,
use an optional path prefix when called for.

* Configurations/PAL.xcconfig:

Source/WebInspectorUI:

When creating the WebKit layout for out-of-band Safari/WebKit updates,
use an optional path prefix when called for.

Opportunistic cleanup: remove unused
OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH variable, which otherwise would
have needlessly been updated to also incorporate the new prefix.

* Configurations/Base.xcconfig:
* Configurations/WebKitTargetConditionals.xcconfig: Added.

Source/WebKit:

When creating the WebKit layout for out-of-band Safari/WebKit updates,
use an optional path prefix when called for.

Update the dyld_env path in OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH to
also understand about this layout.

* Configurations/BaseTarget.xcconfig:

Source/WebKitLegacy/mac:

When creating the WebKit layout for out-of-band Safari/WebKit updates,
use an optional path prefix when called for.

* Configurations/WebKitLegacy.xcconfig:

Source/WTF:

Opportunistic cleanup: remove unused JAVASCRIPTCORE_FRAMEWORKS_DIR
variable.

* Configurations/Base.xcconfig:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@242918 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 files changed:
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/Configurations/Base.xcconfig
Source/ThirdParty/libwebrtc/ChangeLog
Source/ThirdParty/libwebrtc/Configurations/Base.xcconfig
Source/WTF/ChangeLog
Source/WTF/Configurations/Base.xcconfig
Source/WebCore/ChangeLog
Source/WebCore/Configurations/WebCore.xcconfig
Source/WebCore/PAL/ChangeLog
Source/WebCore/PAL/Configurations/PAL.xcconfig
Source/WebInspectorUI/ChangeLog
Source/WebInspectorUI/Configurations/Base.xcconfig
Source/WebInspectorUI/Configurations/WebKitTargetConditionals.xcconfig [new file with mode: 0644]
Source/WebKit/ChangeLog
Source/WebKit/Configurations/BaseTarget.xcconfig
Source/WebKitLegacy/mac/ChangeLog
Source/WebKitLegacy/mac/Configurations/WebKitLegacy.xcconfig

index 3227aa9..c4af85c 100644 (file)
@@ -1,3 +1,15 @@
+2019-03-13  Keith Rollin  <krollin@apple.com>
+
+        Add support for new StagedFrameworks layout
+        https://bugs.webkit.org/show_bug.cgi?id=195543
+
+        Reviewed by Alexey Proskuryakov.
+
+        When creating the WebKit layout for out-of-band Safari/WebKit updates,
+        use an optional path prefix when called for.
+
+        * Configurations/Base.xcconfig:
+
 2019-03-13  Mark Lam  <mark.lam@apple.com>
 
         Remove unneeded --tradeDestructorBlocks option.
index 7385b74..5e88116 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2009-2017 Apple Inc. All rights reserved.
+// Copyright (C) 2009-2019 Apple Inc. All rights reserved.
 //
 // Redistribution and use in source and binary forms, with or without
 // modification, are permitted provided that the following conditions
@@ -22,7 +22,9 @@
 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
 
 #include? "../../../../Internal/Configurations/HaveInternalSDK.xcconfig"
+#include? "<DEVELOPER_DIR>/AppleInternal/XcodeConfig/PlatformSupport.xcconfig"
 #include "SDKVariant.xcconfig"
+#include "WebKitTargetConditionals.xcconfig"
 
 USE_INTERNAL_SDK = $(USE_INTERNAL_SDK_$(CONFIGURATION));
 USE_INTERNAL_SDK_Production = YES;
@@ -158,12 +160,15 @@ WK_USE_OVERRIDE_FRAMEWORKS_DIR = $(WK_NOT_$(WK_EMPTY_$(WK_OVERRIDE_FRAMEWORKS_DI
 WK_OVERRIDE_FRAMEWORKS_DIR = $(WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
 WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_ = $(WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_NO);
 WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_NO = $(WK_OVERRIDE_FRAMEWORKS_DIR_USE_ALTERNATE_FRAMEWORKS_DIR_$(WK_USE_ALTERNATE_FRAMEWORKS_DIR));
-WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_YES = $(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
+WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_YES = $(WK_INSTALL_PATH_PREFIX)$(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
 WK_OVERRIDE_FRAMEWORKS_DIR_USE_ALTERNATE_FRAMEWORKS_DIR_YES = $(WK_ALTERNATE_FRAMEWORKS_DIR)/System/Library/Frameworks;
 
 WK_QUOTED_OVERRIDE_FRAMEWORKS_DIR = $(WK_QUOTED_OVERRIDE_FRAMEWORKS_DIR_$(WK_USE_OVERRIDE_FRAMEWORKS_DIR));
 WK_QUOTED_OVERRIDE_FRAMEWORKS_DIR_YES = "$(WK_OVERRIDE_FRAMEWORKS_DIR)";
 
+WK_INSTALL_PATH_PREFIX = $(WK_INSTALL_PATH_PREFIX_DEPLOYMENT_$(DEPLOYMENT_LOCATION)$(WK_MACOS_1015)_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
+WK_INSTALL_PATH_PREFIX_DEPLOYMENT_YES_MACOS_SINCE_1015_USE_STAGING_INSTALL_PATH_YES = $(PLATFORM_OOB_SYSTEM_CONTENT_DIR);
+
 WK_COCOA_TOUCH = $(WK_COCOA_TOUCH_$(WK_PLATFORM_NAME));
 WK_COCOA_TOUCH_iphoneos = cocoatouch;
 WK_COCOA_TOUCH_iosmac = cocoatouch;
index 10bcdd0..9ae200a 100644 (file)
@@ -1,3 +1,15 @@
+2019-03-13  Keith Rollin  <krollin@apple.com>
+
+        Add support for new StagedFrameworks layout
+        https://bugs.webkit.org/show_bug.cgi?id=195543
+
+        Reviewed by Alexey Proskuryakov.
+
+        When creating the WebKit layout for out-of-band Safari/WebKit updates,
+        use an optional path prefix when called for.
+
+        * Configurations/Base.xcconfig:
+
 2019-03-13  Youenn Fablet  <youenn@apple.com>
 
         Enable libwebrtc logging control through WebCore
index 2bf8d0a..4f362e7 100644 (file)
@@ -1,5 +1,7 @@
 #include? "../../../../../Internal/Configurations/HaveInternalSDK.xcconfig"
+#include? "<DEVELOPER_DIR>/AppleInternal/XcodeConfig/PlatformSupport.xcconfig"
 #include "SDKVariant.xcconfig"
+#include "WebKitTargetConditionals.xcconfig"
 
 CODE_SIGN_IDENTITY = -;
 
@@ -104,7 +106,10 @@ NORMAL_WEBCORE_FRAMEWORKS_DIR[sdk=macosx*] = $(SYSTEM_LIBRARY_DIR)/Frameworks/We
 WK_USE_OVERRIDE_FRAMEWORKS_DIR = $(WK_NOT_$(WK_EMPTY_$(WK_OVERRIDE_FRAMEWORKS_DIR)));
 
 WK_OVERRIDE_FRAMEWORKS_DIR = $(WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
-WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_YES = $(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
+WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_YES = $(WK_INSTALL_PATH_PREFIX)$(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
+
+WK_INSTALL_PATH_PREFIX = $(WK_INSTALL_PATH_PREFIX_DEPLOYMENT_$(DEPLOYMENT_LOCATION)$(WK_MACOS_1015)_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
+WK_INSTALL_PATH_PREFIX_DEPLOYMENT_YES_MACOS_SINCE_1015_USE_STAGING_INSTALL_PATH_YES = $(PLATFORM_OOB_SYSTEM_CONTENT_DIR);
 
 LLVM_LTO = $(WK_LLVM_LTO_$(WK_XCODE_SUPPORTS_LTO));
 WK_LLVM_LTO_NO = NO;
index ea36d40..9ae117b 100644 (file)
@@ -1,3 +1,15 @@
+2019-03-13  Keith Rollin  <krollin@apple.com>
+
+        Add support for new StagedFrameworks layout
+        https://bugs.webkit.org/show_bug.cgi?id=195543
+
+        Reviewed by Alexey Proskuryakov.
+
+        Opportunistic cleanup: remove unused JAVASCRIPTCORE_FRAMEWORKS_DIR
+        variable.
+
+        * Configurations/Base.xcconfig:
+
 2019-03-13  Dominik Infuehr  <dinfuehr@igalia.com>
 
         String overflow when using StringBuilder in JSC::createError
index 042afbe..de1fa68 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2009-2017 Apple Inc. All rights reserved.
+// Copyright (C) 2009-2019 Apple Inc. All rights reserved.
 //
 // Redistribution and use in source and binary forms, with or without
 // modification, are permitted provided that the following conditions
@@ -111,8 +111,6 @@ TARGET_MAC_OS_X_VERSION_MAJOR_16 = 101600;
 
 SUPPORTED_PLATFORMS = iphoneos iphonesimulator macosx appletvos appletvsimulator watchos watchsimulator;
 
-JAVASCRIPTCORE_FRAMEWORKS_DIR = $(SYSTEM_LIBRARY_DIR)/Frameworks;
-
 // DEBUG_DEFINES, GCC_OPTIMIZATION_LEVEL, STRIP_INSTALLED_PRODUCT and DEAD_CODE_STRIPPING vary between the debug and normal variants.
 // We set up the values for each variant here, and have the Debug configuration in the Xcode project use the _debug variant.
 DEBUG_DEFINES_debug = ;
index 24d5223..b104a91 100644 (file)
@@ -1,3 +1,17 @@
+2019-03-13  Keith Rollin  <krollin@apple.com>
+
+        Add support for new StagedFrameworks layout
+        https://bugs.webkit.org/show_bug.cgi?id=195543
+
+        Reviewed by Alexey Proskuryakov.
+
+        When creating the WebKit layout for out-of-band Safari/WebKit updates,
+        use an optional path prefix when called for.
+
+        No new tests since there should be no observable behavior difference.
+
+        * Configurations/WebCore.xcconfig:
+
 2019-03-13  Wenson Hsieh  <wenson_hsieh@apple.com>
 
         Fix an edge case where HTMLFormElement::removeFormElement is invoked twice with the same element
index 6a630c4..c78b528 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2009, 2010, 2014 Apple Inc. All rights reserved.
+// Copyright (C) 2009, 2010, 2014, 2019 Apple Inc. All rights reserved.
 //
 // Redistribution and use in source and binary forms, with or without
 // modification, are permitted provided that the following conditions
 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
 
+#include? "<DEVELOPER_DIR>/AppleInternal/XcodeConfig/PlatformSupport.xcconfig"
 #include "FeatureDefines.xcconfig"
 #include "Version.xcconfig"
+#include "WebKitTargetConditionals.xcconfig"
 
 GCC_PREFIX_HEADER = WebCorePrefix.h;
 GCC_PREPROCESSOR_DEFINITIONS = $(DEBUG_DEFINES) $(FEATURE_DEFINES) BUILDING_WEBKIT U_DISABLE_RENAMING=1 U_SHOW_CPLUSPLUS_API=0 GL_SILENCE_DEPRECATION=1 GLES_SILENCE_DEPRECATION=1 $(inherited);
@@ -165,11 +167,14 @@ EXCLUDED_SOURCE_FILE_NAMES[sdk=iphone*] = *.tiff *Cursor.png npapi.h npfunctions
 WK_USE_OVERRIDE_FRAMEWORKS_DIR = $(WK_NOT_$(WK_EMPTY_$(WK_OVERRIDE_FRAMEWORKS_DIR)));
 
 WK_OVERRIDE_FRAMEWORKS_DIR = $(WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
-WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_YES = $(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
+WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_YES = $(WK_INSTALL_PATH_PREFIX)$(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
 
 WK_QUOTED_OVERRIDE_FRAMEWORKS_DIR = $(WK_QUOTED_OVERRIDE_FRAMEWORKS_DIR_$(WK_USE_OVERRIDE_FRAMEWORKS_DIR));
 WK_QUOTED_OVERRIDE_FRAMEWORKS_DIR_YES = "$(WK_OVERRIDE_FRAMEWORKS_DIR)";
 
+WK_INSTALL_PATH_PREFIX = $(WK_INSTALL_PATH_PREFIX_DEPLOYMENT_$(DEPLOYMENT_LOCATION)$(WK_MACOS_1015)_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
+WK_INSTALL_PATH_PREFIX_DEPLOYMENT_YES_MACOS_SINCE_1015_USE_STAGING_INSTALL_PATH_YES = $(PLATFORM_OOB_SYSTEM_CONTENT_DIR);
+
 WK_RELOCATABLE_FRAMEWORK_LDFLAGS = $(WK_RELOCATABLE_FRAMEWORK_LDFLAGS_$(WK_RELOCATABLE_FRAMEWORKS));
 WK_RELOCATABLE_FRAMEWORK_LDFLAGS_YES = -Wl,-not_for_dyld_shared_cache;
 
index 388d0e3..3324880 100644 (file)
@@ -1,3 +1,15 @@
+2019-03-13  Keith Rollin  <krollin@apple.com>
+
+        Add support for new StagedFrameworks layout
+        https://bugs.webkit.org/show_bug.cgi?id=195543
+
+        Reviewed by Alexey Proskuryakov.
+
+        When creating the WebKit layout for out-of-band Safari/WebKit updates,
+        use an optional path prefix when called for.
+
+        * Configurations/PAL.xcconfig:
+
 2019-03-12  Ross Kirsling  <ross.kirsling@sony.com>
 
         [Win] Fix a slew of simple clang-cl warnings.
index 39db91e..360691a 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2017 Apple Inc. All rights reserved.
+// Copyright (C) 2017, 2019 Apple Inc. All rights reserved.
 //
 // Redistribution and use in source and binary forms, with or without
 // modification, are permitted provided that the following conditions
 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
 
+#include? "<DEVELOPER_DIR>/AppleInternal/XcodeConfig/PlatformSupport.xcconfig"
 #include "FeatureDefines.xcconfig"
 #include "Version.xcconfig"
+#include "WebKitTargetConditionals.xcconfig"
 
 GCC_PREPROCESSOR_DEFINITIONS = $(DEBUG_DEFINES) $(FEATURE_DEFINES) $(inherited);
 
@@ -56,9 +58,12 @@ EXCLUDED_SOURCE_FILE_NAMES[sdk=iphone*] = *.tiff *Cursor.png;
 WK_USE_OVERRIDE_FRAMEWORKS_DIR = $(WK_NOT_$(WK_EMPTY_$(WK_OVERRIDE_FRAMEWORKS_DIR)));
 
 WK_OVERRIDE_FRAMEWORKS_DIR = $(WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
-WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_YES = $(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
+WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_YES = $(WK_INSTALL_PATH_PREFIX)$(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
 
 WK_QUOTED_OVERRIDE_FRAMEWORKS_DIR = $(WK_QUOTED_OVERRIDE_FRAMEWORKS_DIR_$(WK_USE_OVERRIDE_FRAMEWORKS_DIR));
 WK_QUOTED_OVERRIDE_FRAMEWORKS_DIR_YES = "$(WK_OVERRIDE_FRAMEWORKS_DIR)";
 
+WK_INSTALL_PATH_PREFIX = $(WK_INSTALL_PATH_PREFIX_DEPLOYMENT_$(DEPLOYMENT_LOCATION)$(WK_MACOS_1015)_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
+WK_INSTALL_PATH_PREFIX_DEPLOYMENT_YES_MACOS_SINCE_1015_USE_STAGING_INSTALL_PATH_YES = $(PLATFORM_OOB_SYSTEM_CONTENT_DIR);
+
 SKIP_INSTALL = $(WK_NOT_$(FORCE_TOOL_INSTALL));
index e7853b1..8240438 100644 (file)
@@ -1,3 +1,20 @@
+2019-03-13  Keith Rollin  <krollin@apple.com>
+
+        Add support for new StagedFrameworks layout
+        https://bugs.webkit.org/show_bug.cgi?id=195543
+
+        Reviewed by Alexey Proskuryakov.
+
+        When creating the WebKit layout for out-of-band Safari/WebKit updates,
+        use an optional path prefix when called for.
+
+        Opportunistic cleanup: remove unused
+        OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH variable, which otherwise would
+        have needlessly been updated to also incorporate the new prefix.
+
+        * Configurations/Base.xcconfig:
+        * Configurations/WebKitTargetConditionals.xcconfig: Added.
+
 2019-03-13  Nikita Vasilyev  <nvasilyev@apple.com>
 
         REGRESSION(r240946): Web Inspector: Styles: removing selected property doesn't update overridden status
index 1bc84ac..8d1cf7a 100644 (file)
@@ -1,5 +1,7 @@
 #include? "../../../../Internal/Configurations/HaveInternalSDK.xcconfig"
+#include? "<DEVELOPER_DIR>/AppleInternal/XcodeConfig/PlatformSupport.xcconfig"
 #include "SDKVariant.xcconfig"
+#include "WebKitTargetConditionals.xcconfig"
 
 CODE_SIGN_IDENTITY = -;
 
@@ -78,8 +80,6 @@ TARGET_MAC_OS_X_VERSION_MAJOR_16 = 101600;
 
 SDKROOT = macosx.internal;
 
-OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH = -Wl,-dyld_env -Wl,DYLD_VERSIONED_FRAMEWORK_PATH=/System/Library/StagedFrameworks/Safari;
-
 OTHER_CFLAGS = $(ASAN_OTHER_CFLAGS);
 OTHER_CPLUSPLUSFLAGS = $(ASAN_OTHER_CPLUSPLUSFLAGS);
 OTHER_LDFLAGS = $(ASAN_OTHER_LDFLAGS);
@@ -90,11 +90,14 @@ COMBINE_TEST_RESOURCES = NO;
 WK_USE_OVERRIDE_FRAMEWORKS_DIR = $(WK_NOT_$(WK_EMPTY_$(WK_OVERRIDE_FRAMEWORKS_DIR)));
 
 WK_OVERRIDE_FRAMEWORKS_DIR = $(WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
-WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_YES = $(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
+WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_YES = $(WK_INSTALL_PATH_PREFIX)$(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
 
 WK_QUOTED_OVERRIDE_FRAMEWORKS_DIR = $(WK_QUOTED_OVERRIDE_FRAMEWORKS_DIR_$(WK_USE_OVERRIDE_FRAMEWORKS_DIR));
 WK_QUOTED_OVERRIDE_FRAMEWORKS_DIR_YES = "$(WK_OVERRIDE_FRAMEWORKS_DIR)";
 
+WK_INSTALL_PATH_PREFIX = $(WK_INSTALL_PATH_PREFIX_DEPLOYMENT_$(DEPLOYMENT_LOCATION)$(WK_MACOS_1015)_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
+WK_INSTALL_PATH_PREFIX_DEPLOYMENT_YES_MACOS_SINCE_1015_USE_STAGING_INSTALL_PATH_YES = $(PLATFORM_OOB_SYSTEM_CONTENT_DIR);
+
 WK_COCOA_TOUCH = $(WK_COCOA_TOUCH_$(WK_PLATFORM_NAME));
 WK_COCOA_TOUCH_iphoneos = cocoatouch;
 WK_COCOA_TOUCH_iosmac = cocoatouch;
diff --git a/Source/WebInspectorUI/Configurations/WebKitTargetConditionals.xcconfig b/Source/WebInspectorUI/Configurations/WebKitTargetConditionals.xcconfig
new file mode 100644 (file)
index 0000000..00fd927
--- /dev/null
@@ -0,0 +1,123 @@
+// Copyright (C) 2019 Apple Inc. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions
+// are met:
+// 1. Redistributions of source code must retain the above copyright
+//    notice, this list of conditions and the following disclaimer.
+// 2. Redistributions in binary form must reproduce the above copyright
+//    notice, this list of conditions and the following disclaimer in the
+//    documentation and/or other materials provided with the distribution.
+//
+// THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
+// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+// PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
+// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+// Use the following helpers to define build settings whose value depends on the target
+// macOS version in a succinct and future-proof way.
+//
+// Example 1: To give the SMOOTHNESS build setting the value 3 in macOS 10.12 and later and the
+// value 2 in earlier versions, write:
+//
+//     SMOOTHNESS = $(SMOOTHNESS$(WK_MACOS_1012));
+//     SMOOTHNESS_MACOS_BEFORE_1012 = 2;
+//     SMOOTHNESS_MACOS_SINCE_1012 = 3;
+//
+// Example 2: To define ENABLE_COLOR to ENABLE_COLOR in all platforms except macOS 10.12 and
+// earlier write:
+//
+//     ENABLE_COLOR = ENABLE_COLOR;
+//     ENABLE_COLOR[sdk=macosx*] = $(ENABLE_COLOR$(WK_MACOS_1013));
+//     ENABLE_COLOR_MACOS_SINCE_1013 = $(ENABLE_COLOR);
+//
+// Example 3: To give EXTRA_PATH one value before macOS 10.12, another value in macOS 10.12 and
+// macOS 10.13, and a third value in macOS 10.14 and later, write:
+//
+//     EXTRA_PATH = $(EXTRA_PATH$(WK_MACOS_1012_1014));
+//     EXTRA_PATH_MACOS_BEFORE_1012 = "/Library/Application Support/WebKit";
+//     EXTRA_PATH_MACOS_BEFORE_1014 = /System/Library/CoreServices;
+//     EXTRA_PATH_MACOS_SINCE_1014 = /System/Library/PrivateFrameworks;
+
+// macOS
+
+WK_MACOS_BEFORE_1013 = $(WK_MACOS_BEFORE_1013_$(TARGET_MAC_OS_X_VERSION_MAJOR));
+WK_MACOS_BEFORE_1013_101200 = YES;
+
+WK_MACOS_BEFORE_1014 = $(WK_MACOS_BEFORE_1014_$(TARGET_MAC_OS_X_VERSION_MAJOR));
+WK_MACOS_BEFORE_1014_101200 = YES;
+WK_MACOS_BEFORE_1014_101300 = YES;
+
+WK_MACOS_BEFORE_1015 = $(WK_MACOS_BEFORE_1015_$(TARGET_MAC_OS_X_VERSION_MAJOR));
+WK_MACOS_BEFORE_1015_101200 = YES;
+WK_MACOS_BEFORE_1015_101300 = YES;
+WK_MACOS_BEFORE_1015_101400 = YES;
+
+WK_MACOS_1013 = $(WK_MACOS_1013_$(WK_MACOS_BEFORE_1013));
+WK_MACOS_1013_ = _MACOS_SINCE_1013;
+WK_MACOS_1013_YES = _MACOS_BEFORE_1013;
+
+WK_MACOS_1013_1014 = $(WK_MACOS_1013_1014_$(WK_MACOS_BEFORE_1013));
+WK_MACOS_1013_1014_ = $(WK_MACOS_1014);
+WK_MACOS_1013_1014_YES = _MACOS_BEFORE_1013;
+
+WK_MACOS_1013_1015 = $(WK_MACOS_1013_1015_$(WK_MACOS_BEFORE_1013));
+WK_MACOS_1013_1015_ = $(WK_MACOS_1015);
+WK_MACOS_1013_1015_YES = _MACOS_BEFORE_1013;
+
+WK_MACOS_1014 = $(WK_MACOS_1014_$(WK_MACOS_BEFORE_1014));
+WK_MACOS_1014_ = _MACOS_SINCE_1014;
+WK_MACOS_1014_YES = _MACOS_BEFORE_1014;
+
+WK_MACOS_1014_1015 = $(WK_MACOS_1014_1015_$(WK_MACOS_BEFORE_1014));
+WK_MACOS_1014_1015_ = $(WK_MACOS_1015);
+WK_MACOS_1014_1015_YES = _MACOS_BEFORE_1014;
+
+WK_MACOS_1015 = $(WK_MACOS_1015_$(WK_MACOS_BEFORE_1015));
+WK_MACOS_1015_ = _MACOS_SINCE_1015;
+WK_MACOS_1015_YES = _MACOS_BEFORE_1015;
+
+// iOS
+
+WK_IOS_BEFORE_12 = $(WK_IOS_BEFORE_12_$(IPHONEOS_DEPLOYMENT_TARGET:base));
+WK_IOS_BEFORE_12_11 = YES;
+
+WK_IOS_BEFORE_13 = $(WK_IOS_BEFORE_13_$(IPHONEOS_DEPLOYMENT_TARGET:base));
+WK_IOS_BEFORE_13_11 = YES;
+WK_IOS_BEFORE_13_12 = YES;
+
+WK_IOS_BEFORE_14 = $(WK_IOS_BEFORE_14_$(IPHONEOS_DEPLOYMENT_TARGET:base));
+WK_IOS_BEFORE_14_11 = YES;
+WK_IOS_BEFORE_14_12 = YES;
+WK_IOS_BEFORE_14_13 = YES;
+
+WK_IOS_12 = $(WK_IOS_12_$(WK_IOS_BEFORE_12));
+WK_IOS_12_ = _IOS_SINCE_12;
+WK_IOS_12_YES = _IOS_BEFORE_12;
+
+WK_IOS_12_13 = $(WK_IOS_12_13_$(WK_IOS_BEFORE_12));
+WK_IOS_12_13_ = $(WK_IOS_13);
+WK_IOS_12_13_YES = _IOS_BEFORE_12;
+
+WK_IOS_12_14 = $(WK_IOS_12_14_$(WK_IOS_BEFORE_12));
+WK_IOS_12_14_ = $(WK_IOS_14);
+WK_IOS_12_14_YES = _IOS_BEFORE_12;
+
+WK_IOS_13 = $(WK_IOS_13_$(WK_IOS_BEFORE_13));
+WK_IOS_13_ = _IOS_SINCE_13;
+WK_IOS_13_YES = _IOS_BEFORE_13;
+
+WK_IOS_13_14 = $(WK_IOS_13_14_$(WK_IOS_BEFORE_13));
+WK_IOS_13_14_ = $(WK_IOS_14);
+WK_IOS_13_14_YES = _IOS_BEFORE_13;
+
+WK_IOS_14 = $(WK_IOS_14_$(WK_IOS_BEFORE_14));
+WK_IOS_14_ = _IOS_SINCE_14;
+WK_IOS_14_YES = _IOS_BEFORE_14;
index 118c1d4..97deb6d 100644 (file)
@@ -1,3 +1,18 @@
+2019-03-13  Keith Rollin  <krollin@apple.com>
+
+        Add support for new StagedFrameworks layout
+        https://bugs.webkit.org/show_bug.cgi?id=195543
+
+        Reviewed by Alexey Proskuryakov.
+
+        When creating the WebKit layout for out-of-band Safari/WebKit updates,
+        use an optional path prefix when called for.
+
+        Update the dyld_env path in OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH to
+        also understand about this layout.
+
+        * Configurations/BaseTarget.xcconfig:
+
 2019-03-13  Simon Fraser  <simon.fraser@apple.com>
 
         Scrolling tree should reposition non-stacking order descendents of overflow:scroll.
index 0b9f319..240ce4d 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2010, 2012-2016 Apple Inc. All rights reserved.
+// Copyright (C) 2010, 2012-2016, 2019 Apple Inc. All rights reserved.
 //
 // Redistribution and use in source and binary forms, with or without
 // modification, are permitted provided that the following conditions
 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
+#include? "<DEVELOPER_DIR>/AppleInternal/XcodeConfig/PlatformSupport.xcconfig"
 #include "FeatureDefines.xcconfig"
 #include "Version.xcconfig"
+#include "WebKitTargetConditionals.xcconfig"
 
 WK_PRIVATE_FRAMEWORKS_DIR = $(WK_PRIVATE_FRAMEWORKS_DIR_$(USE_INTERNAL_SDK));
 WK_PRIVATE_FRAMEWORKS_DIR_[sdk=iphone*] = $(PROJECT_DIR)/../../WebKitLibraries/WebKitPrivateFrameworkStubs/iOS/$(WK_TARGET_IOS_VERSION_MAJOR);
@@ -89,7 +91,7 @@ WEBCORE_PRIVATE_HEADERS_DIR = $(UMBRELLA_FRAMEWORKS_DIR)/WebCore.framework/Priva
 WEBKIT_LEGACY_PRIVATE_HEADERS_DIR = $(UMBRELLA_FRAMEWORKS_DIR)/WebKitLegacy.framework/PrivateHeaders;
 
 OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH = $(OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH_$(USE_STAGING_INSTALL_PATH));
-OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH_YES = -Wl,-dyld_env,DYLD_VERSIONED_FRAMEWORK_PATH=/System/Library/StagedFrameworks/Safari;
+OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH_YES = -Wl,-dyld_env,DYLD_VERSIONED_FRAMEWORK_PATH=$(WK_INSTALL_PATH_PREFIX)/System/Library/StagedFrameworks/Safari;
 
 WK_MANUAL_SANDBOXING_ENABLED[sdk=macosx*] = YES;
 
@@ -99,7 +101,10 @@ WK_MANUAL_SANDBOXING_DEFINES_YES = ENABLE_MANUAL_SANDBOXING;
 WK_USE_OVERRIDE_FRAMEWORKS_DIR = $(WK_NOT_$(WK_EMPTY_$(WK_OVERRIDE_FRAMEWORKS_DIR)));
 
 WK_OVERRIDE_FRAMEWORKS_DIR = $(WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
-WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_YES = $(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
+WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_YES = $(WK_INSTALL_PATH_PREFIX)$(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
+
+WK_INSTALL_PATH_PREFIX = $(WK_INSTALL_PATH_PREFIX_DEPLOYMENT_$(DEPLOYMENT_LOCATION)$(WK_MACOS_1015)_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
+WK_INSTALL_PATH_PREFIX_DEPLOYMENT_YES_MACOS_SINCE_1015_USE_STAGING_INSTALL_PATH_YES = $(PLATFORM_OOB_SYSTEM_CONTENT_DIR);
 
 WK_HAVE_CORE_PREDICTION = YES;
 WK_HAVE_CORE_PREDICTION[sdk=macosx*][arch=i386] = NO;
index 312e823..15ecdb4 100644 (file)
@@ -1,3 +1,15 @@
+2019-03-13  Keith Rollin  <krollin@apple.com>
+
+        Add support for new StagedFrameworks layout
+        https://bugs.webkit.org/show_bug.cgi?id=195543
+
+        Reviewed by Alexey Proskuryakov.
+
+        When creating the WebKit layout for out-of-band Safari/WebKit updates,
+        use an optional path prefix when called for.
+
+        * Configurations/WebKitLegacy.xcconfig:
+
 2019-03-12  Ryosuke Niwa  <rniwa@webkit.org>
 
         Remove a site specific hack for AppleConnect plugin
index 9a3c5f5..0e5c92d 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2009, 2010, 2014 Apple Inc. All rights reserved.
+// Copyright (C) 2009, 2010, 2014, 2019 Apple Inc. All rights reserved.
 //
 // Redistribution and use in source and binary forms, with or without
 // modification, are permitted provided that the following conditions
 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
 
+#include? "<DEVELOPER_DIR>/AppleInternal/XcodeConfig/PlatformSupport.xcconfig"
 #include "FeatureDefines.xcconfig"
 #include "Version.xcconfig"
+#include "WebKitTargetConditionals.xcconfig"
 
 EXCLUDED_SOURCE_FILE_NAMES = $(EXCLUDED_SOURCE_FILE_NAMES_$(WK_COCOA_TOUCH));
 EXCLUDED_SOURCE_FILE_NAMES_cocoatouch = *.defs *.xib *.pdf *.tiff CarbonUtils.* CarbonWindowAdapter.* CarbonWindowContentView.* CarbonWindowFrame.* HIViewAdapter.* HIWebView.* OutlookQuirksUserScript.js PopupMenuMac.* SearchPopupMenuMac.* WebClipView.* WebDashboardRegion.* WebDynamicScrollBarsView.* WebIconDatabase.* WebInspectorClient.* WebJavaScriptTextInputPanel.* WebNSEventExtras.* WebNSPasteboardExtras.* WebNSWindowExtras.* WebPanelAuthenticationHandler.* WebPluginsPrivate.* WebStringTruncator.* WebTextCompletionController.*;
@@ -127,11 +129,14 @@ WEBCORE_PRIVATE_HEADERS_engineering = $(BUILT_PRODUCTS_DIR)/WebCore.framework/Pr
 WK_USE_OVERRIDE_FRAMEWORKS_DIR = $(WK_NOT_$(WK_EMPTY_$(WK_OVERRIDE_FRAMEWORKS_DIR)));
 
 WK_OVERRIDE_FRAMEWORKS_DIR = $(WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
-WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_YES = $(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
+WK_OVERRIDE_FRAMEWORKS_DIR_USE_STAGING_INSTALL_PATH_YES = $(WK_INSTALL_PATH_PREFIX)$(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
 
 WK_QUOTED_OVERRIDE_FRAMEWORKS_DIR = $(WK_QUOTED_OVERRIDE_FRAMEWORKS_DIR_$(WK_USE_OVERRIDE_FRAMEWORKS_DIR));
 WK_QUOTED_OVERRIDE_FRAMEWORKS_DIR_YES = "$(WK_OVERRIDE_FRAMEWORKS_DIR)";
 
+WK_INSTALL_PATH_PREFIX = $(WK_INSTALL_PATH_PREFIX_DEPLOYMENT_$(DEPLOYMENT_LOCATION)$(WK_MACOS_1015)_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
+WK_INSTALL_PATH_PREFIX_DEPLOYMENT_YES_MACOS_SINCE_1015_USE_STAGING_INSTALL_PATH_YES = $(PLATFORM_OOB_SYSTEM_CONTENT_DIR);
+
 SUPPORTS_TEXT_BASED_API[sdk=iphone*] = YES;
 SUPPORTS_TEXT_BASED_API[sdk=appletv*] = NO;
 SUPPORTS_TEXT_BASED_API[sdk=watch*] = NO;