Title: [246506] trunk/Source/WebKit
Revision
246506
Author
[email protected]
Date
2019-06-17 11:53:31 -0700 (Mon, 17 Jun 2019)

Log Message

REGRESSION (r242686): Paths in XPC services’ LC_DYLD_ENVIRONMENT are incorrect in built products directory
https://bugs.webkit.org/show_bug.cgi?id=198904

Reviewed by Alex Christensen.

After r242686, in local builds, the XPC service executables run from their location at the
top of the built products directory, rather than inside the framework.

* Configurations/BaseXPCService.xcconfig: Updated the load commands that set
  DYLD_FRAMEWORK_PATH and DYLD_LIBRARY_PATH for the new location in the built products
  directory. Also removed WK_XPC_SERVICE_INSERT_LIBRARIES_DIR that had been unused.

* WebKit.xcodeproj/project.pbxproj: Made the creation of symbolic links inside the
  framework’s XPCServices directory predicated on whether this is an install build, rather
  than on the build configuration, for consistency with the condition used in the .xcconfig.

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (246505 => 246506)


--- trunk/Source/WebKit/ChangeLog	2019-06-17 18:49:03 UTC (rev 246505)
+++ trunk/Source/WebKit/ChangeLog	2019-06-17 18:53:31 UTC (rev 246506)
@@ -1,3 +1,21 @@
+2019-06-17  Dan Bernstein  <[email protected]>
+
+        REGRESSION (r242686): Paths in XPC services’ LC_DYLD_ENVIRONMENT are incorrect in built products directory
+        https://bugs.webkit.org/show_bug.cgi?id=198904
+
+        Reviewed by Alex Christensen.
+
+        After r242686, in local builds, the XPC service executables run from their location at the
+        top of the built products directory, rather than inside the framework.
+
+        * Configurations/BaseXPCService.xcconfig: Updated the load commands that set
+          DYLD_FRAMEWORK_PATH and DYLD_LIBRARY_PATH for the new location in the built products
+          directory. Also removed WK_XPC_SERVICE_INSERT_LIBRARIES_DIR that had been unused.
+
+        * WebKit.xcodeproj/project.pbxproj: Made the creation of symbolic links inside the
+          framework’s XPCServices directory predicated on whether this is an install build, rather
+          than on the build configuration, for consistency with the condition used in the .xcconfig.
+
 2019-06-17  Brent Fulgham  <[email protected]>
 
         Ensure ITP state is relayed to Network Process on restart

Modified: trunk/Source/WebKit/Configurations/BaseXPCService.xcconfig (246505 => 246506)


--- trunk/Source/WebKit/Configurations/BaseXPCService.xcconfig	2019-06-17 18:49:03 UTC (rev 246505)
+++ trunk/Source/WebKit/Configurations/BaseXPCService.xcconfig	2019-06-17 18:53:31 UTC (rev 246506)
@@ -47,12 +47,22 @@
 WK_RELOCATABLE_FRAMEWORKS_LDFLAGS = $(WK_RELOCATABLE_FRAMEWORKS_LDFLAGS_$(WK_RELOCATABLE_FRAMEWORKS));
 WK_RELOCATABLE_FRAMEWORKS_LDFLAGS_ = $(WK_RELOCATABLE_FRAMEWORKS_LDFLAGS_NO);
 WK_RELOCATABLE_FRAMEWORKS_LDFLAGS_NO = -Wl,-headerpad,0x130; // Leave room for adding the dyld environment commands to a service that wasn't built for relocatable frameworks or staged installation.
-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;
+WK_RELOCATABLE_FRAMEWORKS_LDFLAGS_YES = -Wl,-dyld_env,DYLD_FRAMEWORK_PATH=@executable_path/$(WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORKS),-dyld_env,DYLD_LIBRARY_PATH=@executable_path/$(WK_PATH_FROM_SERVICE_EXECUTABLE_TO_LIBRARIES);
 
-WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK = $(WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK_SHALLOW_BUNDLE_$(SHALLOW_BUNDLE));
-WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK_SHALLOW_BUNDLE_NO = ../../../../../..;
-WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK_SHALLOW_BUNDLE_YES = ../..;
+WK_PATH_FROM_SERVICE_EXECUTABLE_TO_LIBRARIES = $(WK_PATH_FROM_SERVICE_EXECUTABLE_TO_LIBRARIES_DEPLOYMENT_$(DEPLOYMENT_LOCATION));
+WK_PATH_FROM_SERVICE_EXECUTABLE_TO_LIBRARIES_DEPLOYMENT_YES = $(WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK)/Frameworks;
+WK_PATH_FROM_SERVICE_EXECUTABLE_TO_LIBRARIES_DEPLOYMENT_NO = $(WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK);
 
+WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORKS = $(WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORKS_DEPLOYMENT_$(DEPLOYMENT_LOCATION));
+WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORKS_DEPLOYMENT_YES = $(WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK)/..;
+WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORKS_DEPLOYMENT_NO = $(WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK);
+
+WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK = $(WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK_SHALLOW_BUNDLE_$(SHALLOW_BUNDLE)_DEPLOYMENT_$(DEPLOYMENT_LOCATION));
+WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK_SHALLOW_BUNDLE_NO_DEPLOYMENT_YES = ../../../../../..;
+WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK_SHALLOW_BUNDLE_YES_DEPLOYMENT_YES = ../..;
+WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK_SHALLOW_BUNDLE_NO_DEPLOYMENT_NO = ../../..;
+WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK_SHALLOW_BUNDLE_YES_DEPLOYMENT_NO = ..;
+
 CODE_SIGN_ENTITLEMENTS = $(CODE_SIGN_ENTITLEMENTS_COCOA_TOUCH_$(WK_IS_COCOA_TOUCH));
 CODE_SIGN_ENTITLEMENTS_COCOA_TOUCH_ = $(CODE_SIGN_ENTITLEMENTS_COCOA_TOUCH_NO);
 CODE_SIGN_ENTITLEMENTS_COCOA_TOUCH_NO = ;
@@ -73,11 +83,6 @@
 
 WK_PROCESSED_XCENT_FILE=$(TEMP_FILE_DIR)/$(FULL_PRODUCT_NAME).entitlements
 
-WK_XPC_SERVICE_INSERT_LIBRARIES_DIR = $(WK_XPC_SERVICE_INSERT_LIBRARIES_DIR_$(WK_RELOCATABLE_FRAMEWORKS));
-WK_XPC_SERVICE_INSERT_LIBRARIES_DIR_ = $(WK_XPC_SERVICE_INSERT_LIBRARIES_DIR_NO);
-WK_XPC_SERVICE_INSERT_LIBRARIES_DIR_NO = $(WEBKIT_FRAMEWORKS_DIR)/WebKit.framework/Frameworks;
-WK_XPC_SERVICE_INSERT_LIBRARIES_DIR_YES = @executable_path/$(WK_PATH_FROM_SERVICE_EXECUTABLE_TO_FRAMEWORK)/Frameworks;
-
 WK_LIBRARY_VALIDATION_ENABLED = $(WK_LIBRARY_VALIDATION_ENABLED_$(WK_EMPTY_$(WK_LIBRARY_VALIDATION_ENABLED)));
 WK_LIBRARY_VALIDATION_ENABLED_ = $(WK_LIBRARY_VALIDATION_ENABLED_NO);
 WK_LIBRARY_VALIDATION_ENABLED_NO = $(WK_LIBRARY_VALIDATION_ENABLED);

Modified: trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj (246505 => 246506)


--- trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj	2019-06-17 18:49:03 UTC (rev 246505)
+++ trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj	2019-06-17 18:53:31 UTC (rev 246506)
@@ -10897,7 +10897,7 @@
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 			shellPath = /bin/sh;
-			shellScript = "if [[ \"${CONFIGURATION}\" == \"Production\" ]]; then\n    exit\nfi\n\nif [[ ${WK_PLATFORM_NAME} != \"macosx\" ]]; then\n    XPC_SERVICES_PATH=\"${BUILT_PRODUCTS_DIR}/WebKit.framework/XPCServices\"\n    BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES=\"../..\"\nelse\n    XPC_SERVICES_PATH=\"${BUILT_PRODUCTS_DIR}/WebKit.framework/Versions/A/XPCServices\"\n    BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES=\"../../../..\"\nfi\n\nmkdir -p \"${XPC_SERVICES_PATH}\"\nln -sFh \"${BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES}/com.apple.WebKit.WebContent.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.WebContent.xpc\"\nln -sFh \"${BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES}/com.apple.WebKit.Networking.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Networking.xpc\"\n\nif [[ ${WK_PLATFORM_NAME} == macosx ]]; then\n    ln -s
 Fh \"${BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES}/com.apple.WebKit.Plugin.64.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Plugin.64.xpc\"\nfi\n";
+			shellScript = "if [[ \"${DEPLOYMENT_LOCATION}\" == \"YES\" ]]; then\n    exit\nfi\n\nif [[ ${WK_PLATFORM_NAME} != \"macosx\" ]]; then\n    XPC_SERVICES_PATH=\"${BUILT_PRODUCTS_DIR}/WebKit.framework/XPCServices\"\n    BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES=\"../..\"\nelse\n    XPC_SERVICES_PATH=\"${BUILT_PRODUCTS_DIR}/WebKit.framework/Versions/A/XPCServices\"\n    BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES=\"../../../..\"\nfi\n\nmkdir -p \"${XPC_SERVICES_PATH}\"\nln -sFh \"${BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES}/com.apple.WebKit.WebContent.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.WebContent.xpc\"\nln -sFh \"${BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES}/com.apple.WebKit.Networking.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Networking.xpc\"\n\nif [[ ${WK_PLATFORM_NAME} == macosx ]]; then\n    ln -sFh
  \"${BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES}/com.apple.WebKit.Plugin.64.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Plugin.64.xpc\"\nfi\n";
 		};
 		99CA3862207286DB00BAD578 /* Copy WebDriver Atoms to Framework Private Headers */ = {
 			isa = PBXShellScriptBuildPhase;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to