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

Changeset 244575 in webkit


Ignore:
Timestamp:
Apr 23, 2019, 5:52:41 PM (7 years ago)
Author:
Keith Rollin
Message:

Add Xcode version check for Header post-processing scripts
https://bugs.webkit.org/show_bug.cgi?id=197116
<rdar://problem/50058968>

Reviewed by Brent Fulgham.

There are several places in our Xcode projects that post-process
header files after they've been exported. Because of XCBuild, we're
moving to a model where the post-processing is performed at the same
time the header files are exported, rather than as a distinct
post-processing step. This patch disables the distinct step when the
inline processing is available.

In practice, this means prefixing appropriate post-processing Custom
Build phases with:

if [ "${XCODE_VERSION_MAJOR}" -ge "1100" -a "${USE_NEW_BUILD_SYSTEM}" = "YES" ]; then

# In this configuration, post-processing is performed at the same time as copying in the postprocess-header-rule script, so there's no need for this separate step.
exit 0

fi

Source/JavaScriptCore:

Source/WebKit:

  • WebKit.xcodeproj/project.pbxproj:

Source/WebKitLegacy:

  • WebKitLegacy.xcodeproj/project.pbxproj:
Location:
trunk/Source
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/ChangeLog

    r244574 r244575  
     12019-04-23  Keith Rollin  <krollin@apple.com>
     2
     3        Add Xcode version check for Header post-processing scripts
     4        https://bugs.webkit.org/show_bug.cgi?id=197116
     5        <rdar://problem/50058968>
     6
     7        Reviewed by Brent Fulgham.
     8
     9        There are several places in our Xcode projects that post-process
     10        header files after they've been exported. Because of XCBuild, we're
     11        moving to a model where the post-processing is performed at the same
     12        time the header files are exported, rather than as a distinct
     13        post-processing step. This patch disables the distinct step when the
     14        inline processing is available.
     15
     16        In practice, this means prefixing appropriate post-processing Custom
     17        Build phases with:
     18
     19        if [ "${XCODE_VERSION_MAJOR}" -ge "1100" -a "${USE_NEW_BUILD_SYSTEM}" = "YES" ]; then
     20            # In this configuration, post-processing is performed at the same time as copying in the postprocess-header-rule script, so there's no need for this separate step.
     21            exit 0
     22        fi
     23
     24        * JavaScriptCore.xcodeproj/project.pbxproj:
     25
    1262019-04-23  Commit Queue  <commit-queue@webkit.org>
    227
  • trunk/Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj

    r244466 r244575  
    1040410404                        runOnlyForDeploymentPostprocessing = 0;
    1040510405                        shellPath = /bin/sh;
    10406                         shellScript = "exec ${SRCROOT}/postprocess-headers.sh\n";
     10406                        shellScript = "if [ \"${XCODE_VERSION_MAJOR}\" -ge \"1100\" -a \"${USE_NEW_BUILD_SYSTEM}\" = \"YES\" ]; then\n    # In this configuration, post-processing is performed at the same time as copying in the postprocess-header-rule script, so there's no need for this separate step.\n    exit 0\nfi\n\nexec ${SRCROOT}/postprocess-headers.sh\n";
    1040710407                };
    1040810408                374F95C9205F9975002BF68F /* Make libWTF.a Symbolic Link */ = {
  • trunk/Source/WebKit/ChangeLog

    r244572 r244575  
     12019-04-23  Keith Rollin  <krollin@apple.com>
     2
     3        Add Xcode version check for Header post-processing scripts
     4        https://bugs.webkit.org/show_bug.cgi?id=197116
     5        <rdar://problem/50058968>
     6
     7        Reviewed by Brent Fulgham.
     8
     9        There are several places in our Xcode projects that post-process
     10        header files after they've been exported. Because of XCBuild, we're
     11        moving to a model where the post-processing is performed at the same
     12        time the header files are exported, rather than as a distinct
     13        post-processing step. This patch disables the distinct step when the
     14        inline processing is available.
     15
     16        In practice, this means prefixing appropriate post-processing Custom
     17        Build phases with:
     18
     19        if [ "${XCODE_VERSION_MAJOR}" -ge "1100" -a "${USE_NEW_BUILD_SYSTEM}" = "YES" ]; then
     20            # In this configuration, post-processing is performed at the same time as copying in the postprocess-header-rule script, so there's no need for this separate step.
     21            exit 0
     22        fi
     23
     24        * WebKit.xcodeproj/project.pbxproj:
     25
    1262019-04-23  John Wilander  <wilander@apple.com>
    227
  • trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj

    r244466 r244575  
    1045710457                        runOnlyForDeploymentPostprocessing = 0;
    1045810458                        shellPath = /bin/sh;
    10459                         shellScript = "if [ \"${ACTION}\" = \"build\" -o \"${ACTION}\" = \"install\" -o \"${ACTION}\" = \"installhdrs\" -o \"${ACTION}\" = \"installapi\" ]; then\n    exec ${SRCROOT}/mac/postprocess-framework-headers.sh\nfi\n";
     10459                        shellScript = "if [ \"${XCODE_VERSION_MAJOR}\" -ge \"1100\" -a \"${USE_NEW_BUILD_SYSTEM}\" = \"YES\" ]; then\n    # In this configuration, post-processing is performed at the same time as copying in the postprocess-header-rule script, so there's no need for this separate step.\n    exit 0\nfi\n\nif [ \"${ACTION}\" = \"build\" -o \"${ACTION}\" = \"install\" -o \"${ACTION}\" = \"installhdrs\" -o \"${ACTION}\" = \"installapi\" ]; then\n    exec ${SRCROOT}/mac/postprocess-framework-headers.sh\nfi\n";
    1046010460                };
    1046110461                1A2180161B5454620046AEC4 /* Add Symlink in /System/Library/PrivateFrameworks */ = {
     
    1050010500                        runOnlyForDeploymentPostprocessing = 0;
    1050110501                        shellPath = /bin/sh;
    10502                         shellScript = "WKFOUNDATION_H=${TARGET_BUILD_DIR}/${PUBLIC_HEADERS_FOLDER_PATH}/WKFoundation.h\n\nif [[ \"${WK_FRAMEWORK_HEADER_POSTPROCESSING_DISABLED}\" == \"YES\" ]]; then\n    UNIFDEF_OPTIONS=\"-UWK_FRAMEWORK_HEADER_POSTPROCESSING_ENABLED\";\nelse\n    UNIFDEF_OPTIONS=\"-DWK_FRAMEWORK_HEADER_POSTPROCESSING_ENABLED\";\nfi\n\nunifdef -B ${UNIFDEF_OPTIONS} -o \"${WKFOUNDATION_H}\".unifdef \"${WKFOUNDATION_H}\"\n\ncase $? in\n0)\n    rm \"${WKFOUNDATION_H}\".unifdef\n    ;;\n1)\n    mv \"${WKFOUNDATION_H}\"{.unifdef,}\n    ;;\n*)\n    exit 1\nesac\n";
     10502                        shellScript = "if [ \"${XCODE_VERSION_MAJOR}\" -ge \"1100\" -a \"${USE_NEW_BUILD_SYSTEM}\" = \"YES\" ]; then\n    # In this configuration, post-processing is performed at the same time as copying in the postprocess-header-rule script, so there's no need for this separate step.\n    exit 0\nfi\n\nWKFOUNDATION_H=${TARGET_BUILD_DIR}/${PUBLIC_HEADERS_FOLDER_PATH}/WKFoundation.h\n\nif [[ \"${WK_FRAMEWORK_HEADER_POSTPROCESSING_DISABLED}\" == \"YES\" ]]; then\n    UNIFDEF_OPTIONS=\"-UWK_FRAMEWORK_HEADER_POSTPROCESSING_ENABLED\";\nelse\n    UNIFDEF_OPTIONS=\"-DWK_FRAMEWORK_HEADER_POSTPROCESSING_ENABLED\";\nfi\n\nunifdef -B ${UNIFDEF_OPTIONS} -o \"${WKFOUNDATION_H}\".unifdef \"${WKFOUNDATION_H}\"\n\ncase $? in\n0)\n    rm \"${WKFOUNDATION_H}\".unifdef\n    ;;\n1)\n    mv \"${WKFOUNDATION_H}\"{.unifdef,}\n    ;;\n*)\n    exit 1\nesac\n";
    1050310503                };
    1050410504                1ADAE12F1919A90C00F48E21 /* Update Info.plist with version information */ = {
     
    1060010600                        runOnlyForDeploymentPostprocessing = 0;
    1060110601                        shellPath = /bin/sh;
    10602                         shellScript = "WKBASE_H=${TARGET_BUILD_DIR}/${PRIVATE_HEADERS_FOLDER_PATH}/WKBase.h\n\nunifdef -B -D__APPLE__ -UBUILDING_GTK__ -UBUILDING_WPE__ -UUSE_SOUP -o \"${WKBASE_H}\".unifdef \"${WKBASE_H}\"\n\ncase $? in\n0)\n    rm \"${WKBASE_H}\".unifdef\n    ;;\n1)\n    mv \"${WKBASE_H}\"{.unifdef,}\n    ;;\n*)\n    exit 1\nesac\n";
     10602                        shellScript = "if [ \"${XCODE_VERSION_MAJOR}\" -ge \"1100\" -a \"${USE_NEW_BUILD_SYSTEM}\" = \"YES\" ]; then\n    # In this configuration, post-processing is performed at the same time as copying in the postprocess-header-rule script, so there's no need for this separate step.\n    exit 0\nfi\n\nWKBASE_H=${TARGET_BUILD_DIR}/${PRIVATE_HEADERS_FOLDER_PATH}/WKBase.h\n\nunifdef -B -D__APPLE__ -UBUILDING_GTK__ -UBUILDING_WPE__ -UUSE_SOUP -o \"${WKBASE_H}\".unifdef \"${WKBASE_H}\"\n\ncase $? in\n0)\n    rm \"${WKBASE_H}\".unifdef\n    ;;\n1)\n    mv \"${WKBASE_H}\"{.unifdef,}\n    ;;\n*)\n    exit 1\nesac\n";
    1060310603                };
    1060410604                37E531011B2391090074F0DF /* Copy iOS Sandbox Profiles for Manual Sandboxing */ = {
     
    1090710907                        runOnlyForDeploymentPostprocessing = 0;
    1090810908                        shellPath = /bin/sh;
    10909                         shellScript = "if [ \"${ACTION}\" = \"build\" -o \"${ACTION}\" = \"install\" -o \"${ACTION}\" = \"installhdrs\" -o \"${ACTION}\" = \"installapi\" ]; then\n    for HEADERS_DIRECTORY in \"${PUBLIC_HEADERS_FOLDER_PATH}\" \"${PRIVATE_HEADERS_FOLDER_PATH}\"; do\n        for HEADER_PATH in \"${TARGET_BUILD_DIR}/${HEADERS_DIRECTORY}/\"*.h; do\n            if [[ ! -z `grep '#import <WebKitAdditions/.*\\.h>' \"${HEADER_PATH}\"` ]]; then\n                python \"${SRCROOT}/mac/replace-webkit-additions-includes.py\" \"${HEADER_PATH}\" \"${BUILT_PRODUCTS_DIR}\" \"${SDKROOT}\" || exit $?\n            fi\n        done\n    done\nfi\n";
     10909                        shellScript = "if [ \"${XCODE_VERSION_MAJOR}\" -ge \"1100\" -a \"${USE_NEW_BUILD_SYSTEM}\" = \"YES\" ]; then\n    # In this configuration, post-processing is performed at the same time as copying in the postprocess-header-rule script, so there's no need for this separate step.\n    exit 0\nfi\n\nif [ \"${ACTION}\" = \"build\" -o \"${ACTION}\" = \"install\" -o \"${ACTION}\" = \"installhdrs\" -o \"${ACTION}\" = \"installapi\" ]; then\n    for HEADERS_DIRECTORY in \"${PUBLIC_HEADERS_FOLDER_PATH}\" \"${PRIVATE_HEADERS_FOLDER_PATH}\"; do\n        for HEADER_PATH in \"${TARGET_BUILD_DIR}/${HEADERS_DIRECTORY}/\"*.h; do\n            if [[ ! -z `grep '#import <WebKitAdditions/.*\\.h>' \"${HEADER_PATH}\"` ]]; then\n                python \"${SRCROOT}/mac/replace-webkit-additions-includes.py\" \"${HEADER_PATH}\" \"${BUILT_PRODUCTS_DIR}\" \"${SDKROOT}\" || exit $?\n            fi\n        done\n    done\nfi\n";
    1091010910                };
    1091110911/* End PBXShellScriptBuildPhase section */
  • trunk/Source/WebKitLegacy/ChangeLog

    r244488 r244575  
     12019-04-23  Keith Rollin  <krollin@apple.com>
     2
     3        Add Xcode version check for Header post-processing scripts
     4        https://bugs.webkit.org/show_bug.cgi?id=197116
     5        <rdar://problem/50058968>
     6
     7        Reviewed by Brent Fulgham.
     8
     9        There are several places in our Xcode projects that post-process
     10        header files after they've been exported. Because of XCBuild, we're
     11        moving to a model where the post-processing is performed at the same
     12        time the header files are exported, rather than as a distinct
     13        post-processing step. This patch disables the distinct step when the
     14        inline processing is available.
     15
     16        In practice, this means prefixing appropriate post-processing Custom
     17        Build phases with:
     18
     19        if [ "${XCODE_VERSION_MAJOR}" -ge "1100" -a "${USE_NEW_BUILD_SYSTEM}" = "YES" ]; then
     20            # In this configuration, post-processing is performed at the same time as copying in the postprocess-header-rule script, so there's no need for this separate step.
     21            exit 0
     22        fi
     23
     24        * WebKitLegacy.xcodeproj/project.pbxproj:
     25
    1262019-04-20  Don Olmstead  <don.olmstead@sony.com>
    227
  • trunk/Source/WebKitLegacy/WebKitLegacy.xcodeproj/project.pbxproj

    r244466 r244575  
    33403340                        runOnlyForDeploymentPostprocessing = 0;
    33413341                        shellPath = /bin/sh;
    3342                         shellScript = "exec \"${SRCROOT}/mac/postprocess-headers.sh\"";
     3342                        shellScript = "if [ \"${XCODE_VERSION_MAJOR}\" -ge \"1100\" -a \"${USE_NEW_BUILD_SYSTEM}\" = \"YES\" ]; then\n    # In this configuration, post-processing is performed at the same time as copying in the postprocess-header-rule script, so there's no need for this separate step.\n    exit 0\nfi\n\nexec \"${SRCROOT}/mac/postprocess-headers.sh\"\n";
    33433343                };
    33443344/* End PBXShellScriptBuildPhase section */
Note: See TracChangeset for help on using the changeset viewer.