This moves default Firefox and WebKit checkouts to $HOME folder,
unless browser specific env variables are specified.
In other words:
- Firefox checkouts goes to `$HOME/firefox` unless there's a
`$FF_CHECKOUT_PATH` that specifies a custom location.
- WebKit checkout goes to `$HOME/webkit` unless there's a
`$WK_CHECKOUT_PATH` that specifies a custom location.
With this change, all build bots will now re-use checkouts
between builds, which should speed up compilation.
An investigation has shown, that:
- Official Firefox builds actually cross-compile from Linux to MacOS,
and for this reason use the old MacOS 10.12 SDK.
- We should be able to build with 11+ SDK just fine; read [primer on
MacOS SDKs] for details.
- A random `symbol '___darwin_check_fd_set_overflow' not supported`
error seems to be an [apple bug]. We can fix it using
`LDFLAGS="-Wl,-U,___darwin_check_fd_set_overflow"`
flag, similarly to [haskell compiler fix].
[primer on MacOS SDKs]: https://firefox-source-docs.mozilla.org/widget/cocoa/sdks.html
[apple bug]: https://openradar.appspot.com/FB7647406
[haskell compiler fix]: 7745638702
Broken since https://github.com/microsoft/playwright/pull/8049
Previously when doing `build.sh --full` it was installing deps + building. Currently when passing `--full` it does not install the deps before, since it tries to compile before.
This way bash won't expand and post-process variable values in any way.
The changes are driven with
[`shellcheck`](https://github.com/koalaman/shellcheck)
Notable changes:
- javaScriptEnabled moved to the browser side.
- enabling new UI since it no longer helps to fix screencast
Review branch: https://github.com/aslushnikov/juggler/tree/roll-to-91-0-b10
Note: this will have 2 screencast tests failing. Investigation is in a follow-up.
Browsers require particular xcode versions to be installed on the host
machine to produce successful build.
This patch starts using explicit xcode versions for all mac browser
builds.