• Mark Mentovai's avatar
    mac-arm64: treat app_mode-Info.plist as Info.plist in universalizer · 75711c0e
    Mark Mentovai authored
    universalizer.py has special processing for Info.plist files, by looking
    for informational keys that identify the build host, toolchain, and SDK,
    and removing them when they differ rather than allowing such trivia to
    cause the merge to fail. This is important for the time being, because
    we’re using different toolchain and SDK versions for x86_64 and arm64
    builds. This processing is enabled for any files that differ between
    architectures named Info.plist.
    
    One Info.plist in our bundle is not named Info.plist: the template
    Info.plist used for app mode loader apps. In our .app, it’s named
    app_mode-Info.plist. universalizer fails because of differences in this
    file, and does not attempt Info.plist rationalization as described
    above, which would allow the files to merge successfully.
    
    The differences between x86_64 and arm64 in 88.0.4316.3: DTSDKBuild
    (10.15 vs. 11.0), DTSDKName (macosx10.15 vs. macosx11.0), DTXcode (1210
    vs. 1220), and DTXcodeBuild (12A4703 vs. 12B5035g). With this one
    change, universalizer completes successfully and merges each
    architecture’s .app into a single universal .app for that version.
    
    Code-Word: calamity
    Bug: 1142017
    Change-Id: I11d006bc5b053483f7630970242e289a7a0b1178
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2522005
    Auto-Submit: Mark Mentovai <mark@chromium.org>
    Commit-Queue: Robert Sesek <rsesek@chromium.org>
    Reviewed-by: default avatarRobert Sesek <rsesek@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#824697}
    75711c0e
universalizer.py 11.5 KB