WebKit switched to workspace builds by default upstream in c67ee46115 and Playwright.app project (forked from MiniBrowser.app xcode project) was not a part of the workspace. This PR:
* Adds Tools/Playwright project to the WebKit workspace;
* Adds WebKit.framework to the list of dependencies of Playwright.app (I managed to successfully build without this modification but decided to added to be on the safe side as that was done upstream too);
* Removes `--no-use-workspace` in order to use workspace build mode which is the default upstream.
Pretty-diff: 75f1e79447
Currently, Mac WebKit builds are failing in CI. It seems this is a regression in upstream WebKit as I'm able to reproduce it in my local environment.
The error is the following:
```
usr/bin/codesign --force --sign - --timestamp\=none --preserve-metadata\=identifier,entitlements,flags --generate-entitlement-der /Users/playwright/webkit/WebKitBuild/Release/InjectedBundleTestWebKitAPI.bundle/Contents/Resources/WebKit.framework
/Users/playwright/webkit/WebKitBuild/Release/InjectedBundleTestWebKitAPI.bundle/Contents/Resources/WebKit.framework: replacing existing signature
/Users/playwright/webkit/WebKitBuild/Release/InjectedBundleTestWebKitAPI.bundle/Contents/Resources/WebKit.framework: unsealed contents present in the root directory of an embedded framework
Command CodeSign failed with a nonzero exit code
```
Bisecting the regression it seems the build started failing on [r295496](https://trac.webkit.org/changeset/295496/webkit)
This changeset also introduced a new flag, _--no-use-workspace__, which allows to build not using WebKit.xcworkspace (I understand this is how builds were done before this changeset). Building with _--no-use-workspace_ fixes builds for Mac.
I skipped the Windows specific files this time. I added an extra commit to fix dependencies update in Ubuntu 18.04.
All changes in this PR:
chore(webkit): bootstrap build #1665
[GLIB] Fix build error after r295446
[JHBuild] Fix error use OpenSSL backend when gnutls available in the …
WebSocketTaskCurl.cpp has been implemented upstream since last roll. We now pass ignoreCertificateErrors to it similar to other platforms. This should fix Curl compilation errors on windows.
Pretty-diff: yury-s/WebKit@48cd095
> lgtm % null-check for the docshell
The code is inside following if condition
```
if (auto* browserChild = BrowserChild::GetFrom(root->GetDocShell())) {
```
which ensures that the doc shell is not null.
This patch:
- fixes firefox-beta archiving that requires 2 extra env variables
- attempts to use windows paths to specify `MOZ_FETCHES_DIR` on
Windows to point to the toolchains folder.
This is a follow-up to a7a7644bebd69d68d1803bd7b4cf9771bec4d185
that started bootstrapping toolchains from `master` branch.
Now, we have to explicitly use these toolchains when building
Firefox.