Title: [291713] trunk/Source/ThirdParty/libwebrtc
Revision
291713
Author
[email protected]
Date
2022-03-22 15:28:11 -0700 (Tue, 22 Mar 2022)

Log Message

REGRESSION(r291455): libwebrtc has the wrong install name when using override frameworks directory
https://bugs.webkit.org/show_bug.cgi?id=238212
rdar://90604028

Reviewed by Alexey Proskuryakov.

r291455 introduced a default definition of DYLIB_INSTALL_NAME_BASE for non-macOS platforms that
stays defined as /S/L/PF/WebCore.framework/Frameworks. This explicit definition (rather than
falling back to the build system default of $INSTALL_PATH) is fine for those platforms but
clashes with the macOS definition of this variable when building with an override frameworks path:

    DYLIB_INSTALL_NAME_BASE_USE_OVERRIDE_FRAMEWORKS_DIR_YES = $(DYLIB_INSTALL_NAME_BASE);

Because of the new default definition of `DYLIB_INSTALL_NAME_BASE`, the semantics of this line
were changed from "use the install path as the install name when there's an override frameworks
directory" to "use /S/L/PF/WebCore.frameworks/Frameworks as the install name when there's an
override frameworks directory", which completely bypasses the point of the *override* directory.

Resolve this by redefining DYLIB_INSTALL_NAME_BASE_USE_OVERRIDE_FRAMEWORKS_DIR_YES to explicitly
use the INSTALL_PATH as the base of the install name, which was the original intent before
r291455 changed the behavior of falling back to DYLIB_INSTALL_NAME_BASE.

* Configurations/libwebrtc.xcconfig:

Modified Paths

Diff

Modified: trunk/Source/ThirdParty/libwebrtc/ChangeLog (291712 => 291713)


--- trunk/Source/ThirdParty/libwebrtc/ChangeLog	2022-03-22 22:22:09 UTC (rev 291712)
+++ trunk/Source/ThirdParty/libwebrtc/ChangeLog	2022-03-22 22:28:11 UTC (rev 291713)
@@ -1,3 +1,29 @@
+2022-03-22  David Quesada  <[email protected]>
+
+        REGRESSION(r291455): libwebrtc has the wrong install name when using override frameworks directory
+        https://bugs.webkit.org/show_bug.cgi?id=238212
+        rdar://90604028
+
+        Reviewed by Alexey Proskuryakov.
+
+        r291455 introduced a default definition of DYLIB_INSTALL_NAME_BASE for non-macOS platforms that
+        stays defined as /S/L/PF/WebCore.framework/Frameworks. This explicit definition (rather than
+        falling back to the build system default of $INSTALL_PATH) is fine for those platforms but
+        clashes with the macOS definition of this variable when building with an override frameworks path:
+
+            DYLIB_INSTALL_NAME_BASE_USE_OVERRIDE_FRAMEWORKS_DIR_YES = $(DYLIB_INSTALL_NAME_BASE);
+
+        Because of the new default definition of `DYLIB_INSTALL_NAME_BASE`, the semantics of this line
+        were changed from "use the install path as the install name when there's an override frameworks
+        directory" to "use /S/L/PF/WebCore.frameworks/Frameworks as the install name when there's an
+        override frameworks directory", which completely bypasses the point of the *override* directory.
+
+        Resolve this by redefining DYLIB_INSTALL_NAME_BASE_USE_OVERRIDE_FRAMEWORKS_DIR_YES to explicitly
+        use the INSTALL_PATH as the base of the install name, which was the original intent before
+        r291455 changed the behavior of falling back to DYLIB_INSTALL_NAME_BASE.
+
+        * Configurations/libwebrtc.xcconfig:
+
 2022-03-21  Alex Christensen  <[email protected]>
 
         Dust off Mac CMake build

Modified: trunk/Source/ThirdParty/libwebrtc/Configurations/libwebrtc.xcconfig (291712 => 291713)


--- trunk/Source/ThirdParty/libwebrtc/Configurations/libwebrtc.xcconfig	2022-03-22 22:22:09 UTC (rev 291712)
+++ trunk/Source/ThirdParty/libwebrtc/Configurations/libwebrtc.xcconfig	2022-03-22 22:28:11 UTC (rev 291713)
@@ -48,7 +48,7 @@
 DYLIB_INSTALL_NAME_BASE = $(NORMAL_WEBCORE_FRAMEWORKS_DIR)/WebCore.framework/Frameworks;
 DYLIB_INSTALL_NAME_BASE[sdk=macosx*] = $(DYLIB_INSTALL_NAME_BASE_USE_OVERRIDE_FRAMEWORKS_DIR_$(WK_USE_OVERRIDE_FRAMEWORKS_DIR));
 DYLIB_INSTALL_NAME_BASE_USE_OVERRIDE_FRAMEWORKS_DIR_NO = $(DYLIB_INSTALL_NAME_BASE_WK_RELOCATABLE_FRAMEWORKS_$(WK_RELOCATABLE_FRAMEWORKS));
-DYLIB_INSTALL_NAME_BASE_USE_OVERRIDE_FRAMEWORKS_DIR_YES = $(DYLIB_INSTALL_NAME_BASE);
+DYLIB_INSTALL_NAME_BASE_USE_OVERRIDE_FRAMEWORKS_DIR_YES = $(INSTALL_PATH);
 DYLIB_INSTALL_NAME_BASE_WK_RELOCATABLE_FRAMEWORKS_ = $(NORMAL_WEBCORE_FRAMEWORKS_DIR)/WebCore.framework/Versions/A/Frameworks;
 DYLIB_INSTALL_NAME_BASE_WK_RELOCATABLE_FRAMEWORKS_YES = @loader_path/../../../;
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to