Граф коммитов

9197 Коммитов

Автор SHA1 Сообщение Дата
David Major 4dbfa86c29 Bug 1650239 - Allow threads in our Mac clang build r=froydnj
Source history does not give any good clues about why this line was added in the first place. In any case, LLVM trunk currently has build bustage when threads are disabled. We could work around the bustage and/or wait for a fix, but it seems like threads are a good thing to have in general nowadays. Maybe this could help with LTO build times.

Differential Revision: https://phabricator.services.mozilla.com/D82447
2020-07-06 20:43:42 +00:00
David Major a4c2414404 Bug 1650804 - Update clang-tidy code for new ClangTidyCheck.h header in recent clangs r=static-analysis-reviewers,andi
In e9087fe75c, the definition of ClangTidyCheck moved into a new header ClangTidyCheck.h.

And later, in 860aefd078, ClangTidyCheck.h is no longer automatically included from ClangTidy.h.

Differential Revision: https://phabricator.services.mozilla.com/D82392
2020-07-06 16:31:17 +00:00
Sylvestre Ledru caf785c695 Bug 1519636 - Reformat recent changes to the Google coding style r=andi
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D82178
2020-07-04 09:38:43 +00:00
Jean-Yves Avenard e1424a9e65 Bug 1649977 - Use a nsThread for the VRService. r=kip
The logic was apparently initially copied from the compositor thread which too got migrated to nsThread in bug 1634253, so we re-use that same logic again.

This allows to remove all use of the Google's MessageLoop.

Differential Revision: https://phabricator.services.mozilla.com/D81974
2020-07-03 02:52:05 +00:00
Ricky Stewart 3395ee63c9 Bug 1649850 - Refactor minimum Rust version into a common place for `bootstrap` and `configure` r=nalexander
The lack of duplication should prevent bugs like bug 1649039 popping up again.

Differential Revision: https://phabricator.services.mozilla.com/D82060
2020-07-02 18:05:58 +00:00
Andi-Bogdan Postelnicu c9368b86d1 Bug 1650057 - Avoid using external clang-tidy patches when dealing with paths that need to be escaped. r=marco
Differential Revision: https://phabricator.services.mozilla.com/D82002
2020-07-02 14:11:19 +00:00
Henri Sivonen 356e90f2b6 Bug 1647301 - Remove forceCharset from nsIContentViewer. r=m_kato
Differential Revision: https://phabricator.services.mozilla.com/D80470
2020-07-02 06:23:24 +00:00
Jean-Yves Avenard 28c6755d49 Bug 1647112 - P1. Make the canvas thread use BackgroundTaskQueue. r=KrisWright,jgilbert,andi
Some headers cleanup.

Differential Revision: https://phabricator.services.mozilla.com/D80597
2020-07-01 17:45:36 +00:00
Jean-Yves Avenard 87ab775e09 Bug 1647628 - Make ImageBridgeChild use a background taskqueue. r=KrisWright,andi
Differential Revision: https://phabricator.services.mozilla.com/D80599
2020-07-02 00:27:47 +00:00
Jean-Yves Avenard 8fc6e95f6c Bug 1649294 - Make RemoteDecoder use a background taskqueue. r=mattwoodrow,andi
There's a small race that can happen when the remote decoder gets shutdown during xpcom shutdown; that would cause GetCurrentSerialEventTarget to return null. Leading to an assertion failure in ActorLifecycleProxy thread-safety check when PRemoteDecoderManagerParent gets destroyed.

So we use a background taskqueue instead and cleanup a bit the threading code in there allowed thanks to the TaskQueue ability to not require an explicit shutdown.

Differential Revision: https://phabricator.services.mozilla.com/D81287
2020-07-02 00:26:46 +00:00
Mike Hommey 9c264b7cf2 Bug 1240930 - Move jar_maker to the misc tier. r=firefox-build-system-reviewers,geckoview-reviewers,rstewart,agi
Because jar_maker is not in the libs tier, we also rename the libs-%
targets for l10n repacks to l10n-%, which make it clearer what they are
for.

And because multilocale.txt is both a GeneratedFile and a file that is
generated (and installed) via manual build rules, keeping it in the misc
target actually breaks building in toolkit/locales during l10n repacks,
so move it to libs for now.

Differential Revision: https://phabricator.services.mozilla.com/D81766
2020-06-30 21:34:32 +00:00
Ricky Stewart 01f005d7d7 Bug 1647830 - Users trying to build Firefox for Android on Windows should get a warning in `bootstrap` and `configure` r=nalexander
We get a lot of bugs about building Firefox for Android not working, and there's been ongoing confusion about whether this is something that does work or who has ever worked. The warning should hopefully clarify the current situation for people.

Differential Revision: https://phabricator.services.mozilla.com/D81585
2020-06-29 22:36:02 +00:00
Andi-Bogdan Postelnicu 779d955fee Bug 1645948 - for `clang-tidy` static-analysis escape some paths that have special chars. r=sylvestre
The patch that has been applied to our `clang-tidy` artifact has also been pushed upstead https://reviews.llvm.org/D81917

Differential Revision: https://phabricator.services.mozilla.com/D79799
2020-06-27 14:10:20 +00:00
Narcis Beleuzu 3700aab557 Backed out 7 changesets (bug 1634846, bug 1647628, bug 1649294, bug 1647112) for webgl-conf crashes. CLOSED TREE
Backed out changeset 4441d06e96c3 (bug 1647628)
Backed out changeset 4efaf32bc8f7 (bug 1647112)
Backed out changeset 2d24ad813039 (bug 1647112)
Backed out changeset fda262d73a13 (bug 1649294)
Backed out changeset 5863f9c5229f (bug 1634846)
Backed out changeset bca79526745d (bug 1634846)
Backed out changeset d539408a0048 (bug 1634846)
2020-06-30 09:50:00 +03:00
Jean-Yves Avenard 00688236a3 Bug 1647628 - Make ImageBridgeChild use a background taskqueue. r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D80599
2020-06-24 01:38:30 +00:00
Jean-Yves Avenard 135d109d8e Bug 1647112 - P1. Make the canvas thread use BackgroundTaskQueue. r=KrisWright
Some headers cleanup.

Differential Revision: https://phabricator.services.mozilla.com/D80597
2020-06-30 02:33:02 +00:00
Jean-Yves Avenard c251c5b2c7 Bug 1649294 - Make RemoteDecoder use a background taskqueue. r=mattwoodrow
There's a small race that can happen when the remote decoder gets shutdown during xpcom shutdown; that would cause GetCurrentSerialEventTarget to return null. Leading to an assertion failure in ActorLifecycleProxy thread-safety check when PRemoteDecoderManagerParent gets destroyed.

So we use a background taskqueue instead and cleanup a bit the threading code in there allowed thanks to the TaskQueue ability to not require an explicit shutdown.

Differential Revision: https://phabricator.services.mozilla.com/D81287
2020-06-30 02:50:38 +00:00
Andrea Marchesini c6e87ab4b6 Bug 1648141 - IPCBlobInputStream to RemoteLazyInputStream - part 5 - thread, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D80928
2020-06-29 13:39:01 +00:00
Razvan Maries f7cb24cc7e Backed out 8 changesets (bug 1648141) for build bustages on RemoteLazyInputStreamThread.cpp. CLOSED TREE
Backed out changeset e9b4ca0ee700 (bug 1648141)
Backed out changeset b9bb847cee47 (bug 1648141)
Backed out changeset 11dfce46ec14 (bug 1648141)
Backed out changeset d824d2f67f27 (bug 1648141)
Backed out changeset e5b8292e7095 (bug 1648141)
Backed out changeset c1a3d5fa0c61 (bug 1648141)
Backed out changeset 24fdb83db3cd (bug 1648141)
Backed out changeset 749d894dde52 (bug 1648141)
2020-06-29 13:59:16 +03:00
Andrea Marchesini 2641b9afe4 Bug 1648141 - IPCBlobInputStream to RemoteLazyInputStream - part 5 - thread, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D80928
2020-06-29 10:27:38 +00:00
Mike Hommey f64e5ea826 Bug 1648651 - Fix building with --disable-compile-environment. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D81263
2020-06-28 23:43:18 +00:00
Narcis Beleuzu c34db7b476 Backed out changeset 53e21e96fcb7 (bug 1648651) fpr breaking the artifact builds 2020-06-28 01:28:44 +03:00
Mike Hommey 5fac8151ea Bug 1648651 - Fix building with --disable-compile-environment. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D81263
2020-06-27 20:22:21 +00:00
Mihai Alexandru Michis 2a27d4c078 Backed out changeset 3f3dcaad792a (bug 1648651) for causing multiple failures along with exceptions.
CLOSED TREE
2020-06-27 02:23:42 +03:00
David Major eff41c75b2 Bug 1648519 - Add back clang lib directory to LIB on Windows r=glandium
clang 11 will stop using full paths in PGO dependentlib declarations, so we need to tell the linker where to find clang_rt.profile-x86_64.lib.

This is roughly a revert of bug 1621552.

Differential Revision: https://phabricator.services.mozilla.com/D81244
2020-06-26 19:36:30 +00:00
Mike Hommey b4ae9c899c Bug 1648651 - Fix building with --disable-compile-environment. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D81263
2020-06-26 16:30:39 +00:00
Emilio Cobos Álvarez 7c995807da Bug 1646936 - Generate a single metadata file in the objdir, and feed it to cbindgen. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D80360
2020-06-26 10:41:26 +00:00
Coroiu Cristina 302c2fa31a Backed out changeset 8f948dd74aba (bug 1646936) for SM and Toolchain failures on a CLOSED TREE 2020-06-26 13:08:09 +03:00
Emilio Cobos Álvarez 9c7c03bf30 Bug 1646936 - Generate a single metadata file in the objdir, and feed it to cbindgen. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D80360
2020-06-26 09:37:16 +00:00
Cosmin Sabou 9d21cb65b8 Backed out changeset 5e0244588a91 (bug 822978) for causing Windows MinGW bustages. CLOSED TREE 2020-06-26 06:08:15 +03:00
Mike Hommey 2c0ef5cc73 Bug 822978 - Enable -Werror=implicit-function-declaration by default. r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D81250
2020-06-26 01:06:48 +00:00
Nicholas Nethercote e671bf0673 Bug 1647987 - Create Rust testing docs. r=froydnj.
Some of the testing info is from the Oxidation wiki, and the logging info is
largely from a dev-platform email by Valentin. The other parts I wrote from
scratch.

The commit also makes some small improvements to the Rust build docs.

Differential Revision: https://phabricator.services.mozilla.com/D81017
2020-06-26 01:04:40 +00:00
Mike Hommey 90a47ff4ef Bug 1648343 - Require rustc 1.43 to build. r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D81246
2020-06-25 23:41:16 +00:00
Mike Hommey 81697e521f Bug 1632735 - Upgrade valgrind builds to the same rust version as other builds. r=erahm
And add suppressions for the new errors that this adds to the valgrind
run. It's not clear if it's a legitimate thing that LLVM does that
valgrind doesn't cope with, like many others, but the fact is running
valgrind on a PGO/LTO build doesn't show these errors, so we're not
actually shipping them anyways (but does show _different_ errors that we
don't see on the build the valgrind jobs do)

Differential Revision: https://phabricator.services.mozilla.com/D81016
2020-06-25 22:29:59 +00:00
David Major f776b2f0cc Bug 1647839 - Don't pass -coverage-no-function-names-in-data in clang 11 r=marco
In clang-11 the flag's behavior became the default, and in fact the flag is no longer accepted so we get an unrecognized option error.

Differential Revision: https://phabricator.services.mozilla.com/D81124
2020-06-25 16:24:40 +00:00
Mike Hommey b47ef58c8d Bug 1648271 - Fix configure when setting MOZ_LTO=1 when targeting macOS. r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D80967
2020-06-24 21:51:29 +00:00
Mike Hommey 3437f37ac4 Bug 1647880 - Upgrade cmake to 3.16.3 for toolchain builds. r=firefox-build-system-reviewers,rstewart
This gets us to the same version as the one used on the Debian 10
toolchain docker image.

Differential Revision: https://phabricator.services.mozilla.com/D80818
2020-06-24 15:17:03 +00:00
Nicholas Nethercote 51c5270b67 Bug 1646280 - Improve Rust build docs. r=froydnj
The added material comes from the Oxidation wiki's FAQ and the "Building
Firefox with Rust code" MDN page:
https://wiki.developer.mozilla.org/en-US/docs/Mozilla/Firefox/Building_Firefox_with_Rust_code

Once this commit lands, I will (a) remove the wiki FAQ entries, and (b) replace
the contents of that MDN page with a link to these build docs. There's no point
having overlapping docs, and in-tree is the best place for this information.

This commit also makes the capitalization of sub-headings more consistent.

Differential Revision: https://phabricator.services.mozilla.com/D79956
2020-06-23 05:01:23 +00:00
tkhan b4821a1c8e Bug 1602668 - Enables xorigin iframe mode for mochitest-plain. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D70360
2020-06-22 19:10:30 +00:00
Jonathan Kew 3a6bfefb64 Bug 1533462 - Suppress spurious valgrind errors due to fontconfig's internal caching trickery. r=njn
Differential Revision: https://phabricator.services.mozilla.com/D80169
2020-06-22 08:32:39 +00:00
John Paul Adrian Glaubitz 41f3e19379 Bug 1318905 - build: Add riscv64 as target architecture to mozbuild r=glandium
Adds the basic definitions for riscv64 to mozbuild, allowing to build Spidermonkey.

Differential Revision: https://phabricator.services.mozilla.com/D78623
2020-06-18 07:11:09 +00:00
Mike Hommey eab19f0855 Bug 1643258 - Avoid the use of the __cxa_thread_atexit_impl symbol. r=froydnj
When linking a weak symbol in an object against a library where the
symbol is provided with a version, the final binary get a weak versioned
symbol reference.

It turns out weak versioned symbols still make the dynamic linker need
the symbol version, even if all symbols needed with that version are
weak.

Practically speaking, that means with bug 1634204, we now end up with
a weak versioned symbol reference to __cxa_thread_atexit_impl with
version GLIBC_2.18, and glibcs without the symbol can't fulfil that
version, even though the weak symbol is the only thing we need from that
version.

This means the check_binary changes in bug 1634204 are too
relaxed, so we revert them (although we keep the easier to read
conditions in check_dep_versions).

We also introduce a hack in stdc++compat.cpp (although it's not
technically entirely about libstdc++ compat) so that we avoid the weak
symbol reference while keeping the intended baseline for libstdc++ and
glibc.

Differential Revision: https://phabricator.services.mozilla.com/D79773
2020-06-18 23:45:41 +00:00
Dorel Luca f7cdd7d12e Backed out changeset b707f591bef5 (bug 1643258) for build bustage. CLOSED TREE 2020-06-19 00:26:24 +03:00
Mike Hommey 9d26424253 Bug 1643258 - Avoid the use of the __cxa_thread_atexit_impl symbol. r=froydnj
When linking a weak symbol in an object against a library where the
symbol is provided with a version, the final binary get a weak versioned
symbol reference.

It turns out weak versioned symbols still make the dynamic linker need
the symbol version, even if all symbols needed with that version are
weak.

Practically speaking, that means with bug 1634204, we now end up with
a weak versioned symbol reference to __cxa_thread_atexit_impl with
version GLIBC_2.18, and glibcs without the symbol can't fulfil that
version, even though the weak symbol is the only thing we need from that
version.

This means the check_binary changes in bug 1634204 are too
relaxed, so we revert them (although we keep the easier to read
conditions in check_dep_versions).

We also introduce a hack in stdc++compat.cpp (although it's not
technically entirely about libstdc++ compat) so that we avoid the weak
symbol reference while keeping the intended baseline for libstdc++ and
glibc.

Differential Revision: https://phabricator.services.mozilla.com/D79773
2020-06-18 11:02:43 +00:00
Ricky Stewart 09750d5dab Bug 1646190 - Remove pymake from tree r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D79920
2020-06-18 21:06:32 +00:00
Sylvestre Ledru 25fd29ad52 Bug 1623024 - mozlint: Add pylint to the CI r=linter-reviewers,ahal
Depends on D79076

Differential Revision: https://phabricator.services.mozilla.com/D79099
2020-06-18 20:05:02 +00:00
Sylvestre Ledru 4b7c742212 Bug 1646405 - update the code using pyyaml to use the new path r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D80025
2020-06-18 19:40:28 +00:00
Butkovits Atila 40766bf579 Backed out 2 changesets (bug 1643258) for causing Bug 1646625.
Backed out changeset 4c359d743fb2 (bug 1643258)
Backed out changeset 439eee50f354 (bug 1643258)
2020-06-18 08:56:12 +03:00
Mike Hommey f764089a91 Bug 1643258 - Avoid the use of the __cxa_thread_atexit_impl symbol. r=froydnj
When linking a weak symbol in an object against a library where the
symbol is provided with a version, the final binary gets a weak versioned
symbol reference.

It turns out weak versioned symbols still make the dynamic linker need
the symbol version, even if all symbols needed with that version are
weak.

Practically speaking, that means with bug 1634204, we now end up with
a weak versioned symbol reference to __cxa_thread_atexit_impl with
version GLIBC_2.18, and glibcs without the symbol can't fulfil that
version, even though the weak symbol is the only thing we need from that
version.

This means the check_binary changes in bug 1634204 are too
relaxed, so we revert them (although we keep the easier to read
conditions in check_dep_versions).

We also introduce a hack in stdc++compat.cpp (although it's not
technically entirely about libstdc++ compat) so that we avoid the weak
symbol reference while keeping the intended baseline for libstdc++ and
glibc.

Differential Revision: https://phabricator.services.mozilla.com/D79773
2020-06-17 03:16:08 +00:00
Mike Hommey 6dfdcc363a Bug 1643258 - Disable stdc++ compat on base-toolchain builds. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D79940
2020-06-17 22:28:59 +00:00
David Major 5b95767d8c Bug 1646158 - Fix StringRef conversions in clang-plugin for clang 11 r=static-analysis-reviewers,andi
In adcd026838, conversions from `StringRef` to `std::string` became `explicit`.

The NFC fix would be to wrap the conversions in `std::string(...)` but since these are all short-lived uses for things like string compares, I've refactored a bit to keep them in native form.

Differential Revision: https://phabricator.services.mozilla.com/D79895
2020-06-17 15:56:44 +00:00
David Major 2b811400db Bug 1646158 - Make `DynTypedNodeList` work with clang11 r=static-analysis-reviewers,andi
In 8a81daaa8b, the class `DynTypedNodeList` moved from `ASTContext` to global level.

Differential Revision: https://phabricator.services.mozilla.com/D79886
2020-06-17 15:56:44 +00:00
David Major 36940c61ca Bug 1646158 - Make nested template checks work with clang 11 r=static-analysis-reviewers,andi
Sometime during clang 11 (I don't have the exact commit handy), the display of nested templates changed from `Foo<Bar<X> >` to `Foo<Bar<X>>`.

Differential Revision: https://phabricator.services.mozilla.com/D79894
2020-06-17 15:56:11 +00:00
Tom Ritter 08b3cf1f4f Bug 1644852 - Add an external/CustomAttributes.inc r=andi
This will allow us to define CustomAttributes for external checks.

Differential Revision: https://phabricator.services.mozilla.com/D79179
2020-06-10 14:28:57 -05:00
Razvan Maries 1d39accaeb Backed out changeset 5c7f4c2de55b (bug 1643258) for build bustages. CLOSED TREE 2020-06-17 01:53:05 +03:00
Razvan Maries e29397a370 Backed out changeset 722854464579 (bug 1623520) for multiple failures on Win10 x64 asan. CLOSED TREE 2020-06-17 01:49:36 +03:00
Mike Hommey 80bcbff51e Bug 1643258 - Avoid the use of the __cxa_thread_atexit_impl symbol. r=froydnj
When linking a weak symbol in an object against a library where the
symbol is provided with a version, the final binary gets a weak versioned
symbol reference.

It turns out weak versioned symbols still make the dynamic linker need
the symbol version, even if all symbols needed with that version are
weak.

Practically speaking, that means with bug 1634204, we now end up with
a weak versioned symbol reference to __cxa_thread_atexit_impl with
version GLIBC_2.18, and glibcs without the symbol can't fulfil that
version, even though the weak symbol is the only thing we need from that
version.

This means the check_binary changes in bug 1634204 are too
relaxed, so we revert them (although we keep the easier to read
conditions in check_dep_versions).

We also introduce a hack in stdc++compat.cpp (although it's not
technically entirely about libstdc++ compat) so that we avoid the weak
symbol reference while keeping the intended baseline for libstdc++ and
glibc.

Differential Revision: https://phabricator.services.mozilla.com/D79773
2020-06-16 20:44:48 +00:00
Mike Hommey a0075e4138 Bug 1623520 - Switch Windows asan and fuzzing builds to cross-builds. r=decoder
Differential Revision: https://phabricator.services.mozilla.com/D79417
2020-06-12 13:50:26 +00:00
Steve Fink 14bc264f47 Bug 1642121 - Remove directory dependence of GDB init files. r=nalexander
I wrote this patch to address two problems:

  1. if I do `mach run` from a directory other than $topsrcdir, $objdir, or
     $objdir/dist/bin, then .gdbinit will not be loaded.
  2. Debugging the firefox binary will never load the JS prettyprinters in any
     case.

I believe this patch fixes other problems as well, such as .gdbinit_python not being found, and the gdbpp pretty-printers not getting loaded in various situations.

The main changes of this patch are:

  1. Move .gdbinit into build/ (and $objdir/build/) to delay it from getting
     loaded until the search path is configured.
  2. Move libxul.so-gdb.py into the correct directory.
  3. Use either libxul.so-gdb.py or js-gdb.py to configure the correct
     search path then load .gdbinit, and have .gdbinit load all of the
     pretty-printers (Gecko and JS).
  4. Use a single preprocessed file to configure the source directory. Use
     relative paths within the objdir for everything else.

Differential Revision: https://phabricator.services.mozilla.com/D77589
2020-06-16 15:45:43 +00:00
Nick Alexander 571c7fd42e Bug 1644046 - Get Sonatype nexus with fetch task rather than when building `android-build` image. r=froydnj
This brings the `android-build` image very close to other build
images, paving the way for it to be folded in completely.  It also
makes us more resilient in the face of upstream service interruptions.

Differential Revision: https://phabricator.services.mozilla.com/D78945
2020-06-15 16:29:30 +00:00
Henri Sivonen d5b9be12ce Bug 1603712 - Remove intl.charset.detector.ng.enabled pref and resulting dead code. r=Gijs,fluent-reviewers,valentin,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D79101
2020-06-15 15:32:21 +00:00
Noemi Erli e73a8dbb70 Backed out changeset df0d6b993ad6 (bug 1642121) for causing build bustages 2020-06-15 06:44:42 +03:00
Steve Fink 7fc47d901c Bug 1642121 - Remove directory dependence of GDB init files. r=nalexander
I wrote this patch to address two problems:

  1. if I do `mach run` from a directory other than $topsrcdir, $objdir, or
     $objdir/dist/bin, then .gdbinit will not be loaded.
  2. Debugging the firefox binary will never load the JS prettyprinters in any
     case.

I believe this patch fixes other problems as well, such as .gdbinit_python not being found, and the gdbpp pretty-printers not getting loaded in various situations.

The main changes of this patch are:

  1. Move .gdbinit into build/ (and $objdir/build/) to delay it from getting
     loaded until the search path is configured.
  2. Move libxul.so-gdb.py into the correct directory.
  3. Use either libxul.so-gdb.py or js-gdb.py to configure the correct
     search path then load .gdbinit, and have .gdbinit load all of the
     pretty-printers (Gecko and JS).
  4. Use a single preprocessed file to configure the source directory. Use
     relative paths within the objdir for everything else.

Differential Revision: https://phabricator.services.mozilla.com/D77589
2020-06-15 03:27:49 +00:00
Mitchell Hentges 0a6339ac68 Bug 1632429: remove redundant enum library r=glandium,jgraham
Differential Revision: https://phabricator.services.mozilla.com/D78345
2020-06-12 13:21:38 +00:00
Mitchell Hentges 079ded8c2d Bug 1636251: document mach error reporting r=rstewart
Differential Revision: https://phabricator.services.mozilla.com/D78409
2020-06-11 20:38:18 +00:00
Mitchell Hentges 1f5b9307c3 Bug 1636251: Patch Sentry events to ensure a raw username isn't sent to Sentry r=rstewart
To avoid sending identifying information, common absolute paths are patched with placeholder values. For example, devs
may place their Firefox repository within their home dir, so absolute paths are doctored to be prefixed with
"<topsrcdir"> instead.

Additionally, any paths including the user's home directory are patched to instead be a relate path from "~".

Differential Revision: https://phabricator.services.mozilla.com/D78962
2020-06-11 21:35:05 +00:00
Mitchell Hentges 5b5e1ea7b9 Bug 1636251: report |./mach| errors with Sentry r=rstewart
These errors are reported to the "mach" project here:
https://sentry.prod.mozaws.net/operations/mach/

Should only report exceptions caused by a failure in `mach` or its subcommands. Build/test/etc failures
should not be sent to Sentry.

Depends on D74737

Differential Revision: https://phabricator.services.mozilla.com/D74738
2020-06-11 20:38:04 +00:00
Dorel Luca 27321e1f00 Backed out 3 changesets (bug 1636251) for phyton failures in python/mach/mach/test/test_conditions.py. CLOSED TREE
Backed out changeset a033282e742d (bug 1636251)
Backed out changeset ce8cb6373f88 (bug 1636251)
Backed out changeset ae78c0a50575 (bug 1636251)
2020-06-11 19:49:44 +03:00
Mitchell Hentges 34d2e43294 Bug 1636251: document mach error reporting r=rstewart
Differential Revision: https://phabricator.services.mozilla.com/D78409
2020-06-10 19:50:59 +00:00
Mitchell Hentges 2b514aa148 Bug 1636251: Patch Sentry events to ensure a raw username isn't sent to Sentry r=rstewart
To avoid sending identifying information, common absolute paths are patched with placeholder values. For example, devs
may place their Firefox repository within their home dir, so absolute paths are doctored to be prefixed with
"<topsrcdir"> instead.

Additionally, any paths including the user's home directory are patched to instead be a relate path from "~".

Differential Revision: https://phabricator.services.mozilla.com/D78962
2020-06-10 19:50:57 +00:00
Mitchell Hentges 47c53b361d Bug 1636251: report |./mach| errors with Sentry r=rstewart
These errors are reported to the "mach" project here:
https://sentry.prod.mozaws.net/operations/mach/

Should only report exceptions caused by a failure in `mach` or its subcommands. Build/test/etc failures
should not be sent to Sentry.

Depends on D74737

Differential Revision: https://phabricator.services.mozilla.com/D74738
2020-06-10 19:50:55 +00:00
Tom Ritter 47fe961b00 Bug 1637845 - Move all mach vendor files to a subdirectory r=glob
Differential Revision: https://phabricator.services.mozilla.com/D75693
2020-06-10 14:38:57 +00:00
Mitchell Hentges 4183da479b Bug 1621960: upload_generated_sources uses py3-compatible import r=rstewart
Differential Revision: https://phabricator.services.mozilla.com/D79155
2020-06-10 16:13:05 +00:00
Mike Hommey 70653120cb Bug 1622963 - Require python 3.6 for the build system. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D77754
2020-06-09 21:22:32 +00:00
Mitchell Hentges c28298cb71 Bug 1621960: Improves genpgocert compatibility with Python 3 r=rstewart
Depends on D77965

Differential Revision: https://phabricator.services.mozilla.com/D77966
2020-06-09 18:48:19 +00:00
Noemi Erli 9017f973e3 Backed out 4 changesets (bug 1621960) for causing Android bustages CLOSED TREE
Backed out changeset f36a95234a5f (bug 1621960)
Backed out changeset 0e4661c9061d (bug 1621960)
Backed out changeset 3e2cbe4dd777 (bug 1621960)
Backed out changeset d7eb101e5df7 (bug 1621960)
2020-06-09 20:59:26 +03:00
Mitchell Hentges 1c169fac1c Bug 1621960: Improves genpgocert compatibility with Python 3 r=rstewart
Depends on D77965

Differential Revision: https://phabricator.services.mozilla.com/D77966
2020-06-09 16:44:40 +00:00
Mitchell Hentges ed90a04ad1 Bug 1632874: |mach bootstrap| should write mozconfig file if it doesn't exist r=rstewart
Rather than always printing instructions at the end of the bootstrap phase, we will now create a mozconfig
file if one doesn't exist and there's configuration to be written.

Differential Revision: https://phabricator.services.mozilla.com/D78417
2020-06-08 19:36:56 +00:00
Sylvestre Ledru be715d2f73 Bug 1644123 - mach doc: Provides the full path to logo and favicon + update of the build sparse config r=firefox-source-docs-reviewers,ahal
Differential Revision: https://phabricator.services.mozilla.com/D78671
2020-06-08 19:06:44 +00:00
Jan de Mooij 518531d1aa Bug 1642893 - Don't build NSPR by default for standalone JS builds. r=glandium
For standalone JS builds there are three possibilities: no-NSPR (the default),
build NSPR, or use system NSPR.

This patch makes no-NSPR the default again when not overridden by --enable-nspr-build
or --with-system-nspr. This was likely regressed by bug 1641775.

Differential Revision: https://phabricator.services.mozilla.com/D78001
2020-06-05 07:52:37 +00:00
Mitchell Hentges e8ffc3e0cb Bug 1641806: configure should look for libclang >= 5.0 r=rstewart
clang_getAddressSpace was found as a clang 5.0+ API by comparing the "tools/libclang/libclang.exports" files in the clang source code.
"clang_getAddressSpace" exists for 5.0.0 and 10.0.0, but not for 4.0.1.

Differential Revision: https://phabricator.services.mozilla.com/D78374
2020-06-04 20:15:20 +00:00
Makoto Kato 598e50d2c3 Bug 1642658 - Android SDK/NDK root should replace file separator with '/'. r=froydnj
When not using --with-android-ndk, NDK root is `~/.mozbuild/android-ndk-r20`.
When building this NDK path, since we use `os.path.join`, so it may include "\"
as file separator on Windows host. Then some options such as `-gcc-toolchain`
become invalid path (ex. `C:/users/makoto.mozbuildandroid-ndk-r20/`..).

So we should replace file separator with "/".

Differential Revision: https://phabricator.services.mozilla.com/D77820
2020-06-03 15:32:30 +00:00
John Paul Adrian Glaubitz e1b5790f4d Bug 1325771 - build: Add m68k as target architecture to mozbuild r=glandium
Adds the basic definitions for m68k to mozbuild, allowing to build Spidermonkey.

Differential Revision: https://phabricator.services.mozilla.com/D77285
2020-06-03 18:30:50 +00:00
Coroiu Cristina 3cce853af2 Backed out 4 changesets (bug 1641291) for build bustages and SM failures on a CLOSED TREE
Backed out changeset 9c0a44614576 (bug 1641291)
Backed out changeset 0dcf604b880e (bug 1641291)
Backed out changeset d830bee40b5c (bug 1641291)
Backed out changeset fe38c82c2dad (bug 1641291)
2020-06-03 22:09:52 +03:00
Nick Alexander 916d838f9c Bug 1641291 - Part 1: Allow cross-compiling from host macOS -> Windows target. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D77117
2020-06-03 18:18:15 +00:00
Mitchell Hentges 291e3e141e Bug 1632429: "enum34" and "enum" virtualenv packages are now only available to the python2 env r=rstewart
When running |mach python| with python 3, it was failing when importing "enum", since it would get the python 2 backport. By making these packages only
available to python 2, we allow python 3 to import standard library packages properly.

Differential Revision: https://phabricator.services.mozilla.com/D77960
2020-06-03 18:15:38 +00:00
Dorel Luca 0154691eae Backed out 5 changesets (bug 1325771) for Spidermonkey failures and build bustage in build/src/mfbt/tests/TestCompactPair.cpp. CLOSED TREE
Backed out changeset ace40545b46c (bug 1325771)
Backed out changeset b3e0fb410a1c (bug 1325771)
Backed out changeset d69ac62c063f (bug 1325771)
Backed out changeset 24e6299e112d (bug 1325771)
Backed out changeset 393a6ff847ce (bug 1325771)
2020-06-03 20:23:08 +03:00
John Paul Adrian Glaubitz 25481ca65b Bug 1325771 - build: Add m68k as target architecture to mozbuild r=glandium
Adds the basic definitions for m68k to mozbuild, allowing to build Spidermonkey.

Differential Revision: https://phabricator.services.mozilla.com/D77285
2020-06-02 07:00:48 +00:00
Bogdan Tara 979c77d94e Backed out changeset 83ee79caab92 (bug 1622963) for python related bustages CLOSED TREE 2020-06-03 10:23:57 +03:00
Mike Hommey 323ea73e5a Bug 1622963 - Require python 3.6 for the build system. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D77754
2020-06-03 02:16:48 +00:00
Mike Hommey 98b889cf83 Bug 1622963 - Install python 3.6 in build docker images. CLOSED TREE
Differential Revision: https://phabricator.services.mozilla.com/D77753
2020-06-02 03:51:14 +00:00
Ricky Stewart c3ad21f99d Bug 1642015 - Don't dump a raw bytestring to the terminal in RunCbindgen.py r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D77556
2020-06-01 15:50:29 +00:00
Mike Hommey 038f9f8138 Bug 1641790 - Move --with-system-nss to python configure. r=firefox-build-system-reviewers,rstewart
Version of NSS >= 3.27 have a pkg-config file. We're now requiring 3.53,
so while moving, just use pkg-config, which is simpler.

The old-configure check that rejected some untested platforms for
in-tree NSS is actually rejecting none: the accepted platforms cover all
the supported ones, so we remove that check.

And because building with system NSS without system NSPR doesn't make
sense, imply the latter when the former is used.

Differential Revision: https://phabricator.services.mozilla.com/D77428
2020-05-29 17:02:09 +00:00
Mike Hommey 9088528947 Bug 1635764 - Move --with-system-icu and --with-intl-api to python configure. r=firefox-build-system-reviewers,rstewart
At the same time, because it's now simpler to do so, set the right data
file name for big-endians, even though we don't have or produce it
(bug #1264836). Also remove USE_ICU, which is redundant with
JS_HAS_INTL_API, and actively break the build at configure time when
using --without-intl-api with Firefox because this hasn't actually
worked for close to 3 years (since bug 1402048).

Differential Revision: https://phabricator.services.mozilla.com/D77416
2020-05-29 21:29:52 +00:00
Mike Hommey 8a9448c75b Bug 1641785 - Move --with-jitreport-granularity to python configure. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D77415
2020-05-29 12:17:26 +00:00
Mike Hommey 623e778ff2 Bug 1641786 - Move --with-debug-label to python configure. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D77414
2020-05-29 12:17:24 +00:00
Mike Hommey 313131917e Bug 1641775 - Move --with-system-nspr to python configure. r=firefox-build-system-reviewers,rstewart
Versions of NSPR >= 4.10 come with a pkg-config file. We currently
depend on 4.9.2 for spidermonkey, but much more recent versions for
Firefox. 4.10 is less than a year newer than 4.9.2, and 4.10 is 7 years
old, so bumping the requirement to 4.10 is not really a big deal.

With the use of pkg-config, --with-nspr-cflags and --with-nspr-libs are
not needed.

None of the AC_TRY_COMPILE tests were any useful because
PR_STATIC_ASSERT and PR_UINT64 have been when we look for them since
4.8.6 and 4.9 respectively.

Differential Revision: https://phabricator.services.mozilla.com/D77412
2020-05-29 17:11:27 +00:00
Mike Hommey eba22e2279 Bug 1641760 - Move --with-system-zlib to python configure. r=froydnj
As all versions of zlib >= 1.2.3.1 have a pkg-config file, and 1.2.3.1
is close to 14 years old, let's drop 1.2.3 and just use pkg-config, which
simplifies what we need to do dramatically.

Differential Revision: https://phabricator.services.mozilla.com/D77404
2020-05-29 20:59:00 +00:00
Axel Hecht 1343d506c0 Bug 1641184, use only the merge dir for repacks, r=nalexander
l10n-merge creates a full merge dir for a while now, let's
simplify the build logic to only read from that directory
during repacks and langpacks.

Differential Revision: https://phabricator.services.mozilla.com/D77023
2020-05-27 17:04:06 +00:00
Cameron McCormack 4d86697e24 Bug 1641108 - Add perf-reftest-singleton for bug 1640545 changes. r=emilio,perftest-reviewers,sparky
Differential Revision: https://phabricator.services.mozilla.com/D76966
2020-05-27 12:01:53 +00:00