⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 291714 in webkit


Ignore:
Timestamp:
Mar 22, 2022, 3:34:13 PM (5 years ago)
Author:
Russell Epstein
Message:

Cherry-pick r291713. rdar://problem/90604028

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:

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

Location:
branches/safari-614.1.7-branch/Source/ThirdParty/libwebrtc
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/safari-614.1.7-branch/Source/ThirdParty/libwebrtc/ChangeLog

    r291455 r291714  
     12022-03-22  Russell Epstein  <repstein@apple.com>
     2
     3        Cherry-pick r291713. rdar://problem/90604028
     4
     5    REGRESSION(r291455): libwebrtc has the wrong install name when using override frameworks directory
     6    https://bugs.webkit.org/show_bug.cgi?id=238212
     7    rdar://90604028
     8   
     9    Reviewed by Alexey Proskuryakov.
     10   
     11    r291455 introduced a default definition of DYLIB_INSTALL_NAME_BASE for non-macOS platforms that
     12    stays defined as /S/L/PF/WebCore.framework/Frameworks. This explicit definition (rather than
     13    falling back to the build system default of $INSTALL_PATH) is fine for those platforms but
     14    clashes with the macOS definition of this variable when building with an override frameworks path:
     15   
     16        DYLIB_INSTALL_NAME_BASE_USE_OVERRIDE_FRAMEWORKS_DIR_YES = $(DYLIB_INSTALL_NAME_BASE);
     17   
     18    Because of the new default definition of `DYLIB_INSTALL_NAME_BASE`, the semantics of this line
     19    were changed from "use the install path as the install name when there's an override frameworks
     20    directory" to "use /S/L/PF/WebCore.frameworks/Frameworks as the install name when there's an
     21    override frameworks directory", which completely bypasses the point of the *override* directory.
     22   
     23    Resolve this by redefining DYLIB_INSTALL_NAME_BASE_USE_OVERRIDE_FRAMEWORKS_DIR_YES to explicitly
     24    use the INSTALL_PATH as the base of the install name, which was the original intent before
     25    r291455 changed the behavior of falling back to DYLIB_INSTALL_NAME_BASE.
     26   
     27    * Configurations/libwebrtc.xcconfig:
     28   
     29   
     30    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@291713 268f45cc-cd09-0410-ab3c-d52691b4dbfc
     31
     32    2022-03-22  David Quesada  <david_quesada@apple.com>
     33
     34            REGRESSION(r291455): libwebrtc has the wrong install name when using override frameworks directory
     35            https://bugs.webkit.org/show_bug.cgi?id=238212
     36            rdar://90604028
     37
     38            Reviewed by Alexey Proskuryakov.
     39
     40            r291455 introduced a default definition of DYLIB_INSTALL_NAME_BASE for non-macOS platforms that
     41            stays defined as /S/L/PF/WebCore.framework/Frameworks. This explicit definition (rather than
     42            falling back to the build system default of $INSTALL_PATH) is fine for those platforms but
     43            clashes with the macOS definition of this variable when building with an override frameworks path:
     44
     45                DYLIB_INSTALL_NAME_BASE_USE_OVERRIDE_FRAMEWORKS_DIR_YES = $(DYLIB_INSTALL_NAME_BASE);
     46
     47            Because of the new default definition of `DYLIB_INSTALL_NAME_BASE`, the semantics of this line
     48            were changed from "use the install path as the install name when there's an override frameworks
     49            directory" to "use /S/L/PF/WebCore.frameworks/Frameworks as the install name when there's an
     50            override frameworks directory", which completely bypasses the point of the *override* directory.
     51
     52            Resolve this by redefining DYLIB_INSTALL_NAME_BASE_USE_OVERRIDE_FRAMEWORKS_DIR_YES to explicitly
     53            use the INSTALL_PATH as the base of the install name, which was the original intent before
     54            r291455 changed the behavior of falling back to DYLIB_INSTALL_NAME_BASE.
     55
     56            * Configurations/libwebrtc.xcconfig:
     57
    1582022-03-17  Michael Saboff  <msaboff@apple.com>
    259
  • branches/safari-614.1.7-branch/Source/ThirdParty/libwebrtc/Configurations/libwebrtc.xcconfig

    r291455 r291714  
    4949DYLIB_INSTALL_NAME_BASE[sdk=macosx*] = $(DYLIB_INSTALL_NAME_BASE_USE_OVERRIDE_FRAMEWORKS_DIR_$(WK_USE_OVERRIDE_FRAMEWORKS_DIR));
    5050DYLIB_INSTALL_NAME_BASE_USE_OVERRIDE_FRAMEWORKS_DIR_NO = $(DYLIB_INSTALL_NAME_BASE_WK_RELOCATABLE_FRAMEWORKS_$(WK_RELOCATABLE_FRAMEWORKS));
    51 DYLIB_INSTALL_NAME_BASE_USE_OVERRIDE_FRAMEWORKS_DIR_YES = $(DYLIB_INSTALL_NAME_BASE);
     51DYLIB_INSTALL_NAME_BASE_USE_OVERRIDE_FRAMEWORKS_DIR_YES = $(INSTALL_PATH);
    5252DYLIB_INSTALL_NAME_BASE_WK_RELOCATABLE_FRAMEWORKS_ = $(NORMAL_WEBCORE_FRAMEWORKS_DIR)/WebCore.framework/Versions/A/Frameworks;
    5353DYLIB_INSTALL_NAME_BASE_WK_RELOCATABLE_FRAMEWORKS_YES = @loader_path/../../../;
Note: See TracChangeset for help on using the changeset viewer.