Changeset 195795 in webkit
- Timestamp:
- Jan 28, 2016 6:02:46 PM (8 years ago)
- Location:
- trunk
- Files:
-
- 10 deleted
- 25 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r195769 r195795 1 2016-01-28 Dan Bernstein <mitz@apple.com> 2 3 [Cocoa] Use the non-Development variants of XPC services for development 4 https://bugs.webkit.org/show_bug.cgi?id=152545 5 6 Reviewed by Darin Adler. 7 8 The purpose of the Development variants of the WebKit XPC services is to allow the service 9 to link against the development WebKit dylibs rather than the system ones. Instead, we 10 accomplish this here by including dyld environment load commands in the normal services 11 when the WebKit dylibs are expected to be relocated. A new build setting, 12 WK_RELOCATABLE_FRAMEWORKS, controls this. 13 14 To make it easy to identify engineering builds of the services at runtime, they can be 15 given a distinctive suffix. A new build setting, WK_XPC_SERVICE_SUFFIX, controls this. 16 17 * Configurations/DebugRelease.xcconfig: Set WK_RELOCATABLE_FRAMEWORKS to YES and 18 WK_XPC_SERVICE_SUFFIX to ".Development". 19 20 * Configurations/BaseTarget.xcconfig: Make the quoted value of the WK_XPC_SERVICE_SUFFIX 21 build setting available as a preprocessor macro. 22 23 * Configurations/BaseXPCService.xcconfig: 24 - Simplify the definition of INSTALL_PATH now that there are no Development variants. 25 - Define WK_RELOCATABLE_FRAMEWORKS_LDFLAGS when building relocatable frameworks to include 26 -dyld_env options setting DYLD_FRAMEWORK_PATH to point to the directory containing 27 WebKit.framework and DYLD_LIBRARY_PATH to the framework’s Frameworks subdirectory. When 28 not building relocatable frameworks, define WK_RELOCATABLE_FRAMEWORKS_LDFLAGS to include 29 a -headerpad option allowing dyld environment load commands to be added after the fact. 30 - Add WK_RELOCATABLE_FRAMEWORKS_LDFLAGS to OTHER_LDFLAGS. 31 - Define WK_XPC_SERVICE_INSERT_LIBRARIES_DIR when building relocatable frameworks to be 32 the path to the Frameworks subdirectory of the WebKit framework containing the service. 33 When not building relocatable frameworks, define it to the absolute path of the 34 Frameworks subdirectory of the installed WebKit framework. 35 36 * Configurations/DatabaseService.xcconfig: Append WK_XPC_SERVICE_SUFFIX to PRODUCT_NAME, 37 and remove no-longer-used definition of WK_XPC_SERVICE_VARIANT. 38 * Configurations/NetworkService.xcconfig: Append WK_XPC_SERVICE_SUFFIX to PRODUCT_NAME, add 39 WK_RELOCATABLE_FRAMEWORKS_LDFLAGS to OTHER_LDFLAGS, and remove no-longer-used definition 40 of WK_XPC_SERVICE_VARIANT. 41 * Configurations/PluginService.32.xcconfig: Ditto. 42 * Configurations/PluginService.64.xcconfig: Ditto. 43 * Configurations/WebContentService.xcconfig: Ditto. 44 45 * Configurations/DatabaseService.Development.xcconfig: Removed. 46 * Configurations/NetworkService.Development.xcconfig: Removed. 47 * Configurations/PluginService.32.Development.xcconfig: Removed. 48 * Configurations/PluginService.64.Development.xcconfig: Removed. 49 * Configurations/WebContentService.Development.xcconfig: Removed. 50 51 * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService.Development: Removed. 52 * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService.Development/Info.plist: Removed. 53 * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService/Info.plist: Set 54 CFBundleIdentifier to PRODUCT_NAME in order to include the optional suffix. 55 56 * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development: Removed. 57 * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info-OSX.plist: Removed. 58 * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info-iOS.plist: Removed. 59 * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX-10.9-10.10.plist: Set 60 CFBundleIdentifier to PRODUCT_NAME in order to include the optional suffix. Use 61 WK_XPC_SERVICE_INSERT_LIBRARIES_DIR in the value of DYLD_INSERT_LIBRARIES. 62 * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX.plist: Set 63 CFBundleIdentifier to PRODUCT_NAME in order to include the optional suffix. 64 * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-iOS.plist: Ditto. 65 66 * PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64-10.9-10.10.Info.plist: Ditto. 67 * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development: Removed. 68 * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/Info.plist: Removed. 69 70 * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development: Removed. 71 * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-OSX.plist: Removed. 72 * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-iOS.plist: Removed. 73 * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX-10.9-10.10.plist: Set 74 CFBundleIdentifier to PRODUCT_NAME in order to include the optional suffix. Use 75 WK_XPC_SERVICE_INSERT_LIBRARIES_DIR in the value of DYLD_INSERT_LIBRARIES. 76 * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX.plist: Set 77 CFBundleIdentifier to PRODUCT_NAME in order to include the optional suffix. 78 * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-iOS.plist: Ditto. 79 80 * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm: Removed. 81 82 * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm: 83 (WebKit::XPCServiceEventHandler): If stdout and stderr file descriptors are included in the 84 bootstrap message, hook them up to the serviceâs stdout and stderr, like the Development 85 services do. 86 (main): Moved code from XPCServiceMain.Development.mm to handle the optional 87 OverrideLanguages array. 88 89 * UIProcess/Launcher/mac/ProcessLauncherMac.mm: 90 (WebKit::addDYLDEnvironmentAdditions): Addressed a FIXME. 91 (WebKit::serviceName): Removed forDevelopment argument and .Development service names. 92 Added WK_XPC_SERVICE_SUFFIX to the names. 93 (WebKit::connectToService): Updated for removal of forDevelopment argument. Removed 94 "framework-executable-path" key from the bootstrap message, because it was only used in 95 the Development variants. 96 (WebKit::connectToReExecService): Deleted. 97 (WebKit::createService): Removed call to connectToReExecService. Instead pass forDevelopment 98 to connectToService. 99 100 * WebKit2.xcodeproj/project.pbxproj: Removed references to removed files. Removed targets 101 for Development services. Removed Development services from script build phase that copies 102 services into the framework in engineering builds, and made it respect 103 WK_XPC_SERVICE_SUFFIX. 104 1 105 2016-01-28 Enrica Casucci <enrica@apple.com> 2 106 -
trunk/Source/WebKit2/Configurations/BaseTarget.xcconfig
r195635 r195795 1 // Copyright (C) 2010 Apple Inc. All rights reserved.1 // Copyright (C) 2010, 2012-2016 Apple Inc. All rights reserved. 2 2 // 3 3 // Redistribution and use in source and binary forms, with or without … … 30 30 31 31 GCC_PREFIX_HEADER = WebKit2Prefix.h; 32 GCC_PREPROCESSOR_DEFINITIONS = $(DEBUG_DEFINES) $(FEATURE_DEFINES) $(WK_MANUAL_SANDBOXING_DEFINES) FRAMEWORK_NAME=WebKit32 GCC_PREPROCESSOR_DEFINITIONS = $(DEBUG_DEFINES) $(FEATURE_DEFINES) $(WK_MANUAL_SANDBOXING_DEFINES) WK_XPC_SERVICE_SUFFIX=\"$(WK_XPC_SERVICE_SUFFIX)\" FRAMEWORK_NAME=WebKit; 33 33 WEBKITADDITIONS_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/WebKitAdditions $(SDKROOT)/usr/local/include/WebKitAdditions; 34 34 HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include "$(WEBCORE_PRIVATE_HEADERS_DIR)/ForwardingHeaders" "$(WEBCORE_PRIVATE_HEADERS_DIR)/icu" $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2 $(WEBKITADDITIONS_HEADER_SEARCH_PATHS) $(HEADER_SEARCH_PATHS); -
trunk/Source/WebKit2/Configurations/BaseXPCService.xcconfig
r194318 r195795 1 // Copyright (C) 2012 , 2013Apple Inc. All rights reserved.1 // Copyright (C) 2012-2016 Apple Inc. All rights reserved. 2 2 // 3 3 // Redistribution and use in source and binary forms, with or without … … 24 24 #include "BaseTarget.xcconfig" 25 25 26 INSTALL_PATH = $(INSTALL_PATH_$(WK_XPC_SERVICE_VARIANT)); 27 28 INSTALL_PATH_Normal[sdk=iphone*] = $(WEBKIT_FRAMEWORKS_DIR)/WebKit.framework/XPCServices; 29 INSTALL_PATH_Normal[sdk=macosx*] = $(WEBKIT_FRAMEWORKS_DIR)/WebKit.framework/Versions/A/XPCServices; 30 31 INSTALL_PATH_Development = $(APPLE_INTERNAL_DIR)/WebKit/XPCServicesForDevelopment; 26 INSTALL_PATH[sdk=iphone*] = $(WEBKIT_FRAMEWORKS_DIR)/WebKit.framework/XPCServices; 27 INSTALL_PATH[sdk=macosx*] = $(WEBKIT_FRAMEWORKS_DIR)/WebKit.framework/Versions/A/XPCServices; 32 28 33 29 APP_ICON = $(APP_ICON_$(CONFIGURATION)); … … 44 40 MACH_O_TYPE = mh_execute; 45 41 46 OTHER_LDFLAGS = $(inherited) $(OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH); 42 OTHER_LDFLAGS = $(inherited) $(OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH) $(WK_RELOCATABLE_FRAMEWORKS_LDFLAGS); 43 44 WK_RELOCATABLE_FRAMEWORKS_LDFLAGS = $(WK_RELOCATABLE_FRAMEWORKS_LDFLAGS_$(WK_RELOCATABLE_FRAMEWORKS)); 45 WK_RELOCATABLE_FRAMEWORKS_LDFLAGS_ = $(WK_RELOCATABLE_FRAMEWORKS_LDFLAGS_NO); 46 WK_RELOCATABLE_FRAMEWORKS_LDFLAGS_NO = -Wl,-headerpad,0xC0; // Leave room for adding the dyld environment commands to a service that wasn't built for relocatable frameworks. 47 WK_RELOCATABLE_FRAMEWORKS_LDFLAGS_YES = -Wl,-dyld_env,DYLD_FRAMEWORK_PATH=@executable_path/$(WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK)/..,-dyld_env,DYLD_LIBRARY_PATH=@executable_path/$(WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK)/Frameworks; 48 49 WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK = $(WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK_SHALLOW_BUNDLE_$(SHALLOW_BUNDLE)); 50 WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK_SHALLOW_BUNDLE_NO = ../../../../../..; 51 WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK_SHALLOW_BUNDLE_YES = ../..; 47 52 48 53 CODE_SIGN_ENTITLEMENTS[sdk=iphone*] = $(CODE_SIGN_ENTITLEMENTS_IOS_SKIP_INSTALL_$(SKIP_INSTALL)); … … 58 63 WK_XPC_SERVICE_INFOPLIST_SUFFIX[sdk=macosx*] = $(WK_XPC_SERVICE_INFOPLIST_SUFFIX_$(TARGET_MAC_OS_X_VERSION_MAJOR)); 59 64 WK_XPC_SERVICE_INFOPLIST_SUFFIX_101000 = -10.9-10.10; 65 66 WK_XPC_SERVICE_INSERT_LIBRARIES_DIR = $(WK_XPC_SERVICE_INSERT_LIBRARIES_DIR_$(WK_RELOCATABLE_FRAMEWORKS)); 67 WK_XPC_SERVICE_INSERT_LIBRARIES_DIR_ = $(WK_XPC_SERVICE_INSERT_LIBRARIES_DIR_NO); 68 WK_XPC_SERVICE_INSERT_LIBRARIES_DIR_NO = $(WEBKIT_FRAMEWORKS_DIR)/WebKit.framework/Frameworks; 69 WK_XPC_SERVICE_INSERT_LIBRARIES_DIR_YES = @executable_path/$(WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK)/Frameworks; -
trunk/Source/WebKit2/Configurations/DatabaseService.xcconfig
r185557 r195795 1 // Copyright (C) 2013 Apple Inc. All rights reserved.1 // Copyright (C) 2013-2016 Apple Inc. All rights reserved. 2 2 // 3 3 // Redistribution and use in source and binary forms, with or without … … 24 24 #include "BaseXPCService.xcconfig" 25 25 26 WK_XPC_SERVICE_VARIANT = Normal;27 26 WK_XPC_SERVICE_IOS_ENTITLEMENTS_BASE = Databases-iOS; 28 27 29 PRODUCT_NAME = com.apple.WebKit.Databases ;28 PRODUCT_NAME = com.apple.WebKit.Databases$(WK_XPC_SERVICE_SUFFIX); 30 29 INFOPLIST_FILE = DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService/Info.plist; -
trunk/Source/WebKit2/Configurations/DebugRelease.xcconfig
r194318 r195795 1 // Copyright (C) 2009, 2013 , 2014Apple Inc. All rights reserved.1 // Copyright (C) 2009, 2013-2016 Apple Inc. All rights reserved. 2 2 // 3 3 // Redistribution and use in source and binary forms, with or without … … 49 49 50 50 WK_MANUAL_SANDBOXING_ENABLED[sdk=iphoneos*] = YES; 51 52 WK_RELOCATABLE_FRAMEWORKS = YES; 53 WK_XPC_SERVICE_SUFFIX = .Development; -
trunk/Source/WebKit2/Configurations/NetworkService.xcconfig
r194018 r195795 1 // Copyright (C) 2012 , 2013Apple Inc. All rights reserved.1 // Copyright (C) 2012-2016 Apple Inc. All rights reserved. 2 2 // 3 3 // Redistribution and use in source and binary forms, with or without … … 24 24 #include "BaseXPCService.xcconfig" 25 25 26 WK_XPC_SERVICE_VARIANT = Normal;27 26 WK_XPC_SERVICE_IOS_ENTITLEMENTS_BASE = Network-iOS; 28 27 29 PRODUCT_NAME = com.apple.WebKit.Networking ;28 PRODUCT_NAME = com.apple.WebKit.Networking$(WK_XPC_SERVICE_SUFFIX); 30 29 INFOPLIST_FILE[sdk=iphone*] = NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-iOS.plist; 31 30 INFOPLIST_FILE[sdk=macosx*] = NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX$(WK_XPC_SERVICE_INFOPLIST_SUFFIX).plist; 32 31 33 OTHER_LDFLAGS = $(inherited) $(OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH) $(OTHER_LDFLAGS_SHIM_$(WK_LINK_SHIM)) ;32 OTHER_LDFLAGS = $(inherited) $(OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH) $(OTHER_LDFLAGS_SHIM_$(WK_LINK_SHIM)) $(WK_RELOCATABLE_FRAMEWORKS_LDFLAGS); 34 33 OTHER_LDFLAGS_SHIM_YES = $(BUILT_PRODUCTS_DIR)/SecItemShim.dylib; -
trunk/Source/WebKit2/Configurations/PluginService.32.xcconfig
r194018 r195795 1 // Copyright (C) 2013 Apple Inc. All rights reserved.1 // Copyright (C) 2013-2016 Apple Inc. All rights reserved. 2 2 // 3 3 // Redistribution and use in source and binary forms, with or without … … 24 24 #include "BaseXPCService.xcconfig" 25 25 26 WK_XPC_SERVICE_VARIANT = Normal;27 28 26 VALID_ARCHS[sdk=macosx*] = $(VALID_ARCHS_macosx_$(ONLY_ACTIVE_ARCH)); 29 27 VALID_ARCHS_macosx_YES = $(VALID_ARCHS); 30 28 VALID_ARCHS_macosx_NO = i386; 31 29 32 PRODUCT_NAME = com.apple.WebKit.Plugin.32 ;30 PRODUCT_NAME = com.apple.WebKit.Plugin.32$(WK_XPC_SERVICE_SUFFIX); 33 31 INFOPLIST_FILE = PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64$(WK_XPC_SERVICE_INFOPLIST_SUFFIX).Info.plist; 34 32 35 OTHER_LDFLAGS = $(OTHER_LDFLAGS) $(OTHER_LDFLAGS_PLATFORM) $(OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH) ;33 OTHER_LDFLAGS = $(OTHER_LDFLAGS) $(OTHER_LDFLAGS_PLATFORM) $(OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH) $(WK_RELOCATABLE_FRAMEWORKS_LDFLAGS); 36 34 OTHER_LDFLAGS_PLATFORM[sdk=macosx*] = -framework AppKit $(OTHER_LDFLAGS_SHIM_$(WK_LINK_SHIM)); 37 35 OTHER_LDFLAGS_SHIM_YES = $(BUILT_PRODUCTS_DIR)/PluginProcessShim.dylib; -
trunk/Source/WebKit2/Configurations/PluginService.64.xcconfig
r194018 r195795 1 // Copyright (C) 2013 Apple Inc. All rights reserved.1 // Copyright (C) 2013-2016 Apple Inc. All rights reserved. 2 2 // 3 3 // Redistribution and use in source and binary forms, with or without … … 24 24 #include "BaseXPCService.xcconfig" 25 25 26 WK_XPC_SERVICE_VARIANT = Normal;27 28 26 VALID_ARCHS[sdk=macosx*] = $(VALID_ARCHS_macosx_$(ONLY_ACTIVE_ARCH)); 29 27 VALID_ARCHS_macosx_YES = $(VALID_ARCHS); 30 28 VALID_ARCHS_macosx_NO = x86_64; 31 29 32 PRODUCT_NAME = com.apple.WebKit.Plugin.64 ;30 PRODUCT_NAME = com.apple.WebKit.Plugin.64$(WK_XPC_SERVICE_SUFFIX); 33 31 INFOPLIST_FILE = PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64$(WK_XPC_SERVICE_INFOPLIST_SUFFIX).Info.plist; 34 32 35 OTHER_LDFLAGS = $(OTHER_LDFLAGS) $(OTHER_LDFLAGS_PLATFORM) $(OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH) ;33 OTHER_LDFLAGS = $(OTHER_LDFLAGS) $(OTHER_LDFLAGS_PLATFORM) $(OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH) $(WK_RELOCATABLE_FRAMEWORKS_LDFLAGS); 36 34 OTHER_LDFLAGS_PLATFORM[sdk=macosx*] = -framework AppKit $(OTHER_LDFLAGS_SHIM_$(WK_LINK_SHIM)); 37 35 OTHER_LDFLAGS_SHIM_YES = $(BUILT_PRODUCTS_DIR)/PluginProcessShim.dylib; -
trunk/Source/WebKit2/Configurations/WebContentService.xcconfig
r194318 r195795 1 // Copyright (C) 2012-201 4Apple Inc. All rights reserved.1 // Copyright (C) 2012-2016 Apple Inc. All rights reserved. 2 2 // 3 3 // Redistribution and use in source and binary forms, with or without … … 24 24 #include "BaseXPCService.xcconfig" 25 25 26 WK_XPC_SERVICE_VARIANT = Normal;27 26 WK_XPC_SERVICE_IOS_ENTITLEMENTS_BASE = WebContent-iOS; 28 27 29 PRODUCT_NAME = com.apple.WebKit.WebContent ;28 PRODUCT_NAME = com.apple.WebKit.WebContent$(WK_XPC_SERVICE_SUFFIX); 30 29 INFOPLIST_FILE[sdk=iphone*] = WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-iOS.plist; 31 30 INFOPLIST_FILE[sdk=macosx*] = WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX$(WK_XPC_SERVICE_INFOPLIST_SUFFIX).plist; 32 31 33 OTHER_LDFLAGS = $(inherited) $(OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH) $(OTHER_LDFLAGS_PLATFORM) ;32 OTHER_LDFLAGS = $(inherited) $(OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH) $(OTHER_LDFLAGS_PLATFORM) $(WK_RELOCATABLE_FRAMEWORKS_LDFLAGS); 34 33 OTHER_LDFLAGS_PLATFORM[sdk=macosx*] = -framework AppKit $(OTHER_LDFLAGS_SHIM_$(WK_LINK_SHIM)); 35 34 OTHER_LDFLAGS_SHIM_YES = $(BUILT_PRODUCTS_DIR)/WebProcessShim.dylib; -
trunk/Source/WebKit2/DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService/Info.plist
r194479 r195795 10 10 <string>${EXECUTABLE_NAME}</string> 11 11 <key>CFBundleIdentifier</key> 12 <string> com.apple.WebKit.Databases</string>12 <string>${PRODUCT_NAME}</string> 13 13 <key>CFBundleInfoDictionaryVersion</key> 14 14 <string>6.0</string> -
trunk/Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX-10.9-10.10.plist
r194479 r195795 10 10 <string>${EXECUTABLE_NAME}</string> 11 11 <key>CFBundleIdentifier</key> 12 <string> com.apple.WebKit.Networking</string>12 <string>${PRODUCT_NAME}</string> 13 13 <key>CFBundleInfoDictionaryVersion</key> 14 14 <string>6.0</string> … … 44 44 <dict> 45 45 <key>DYLD_INSERT_LIBRARIES</key> 46 <string>$(W EBKIT_FRAMEWORKS_DIR)/WebKit.framework/Frameworks/SecItemShim.dylib</string>46 <string>$(WK_XPC_SERVICE_INSERT_LIBRARIES_DIR)/SecItemShim.dylib</string> 47 47 </dict> 48 48 </dict> -
trunk/Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX.plist
r194479 r195795 10 10 <string>${EXECUTABLE_NAME}</string> 11 11 <key>CFBundleIdentifier</key> 12 <string> com.apple.WebKit.Networking</string>12 <string>${PRODUCT_NAME}</string> 13 13 <key>CFBundleInfoDictionaryVersion</key> 14 14 <string>6.0</string> -
trunk/Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-iOS.plist
r194479 r195795 10 10 <string>${EXECUTABLE_NAME}</string> 11 11 <key>CFBundleIdentifier</key> 12 <string> com.apple.WebKit.Networking</string>12 <string>${PRODUCT_NAME}</string> 13 13 <key>CFBundleInfoDictionaryVersion</key> 14 14 <string>6.0</string> -
trunk/Source/WebKit2/PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64-10.9-10.10.Info.plist
r194479 r195795 50 50 <dict> 51 51 <key>DYLD_INSERT_LIBRARIES</key> 52 <string>$(W EBKIT_FRAMEWORKS_DIR)/WebKit.framework/Frameworks/PluginProcessShim.dylib</string>52 <string>$(WK_XPC_SERVICE_INSERT_LIBRARIES_DIR)/PluginProcessShim.dylib</string> 53 53 <key>NSStringDisableTagged</key> 54 54 <string>YES</string> -
trunk/Source/WebKit2/Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm
r183209 r195795 1 1 /* 2 * Copyright (C) 2013 Apple Inc. All rights reserved.2 * Copyright (C) 2013, 2015, 2016 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 28 28 #import <CoreFoundation/CoreFoundation.h> 29 29 #import <wtf/OSObjectPtr.h> 30 #import <wtf/RetainPtr.h> 30 31 #import <wtf/spi/darwin/XPCSPI.h> 31 32 … … 60 61 xpc_connection_send_message(xpc_dictionary_get_remote_connection(event), reply.get()); 61 62 63 int fd = xpc_dictionary_dup_fd(event, "stdout"); 64 if (fd != -1) 65 dup2(fd, STDOUT_FILENO); 66 67 fd = xpc_dictionary_dup_fd(event, "stderr"); 68 if (fd != -1) 69 dup2(fd, STDERR_FILENO); 70 62 71 initializerFunctionPtr(peer, event); 63 72 } … … 78 87 int main(int argc, char** argv) 79 88 { 89 auto bootstrap = adoptOSObject(xpc_copy_bootstrap()); 80 90 #if PLATFORM(IOS) 81 auto bootstrap = adoptOSObject(xpc_copy_bootstrap());82 91 auto containerEnvironmentVariables = xpc_dictionary_get_value(bootstrap.get(), "ContainerEnvironmentVariables"); 83 92 xpc_dictionary_apply(containerEnvironmentVariables, ^(const char *key, xpc_object_t value) { … … 87 96 #endif 88 97 98 if (bootstrap) { 99 if (xpc_object_t languages = xpc_dictionary_get_value(bootstrap.get(), "OverrideLanguages")) { 100 @autoreleasepool { 101 NSDictionary *existingArguments = [[NSUserDefaults standardUserDefaults] volatileDomainForName:NSArgumentDomain]; 102 NSMutableDictionary *newArguments = [existingArguments mutableCopy]; 103 RetainPtr<NSMutableArray *> newLanguages = adoptNS([[NSMutableArray alloc] init]); 104 xpc_array_apply(languages, ^(size_t index, xpc_object_t value) { 105 [newLanguages addObject:[NSString stringWithCString:xpc_string_get_string_ptr(value) encoding:NSUTF8StringEncoding]]; 106 return true; 107 }); 108 [newArguments setValue:newLanguages.get() forKey:@"AppleLanguages"]; 109 [[NSUserDefaults standardUserDefaults] setVolatileDomain:newArguments forName:NSArgumentDomain]; 110 } 111 } 112 } 113 89 114 xpc_main(XPCServiceEventHandler); 90 115 return 0; -
trunk/Source/WebKit2/UIProcess/Launcher/mac/ProcessLauncherMac.mm
r194318 r195795 1 1 /* 2 * Copyright (C) 2010-201 4Apple Inc. All rights reserved.2 * Copyright (C) 2010-2016 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 94 94 #endif 95 95 96 #if PLATFORM(MAC) 96 #if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED < 101100 97 97 static RetainPtr<NSString> computeProcessShimPath(const ProcessLauncher::LaunchOptions& launchOptions, NSBundle *webKitBundle) 98 98 { … … 136 136 #endif 137 137 138 #if PLATFORM(MAC) 139 // FIXME: In El Capitan and later, do this only for development builds, because in production, the executables link directly against the shims. 138 #if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED < 101100 140 139 if (auto shimPath = computeProcessShimPath(launchOptions, webKitBundle)) { 141 140 // Make sure that the shim library file exists and insert it. … … 150 149 typedef void (ProcessLauncher::*DidFinishLaunchingProcessFunction)(PlatformProcessIdentifier, IPC::Connection::Identifier); 151 150 152 static const char* serviceName(const ProcessLauncher::LaunchOptions& launchOptions , bool forDevelopment)151 static const char* serviceName(const ProcessLauncher::LaunchOptions& launchOptions) 153 152 { 154 153 switch (launchOptions.processType) { 155 154 case ProcessLauncher::WebProcess: 156 if (forDevelopment) 157 return "com.apple.WebKit.WebContent.Development"; 158 return "com.apple.WebKit.WebContent"; 155 return "com.apple.WebKit.WebContent" WK_XPC_SERVICE_SUFFIX; 159 156 case ProcessLauncher::NetworkProcess: 160 if (forDevelopment) 161 return "com.apple.WebKit.Networking.Development"; 162 return "com.apple.WebKit.Networking"; 157 return "com.apple.WebKit.Networking" WK_XPC_SERVICE_SUFFIX; 163 158 #if ENABLE(DATABASE_PROCESS) 164 159 case ProcessLauncher::DatabaseProcess: 165 if (forDevelopment) 166 return "com.apple.WebKit.Databases.Development"; 167 return "com.apple.WebKit.Databases"; 160 return "com.apple.WebKit.Databases" WK_XPC_SERVICE_SUFFIX; 168 161 #endif 169 162 #if ENABLE(NETSCAPE_PLUGIN_API) 170 163 case ProcessLauncher::PluginProcess: 171 164 // FIXME: Support plugins that require an executable heap. 172 if (forDevelopment) { 173 if (launchOptions.architecture == CPU_TYPE_X86) 174 return "com.apple.WebKit.Plugin.32.Development"; 175 if (launchOptions.architecture == CPU_TYPE_X86_64) 176 return "com.apple.WebKit.Plugin.64.Development"; 177 } else { 178 if (launchOptions.architecture == CPU_TYPE_X86) 179 return "com.apple.WebKit.Plugin.32"; 180 if (launchOptions.architecture == CPU_TYPE_X86_64) 181 return "com.apple.WebKit.Plugin.64"; 182 } 165 if (launchOptions.architecture == CPU_TYPE_X86) 166 return "com.apple.WebKit.Plugin.32" WK_XPC_SERVICE_SUFFIX; 167 if (launchOptions.architecture == CPU_TYPE_X86_64) 168 return "com.apple.WebKit.Plugin.64" WK_XPC_SERVICE_SUFFIX; 183 169 184 170 ASSERT_NOT_REACHED(); … … 203 189 { 204 190 // Create a connection to the WebKit XPC service. 205 auto connection = adoptOSObject(xpc_connection_create(serviceName(launchOptions , forDevelopment), 0));191 auto connection = adoptOSObject(xpc_connection_create(serviceName(launchOptions), 0)); 206 192 xpc_connection_set_oneshot_instance(connection.get(), instanceUUID->uuid); 207 193 … … 259 245 auto bootstrapMessage = adoptOSObject(xpc_dictionary_create(nullptr, nullptr, 0)); 260 246 xpc_dictionary_set_string(bootstrapMessage.get(), "message-name", "bootstrap"); 261 xpc_dictionary_set_string(bootstrapMessage.get(), "framework-executable-path", [[[NSBundle bundleWithIdentifier:@"com.apple.WebKit"] executablePath] fileSystemRepresentation]);262 247 263 248 xpc_dictionary_set_mach_send(bootstrapMessage.get(), "server-port", listeningPort); … … 312 297 } 313 298 314 static void connectToReExecService(const ProcessLauncher::LaunchOptions& launchOptions, ProcessLauncher* that, DidFinishLaunchingProcessFunction didFinishLaunchingProcessFunction)315 {316 EnvironmentVariables environmentVariables;317 addDYLDEnvironmentAdditions(launchOptions, true, environmentVariables);318 319 #if ENABLE(NETSCAPE_PLUGIN_API)320 if (launchOptions.processType == ProcessLauncher::PluginProcess) {321 // Tagged pointers break video in Flash, see bug 135354.322 environmentVariables.set("NSStringDisableTagged", "YES");323 }324 #endif325 326 // FIXME: This UUID should be stored on the ChildProcessProxy.327 RefPtr<UUIDHolder> instanceUUID = UUIDHolder::create();328 329 // FIXME: It would be nice if we could use OSObjectPtr for this connection as well, but we'd have to be careful330 // not to introduce any retain cycles in the call to xpc_connection_set_event_handler below.331 xpc_connection_t reExecConnection = xpc_connection_create(serviceName(launchOptions, true), 0);332 xpc_connection_set_oneshot_instance(reExecConnection, instanceUUID->uuid);333 334 // Keep the ProcessLauncher alive while we do the re-execing (balanced in event handler).335 that->ref();336 337 // We wait for the connection to tear itself down (indicated via an error event)338 // to indicate that the service instance re-execed itself, and is now ready to be339 // connected to.340 xpc_connection_set_event_handler(reExecConnection, ^(xpc_object_t event) {341 ASSERT(xpc_get_type(event) == XPC_TYPE_ERROR);342 343 connectToService(launchOptions, true, that, didFinishLaunchingProcessFunction, instanceUUID.get());344 345 // Release the connection.346 xpc_release(reExecConnection);347 348 // Other end of ref called before we setup the event handler.349 that->deref();350 });351 xpc_connection_resume(reExecConnection);352 353 xpc_object_t reExecMessage = xpc_dictionary_create(0, 0, 0);354 xpc_dictionary_set_string(reExecMessage, "message-name", "re-exec");355 356 xpc_object_t environment = xpc_array_create(0, 0);357 char** environmentPointer = environmentVariables.environmentPointer();358 Vector<CString> temps;359 for (size_t i = 0; environmentPointer[i]; ++i) {360 CString temp(environmentPointer[i], strlen(environmentPointer[i]));361 temps.append(temp);362 363 xpc_array_set_string(environment, XPC_ARRAY_APPEND, temp.data());364 }365 xpc_dictionary_set_value(reExecMessage, "environment", environment);366 xpc_release(environment);367 368 xpc_dictionary_set_bool(reExecMessage, "executable-heap", launchOptions.executableHeap);369 370 xpc_connection_send_message(reExecConnection, reExecMessage);371 xpc_release(reExecMessage);372 }373 374 299 static void createService(const ProcessLauncher::LaunchOptions& launchOptions, bool forDevelopment, ProcessLauncher* that, DidFinishLaunchingProcessFunction didFinishLaunchingProcessFunction) 375 300 { 376 if (forDevelopment) {377 connectToReExecService(launchOptions, that, didFinishLaunchingProcessFunction);378 return;379 }380 381 301 // Generate the uuid for the service instance we are about to create. 382 302 // FIXME: This UUID should be stored on the ChildProcessProxy. 383 303 RefPtr<UUIDHolder> instanceUUID = UUIDHolder::create(); 384 connectToService(launchOptions, f alse, that, didFinishLaunchingProcessFunction, instanceUUID.get());304 connectToService(launchOptions, forDevelopment, that, didFinishLaunchingProcessFunction, instanceUUID.get()); 385 305 } 386 306 -
trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj
r195722 r195795 22 22 BCDE0AC113272712001259FB /* PBXTargetDependency */, 23 23 BCA8D46815BCE0D6009DC1F1 /* PBXTargetDependency */, 24 BCAE9DFD160C0AB000A33217 /* PBXTargetDependency */,25 24 51A60B2E180CCF1700F3BF50 /* PBXTargetDependency */, 26 51A60B30180CCF1700F3BF50 /* PBXTargetDependency */,27 25 BC77F95616D0459100F8F78A /* PBXTargetDependency */, 28 26 BC82844616B4FF6600A278FE /* PBXTargetDependency */, 29 BC82844816B4FF6F00A278FE /* PBXTargetDependency */,30 E1B1B19C1A7AD133007B0965 /* PBXTargetDependency */,31 27 BC8283D516B4C01F00A278FE /* PBXTargetDependency */, 32 BC8283D716B4C02200A278FE /* PBXTargetDependency */,33 28 ); 34 29 name = All; … … 963 958 517DD5BF180DA7D30081660B /* DatabaseProcessProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 517DD5BD180DA7D30081660B /* DatabaseProcessProxy.h */; }; 964 959 517DD5C5180DC3E10081660B /* DatabaseProcessProxyMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 517DD5C4180DC3E10081660B /* DatabaseProcessProxyMac.mm */; }; 965 5180C715180CCA3100FDA612 /* XPCServiceMain.Development.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC82839716B480F600A278FE /* XPCServiceMain.Development.mm */; };966 5180C717180CCA3100FDA612 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BC3DE46815A91763008D26FC /* Foundation.framework */; };967 960 51834592134532E90092B696 /* WebIconDatabaseClient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51834590134532E80092B696 /* WebIconDatabaseClient.cpp */; }; 968 961 51834593134532E90092B696 /* WebIconDatabaseClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 51834591134532E80092B696 /* WebIconDatabaseClient.h */; }; … … 1471 1464 BC5D24A216CC3B9E007D5461 /* ChildProcessMain.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC5D249F16CC3B9E007D5461 /* ChildProcessMain.mm */; }; 1472 1465 BC5D24A316CC3B9E007D5461 /* ChildProcessMain.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC5D249F16CC3B9E007D5461 /* ChildProcessMain.mm */; }; 1473 BC5D24A716CC3D5D007D5461 /* XPCServiceMain.Development.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC82839716B480F600A278FE /* XPCServiceMain.Development.mm */; };1474 BC5D24A816CC3D5E007D5461 /* XPCServiceMain.Development.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC82839716B480F600A278FE /* XPCServiceMain.Development.mm */; };1475 BC5D24AA16CC3D5F007D5461 /* XPCServiceMain.Development.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC82839716B480F600A278FE /* XPCServiceMain.Development.mm */; };1476 1466 BC5D24AB16CC3D62007D5461 /* XPCServiceMain.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC82839616B47EC400A278FE /* XPCServiceMain.mm */; }; 1477 1467 BC5D24AC16CC3D63007D5461 /* XPCServiceMain.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC82839616B47EC400A278FE /* XPCServiceMain.mm */; }; … … 1568 1558 BCA8C6B011E3C08700812FB7 /* InjectedBundlePageUIClient.h in Headers */ = {isa = PBXBuildFile; fileRef = BCA8C6AE11E3C08700812FB7 /* InjectedBundlePageUIClient.h */; }; 1569 1559 BCAE9E08160C1C0700A33217 /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8DC2EF5B0486A6940098B216 /* WebKit.framework */; }; 1570 BCAE9E09160C233B00A33217 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BC3DE46815A91763008D26FC /* Foundation.framework */; };1571 BCAF361F16CA28CD00D4E9FC /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BC3DE46815A91763008D26FC /* Foundation.framework */; };1572 1560 BCAF362016CA28D600D4E9FC /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BC3DE46815A91763008D26FC /* Foundation.framework */; }; 1573 BCAF362216CA292B00D4E9FC /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BC3DE46815A91763008D26FC /* Foundation.framework */; };1574 1561 BCB63478116BF10600603215 /* WebKit2_C.h in Headers */ = {isa = PBXBuildFile; fileRef = BCB63477116BF10600603215 /* WebKit2_C.h */; settings = {ATTRIBUTES = (Private, ); }; }; 1575 1562 BCB9E24B1120E15C00A137E0 /* WKContext.h in Headers */ = {isa = PBXBuildFile; fileRef = BCB9E2491120E15C00A137E0 /* WKContext.h */; settings = {ATTRIBUTES = (Private, ); }; }; … … 1794 1781 E1AEA22F14687BDB00804569 /* WKFullKeyboardAccessWatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = E1AEA22D14687BDB00804569 /* WKFullKeyboardAccessWatcher.h */; }; 1795 1782 E1AEA23014687BDB00804569 /* WKFullKeyboardAccessWatcher.mm in Sources */ = {isa = PBXBuildFile; fileRef = E1AEA22E14687BDB00804569 /* WKFullKeyboardAccessWatcher.mm */; }; 1796 E1B1B1901A7AC1F5007B0965 /* XPCServiceMain.Development.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC82839716B480F600A278FE /* XPCServiceMain.Development.mm */; };1797 E1B1B1921A7AC1F5007B0965 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BC3DE46815A91763008D26FC /* Foundation.framework */; };1798 1783 E1B78471163F24690007B692 /* RemoteNetworkingContext.h in Headers */ = {isa = PBXBuildFile; fileRef = E1B78470163F24690007B692 /* RemoteNetworkingContext.h */; }; 1799 1784 E1B78473163F253E0007B692 /* RemoteNetworkingContext.mm in Sources */ = {isa = PBXBuildFile; fileRef = E1B78472163F253E0007B692 /* RemoteNetworkingContext.mm */; }; … … 1801 1786 E1CC1B9112D7EADF00625838 /* PrintInfoMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = E1CC1B8F12D7EADF00625838 /* PrintInfoMac.mm */; }; 1802 1787 E1D26A51175964D70095BFD1 /* WebContentProcess.xib in Resources */ = {isa = PBXBuildFile; fileRef = E1D26A4C1759634E0095BFD1 /* WebContentProcess.xib */; }; 1803 E1D26A52175964D90095BFD1 /* WebContentProcess.xib in Resources */ = {isa = PBXBuildFile; fileRef = E1D26A4C1759634E0095BFD1 /* WebContentProcess.xib */; };1804 1788 E1D26A53175964D90095BFD1 /* WebContentProcess.xib in Resources */ = {isa = PBXBuildFile; fileRef = E1D26A4C1759634E0095BFD1 /* WebContentProcess.xib */; }; 1805 1789 E1E552C416AE065F004ED653 /* SandboxInitialiationParametersMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = E1E552C216AE065E004ED653 /* SandboxInitialiationParametersMac.mm */; }; … … 1888 1872 remoteInfo = WebKit; 1889 1873 }; 1890 375E0636191EA9A7004E3CAF /* PBXContainerItemProxy */ = {1891 isa = PBXContainerItemProxy;1892 containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;1893 proxyType = 1;1894 remoteGlobalIDString = 8DC2EF4F0486A6940098B216;1895 remoteInfo = WebKit;1896 };1897 375E0638191EA9AD004E3CAF /* PBXContainerItemProxy */ = {1898 isa = PBXContainerItemProxy;1899 containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;1900 proxyType = 1;1901 remoteGlobalIDString = 8DC2EF4F0486A6940098B216;1902 remoteInfo = WebKit;1903 };1904 375E063A191EA9BA004E3CAF /* PBXContainerItemProxy */ = {1905 isa = PBXContainerItemProxy;1906 containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;1907 proxyType = 1;1908 remoteGlobalIDString = 8DC2EF4F0486A6940098B216;1909 remoteInfo = WebKit;1910 };1911 375E063C191EA9C1004E3CAF /* PBXContainerItemProxy */ = {1912 isa = PBXContainerItemProxy;1913 containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;1914 proxyType = 1;1915 remoteGlobalIDString = 8DC2EF4F0486A6940098B216;1916 remoteInfo = WebKit;1917 };1918 1874 375E063E191EAA33004E3CAF /* PBXContainerItemProxy */ = { 1919 1875 isa = PBXContainerItemProxy; … … 1979 1935 remoteInfo = Databases; 1980 1936 }; 1981 51A60B2F180CCF1700F3BF50 /* PBXContainerItemProxy */ = {1982 isa = PBXContainerItemProxy;1983 containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;1984 proxyType = 1;1985 remoteGlobalIDString = 5180C713180CCA3100FDA612;1986 remoteInfo = Databases.Development;1987 };1988 1937 51FA1E1B180CCADE00C44BE9 /* PBXContainerItemProxy */ = { 1989 1938 isa = PBXContainerItemProxy; … … 2007 1956 remoteInfo = Networking; 2008 1957 }; 2009 BC8283D616B4C02200A278FE /* PBXContainerItemProxy */ = {2010 isa = PBXContainerItemProxy;2011 containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;2012 proxyType = 1;2013 remoteGlobalIDString = BC8283C416B4BFA800A278FE;2014 remoteInfo = Networking.Development;2015 };2016 1958 BC82844516B4FF6600A278FE /* PBXContainerItemProxy */ = { 2017 1959 isa = PBXContainerItemProxy; … … 2021 1963 remoteInfo = Plugin.64; 2022 1964 }; 2023 BC82844716B4FF6F00A278FE /* PBXContainerItemProxy */ = {2024 isa = PBXContainerItemProxy;2025 containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;2026 proxyType = 1;2027 remoteGlobalIDString = BC82843116B4FE1300A278FE;2028 remoteInfo = Plugin.64.Development;2029 };2030 1965 BCA8D46715BCE0D6009DC1F1 /* PBXContainerItemProxy */ = { 2031 1966 isa = PBXContainerItemProxy; … … 2035 1970 remoteInfo = WebKit2Service; 2036 1971 }; 2037 BCAE9DFC160C0AB000A33217 /* PBXContainerItemProxy */ = {2038 isa = PBXContainerItemProxy;2039 containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;2040 proxyType = 1;2041 remoteGlobalIDString = BCAE9DE8160C097400A33217;2042 remoteInfo = WebProcessServiceForWebKitDevelopment;2043 };2044 1972 BCDE093713272496001259FB /* PBXContainerItemProxy */ = { 2045 1973 isa = PBXContainerItemProxy; … … 2055 1983 remoteGlobalIDString = BCDE093313272496001259FB; 2056 1984 remoteInfo = "Plugin Process"; 2057 };2058 E1B1B18E1A7AC1F5007B0965 /* PBXContainerItemProxy */ = {2059 isa = PBXContainerItemProxy;2060 containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;2061 proxyType = 1;2062 remoteGlobalIDString = 8DC2EF4F0486A6940098B216;2063 remoteInfo = WebKit;2064 };2065 E1B1B19B1A7AD133007B0965 /* PBXContainerItemProxy */ = {2066 isa = PBXContainerItemProxy;2067 containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;2068 proxyType = 1;2069 remoteGlobalIDString = E1B1B18C1A7AC1F5007B0965;2070 remoteInfo = Plugin.64.Development;2071 1985 }; 2072 1986 /* End PBXContainerItemProxy section */ … … 2787 2701 2D6CD117189058A500E5A4A0 /* ViewSnapshotStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewSnapshotStore.h; sourceTree = "<group>"; }; 2788 2702 2D6CD118189058A500E5A4A0 /* ViewSnapshotStore.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ViewSnapshotStore.mm; sourceTree = "<group>"; }; 2789 2D70AB1318A1D51A00026D6E /* Info-iOS.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-iOS.plist"; sourceTree = "<group>"; };2790 2D70AB1418A1D57C00026D6E /* Info-iOS.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-iOS.plist"; sourceTree = "<group>"; };2791 2703 2D7303781A7C2B7500F8F487 /* WKPageNavigationClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKPageNavigationClient.h; sourceTree = "<group>"; }; 2792 2704 2D790A9C1AD7050D00AB90B3 /* _WKLayoutMode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _WKLayoutMode.h; sourceTree = "<group>"; }; … … 3133 3045 517DD5BD180DA7D30081660B /* DatabaseProcessProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DatabaseProcessProxy.h; path = Databases/DatabaseProcessProxy.h; sourceTree = "<group>"; }; 3134 3046 517DD5C4180DC3E10081660B /* DatabaseProcessProxyMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = DatabaseProcessProxyMac.mm; path = Databases/mac/DatabaseProcessProxyMac.mm; sourceTree = "<group>"; }; 3135 5180C71D180CCA3100FDA612 /* com.apple.WebKit.Databases.Development.xpc */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = com.apple.WebKit.Databases.Development.xpc; sourceTree = BUILT_PRODUCTS_DIR; };3136 3047 51834590134532E80092B696 /* WebIconDatabaseClient.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebIconDatabaseClient.cpp; sourceTree = "<group>"; }; 3137 3048 51834591134532E80092B696 /* WebIconDatabaseClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebIconDatabaseClient.h; sourceTree = "<group>"; }; … … 3157 3068 51A55600128C6D92009ABCEC /* WKContextMenuItemTypes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKContextMenuItemTypes.h; sourceTree = "<group>"; }; 3158 3069 51A60B27180CCD9000F3BF50 /* DatabaseProcess.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = DatabaseProcess.xcconfig; sourceTree = "<group>"; }; 3159 51A60B28180CCD9000F3BF50 /* DatabaseService.Development.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = DatabaseService.Development.xcconfig; sourceTree = "<group>"; };3160 3070 51A60B29180CCD9000F3BF50 /* DatabaseService.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = DatabaseService.xcconfig; sourceTree = "<group>"; }; 3161 3071 51A728DC1B1BAD2D00102EEE /* WKBundleNavigationActionPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKBundleNavigationActionPrivate.h; sourceTree = "<group>"; }; … … 3214 3124 51E35203180F5D4B00E53BE9 /* DatabaseProcessMain.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = DatabaseProcessMain.mm; sourceTree = "<group>"; }; 3215 3125 51E35204180F5D4B00E53BE9 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; }; 3216 51E35206180F5D5900E53BE9 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };3217 3126 51E35207180F5D6100E53BE9 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; }; 3218 3127 51E35208180F5D6B00E53BE9 /* DatabaseServiceEntryPoint.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DatabaseServiceEntryPoint.mm; sourceTree = "<group>"; }; … … 3220 3129 51F060DD1654317500F3281B /* WebResourceLoaderMessageReceiver.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = WebResourceLoaderMessageReceiver.cpp; sourceTree = "<group>"; }; 3221 3130 51F060DE1654317500F3281B /* WebResourceLoaderMessages.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WebResourceLoaderMessages.h; sourceTree = "<group>"; }; 3222 51F7DC4A180CC93600212CA3 /* com.apple.WebKit.Databases. xpc */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = com.apple.WebKit.Databases.xpc; sourceTree = BUILT_PRODUCTS_DIR; };3131 51F7DC4A180CC93600212CA3 /* com.apple.WebKit.Databases.Development.xpc */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = com.apple.WebKit.Databases.Development.xpc; sourceTree = BUILT_PRODUCTS_DIR; }; 3223 3132 51FA1E28180CCADE00C44BE9 /* DatabaseProcess.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = DatabaseProcess.app; sourceTree = BUILT_PRODUCTS_DIR; }; 3224 3133 51FA2D541521118600C1BA0B /* WKBundleDOMWindowExtension.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKBundleDOMWindowExtension.h; sourceTree = "<group>"; }; … … 3626 3535 BC39C4331626366F008BC689 /* WKDOMRange.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKDOMRange.mm; sourceTree = "<group>"; }; 3627 3536 BC39C4341626366F008BC689 /* WKDOMRange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKDOMRange.h; sourceTree = "<group>"; }; 3628 BC3DE46615A91763008D26FC /* com.apple.WebKit.WebContent. xpc */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = com.apple.WebKit.WebContent.xpc; sourceTree = BUILT_PRODUCTS_DIR; };3537 BC3DE46615A91763008D26FC /* com.apple.WebKit.WebContent.Development.xpc */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = com.apple.WebKit.WebContent.Development.xpc; sourceTree = BUILT_PRODUCTS_DIR; }; 3629 3538 BC3DE46815A91763008D26FC /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 3630 3539 BC4075D7124FF0270068F20A /* WKArray.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKArray.cpp; sourceTree = "<group>"; }; … … 3738 3647 BC82838D16B45FA600A278FE /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; }; 3739 3648 BC82839616B47EC400A278FE /* XPCServiceMain.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = XPCServiceMain.mm; sourceTree = "<group>"; }; 3740 BC82839716B480F600A278FE /* XPCServiceMain.Development.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = XPCServiceMain.Development.mm; sourceTree = "<group>"; };3741 3649 BC82839816B48DC000A278FE /* WebContentServiceEntryPoint.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebContentServiceEntryPoint.mm; sourceTree = "<group>"; }; 3742 3650 BC8283A316B4BD9100A278FE /* Info-OSX.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-OSX.plist"; sourceTree = "<group>"; }; 3743 BC8283A616B4BD9100A278FE /* Info-OSX.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-OSX.plist"; sourceTree = "<group>"; };3744 3651 BC8283A816B4BD9100A278FE /* NetworkServiceEntryPoint.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = NetworkServiceEntryPoint.mm; sourceTree = "<group>"; }; 3745 BC8283AA16B4BEAD00A278FE /* NetworkService.Development.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = NetworkService.Development.xcconfig; sourceTree = "<group>"; };3746 3652 BC8283AB16B4BEAD00A278FE /* NetworkService.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = NetworkService.xcconfig; sourceTree = "<group>"; }; 3747 BC8283B116B4BF7700A278FE /* com.apple.WebKit.Networking.xpc */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = com.apple.WebKit.Networking.xpc; sourceTree = BUILT_PRODUCTS_DIR; }; 3748 BC8283C516B4BFA800A278FE /* com.apple.WebKit.Networking.Development.xpc */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = com.apple.WebKit.Networking.Development.xpc; sourceTree = BUILT_PRODUCTS_DIR; }; 3653 BC8283B116B4BF7700A278FE /* com.apple.WebKit.Networking.Development.xpc */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = com.apple.WebKit.Networking.Development.xpc; sourceTree = BUILT_PRODUCTS_DIR; }; 3749 3654 BC8283EF16B4F8E200A278FE /* PluginServiceEntryPoint.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = PluginServiceEntryPoint.mm; sourceTree = "<group>"; }; 3750 3655 BC8283F216B4FC5300A278FE /* PluginService.32.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = PluginService.32.xcconfig; sourceTree = "<group>"; }; 3751 3656 BC8283F416B4FC5300A278FE /* PluginService.64.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = PluginService.64.xcconfig; sourceTree = "<group>"; }; 3752 BC8283F916B4FDDE00A278FE /* com.apple.WebKit.Plugin.32.xpc */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = com.apple.WebKit.Plugin.32.xpc; sourceTree = BUILT_PRODUCTS_DIR; }; 3753 BC82841F16B4FDF600A278FE /* com.apple.WebKit.Plugin.64.xpc */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = com.apple.WebKit.Plugin.64.xpc; sourceTree = BUILT_PRODUCTS_DIR; }; 3754 BC82843216B4FE1300A278FE /* com.apple.WebKit.Plugin.32.Development.xpc */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = com.apple.WebKit.Plugin.32.Development.xpc; sourceTree = BUILT_PRODUCTS_DIR; }; 3657 BC8283F916B4FDDE00A278FE /* com.apple.WebKit.Plugin.32.Development.xpc */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = com.apple.WebKit.Plugin.32.Development.xpc; sourceTree = BUILT_PRODUCTS_DIR; }; 3658 BC82841F16B4FDF600A278FE /* com.apple.WebKit.Plugin.64.Development.xpc */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = com.apple.WebKit.Plugin.64.Development.xpc; sourceTree = BUILT_PRODUCTS_DIR; }; 3755 3659 BC8452A51162C80900CAB9B5 /* DrawingArea.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DrawingArea.cpp; sourceTree = "<group>"; }; 3756 3660 BC8452A61162C80900CAB9B5 /* DrawingArea.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DrawingArea.h; sourceTree = "<group>"; }; … … 3797 3701 BCACC40D16B0B7BE00B6E092 /* BaseXPCService.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = BaseXPCService.xcconfig; sourceTree = "<group>"; }; 3798 3702 BCACC40E16B0B8A800B6E092 /* WebContentService.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = WebContentService.xcconfig; sourceTree = "<group>"; }; 3799 BCACC40F16B0B8A800B6E092 /* WebContentService.Development.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = WebContentService.Development.xcconfig; sourceTree = "<group>"; };3800 3703 BCACC44016B24CAA00B6E092 /* Info-OSX.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Info-OSX.plist"; sourceTree = "<group>"; }; 3801 BCACC44316B24CAA00B6E092 /* Info-OSX.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Info-OSX.plist"; sourceTree = "<group>"; };3802 BCAE9DE9160C097400A33217 /* com.apple.WebKit.WebContent.Development.xpc */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = com.apple.WebKit.WebContent.Development.xpc; sourceTree = BUILT_PRODUCTS_DIR; };3803 3704 BCB63477116BF10600603215 /* WebKit2_C.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebKit2_C.h; sourceTree = "<group>"; }; 3804 3705 BCB86F4B116AAACD00CE20B7 /* WebKit.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = WebKit.xcconfig; sourceTree = "<group>"; }; … … 3822 3723 BCBD3912125BB1A800D2C29F /* WebPageProxyMessageReceiver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebPageProxyMessageReceiver.cpp; sourceTree = "<group>"; }; 3823 3724 BCBD3913125BB1A800D2C29F /* WebPageProxyMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebPageProxyMessages.h; sourceTree = "<group>"; }; 3824 BCBECDC016B5CE0D00047A1A /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };3825 BCBECDC216B5CE2A00047A1A /* PluginService.64.Development.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = PluginService.64.Development.xcconfig; sourceTree = "<group>"; };3826 3725 BCBECDE516B6416700047A1A /* XPCServiceEntryPoint.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = XPCServiceEntryPoint.mm; sourceTree = "<group>"; }; 3827 3726 BCBECDE616B6416700047A1A /* XPCServiceEntryPoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XPCServiceEntryPoint.h; sourceTree = "<group>"; }; … … 4047 3946 E1AEA22D14687BDB00804569 /* WKFullKeyboardAccessWatcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKFullKeyboardAccessWatcher.h; sourceTree = "<group>"; }; 4048 3947 E1AEA22E14687BDB00804569 /* WKFullKeyboardAccessWatcher.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKFullKeyboardAccessWatcher.mm; sourceTree = "<group>"; }; 4049 E1B1B1981A7AC1F5007B0965 /* com.apple.WebKit.Plugin.64.Development.xpc */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = com.apple.WebKit.Plugin.64.Development.xpc; sourceTree = BUILT_PRODUCTS_DIR; };4050 E1B1B19A1A7AC287007B0965 /* PluginService.32.Development.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = PluginService.32.Development.xcconfig; sourceTree = "<group>"; };4051 3948 E1B78470163F24690007B692 /* RemoteNetworkingContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RemoteNetworkingContext.h; path = NetworkProcess/RemoteNetworkingContext.h; sourceTree = "<group>"; }; 4052 3949 E1B78472163F253E0007B692 /* RemoteNetworkingContext.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = RemoteNetworkingContext.mm; sourceTree = "<group>"; }; … … 4113 4010 runOnlyForDeploymentPostprocessing = 0; 4114 4011 }; 4115 5180C716180CCA3100FDA612 /* Frameworks */ = {4116 isa = PBXFrameworksBuildPhase;4117 buildActionMask = 2147483647;4118 files = (4119 5180C717180CCA3100FDA612 /* Foundation.framework in Frameworks */,4120 );4121 runOnlyForDeploymentPostprocessing = 0;4122 };4123 4012 51F7DC42180CC93600212CA3 /* Frameworks */ = { 4124 4013 isa = PBXFrameworksBuildPhase; … … 4183 4072 runOnlyForDeploymentPostprocessing = 0; 4184 4073 }; 4185 BC8283C216B4BFA800A278FE /* Frameworks */ = {4186 isa = PBXFrameworksBuildPhase;4187 buildActionMask = 2147483647;4188 files = (4189 BCAF361F16CA28CD00D4E9FC /* Foundation.framework in Frameworks */,4190 );4191 runOnlyForDeploymentPostprocessing = 0;4192 };4193 4074 BC8283F616B4FDDE00A278FE /* Frameworks */ = { 4194 4075 isa = PBXFrameworksBuildPhase; … … 4209 4090 runOnlyForDeploymentPostprocessing = 0; 4210 4091 }; 4211 BC82842F16B4FE1300A278FE /* Frameworks */ = {4212 isa = PBXFrameworksBuildPhase;4213 buildActionMask = 2147483647;4214 files = (4215 BCAF362216CA292B00D4E9FC /* Foundation.framework in Frameworks */,4216 );4217 runOnlyForDeploymentPostprocessing = 0;4218 };4219 BCAE9DE6160C097400A33217 /* Frameworks */ = {4220 isa = PBXFrameworksBuildPhase;4221 buildActionMask = 2147483647;4222 files = (4223 BCAE9E09160C233B00A33217 /* Foundation.framework in Frameworks */,4224 );4225 runOnlyForDeploymentPostprocessing = 0;4226 };4227 4092 BCDC308D15FDB99A006B6695 /* Frameworks */ = { 4228 4093 isa = PBXFrameworksBuildPhase; … … 4241 4106 runOnlyForDeploymentPostprocessing = 0; 4242 4107 }; 4243 E1B1B1911A7AC1F5007B0965 /* Frameworks */ = {4244 isa = PBXFrameworksBuildPhase;4245 buildActionMask = 2147483647;4246 files = (4247 E1B1B1921A7AC1F5007B0965 /* Foundation.framework in Frameworks */,4248 );4249 runOnlyForDeploymentPostprocessing = 0;4250 };4251 4108 /* End PBXFrameworksBuildPhase section */ 4252 4109 … … 4255 4112 isa = PBXGroup; 4256 4113 children = ( 4257 5180C71D180CCA3100FDA612 /* com.apple.WebKit.Databases.Development.xpc */, 4258 51F7DC4A180CC93600212CA3 /* com.apple.WebKit.Databases.xpc */, 4259 BC8283C516B4BFA800A278FE /* com.apple.WebKit.Networking.Development.xpc */, 4260 BC8283B116B4BF7700A278FE /* com.apple.WebKit.Networking.xpc */, 4261 BC82843216B4FE1300A278FE /* com.apple.WebKit.Plugin.32.Development.xpc */, 4262 BC8283F916B4FDDE00A278FE /* com.apple.WebKit.Plugin.32.xpc */, 4263 E1B1B1981A7AC1F5007B0965 /* com.apple.WebKit.Plugin.64.Development.xpc */, 4264 BC82841F16B4FDF600A278FE /* com.apple.WebKit.Plugin.64.xpc */, 4265 BCAE9DE9160C097400A33217 /* com.apple.WebKit.WebContent.Development.xpc */, 4266 BC3DE46615A91763008D26FC /* com.apple.WebKit.WebContent.xpc */, 4114 51F7DC4A180CC93600212CA3 /* com.apple.WebKit.Databases.Development.xpc */, 4115 BC8283B116B4BF7700A278FE /* com.apple.WebKit.Networking.Development.xpc */, 4116 BC8283F916B4FDDE00A278FE /* com.apple.WebKit.Plugin.32.Development.xpc */, 4117 BC82841F16B4FDF600A278FE /* com.apple.WebKit.Plugin.64.Development.xpc */, 4118 BC3DE46615A91763008D26FC /* com.apple.WebKit.WebContent.Development.xpc */, 4267 4119 51FA1E28180CCADE00C44BE9 /* DatabaseProcess.app */, 4268 4120 510CC80E1613C79900D03ED3 /* NetworkProcess.app */, … … 4528 4380 51A60B27180CCD9000F3BF50 /* DatabaseProcess.xcconfig */, 4529 4381 A7BD9863194653D400D35698 /* Databases-iOS.entitlements */, 4530 51A60B28180CCD9000F3BF50 /* DatabaseService.Development.xcconfig */,4531 4382 51A60B29180CCD9000F3BF50 /* DatabaseService.xcconfig */, 4532 4383 1A4F976B100E7B6600637A18 /* DebugRelease.xcconfig */, … … 4534 4385 7C0BB9A918DCDF5A0006C086 /* Network-iOS.entitlements */, 4535 4386 510CC8461613C7C600D03ED3 /* NetworkProcess.xcconfig */, 4536 BC8283AA16B4BEAD00A278FE /* NetworkService.Development.xcconfig */,4537 4387 BC8283AB16B4BEAD00A278FE /* NetworkService.xcconfig */, 4538 4388 BC122FA3132707F300F7EAC1 /* PluginProcess.xcconfig */, 4539 4389 A1EDD2DB1884B96400BBFE98 /* PluginProcessShim.xcconfig */, 4540 E1B1B19A1A7AC287007B0965 /* PluginService.32.Development.xcconfig */,4541 4390 BC8283F216B4FC5300A278FE /* PluginService.32.xcconfig */, 4542 BCBECDC216B5CE2A00047A1A /* PluginService.64.Development.xcconfig */,4543 4391 BC8283F416B4FC5300A278FE /* PluginService.64.xcconfig */, 4544 4392 5D442A5516D5856700AC3331 /* PluginService.entitlements */, … … 4549 4397 7C0BB9A818DCDE890006C086 /* WebContent-iOS.entitlements */, 4550 4398 5DAD7294116FF70B00EE5396 /* WebContentProcess.xcconfig */, 4551 BCACC40F16B0B8A800B6E092 /* WebContentService.Development.xcconfig */,4552 4399 BCACC40E16B0B8A800B6E092 /* WebContentService.xcconfig */, 4553 4400 BCB86F4B116AAACD00CE20B7 /* WebKit.xcconfig */, … … 5792 5639 children = ( 5793 5640 51F7DC0D180CC43800212CA3 /* DatabaseService */, 5794 51F7DC0F180CC46F00212CA3 /* DatabaseService.Development */,5795 5641 51E35208180F5D6B00E53BE9 /* DatabaseServiceEntryPoint.mm */, 5796 5642 ); … … 5805 5651 ); 5806 5652 path = DatabaseService; 5807 sourceTree = "<group>";5808 };5809 51F7DC0F180CC46F00212CA3 /* DatabaseService.Development */ = {5810 isa = PBXGroup;5811 children = (5812 51E35206180F5D5900E53BE9 /* Info.plist */,5813 );5814 path = DatabaseService.Development;5815 5653 sourceTree = "<group>"; 5816 5654 }; … … 6808 6646 BCBECDE616B6416700047A1A /* XPCServiceEntryPoint.h */, 6809 6647 BCBECDE516B6416700047A1A /* XPCServiceEntryPoint.mm */, 6810 BC82839716B480F600A278FE /* XPCServiceMain.Development.mm */,6811 6648 BC82839616B47EC400A278FE /* XPCServiceMain.mm */, 6812 6649 ); … … 6858 6695 children = ( 6859 6696 BC8283A216B4BD9100A278FE /* NetworkService */, 6860 BC8283A516B4BD9100A278FE /* NetworkService.Development */,6861 6697 BC8283A816B4BD9100A278FE /* NetworkServiceEntryPoint.mm */, 6862 6698 ); … … 6875 6711 sourceTree = "<group>"; 6876 6712 }; 6877 BC8283A516B4BD9100A278FE /* NetworkService.Development */ = {6878 isa = PBXGroup;6879 children = (6880 2D70AB1318A1D51A00026D6E /* Info-iOS.plist */,6881 BC8283A616B4BD9100A278FE /* Info-OSX.plist */,6882 );6883 path = NetworkService.Development;6884 sourceTree = "<group>";6885 };6886 6713 BC8283E216B4F8E200A278FE /* XPCService */ = { 6887 6714 isa = PBXGroup; 6888 6715 children = ( 6889 6716 BC8283E916B4F8E200A278FE /* PluginService */, 6890 BCBECDBF16B5CE0D00047A1A /* PluginService.Development */,6891 6717 BC8283EF16B4F8E200A278FE /* PluginServiceEntryPoint.mm */, 6892 6718 ); … … 6982 6808 children = ( 6983 6809 BCACC43F16B24CAA00B6E092 /* WebContentService */, 6984 BCACC44216B24CAA00B6E092 /* WebContentService.Development */,6985 6810 BC82839816B48DC000A278FE /* WebContentServiceEntryPoint.mm */, 6986 6811 ); … … 6997 6822 ); 6998 6823 path = WebContentService; 6999 sourceTree = "<group>";7000 };7001 BCACC44216B24CAA00B6E092 /* WebContentService.Development */ = {7002 isa = PBXGroup;7003 children = (7004 2D70AB1418A1D57C00026D6E /* Info-iOS.plist */,7005 BCACC44316B24CAA00B6E092 /* Info-OSX.plist */,7006 );7007 path = WebContentService.Development;7008 sourceTree = "<group>";7009 };7010 BCBECDBF16B5CE0D00047A1A /* PluginService.Development */ = {7011 isa = PBXGroup;7012 children = (7013 BCBECDC016B5CE0D00047A1A /* Info.plist */,7014 );7015 path = PluginService.Development;7016 6824 sourceTree = "<group>"; 7017 6825 }; … … 8558 8366 productType = "com.apple.product-type.application"; 8559 8367 }; 8560 5180C713180CCA3100FDA612 /* Databases.Development */ = {8561 isa = PBXNativeTarget;8562 buildConfigurationList = 5180C719180CCA3100FDA612 /* Build configuration list for PBXNativeTarget "Databases.Development" */;8563 buildPhases = (8564 5180C714180CCA3100FDA612 /* Sources */,8565 5180C716180CCA3100FDA612 /* Frameworks */,8566 5180C718180CCA3100FDA612 /* Resources */,8567 );8568 buildRules = (8569 );8570 dependencies = (8571 375E0637191EA9A7004E3CAF /* PBXTargetDependency */,8572 );8573 name = Databases.Development;8574 productName = Networking.Development;8575 productReference = 5180C71D180CCA3100FDA612 /* com.apple.WebKit.Databases.Development.xpc */;8576 productType = "com.apple.product-type.bundle";8577 };8578 8368 51F7DC3F180CC93600212CA3 /* Databases */ = { 8579 8369 isa = PBXNativeTarget; … … 8591 8381 name = Databases; 8592 8382 productName = Networking; 8593 productReference = 51F7DC4A180CC93600212CA3 /* com.apple.WebKit.Databases. xpc */;8383 productReference = 51F7DC4A180CC93600212CA3 /* com.apple.WebKit.Databases.Development.xpc */; 8594 8384 productType = "com.apple.product-type.bundle"; 8595 8385 }; … … 8666 8456 name = WebContent; 8667 8457 productName = WebKit2Service; 8668 productReference = BC3DE46615A91763008D26FC /* com.apple.WebKit.WebContent. xpc */;8458 productReference = BC3DE46615A91763008D26FC /* com.apple.WebKit.WebContent.Development.xpc */; 8669 8459 productType = "com.apple.product-type.bundle"; 8670 8460 }; … … 8684 8474 name = Networking; 8685 8475 productName = Networking; 8686 productReference = BC8283B116B4BF7700A278FE /* com.apple.WebKit.Networking.xpc */; 8687 productType = "com.apple.product-type.bundle"; 8688 }; 8689 BC8283C416B4BFA800A278FE /* Networking.Development */ = { 8690 isa = PBXNativeTarget; 8691 buildConfigurationList = BC8283D016B4BFA800A278FE /* Build configuration list for PBXNativeTarget "Networking.Development" */; 8692 buildPhases = ( 8693 BC8283C116B4BFA800A278FE /* Sources */, 8694 BC8283C216B4BFA800A278FE /* Frameworks */, 8695 BC8283C316B4BFA800A278FE /* Resources */, 8696 ); 8697 buildRules = ( 8698 ); 8699 dependencies = ( 8700 375E063B191EA9BA004E3CAF /* PBXTargetDependency */, 8701 ); 8702 name = Networking.Development; 8703 productName = Networking.Development; 8704 productReference = BC8283C516B4BFA800A278FE /* com.apple.WebKit.Networking.Development.xpc */; 8476 productReference = BC8283B116B4BF7700A278FE /* com.apple.WebKit.Networking.Development.xpc */; 8705 8477 productType = "com.apple.product-type.bundle"; 8706 8478 }; … … 8720 8492 name = Plugin.32; 8721 8493 productName = Plugin.32; 8722 productReference = BC8283F916B4FDDE00A278FE /* com.apple.WebKit.Plugin.32. xpc */;8494 productReference = BC8283F916B4FDDE00A278FE /* com.apple.WebKit.Plugin.32.Development.xpc */; 8723 8495 productType = "com.apple.product-type.bundle"; 8724 8496 }; … … 8738 8510 name = Plugin.64; 8739 8511 productName = Plugin.64; 8740 productReference = BC82841F16B4FDF600A278FE /* com.apple.WebKit.Plugin.64.xpc */; 8741 productType = "com.apple.product-type.bundle"; 8742 }; 8743 BC82843116B4FE1300A278FE /* Plugin.32.Development */ = { 8744 isa = PBXNativeTarget; 8745 buildConfigurationList = BC82843D16B4FE1400A278FE /* Build configuration list for PBXNativeTarget "Plugin.32.Development" */; 8746 buildPhases = ( 8747 BC82842E16B4FE1300A278FE /* Sources */, 8748 BC82842F16B4FE1300A278FE /* Frameworks */, 8749 BC82843016B4FE1300A278FE /* Resources */, 8750 ); 8751 buildRules = ( 8752 ); 8753 dependencies = ( 8754 375E0639191EA9AD004E3CAF /* PBXTargetDependency */, 8755 ); 8756 name = Plugin.32.Development; 8757 productName = Plugin.64.Development; 8758 productReference = BC82843216B4FE1300A278FE /* com.apple.WebKit.Plugin.32.Development.xpc */; 8759 productType = "com.apple.product-type.bundle"; 8760 }; 8761 BCAE9DE8160C097400A33217 /* WebContent.Development */ = { 8762 isa = PBXNativeTarget; 8763 buildConfigurationList = BCAE9DF6160C097500A33217 /* Build configuration list for PBXNativeTarget "WebContent.Development" */; 8764 buildPhases = ( 8765 BCAE9DE5160C097400A33217 /* Sources */, 8766 BCAE9DE6160C097400A33217 /* Frameworks */, 8767 BCAE9DE7160C097400A33217 /* Resources */, 8768 ); 8769 buildRules = ( 8770 ); 8771 dependencies = ( 8772 375E063D191EA9C1004E3CAF /* PBXTargetDependency */, 8773 ); 8774 name = WebContent.Development; 8775 productName = WebProcessServiceForWebKitDevelopment; 8776 productReference = BCAE9DE9160C097400A33217 /* com.apple.WebKit.WebContent.Development.xpc */; 8512 productReference = BC82841F16B4FDF600A278FE /* com.apple.WebKit.Plugin.64.Development.xpc */; 8777 8513 productType = "com.apple.product-type.bundle"; 8778 8514 }; … … 8811 8547 productReference = CDC3830617211799008A2FC3 /* WebProcessShim.dylib */; 8812 8548 productType = "com.apple.product-type.library.dynamic"; 8813 };8814 E1B1B18C1A7AC1F5007B0965 /* Plugin.64.Development */ = {8815 isa = PBXNativeTarget;8816 buildConfigurationList = E1B1B1941A7AC1F5007B0965 /* Build configuration list for PBXNativeTarget "Plugin.64.Development" */;8817 buildPhases = (8818 E1B1B18F1A7AC1F5007B0965 /* Sources */,8819 E1B1B1911A7AC1F5007B0965 /* Frameworks */,8820 E1B1B1931A7AC1F5007B0965 /* Resources */,8821 );8822 buildRules = (8823 );8824 dependencies = (8825 E1B1B18D1A7AC1F5007B0965 /* PBXTargetDependency */,8826 );8827 name = Plugin.64.Development;8828 productName = Plugin.64.Development;8829 productReference = E1B1B1981A7AC1F5007B0965 /* com.apple.WebKit.Plugin.64.Development.xpc */;8830 productType = "com.apple.product-type.bundle";8831 8549 }; 8832 8550 /* End PBXNativeTarget section */ … … 8866 8584 CDC382FB17211799008A2FC3 /* WebProcessShim */, 8867 8585 BC3DE46515A91763008D26FC /* WebContent */, 8868 BCAE9DE8160C097400A33217 /* WebContent.Development */,8869 8586 BC8283B016B4BF7700A278FE /* Networking */, 8870 BC8283C416B4BFA800A278FE /* Networking.Development */,8871 8587 BC8283F816B4FDDE00A278FE /* Plugin.32 */, 8872 8588 BC82841E16B4FDF600A278FE /* Plugin.64 */, 8873 BC82843116B4FE1300A278FE /* Plugin.32.Development */,8874 E1B1B18C1A7AC1F5007B0965 /* Plugin.64.Development */,8875 8589 51F7DC3F180CC93600212CA3 /* Databases */, 8876 5180C713180CCA3100FDA612 /* Databases.Development */,8877 8590 A7AADA1019395CA9003EA1C7 /* Sandbox Profiles */, 8878 8591 ); … … 8898 8611 runOnlyForDeploymentPostprocessing = 0; 8899 8612 }; 8900 5180C718180CCA3100FDA612 /* Resources */ = {8901 isa = PBXResourcesBuildPhase;8902 buildActionMask = 2147483647;8903 files = (8904 );8905 runOnlyForDeploymentPostprocessing = 0;8906 };8907 8613 51F7DC45180CC93600212CA3 /* Resources */ = { 8908 8614 isa = PBXResourcesBuildPhase; … … 8946 8652 runOnlyForDeploymentPostprocessing = 0; 8947 8653 }; 8948 BC8283C316B4BFA800A278FE /* Resources */ = {8949 isa = PBXResourcesBuildPhase;8950 buildActionMask = 2147483647;8951 files = (8952 );8953 runOnlyForDeploymentPostprocessing = 0;8954 };8955 8654 BC8283F716B4FDDE00A278FE /* Resources */ = { 8956 8655 isa = PBXResourcesBuildPhase; … … 8967 8666 runOnlyForDeploymentPostprocessing = 0; 8968 8667 }; 8969 BC82843016B4FE1300A278FE /* Resources */ = {8970 isa = PBXResourcesBuildPhase;8971 buildActionMask = 2147483647;8972 files = (8973 );8974 runOnlyForDeploymentPostprocessing = 0;8975 };8976 BCAE9DE7160C097400A33217 /* Resources */ = {8977 isa = PBXResourcesBuildPhase;8978 buildActionMask = 2147483647;8979 files = (8980 E1D26A52175964D90095BFD1 /* WebContentProcess.xib in Resources */,8981 );8982 runOnlyForDeploymentPostprocessing = 0;8983 };8984 8668 BCDE093813272496001259FB /* Resources */ = { 8985 isa = PBXResourcesBuildPhase;8986 buildActionMask = 2147483647;8987 files = (8988 );8989 runOnlyForDeploymentPostprocessing = 0;8990 };8991 E1B1B1931A7AC1F5007B0965 /* Resources */ = {8992 8669 isa = PBXResourcesBuildPhase; 8993 8670 buildActionMask = 2147483647; … … 9237 8914 ); 9238 8915 inputPaths = ( 9239 "$(BUILT_PRODUCTS_DIR)/com.apple.WebKit.WebContent.xpc", 9240 "$(BUILT_PRODUCTS_DIR)/com.apple.WebKit.WebContent.Development.xpc", 9241 "$(BUILT_PRODUCTS_DIR)/com.apple.WebKit.Networking.xpc", 9242 "$(BUILT_PRODUCTS_DIR)/com.apple.WebKit.Networking.Development.xpc", 9243 "$(BUILT_PRODUCTS_DIR)/com.apple.WebKit.Plugin.32.xpc", 9244 "$(BUILT_PRODUCTS_DIR)/com.apple.WebKit.Plugin.64.xpc", 9245 "$(BUILT_PRODUCTS_DIR)/com.apple.WebKit.Plugin.32.Development.xpc", 9246 "$(BUILT_PRODUCTS_DIR)/com.apple.WebKit.Plugin.64.Development.xpc", 9247 "$(BUILT_PRODUCTS_DIR)/com.apple.WebKit.Databases.xpc", 9248 "$(BUILT_PRODUCTS_DIR)/com.apple.WebKit.Databases.Development.xpc", 8916 "$(BUILT_PRODUCTS_DIR)/com.apple.WebKit.WebContent$(WK_XPC_SERVICE_SUFFIX).xpc", 8917 "$(BUILT_PRODUCTS_DIR)/com.apple.WebKit.Networking$(WK_XPC_SERVICE_SUFFIX).xpc", 8918 "$(BUILT_PRODUCTS_DIR)/com.apple.WebKit.Plugin.32$(WK_XPC_SERVICE_SUFFIX).xpc", 8919 "$(BUILT_PRODUCTS_DIR)/com.apple.WebKit.Plugin.64$(WK_XPC_SERVICE_SUFFIX).xpc", 8920 "$(BUILT_PRODUCTS_DIR)/com.apple.WebKit.Databases$(WK_XPC_SERVICE_SUFFIX).xpc", 9249 8921 ); 9250 8922 name = "Copy XPC services for engineering builds"; 9251 8923 outputPaths = ( 9252 "$(BUILT_PRODUCTS_DIR)/WebKit.framework/XPCServices/com.apple.WebKit.WebContent.xpc", 9253 "$(BUILT_PRODUCTS_DIR)/WebKit.framework/XPCServices/com.apple.WebKit.WebContent.Development.xpc", 9254 "$(BUILT_PRODUCTS_DIR)/WebKit.framework/XPCServices/com.apple.WebKit.Networking.xpc", 9255 "$(BUILT_PRODUCTS_DIR)/WebKit.framework/XPCServices/com.apple.WebKit.Networking.Development.xpc", 9256 "$(BUILT_PRODUCTS_DIR)/WebKit.framework/XPCServices/com.apple.WebKit.Plugin.32.xpc", 9257 "$(BUILT_PRODUCTS_DIR)/WebKit.framework/XPCServices/com.apple.WebKit.Plugin.64.xpc", 9258 "$(BUILT_PRODUCTS_DIR)/WebKit.framework/XPCServices/com.apple.WebKit.Plugin.32.Development.xpc", 9259 "$(BUILT_PRODUCTS_DIR)/WebKit.framework/XPCServices/com.apple.WebKit.Plugin.64.Development.xpc", 9260 "$(BUILT_PRODUCTS_DIR)/WebKit.framework/XPCServices/com.apple.WebKit.Databases.xpc", 9261 "$(BUILT_PRODUCTS_DIR)/WebKit.framework/XPCServices/com.apple.WebKit.Databases.Development.xpc", 8924 "$(BUILT_PRODUCTS_DIR)/WebKit.framework/XPCServices/com.apple.WebKit.WebContent$(WK_XPC_SERVICE_SUFFIX).xpc", 8925 "$(BUILT_PRODUCTS_DIR)/WebKit.framework/XPCServices/com.apple.WebKit.Networking$(WK_XPC_SERVICE_SUFFIX).xpc", 8926 "$(BUILT_PRODUCTS_DIR)/WebKit.framework/XPCServices/com.apple.WebKit.Plugin.32$(WK_XPC_SERVICE_SUFFIX).xpc", 8927 "$(BUILT_PRODUCTS_DIR)/WebKit.framework/XPCServices/com.apple.WebKit.Plugin.64$(WK_XPC_SERVICE_SUFFIX).xpc", 8928 "$(BUILT_PRODUCTS_DIR)/WebKit.framework/XPCServices/com.apple.WebKit.Databases$(WK_XPC_SERVICE_SUFFIX).xpc", 9262 8929 ); 9263 8930 runOnlyForDeploymentPostprocessing = 0; 9264 8931 shellPath = /bin/sh; 9265 shellScript = "if [[ \"${CONFIGURATION}\" == \"Production\" ]]; then\n exit\nfi\n\nif [[ ${PLATFORM_NAME} != \"macosx\" ]]; then\n XPC_SERVICES_PATH=\"${BUILT_PRODUCTS_DIR}/WebKit.framework/XPCServices\"\nelse\n XPC_SERVICES_PATH=\"${BUILT_PRODUCTS_DIR}/WebKit.framework/Versions/A/XPCServices\"\nfi\n\nmkdir -p \"${XPC_SERVICES_PATH}\"\nditto \"${BUILT_PRODUCTS_DIR}/com.apple.WebKit.WebContent .xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.WebContent.xpc\"\nditto \"${BUILT_PRODUCTS_DIR}/com.apple.WebKit.WebContent.Development.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.WebContent.Development.xpc\"\nditto \"${BUILT_PRODUCTS_DIR}/com.apple.WebKit.Networking.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Networking.xpc\"\nditto \"${BUILT_PRODUCTS_DIR}/com.apple.WebKit.Networking.Development.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Networking.Development.xpc\"\nditto \"${BUILT_PRODUCTS_DIR}/com.apple.WebKit.Databases.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Databases.xpc\"\nditto \"${BUILT_PRODUCTS_DIR}/com.apple.WebKit.Databases.Development.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Databases.Development.xpc\"\n\nif [[ ${PLATFORM_NAME} == macosx ]]; then\n ditto \"${BUILT_PRODUCTS_DIR}/com.apple.WebKit.Plugin.32.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Plugin.32.xpc\"\n ditto \"${BUILT_PRODUCTS_DIR}/com.apple.WebKit.Plugin.64.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Plugin.64.xpc\"\n ditto \"${BUILT_PRODUCTS_DIR}/com.apple.WebKit.Plugin.32.Development.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Plugin.32.Development.xpc\"\n ditto \"${BUILT_PRODUCTS_DIR}/com.apple.WebKit.Plugin.64.Development.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Plugin.64.Development.xpc\"\nfi\n";8932 shellScript = "if [[ \"${CONFIGURATION}\" == \"Production\" ]]; then\n exit\nfi\n\nif [[ ${PLATFORM_NAME} != \"macosx\" ]]; then\n XPC_SERVICES_PATH=\"${BUILT_PRODUCTS_DIR}/WebKit.framework/XPCServices\"\nelse\n XPC_SERVICES_PATH=\"${BUILT_PRODUCTS_DIR}/WebKit.framework/Versions/A/XPCServices\"\nfi\n\nmkdir -p \"${XPC_SERVICES_PATH}\"\nditto \"${BUILT_PRODUCTS_DIR}/com.apple.WebKit.WebContent${WK_XPC_SERVICE_SUFFIX}.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.WebContent${WK_XPC_SERVICE_SUFFIX}.xpc\"\nditto \"${BUILT_PRODUCTS_DIR}/com.apple.WebKit.Networking${WK_XPC_SERVICE_SUFFIX}.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Networking${WK_XPC_SERVICE_SUFFIX}.xpc\"\nditto \"${BUILT_PRODUCTS_DIR}/com.apple.WebKit.Databases${WK_XPC_SERVICE_SUFFIX}.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Databases${WK_XPC_SERVICE_SUFFIX}.xpc\"\n\nif [[ ${PLATFORM_NAME} == macosx ]]; then\n ditto \"${BUILT_PRODUCTS_DIR}/com.apple.WebKit.Plugin.32${WK_XPC_SERVICE_SUFFIX}.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Plugin.32${WK_XPC_SERVICE_SUFFIX}.xpc\"\n ditto \"${BUILT_PRODUCTS_DIR}/com.apple.WebKit.Plugin.64${WK_XPC_SERVICE_SUFFIX}.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Plugin.64${WK_XPC_SERVICE_SUFFIX}.xpc\"\nfi\n"; 9266 8933 }; 9267 8934 C0CE72841247E66800BC0EC4 /* Generate Derived Sources */ = { … … 9311 8978 files = ( 9312 8979 BC5D24A316CC3B9E007D5461 /* ChildProcessMain.mm in Sources */, 9313 );9314 runOnlyForDeploymentPostprocessing = 0;9315 };9316 5180C714180CCA3100FDA612 /* Sources */ = {9317 isa = PBXSourcesBuildPhase;9318 buildActionMask = 2147483647;9319 files = (9320 5180C715180CCA3100FDA612 /* XPCServiceMain.Development.mm in Sources */,9321 8980 ); 9322 8981 runOnlyForDeploymentPostprocessing = 0; … … 10160 9819 runOnlyForDeploymentPostprocessing = 0; 10161 9820 }; 10162 BC8283C116B4BFA800A278FE /* Sources */ = {10163 isa = PBXSourcesBuildPhase;10164 buildActionMask = 2147483647;10165 files = (10166 BC5D24A816CC3D5E007D5461 /* XPCServiceMain.Development.mm in Sources */,10167 );10168 runOnlyForDeploymentPostprocessing = 0;10169 };10170 9821 BC8283F516B4FDDE00A278FE /* Sources */ = { 10171 9822 isa = PBXSourcesBuildPhase; … … 10181 9832 files = ( 10182 9833 BC5D24AB16CC3D62007D5461 /* XPCServiceMain.mm in Sources */, 10183 );10184 runOnlyForDeploymentPostprocessing = 0;10185 };10186 BC82842E16B4FE1300A278FE /* Sources */ = {10187 isa = PBXSourcesBuildPhase;10188 buildActionMask = 2147483647;10189 files = (10190 BC5D24AA16CC3D5F007D5461 /* XPCServiceMain.Development.mm in Sources */,10191 );10192 runOnlyForDeploymentPostprocessing = 0;10193 };10194 BCAE9DE5160C097400A33217 /* Sources */ = {10195 isa = PBXSourcesBuildPhase;10196 buildActionMask = 2147483647;10197 files = (10198 BC5D24A716CC3D5D007D5461 /* XPCServiceMain.Development.mm in Sources */,10199 9834 ); 10200 9835 runOnlyForDeploymentPostprocessing = 0; … … 10214 9849 CDC38307172117DD008A2FC3 /* CookieStorageShimLibrary.cpp in Sources */, 10215 9850 CDC382FE17211799008A2FC3 /* SecItemShimLibrary.mm in Sources */, 10216 );10217 runOnlyForDeploymentPostprocessing = 0;10218 };10219 E1B1B18F1A7AC1F5007B0965 /* Sources */ = {10220 isa = PBXSourcesBuildPhase;10221 buildActionMask = 2147483647;10222 files = (10223 E1B1B1901A7AC1F5007B0965 /* XPCServiceMain.Development.mm in Sources */,10224 9851 ); 10225 9852 runOnlyForDeploymentPostprocessing = 0; … … 10258 9885 targetProxy = 375E0632191EA909004E3CAF /* PBXContainerItemProxy */; 10259 9886 }; 10260 375E0637191EA9A7004E3CAF /* PBXTargetDependency */ = {10261 isa = PBXTargetDependency;10262 target = 8DC2EF4F0486A6940098B216 /* WebKit */;10263 targetProxy = 375E0636191EA9A7004E3CAF /* PBXContainerItemProxy */;10264 };10265 375E0639191EA9AD004E3CAF /* PBXTargetDependency */ = {10266 isa = PBXTargetDependency;10267 target = 8DC2EF4F0486A6940098B216 /* WebKit */;10268 targetProxy = 375E0638191EA9AD004E3CAF /* PBXContainerItemProxy */;10269 };10270 375E063B191EA9BA004E3CAF /* PBXTargetDependency */ = {10271 isa = PBXTargetDependency;10272 target = 8DC2EF4F0486A6940098B216 /* WebKit */;10273 targetProxy = 375E063A191EA9BA004E3CAF /* PBXContainerItemProxy */;10274 };10275 375E063D191EA9C1004E3CAF /* PBXTargetDependency */ = {10276 isa = PBXTargetDependency;10277 target = 8DC2EF4F0486A6940098B216 /* WebKit */;10278 targetProxy = 375E063C191EA9C1004E3CAF /* PBXContainerItemProxy */;10279 };10280 9887 375E063F191EAA33004E3CAF /* PBXTargetDependency */ = { 10281 9888 isa = PBXTargetDependency; … … 10323 9930 targetProxy = 51A60B2D180CCF1700F3BF50 /* PBXContainerItemProxy */; 10324 9931 }; 10325 51A60B30180CCF1700F3BF50 /* PBXTargetDependency */ = {10326 isa = PBXTargetDependency;10327 target = 5180C713180CCA3100FDA612 /* Databases.Development */;10328 targetProxy = 51A60B2F180CCF1700F3BF50 /* PBXContainerItemProxy */;10329 };10330 9932 51FA1E1A180CCADE00C44BE9 /* PBXTargetDependency */ = { 10331 9933 isa = PBXTargetDependency; … … 10343 9945 targetProxy = BC8283D416B4C01F00A278FE /* PBXContainerItemProxy */; 10344 9946 }; 10345 BC8283D716B4C02200A278FE /* PBXTargetDependency */ = {10346 isa = PBXTargetDependency;10347 target = BC8283C416B4BFA800A278FE /* Networking.Development */;10348 targetProxy = BC8283D616B4C02200A278FE /* PBXContainerItemProxy */;10349 };10350 9947 BC82844616B4FF6600A278FE /* PBXTargetDependency */ = { 10351 9948 isa = PBXTargetDependency; … … 10353 9950 targetProxy = BC82844516B4FF6600A278FE /* PBXContainerItemProxy */; 10354 9951 }; 10355 BC82844816B4FF6F00A278FE /* PBXTargetDependency */ = {10356 isa = PBXTargetDependency;10357 target = BC82843116B4FE1300A278FE /* Plugin.32.Development */;10358 targetProxy = BC82844716B4FF6F00A278FE /* PBXContainerItemProxy */;10359 };10360 9952 BCA8D46815BCE0D6009DC1F1 /* PBXTargetDependency */ = { 10361 9953 isa = PBXTargetDependency; … … 10363 9955 targetProxy = BCA8D46715BCE0D6009DC1F1 /* PBXContainerItemProxy */; 10364 9956 }; 10365 BCAE9DFD160C0AB000A33217 /* PBXTargetDependency */ = {10366 isa = PBXTargetDependency;10367 target = BCAE9DE8160C097400A33217 /* WebContent.Development */;10368 targetProxy = BCAE9DFC160C0AB000A33217 /* PBXContainerItemProxy */;10369 };10370 9957 BCDE093613272496001259FB /* PBXTargetDependency */ = { 10371 9958 isa = PBXTargetDependency; … … 10377 9964 target = BCDE093313272496001259FB /* PluginProcess */; 10378 9965 targetProxy = BCDE0AC013272712001259FB /* PBXContainerItemProxy */; 10379 };10380 E1B1B18D1A7AC1F5007B0965 /* PBXTargetDependency */ = {10381 isa = PBXTargetDependency;10382 target = 8DC2EF4F0486A6940098B216 /* WebKit */;10383 targetProxy = E1B1B18E1A7AC1F5007B0965 /* PBXContainerItemProxy */;10384 };10385 E1B1B19C1A7AD133007B0965 /* PBXTargetDependency */ = {10386 isa = PBXTargetDependency;10387 target = E1B1B18C1A7AC1F5007B0965 /* Plugin.64.Development */;10388 targetProxy = E1B1B19B1A7AD133007B0965 /* PBXContainerItemProxy */;10389 9966 }; 10390 9967 /* End PBXTargetDependency section */ … … 10551 10128 name = Production; 10552 10129 }; 10553 5180C71A180CCA3100FDA612 /* Debug */ = {10554 isa = XCBuildConfiguration;10555 baseConfigurationReference = 51A60B28180CCD9000F3BF50 /* DatabaseService.Development.xcconfig */;10556 buildSettings = {10557 };10558 name = Debug;10559 };10560 5180C71B180CCA3100FDA612 /* Release */ = {10561 isa = XCBuildConfiguration;10562 baseConfigurationReference = 51A60B28180CCD9000F3BF50 /* DatabaseService.Development.xcconfig */;10563 buildSettings = {10564 };10565 name = Release;10566 };10567 5180C71C180CCA3100FDA612 /* Production */ = {10568 isa = XCBuildConfiguration;10569 baseConfigurationReference = 51A60B28180CCD9000F3BF50 /* DatabaseService.Development.xcconfig */;10570 buildSettings = {10571 };10572 name = Production;10573 };10574 10130 51F7DC47180CC93600212CA3 /* Debug */ = { 10575 10131 isa = XCBuildConfiguration; … … 10713 10269 name = Production; 10714 10270 }; 10715 BC8283D116B4BFA800A278FE /* Debug */ = {10716 isa = XCBuildConfiguration;10717 baseConfigurationReference = BC8283AA16B4BEAD00A278FE /* NetworkService.Development.xcconfig */;10718 buildSettings = {10719 };10720 name = Debug;10721 };10722 BC8283D216B4BFA800A278FE /* Release */ = {10723 isa = XCBuildConfiguration;10724 baseConfigurationReference = BC8283AA16B4BEAD00A278FE /* NetworkService.Development.xcconfig */;10725 buildSettings = {10726 };10727 name = Release;10728 };10729 BC8283D316B4BFA800A278FE /* Production */ = {10730 isa = XCBuildConfiguration;10731 baseConfigurationReference = BC8283AA16B4BEAD00A278FE /* NetworkService.Development.xcconfig */;10732 buildSettings = {10733 };10734 name = Production;10735 };10736 10271 BC82840516B4FDDE00A278FE /* Debug */ = { 10737 10272 isa = XCBuildConfiguration; … … 10772 10307 isa = XCBuildConfiguration; 10773 10308 baseConfigurationReference = BC8283F416B4FC5300A278FE /* PluginService.64.xcconfig */; 10774 buildSettings = {10775 };10776 name = Production;10777 };10778 BC82843E16B4FE1400A278FE /* Debug */ = {10779 isa = XCBuildConfiguration;10780 baseConfigurationReference = E1B1B19A1A7AC287007B0965 /* PluginService.32.Development.xcconfig */;10781 buildSettings = {10782 };10783 name = Debug;10784 };10785 BC82843F16B4FE1400A278FE /* Release */ = {10786 isa = XCBuildConfiguration;10787 baseConfigurationReference = E1B1B19A1A7AC287007B0965 /* PluginService.32.Development.xcconfig */;10788 buildSettings = {10789 };10790 name = Release;10791 };10792 BC82844016B4FE1400A278FE /* Production */ = {10793 isa = XCBuildConfiguration;10794 baseConfigurationReference = E1B1B19A1A7AC287007B0965 /* PluginService.32.Development.xcconfig */;10795 buildSettings = {10796 };10797 name = Production;10798 };10799 BCAE9DF7160C097500A33217 /* Debug */ = {10800 isa = XCBuildConfiguration;10801 baseConfigurationReference = BCACC40F16B0B8A800B6E092 /* WebContentService.Development.xcconfig */;10802 buildSettings = {10803 };10804 name = Debug;10805 };10806 BCAE9DF8160C097500A33217 /* Release */ = {10807 isa = XCBuildConfiguration;10808 baseConfigurationReference = BCACC40F16B0B8A800B6E092 /* WebContentService.Development.xcconfig */;10809 buildSettings = {10810 };10811 name = Release;10812 };10813 BCAE9DF9160C097500A33217 /* Production */ = {10814 isa = XCBuildConfiguration;10815 baseConfigurationReference = BCACC40F16B0B8A800B6E092 /* WebContentService.Development.xcconfig */;10816 10309 buildSettings = { 10817 10310 }; … … 10892 10385 name = Production; 10893 10386 }; 10894 E1B1B1951A7AC1F5007B0965 /* Debug */ = {10895 isa = XCBuildConfiguration;10896 baseConfigurationReference = BCBECDC216B5CE2A00047A1A /* PluginService.64.Development.xcconfig */;10897 buildSettings = {10898 };10899 name = Debug;10900 };10901 E1B1B1961A7AC1F5007B0965 /* Release */ = {10902 isa = XCBuildConfiguration;10903 baseConfigurationReference = BCBECDC216B5CE2A00047A1A /* PluginService.64.Development.xcconfig */;10904 buildSettings = {10905 };10906 name = Release;10907 };10908 E1B1B1971A7AC1F5007B0965 /* Production */ = {10909 isa = XCBuildConfiguration;10910 baseConfigurationReference = BCBECDC216B5CE2A00047A1A /* PluginService.64.Development.xcconfig */;10911 buildSettings = {10912 };10913 name = Production;10914 };10915 10387 /* End XCBuildConfiguration section */ 10916 10388 … … 10986 10458 defaultConfigurationName = Production; 10987 10459 }; 10988 5180C719180CCA3100FDA612 /* Build configuration list for PBXNativeTarget "Databases.Development" */ = {10989 isa = XCConfigurationList;10990 buildConfigurations = (10991 5180C71A180CCA3100FDA612 /* Debug */,10992 5180C71B180CCA3100FDA612 /* Release */,10993 5180C71C180CCA3100FDA612 /* Production */,10994 );10995 defaultConfigurationIsVisible = 0;10996 defaultConfigurationName = Production;10997 };10998 10460 51F7DC46180CC93600212CA3 /* Build configuration list for PBXNativeTarget "Databases" */ = { 10999 10461 isa = XCConfigurationList; … … 11046 10508 defaultConfigurationName = Production; 11047 10509 }; 11048 BC8283D016B4BFA800A278FE /* Build configuration list for PBXNativeTarget "Networking.Development" */ = {11049 isa = XCConfigurationList;11050 buildConfigurations = (11051 BC8283D116B4BFA800A278FE /* Debug */,11052 BC8283D216B4BFA800A278FE /* Release */,11053 BC8283D316B4BFA800A278FE /* Production */,11054 );11055 defaultConfigurationIsVisible = 0;11056 defaultConfigurationName = Production;11057 };11058 10510 BC82840416B4FDDE00A278FE /* Build configuration list for PBXNativeTarget "Plugin.32" */ = { 11059 10511 isa = XCConfigurationList; … … 11076 10528 defaultConfigurationName = Production; 11077 10529 }; 11078 BC82843D16B4FE1400A278FE /* Build configuration list for PBXNativeTarget "Plugin.32.Development" */ = {11079 isa = XCConfigurationList;11080 buildConfigurations = (11081 BC82843E16B4FE1400A278FE /* Debug */,11082 BC82843F16B4FE1400A278FE /* Release */,11083 BC82844016B4FE1400A278FE /* Production */,11084 );11085 defaultConfigurationIsVisible = 0;11086 defaultConfigurationName = Production;11087 };11088 BCAE9DF6160C097500A33217 /* Build configuration list for PBXNativeTarget "WebContent.Development" */ = {11089 isa = XCConfigurationList;11090 buildConfigurations = (11091 BCAE9DF7160C097500A33217 /* Debug */,11092 BCAE9DF8160C097500A33217 /* Release */,11093 BCAE9DF9160C097500A33217 /* Production */,11094 );11095 defaultConfigurationIsVisible = 0;11096 defaultConfigurationName = Production;11097 };11098 10530 BCDE093E13272496001259FB /* Build configuration list for PBXNativeTarget "PluginProcess" */ = { 11099 10531 isa = XCConfigurationList; … … 11126 10558 defaultConfigurationName = Production; 11127 10559 }; 11128 E1B1B1941A7AC1F5007B0965 /* Build configuration list for PBXNativeTarget "Plugin.64.Development" */ = {11129 isa = XCConfigurationList;11130 buildConfigurations = (11131 E1B1B1951A7AC1F5007B0965 /* Debug */,11132 E1B1B1961A7AC1F5007B0965 /* Release */,11133 E1B1B1971A7AC1F5007B0965 /* Production */,11134 );11135 defaultConfigurationIsVisible = 0;11136 defaultConfigurationName = Production;11137 };11138 10560 /* End XCConfigurationList section */ 11139 10561 }; -
trunk/Source/WebKit2/WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX-10.9-10.10.plist
r194479 r195795 12 12 <string>${EXECUTABLE_NAME}</string> 13 13 <key>CFBundleIdentifier</key> 14 <string> com.apple.WebKit.WebContent</string>14 <string>${PRODUCT_NAME}</string> 15 15 <key>CFBundleInfoDictionaryVersion</key> 16 16 <string>6.0</string> … … 52 52 <dict> 53 53 <key>DYLD_INSERT_LIBRARIES</key> 54 <string>$(W EBKIT_FRAMEWORKS_DIR)/WebKit.framework/Frameworks/WebProcessShim.dylib</string>54 <string>$(WK_XPC_SERVICE_INSERT_LIBRARIES_DIR)/WebProcessShim.dylib</string> 55 55 </dict> 56 56 </dict> -
trunk/Source/WebKit2/WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX.plist
r194479 r195795 12 12 <string>${EXECUTABLE_NAME}</string> 13 13 <key>CFBundleIdentifier</key> 14 <string> com.apple.WebKit.WebContent</string>14 <string>${PRODUCT_NAME}</string> 15 15 <key>CFBundleInfoDictionaryVersion</key> 16 16 <string>6.0</string> -
trunk/Source/WebKit2/WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-iOS.plist
r194479 r195795 12 12 <string>${EXECUTABLE_NAME}</string> 13 13 <key>CFBundleIdentifier</key> 14 <string> com.apple.WebKit.WebContent</string>14 <string>${PRODUCT_NAME}</string> 15 15 <key>CFBundleInfoDictionaryVersion</key> 16 16 <string>6.0</string> -
trunk/Tools/ChangeLog
r195768 r195795 1 2016-01-28 Dan Bernstein <mitz@apple.com> 2 3 [Cocoa] Use the non-Development variants of XPC services for development 4 https://bugs.webkit.org/show_bug.cgi?id=152545 5 6 Reviewed by Darin Adler. 7 8 * Scripts/webkitdirs.pm: 9 (setUpGuardMallocIfNeeded): Ensure that libgmalloc is loaded into XPC services as well. 10 11 * Scripts/webkitpy/port/driver.py: 12 (Driver._setup_environ_for_driver): Ensure that the DYLD_LIBRARY_PATH and ASAN_OPTIONS are 13 set in the XPC services as well. 14 15 * Scripts/webkitpy/port/ios.py: 16 (IOSSimulatorPort.setup_environ_for_server): Ensure that malloc stack logging for leaks and 17 Guard Malloc are enabled in XPC services as well. 18 19 * Scripts/webkitpy/port/mac.py: 20 (MacPort.setup_environ_for_server): Ditto. 21 1 22 2016-01-28 Csaba Osztrogonác <ossy@webkit.org> 2 23 -
trunk/Tools/Scripts/webkitdirs.pm
r195759 r195795 1 # Copyright (C) 2005-2007, 2010-201 5Apple Inc. All rights reserved.1 # Copyright (C) 2005-2007, 2010-2016 Apple Inc. All rights reserved. 2 2 # Copyright (C) 2009 Google Inc. All rights reserved. 3 3 # Copyright (C) 2011 Research In Motion Limited. All rights reserved. … … 1448 1448 if ($shouldUseGuardMalloc) { 1449 1449 appendToEnvironmentVariableList("DYLD_INSERT_LIBRARIES", "/usr/lib/libgmalloc.dylib"); 1450 appendToEnvironmentVariableList("__XPC_DYLD_INSERT_LIBRARIES", "/usr/lib/libgmalloc.dylib"); 1450 1451 } 1451 1452 } -
trunk/Tools/Scripts/webkitpy/port/driver.py
r192944 r195795 1 1 # Copyright (C) 2011 Google Inc. All rights reserved. 2 # Copyright (c) 2015, Apple Inc. All rights reserved.2 # Copyright (c) 2015, 2016 Apple Inc. All rights reserved. 3 3 # 4 4 # Redistribution and use in source and binary forms, with or without … … 314 314 def _setup_environ_for_driver(self, environment): 315 315 environment['DYLD_LIBRARY_PATH'] = str(self._port._build_path()) 316 environment['__XPC_DYLD_LIBRARY_PATH'] = environment['DYLD_LIBRARY_PATH'] 316 317 environment['DYLD_FRAMEWORK_PATH'] = str(self._port._build_path()) 317 318 # Use an isolated temp directory that can be deleted after testing (especially important on Mac, as … … 323 324 environment['LOCAL_RESOURCE_ROOT'] = str(self._port.layout_tests_dir()) 324 325 environment['ASAN_OPTIONS'] = "allocator_may_return_null=1" 326 environment['__XPC_ASAN_OPTIONS'] = environment['ASAN_OPTIONS'] 325 327 if 'WEBKIT_OUTPUTDIR' in os.environ: 326 328 environment['WEBKIT_OUTPUTDIR'] = os.environ['WEBKIT_OUTPUTDIR'] -
trunk/Tools/Scripts/webkitpy/port/ios.py
r193923 r195795 1 # Copyright (C) 2014 , 2015Apple Inc. All rights reserved.1 # Copyright (C) 2014-2016 Apple Inc. All rights reserved. 2 2 # 3 3 # Redistribution and use in source and binary forms, with or without … … 267 267 if self.get_option('leaks'): 268 268 env['MallocStackLogging'] = '1' 269 env['__XPC_MallocStackLogging'] = '1' 269 270 if self.get_option('guard_malloc'): 270 271 self._append_value_colon_separated(env, 'DYLD_INSERT_LIBRARIES', '/usr/lib/libgmalloc.dylib') 272 self._append_value_colon_separated(env, '__XPC_DYLD_INSERT_LIBRARIES', '/usr/lib/libgmalloc.dylib') 271 273 self._append_value_colon_separated(env, 'DYLD_INSERT_LIBRARIES', self._build_path("libWebCoreTestShim.dylib")) 272 274 env['XML_CATALOG_FILES'] = '' # work around missing /etc/catalog <rdar://problem/4292995> -
trunk/Tools/Scripts/webkitpy/port/mac.py
r191410 r195795 1 1 # Copyright (C) 2011 Google Inc. All rights reserved. 2 # Copyright (C) 2012, 2013 Apple Inc. All rights reserved.2 # Copyright (C) 2012, 2013, 2016 Apple Inc. All rights reserved. 3 3 # 4 4 # Redistribution and use in source and binary forms, with or without … … 102 102 if self.get_option('leaks'): 103 103 env['MallocStackLogging'] = '1' 104 env['__XPC_MallocStackLogging'] = '1' 104 105 if self.get_option('guard_malloc'): 105 106 self._append_value_colon_separated(env, 'DYLD_INSERT_LIBRARIES', '/usr/lib/libgmalloc.dylib') 107 self._append_value_colon_separated(env, '__XPC_DYLD_INSERT_LIBRARIES', '/usr/lib/libgmalloc.dylib') 106 108 self._append_value_colon_separated(env, 'DYLD_INSERT_LIBRARIES', self._build_path("libWebCoreTestShim.dylib")) 107 109 env['XML_CATALOG_FILES'] = '' # work around missing /etc/catalog <rdar://problem/4292995>
Note: See TracChangeset
for help on using the changeset viewer.