The --purify flag can now be passed to remove the temporary
files and directories created while building the iOS Framework or static
library. That way, only the final result(s) are taking up space in the
output folder.
BUG=None
NOTRY=True
Review-Url: https://codereview.webrtc.org/2740923003
Cr-Commit-Position: refs/heads/master@{#17224}
Reason for revert:
Fixing issues with the framework builder.
Original issue's description:
> Revert of Do not produce dSYM file for the iOS Frameworks with bitcode (patchset #2 id:20001 of https://codereview.webrtc.org/2705163007/ )
>
> Reason for revert:
> Looks like this caused the iOS API Framework Builder to fail.
>
> https://build.chromium.org/p/client.webrtc/builders/iOS%20API%20Framework%20Builder/builds/3487/steps/zip%20archive/logs/stdio
>
> Zipping /b/rr/tmpkIyP1e/w/webrtc_ios_api_framework.zip...
> Traceback (most recent call last):
> File "/b/rr/tmpkIyP1e/rw/checkout/scripts/slave/recipe_modules/zip/resources/zip.py", line 144, in <module>
> sys.exit(main())
> File "/b/rr/tmpkIyP1e/rw/checkout/scripts/slave/recipe_modules/zip/resources/zip.py", line 130, in main
> exit_code = zip_with_subprocess(root, output, entries)
> File "/b/rr/tmpkIyP1e/rw/checkout/scripts/slave/recipe_modules/zip/resources/zip.py", line 43, in zip_with_subprocess
> assert os.path.isdir(path), path
> AssertionError: /b/c/b/iOS_API_Framework_Builder/src/out_ios_libs/WebRTC.dSYM/
> step returned non-zero exit code: 1
> @@@STEP_FAILURE@@@
>
> Original issue's description:
> > Do not produce dSYM file for the iOS Frameworks with bitcode
> >
> > Though dSYM files can be generated when building applications or libraries
> > with bitcode. They cannot be used to symbolicate crash reports from
> > applications. Instead, developers need to grab the real dSYM files, which
> > are generated for each specific device type after uploading an iOS / tvOS
> > application to App Store (or to a device using Xcode). Apple clearly warns
> > about it in its documentation:
> >
> > https://developer.apple.com/library/content/technotes/tn2151/_index.html#//apple_ref/doc/uid/DTS40008184-CH1-SYMBOLICATION-BITCODE
> >
> > With that in mind, I believe that it would be better to not confuse
> > developers by giving them dSYM files that are not very helpful with
> > the bitcode-enabled framework. Thus, proposing the following modification
> > to the building script, to generate dSYM by default only without
> > the bitcode option. However, if some developers still want to get
> > the dSYM files as a build-process artifact, when enabling bitcode,
> > they can explicitly add --extra-gn-args enable_dsyms=true to the script.
> >
> > Let me know if it lgty.
> >
> > NOTRY=True
> > BUG=None
> >
> > Review-Url: https://codereview.webrtc.org/2705163007
> > Cr-Commit-Position: refs/heads/master@{#16836}
> > Committed: d74517c52a
>
> TBR=kjellander@webrtc.org,kthelgason@webrtc.org,VladimirTechMan@gmail.com
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=None
> NOTRY=True
>
> Review-Url: https://codereview.webrtc.org/2719773002
> Cr-Commit-Position: refs/heads/master@{#16844}
> Committed: da00077cfaTBR=kjellander@webrtc.org,vladimirtechman@gmail.com,tommi@webrtc.org
NOTRY=true
BUG=None
Review-Url: https://codereview.webrtc.org/2718983002
Cr-Commit-Position: refs/heads/master@{#16924}
Reason for revert:
Looks like this caused the iOS API Framework Builder to fail.
https://build.chromium.org/p/client.webrtc/builders/iOS%20API%20Framework%20Builder/builds/3487/steps/zip%20archive/logs/stdio
Zipping /b/rr/tmpkIyP1e/w/webrtc_ios_api_framework.zip...
Traceback (most recent call last):
File "/b/rr/tmpkIyP1e/rw/checkout/scripts/slave/recipe_modules/zip/resources/zip.py", line 144, in <module>
sys.exit(main())
File "/b/rr/tmpkIyP1e/rw/checkout/scripts/slave/recipe_modules/zip/resources/zip.py", line 130, in main
exit_code = zip_with_subprocess(root, output, entries)
File "/b/rr/tmpkIyP1e/rw/checkout/scripts/slave/recipe_modules/zip/resources/zip.py", line 43, in zip_with_subprocess
assert os.path.isdir(path), path
AssertionError: /b/c/b/iOS_API_Framework_Builder/src/out_ios_libs/WebRTC.dSYM/
step returned non-zero exit code: 1
@@@STEP_FAILURE@@@
Original issue's description:
> Do not produce dSYM file for the iOS Frameworks with bitcode
>
> Though dSYM files can be generated when building applications or libraries
> with bitcode. They cannot be used to symbolicate crash reports from
> applications. Instead, developers need to grab the real dSYM files, which
> are generated for each specific device type after uploading an iOS / tvOS
> application to App Store (or to a device using Xcode). Apple clearly warns
> about it in its documentation:
>
> https://developer.apple.com/library/content/technotes/tn2151/_index.html#//apple_ref/doc/uid/DTS40008184-CH1-SYMBOLICATION-BITCODE
>
> With that in mind, I believe that it would be better to not confuse
> developers by giving them dSYM files that are not very helpful with
> the bitcode-enabled framework. Thus, proposing the following modification
> to the building script, to generate dSYM by default only without
> the bitcode option. However, if some developers still want to get
> the dSYM files as a build-process artifact, when enabling bitcode,
> they can explicitly add --extra-gn-args enable_dsyms=true to the script.
>
> Let me know if it lgty.
>
> NOTRY=True
> BUG=None
>
> Review-Url: https://codereview.webrtc.org/2705163007
> Cr-Commit-Position: refs/heads/master@{#16836}
> Committed: d74517c52aTBR=kjellander@webrtc.org,kthelgason@webrtc.org,VladimirTechMan@gmail.com
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=None
NOTRY=True
Review-Url: https://codereview.webrtc.org/2719773002
Cr-Commit-Position: refs/heads/master@{#16844}
Though dSYM files can be generated when building applications or libraries
with bitcode. They cannot be used to symbolicate crash reports from
applications. Instead, developers need to grab the real dSYM files, which
are generated for each specific device type after uploading an iOS / tvOS
application to App Store (or to a device using Xcode). Apple clearly warns
about it in its documentation:
https://developer.apple.com/library/content/technotes/tn2151/_index.html#//apple_ref/doc/uid/DTS40008184-CH1-SYMBOLICATION-BITCODE
With that in mind, I believe that it would be better to not confuse
developers by giving them dSYM files that are not very helpful with
the bitcode-enabled framework. Thus, proposing the following modification
to the building script, to generate dSYM by default only without
the bitcode option. However, if some developers still want to get
the dSYM files as a build-process artifact, when enabling bitcode,
they can explicitly add --extra-gn-args enable_dsyms=true to the script.
Let me know if it lgty.
NOTRY=True
BUG=None
Review-Url: https://codereview.webrtc.org/2705163007
Cr-Commit-Position: refs/heads/master@{#16836}
In a recent commit we added --extra-gn-args flag but we forgot to log
the extra_gn_args variable and this can cause useless investigations.
BUG=None
NOTRY=True
Review-Url: https://codereview.webrtc.org/2698613004
Cr-Commit-Position: refs/heads/master@{#16639}
Reason for revert:
MB is now updated to handle spaces in the buildername properly, something that
only affected our commit bots (not trybots).
Original issue's description:
> Revert of iOS: Use JSON for GN configuration instead of MB + remove symbols (patchset #4 id:80001 of https://codereview.webrtc.org/2688103002/ )
>
> Reason for revert:
> Something is different from trybots vs the commit bots, causing it to fail when running GN:
> https://build.chromium.org/p/client.webrtc/builders/iOS32%20Release/builds/10151
>
> Original issue's description:
> > iOS: Use JSON for GN configuration instead of MB + remove symbols.
> >
> > This aligns with how the ios recipe module is used in Chromium.
> > It should prevent breakages like one we had recently.
> >
> > It also means we're no longer setting symbol_level=1 explicitly.
> > The default is 0 (no symbols), which is now what's being used.
> >
> > Also move all the directories containing JSON files into
> > tools-webrtc/ios/bots to make it clearer (and more similar to
> > Chromium).
> >
> > BUG=webrtc:7140, webrtc:7161
> > NOTRY=True
> >
> > Review-Url: https://codereview.webrtc.org/2688103002
> > Cr-Commit-Position: refs/heads/master@{#16633}
> > Committed: 73f01de4ed
>
> TBR=ehmaldonado@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7140, webrtc:7161
>
> Review-Url: https://codereview.webrtc.org/2694423002
> Cr-Commit-Position: refs/heads/master@{#16634}
> Committed: 68ab366547TBR=ehmaldonado@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7140, webrtc:7161
Review-Url: https://codereview.webrtc.org/2697133002
Cr-Commit-Position: refs/heads/master@{#16636}
It seems that ninja defaults the number of available CPUs.
BUG=chromium:690916
NOTRY=True
Review-Url: https://codereview.webrtc.org/2691393003
Cr-Commit-Position: refs/heads/master@{#16635}
Reason for revert:
Something is different from trybots vs the commit bots, causing it to fail when running GN:
https://build.chromium.org/p/client.webrtc/builders/iOS32%20Release/builds/10151
Original issue's description:
> iOS: Use JSON for GN configuration instead of MB + remove symbols.
>
> This aligns with how the ios recipe module is used in Chromium.
> It should prevent breakages like one we had recently.
>
> It also means we're no longer setting symbol_level=1 explicitly.
> The default is 0 (no symbols), which is now what's being used.
>
> Also move all the directories containing JSON files into
> tools-webrtc/ios/bots to make it clearer (and more similar to
> Chromium).
>
> BUG=webrtc:7140, webrtc:7161
> NOTRY=True
>
> Review-Url: https://codereview.webrtc.org/2688103002
> Cr-Commit-Position: refs/heads/master@{#16633}
> Committed: 73f01de4edTBR=ehmaldonado@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7140, webrtc:7161
Review-Url: https://codereview.webrtc.org/2694423002
Cr-Commit-Position: refs/heads/master@{#16634}
This aligns with how the ios recipe module is used in Chromium.
It should prevent breakages like one we had recently.
It also means we're no longer setting symbol_level=1 explicitly.
The default is 0 (no symbols), which is now what's being used.
Also move all the directories containing JSON files into
tools-webrtc/ios/bots to make it clearer (and more similar to
Chromium).
BUG=webrtc:7140, webrtc:7161
NOTRY=True
Review-Url: https://codereview.webrtc.org/2688103002
Cr-Commit-Position: refs/heads/master@{#16633}
This enables tighter integration with XCode tooling and is a prereq
for adding UI tests.
BUG=webrtc:7150
Review-Url: https://codereview.webrtc.org/2697603002
Cr-Commit-Position: refs/heads/master@{#16609}