The update-verify-next test is new in Thunderbird 91. Since Thunderbird versions
do not include the esr suffix, a separate regex is needed.
Differential Revision: https://phabricator.services.mozilla.com/D119890
In cross-compilation setups (x86_64 host, i686 or aarch64 target), we're
going to need two sysroots. Obviously, we need the sysroot paths to be
different in that case, so the sysroot path themselves need to contain
some distinctive name, and we'll use the `target.toolchain` name for
that (the target triplet with the vendor/machine stripped out).
Because the path name needs to be reflected in the artifact name as well
as the toolchain name, we also change them.
And because the current prefix in the toolchain name is now redundant
with the suffix, we remove the prefix, and allow the bootstrapping
mechanism to try toolchains without the prefix.
Differential Revision: https://phabricator.services.mozilla.com/D119846
This patch allows the desktop recorder to be run manually. A subsequent patch
will enable it for every m-c push once the hardware is deployed.
Differential Revision: https://phabricator.services.mozilla.com/D117367
Manually install some packages that were installed automatically somehow
and may matter.
Don't install packages already installed as part of the base image.
Differential Revision: https://phabricator.services.mozilla.com/D119368
Manually install some packages that were installed automatically somehow
and may matter.
Don't install packages already installed as part of the base image.
Differential Revision: https://phabricator.services.mozilla.com/D119366
This allows to remove all the steps already handled in the debian10-base
image. Also remove the install-node script that is not used, and
manually install some packages that were installed automatically somehow
and may matter.
Don't install packages already installed as part of the base image.
Differential Revision: https://phabricator.services.mozilla.com/D119364
It allows to remove a number of things that are setup through the base
image already, and to install the libc6 packages we built.
Differential Revision: https://phabricator.services.mozilla.com/D119260
Similar to the corresponding Debian images (actually using its
Dockerfile), which sets up the worker user and directory, mercurial, our
base scripts, etc.
Differential Revision: https://phabricator.services.mozilla.com/D119259
As written in 00c93ac66282, relying on the 2.27-3ubuntu1.2 package being
available is a timebomb. We can however get the older sources from
launchpad, and build them ourselves.
Differential Revision: https://phabricator.services.mozilla.com/D119258
The base docker images (both Ubuntu and Debian) have extra configuration
in /etc/apt/apt.conf.d/docker-clean that automatically cleans-up
downloaded .deb packages after they are installed, so we don't need to
do it again manually.
Differential Revision: https://phabricator.services.mozilla.com/D119242
This allows to use the same toolchain docker images as other toolchains,
based on Debian buster.
While here, use the default max-run-time, which is more than enough for
this toolchain.
Differential Revision: https://phabricator.services.mozilla.com/D119137
Because GCC is built in stages, the final stage is built with
intermediate stages's GCC, which handles the sysroot correctly, so we
end up with headers and libraries with the expected compatibility.
This allows to use the same toolchain docker images as other toolchains,
based on Debian buster.
Differential Revision: https://phabricator.services.mozilla.com/D119136
We have a separate binutils toolchain already, and the only remaining
use of the binutils part of the the GCC toolchain is for the gold plugin
headers for clang, which we can add to the toolchain sysroot.
Differential Revision: https://phabricator.services.mozilla.com/D119133
These are enough for me to run bootstrap+configure+build.
Some touch third-party code (gyp), but per discussion in the earlier
versions of this revision that seems fine.
Differential Revision: https://phabricator.services.mozilla.com/D119080
This patch adds a new linter that will error when new code mentions any one of
the following strings:
* `CoInitialize`;
* `CoInitializeEx`;
* `OleInitialize`;
* `RoInitialize`;
* `CoUninitialize`;
* `OleUninitialize`; and
* `RoUninitialize`.
Since I don't care about context, and just want to flag code containing these
names, I opted for a `regex` linter.
Yes, the regex does match a few strings beyond the above list (in particular, it
also matches additional strings that end with an `Ex` suffix), but since
functions with those names don't exist anyway (and would be errors in their own
right), I am not concerned about it.
All existing occurrences have been added to the exclusion list, with the
intent of removing most of them over time.
Differential Revision: https://phabricator.services.mozilla.com/D119129
Because the build requires a version that is newer than the one
available in Debian jessie, we build a newer version. The exact minor
version doesn't matter, as long as it's 7.x, so we take the last version
that produced a libstdc++6 package (before Debian switched to GCC 8 as
the default), and add a few workarounds to fix the packaging that
doesn't quite work for jessie out of the box.
Differential Revision: https://phabricator.services.mozilla.com/D119124
These are enough for me to run bootstrap+configure+build.
Some touch third-party code (gyp), but per discussion in the earlier
versions of this revision that seems fine.
Differential Revision: https://phabricator.services.mozilla.com/D119080