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

6761 Коммитов

Автор SHA1 Сообщение Дата
Mike Hommey cffd7e8396 Bug 1426555 - Move --enable-stdcxx-compat to python configure. r=chmanchester
At the same time, we make it actually do something on spidermonkey
builds. We also add an environment variable alternative, that we use
in mozconfig.stdcxx, allowing for mozconfig.no-compile to override it
and avoid configure failures on e.g. artifact builds.

--HG--
extra : rebase_source : b68d362025e0c99f9184a03391c652ec2c9357ad
2017-12-21 11:13:08 +09:00
Mike Hommey ec8fa73867 Bug 1426555 - Allow to add host compiler flags from python configure. r=chmanchester
Bug 1325632 added some facility to add target compiler flags. This
change extends it to add allow adding host compiler flags as well.

--HG--
extra : rebase_source : 424b405a1d8f9a4778ff75c3308c9622f050e194
2017-12-21 11:11:22 +09:00
Csoregi Natalia 1dcea46201 Backed out 2 changesets (bug 1401647) for Spidermonkey Build Bustage on Linux x64. r=backout on a CLOSED TREE
Backed out changeset b5c9bb05168d (bug 1401647)
Backed out changeset 0542716bb901 (bug 1401647)
2017-12-21 14:14:26 +02:00
Ted Mielczarek 67204b6593 bug 1401647 - use a 64-bit Rust toolchain for win32 builds. r=rillian
We currently use a 32-bit Rust toolchain for win32 builds, but this can lead
to OOM situations. This patch makes win32 builds use a 64-bit Rust toolchain,
which requires a little bit of extra configuration because rustc needs to
be able to find a link.exe that produces 64-bit binaries for building
things like build scripts, which are host binaries.

We will now generate a batch file that sets LIB to the paths to 64-bit
libraries and invokes the x64-targeting link.exe, and add a section to the
.cargo/config file to instruct cargo to use that batch file as the linker
when producing 64-bit binaries.

MozReview-Commit-ID: 9vKBbm7Gvra

--HG--
extra : rebase_source : 366dd966cafe4f07b8e59fc170d2db2dada32627
2017-12-14 10:20:33 -06:00
Mike Hommey e45c2bc4bc Bug 1426283 - Use nproc for the number of parallel jobs to run when building gcc. r=gps
While in the vicinity.

--HG--
extra : rebase_source : 8d885ff5fd4fa124a08326c0ca002a49ef559e57
2017-12-20 14:39:26 +09:00
Mike Hommey d61456f499 Bug 1426283 - Work around bug 1409276. r=gps
Both the cc crate and the rust compiler may want to use "cc", which,
on automation, points to the system GCC compiler instead of ours.

As a workaround, we add a cc symbolic link in the GCC toolchain artifact
so that, as long as the GCC toolchain artifact's bin directory is in
$PATH early enough, it's picked over /usr/bin/cc.

--HG--
extra : rebase_source : 53cacf8a750539706a484218e168c8c9e0ba49a6
2017-12-20 10:32:36 +09:00
Mike Hommey fbaf337e4b Bug 1426322 - Separate gcc and mingw32-gcc. r=gps
The "contract" for toolchains is that extracting foo.tar.xz creates a
directory named foo/. That is however not true for mingw32.tar.xz, which
extracts into gcc/, possibly overwriting files from the gcc.tar.xz
archive (which is also used for mingw builds, for the host part).

This is also not true for nsis.tar.xz, but it reportedly has problems
when it's not in the same directory as mingw32.

But mingw32 doesn't actually need to be mixed with gcc, so it's better
to separate them as they are supposed to be.

--HG--
extra : rebase_source : 30d90af64459bbb31bc076e48f3c661fa9cd4a79
2017-12-20 13:46:53 +09:00
David Major 18a5250f02 Bug 1425906: Rename LINK to LINKER throughout the build system. r=glandium
Windows linkers give special meaning to getenv("LINK"), which makes `export LINK=...` in mozconfigs do unexpected things.
2017-12-20 09:07:46 -05:00
Ryan VanderMeulen 5426c586b0 Bug 1425984 - Backport LLVM revision 318309 to fix clang-cl bustage with VS2017 15.5. r=dmajor 2017-12-19 14:16:31 -05:00
Nathan Froyd de9853b2ff Bug 1425035 - move --enable-ui-locale to moz.configure; r=gps
We need MOZ_UI_LOCALE even when building the JS shell so
config/config.mk variable assignments don't run into issues.  But it
doesn't make any sense to configure a UI locale for the JS shell.  So
make --enable-ui-locale a normal `option`, but give it a `default`,
which is the value shell-only builds will always see.

--HG--
extra : amend_source : 047759dd6ec446d9d6f8f5992ed9cf6628ce859e
2017-12-18 14:21:26 -08:00
Nathan Froyd cd85ab8af7 Bug 1422734 - move --enable-small-chunk-size to moz.configure; r=chmanchester 2017-12-03 13:44:55 -05:00
Aki Sasaki 3c0052131d bug 1423081 - add version.txt to decision sparse checkout. r=callek
MozReview-Commit-ID: 46R2HBbiiLg

--HG--
extra : rebase_source : 4f75c53afcb50a9804fdf5a38663c5fe715f7d60
extra : histedit_source : ff7342b3845c7e6dc9e5dda05399fdccd4fab4fa
2017-12-05 19:36:13 -08:00
Cosmin Sabou b0098afaea Merge mozilla-inbound to mozilla-central. r=merge a=merge 2017-12-13 12:14:29 +02:00
Nathan Froyd 6d4a891a5f Bug 1422859 - move MOZILLA_*VERSION setting into moz.configure; r=chmanchester
This has the virtue of not executing python three times during configure
just to read the same value of milestone.txt and munge it.  We can also
remove milestone.py as a happy side effect, so all the milestone
computations can be done in init.configure.
2017-12-04 11:19:25 -05:00
Mike Hommey 8bb6a1a03e Bug 1423821 - Add a consistency check for section offsets to elfhack. r=froydnj
lld is being too smart for its own good, and places non-relocatable data
right after the program headers, which prevents the program headers from
growing. But elfhack wasn't checking for that, so happily placed the
non-relocatable data at its non-relocated location, overwriting the last
item of the program headers.

--HG--
extra : rebase_source : 6f26d475f0a19d88ddf21399dbce8ceac62b492d
2017-12-07 15:34:58 +09:00
Mike Hommey ded54a5e92 Bug 1423813 - Properly handle elfhack -r after bug 1385783. r=froydnj
Bug 1385783 changed things such that the two elfhack sections are not
adjacent anymore. They can even be in different segments in some cases,
but the undo code doesn't know how to actually handle that case.

So for now, allow non adjacent sections, but still verify that they are
in the same segment.

--HG--
extra : rebase_source : da95ef7df19eeea8dfd07b24f22e7bee18939b69
2017-12-07 15:22:22 +09:00
Tom Prince 1d74db87ce Bug 1424651: Remove unused SOCORRO_SYMBOL_UPLOAD_TOKEN_FILE mozconfig variable; r=ted.mielczarek
MozReview-Commit-ID: CkIg3fiwp1z

--HG--
extra : rebase_source : 5a4a50c8feb477a9b50c30e35b72a316b1f1bc8c
2017-12-10 23:05:05 -07:00
Dorel Luca 2f271a1136 Backed out 4 changesets (bug 1424651) as requested by tomprice r=backout on a CLOSED TREE
Backed out changeset 10ebf78f32bb (bug 1424651)
Backed out changeset 746d96792d18 (bug 1424651)
Backed out changeset 6038fb7b458c (bug 1424651)
Backed out changeset 189fd4f1df41 (bug 1424651)
2017-12-12 06:33:18 +02:00
Tom Prince 4dfc8f7a46 Bug 1424651: Remove unused SOCORRO_SYMBOL_UPLOAD_TOKEN_FILE mozconfig variable; r=ted.mielczarek
MozReview-Commit-ID: CkIg3fiwp1z

--HG--
extra : rebase_source : 475e2d8888ff4b93efa9886581de9d145b51c51c
2017-12-10 23:05:05 -07:00
Mike Hommey 2fc6190633 Bug 1423802 - Remove the dummy fallible library. r=nalexander
Bug 1423803 was attempting to remove the fallible library but didn't do
so on Android because of this bug. We can now fully retire it.

--HG--
extra : rebase_source : de38872a08d24768eadfbe81652cfcd6aa7aa041
2017-12-07 12:16:50 +09:00
Mike Hommey e0bbb4aa9e Bug 1423802 - Handle stdc++compat and STLPORT_LIBS at the emitter level. r=nalexander
Bug 1256642 introduced magic at the emitter level to determine whether a
binary contains C++ sources and should be linked with the C compiler or
the C++ compiler.

Unfortunately, the Binary() moz.build template always adds C++ OS
libraries on Android (through STLPORT_LIBS), and C++ libraries on Linux
(stdc++compat).

The latter only ends up forcing every Binary() to be linked with the C++
linker, which is unfortunate, but doesn't cause much problems. The
former, however, involving OS libraries, the magic from bug 1256642
doesn't kick in, so we end up trying to link C++ OS libraries with the C
linker. Which ends up failing, because the libraries in STLPORT_LIBS
require -lm, which, while it's added by the C++ compiler when linking,
is not when the linkage is driven by the C compiler.

Because the fallible library, linked to all GeckoBinary()s is a C++
library, we still ended up linking with the C++ compiler on Android, so
this wasn't actually causing any problem... until I tried to remove that
fallible library in bug 1423803.

Anyways, the core problem is that moz.build evaluation is happening too
early to know whether any C++ sources are being linked together, so
there is no way the Binary() template can do the right thing. So this
change moves the logic to the emitter.

This also changes the type of STLPORT_LIBS to a list.

--HG--
extra : rebase_source : a70ddf7a132f94dc10e7e1db94ae80fb8d7a269f
2017-12-07 12:15:32 +09:00
Ted Mielczarek 22ef01fe2d bug 1423882 - Define and use a sparse profile for upload-generated-sources tasks. r=gps
upload-generated-sources tasks simply use `mach python` to run an in-tree
script, so they can save time by using a sparse profile.

MozReview-Commit-ID: LbXlibOP34W

--HG--
extra : rebase_source : c6b580b15671edeb700d191f651c79c6d6423394
2017-12-07 06:51:25 -05:00
Ralph Giles e22361a5ac Bug 1421097 - Require at least Rust 1.22.1. r=ted
Bump the minimum required Rust version now that 1.22.1
has been in stable release for more than two weeks.

Version 1.22.0 works fine everywhere but macOS 10.13,
but 1.22.1 was released the same day, so it's no harder
to upgrade to.

Also update the base-toolchain builds to ensure we
continue to build with this version.

MozReview-Commit-ID: GlRWUNE07G0

--HG--
extra : rebase_source : f37585db5633e6e64b02bc94c2516b5ab18c3e15
2017-12-07 21:08:53 -08:00
Ted Mielczarek 8b7140ce04 bug 1424323 - remove MOZ_AUTOMATION_UPLOAD_SYMBOLS from in-tree mozconfigs. r=rillian
With all of our builds in Taskcluster now, we should never be uploading
symbols from build tasks. Unfortunately Windows builds were still doing so.
This patch removes MOZ_AUTOMATION_UPLOAD_SYMBOLS from all the in-tree
mozconfigs and a few other places so that it should always default off
(per moz-automation.mk). The rest of the uploadsymbols bits will be
removed once Thunderbird fixes their automation.

This patch was mostly autogenerated by running:
rg --files-with-matches UPLOAD_SYMBOLS browser/config/mozconfigs/ mobile/android/config/mozconfigs/ | xargs sed -ri '/.*UPLOAD_SYMBOLS.*/d'
sed -ri '/.*UPLOAD_SYMBOLS.*/d' build/unix/mozconfig.linux build/mozconfig.win-common build/macosx/local-mozconfig.common build/mozconfig.automation

Then mobile/android/config/mozconfigs/common and
taskcluster/scripts/builder/build-linux.sh were hand-edited.

MozReview-Commit-ID: Cy8kSEodSg4

--HG--
extra : rebase_source : 01caf1651b4eb428313e1f371aa585f8f34c4151
2017-12-08 13:50:17 -05:00
Ted Mielczarek 5d703076d0 bug 1422740 - Define and use a sparse profile for upload-symbols tasks. r=gps
The upload-symbols task simply runs an in-tree Python script with
`mach python` so using a sparse profile will make this a bit faster.

MozReview-Commit-ID: 5HzwMf1FZLU

--HG--
extra : rebase_source : 74046b7917ee2e2ea7be0ec24f777f5fe819ef58
2017-12-07 06:08:42 -05:00
Sylvestre Ledru 4591d82b23 Bug 1394734 - Replace CONFIG['CLANG*'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: HbF5oT5HW6f

--HG--
extra : rebase_source : eca479b6ae4bff7f600d1cdb39e11ac2057e4e79
2017-12-07 22:09:38 +01:00
Sylvestre Ledru 9bfe27d903 Bug 1394734 - Replace CONFIG['GNU_C*'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: 7duJk2gSd4m

--HG--
extra : rebase_source : 7312fe276e561e8c034a5f6749774ae812727f9c
2017-12-07 22:09:15 +01:00
Cosmin Sabou c3a26ac81a Backed out changeset 1ee72d1a9430 (bug 1418052) for Linux x64 asan build bustages on /builds/worker/workspace/build/src/config/recurse.mk:32 r=backout on a CLOSED TREE 2017-12-08 13:44:13 +02:00
Tom Ritter 45ec0ac30c Bug 1418052 Correctly process hardening flags for ASAN, --disable-hardening, and --disable-optimize r=decoder,glandium
Will also address Bug 1377553 and part of Bug 1419607

MozReview-Commit-ID: AUCqBxEGpAl

--HG--
extra : rebase_source : f7582d7089f0f4582a02aeaef090dc0701df994d
2017-11-20 22:20:56 -06:00
Cosmin Sabou c191e25cf5 Merge mozilla-inbound to mozilla-central r=merge a=merge 2017-12-08 11:56:44 +02:00
David Major 8ca7c22416 Bug 1423915 - Use common-win64 mozconfig on all win64 builds. r=nalexander 2017-12-07 13:48:38 -05:00
Nick Alexander 2341c27f8f Bug 1417232 - Post: Add gradle.configure to android-* tasks. r=ted.mielczarek
With Gradle integration centralized in gradle.configure, changing
these integration points will need to trigger the android-* tasks.

MozReview-Commit-ID: DuOuW1RIgCh

--HG--
extra : rebase_source : a3f0a76b1ae6b3cd952271782f9d0c2463b704e0
2017-11-14 10:15:30 -08:00
shindli 53c3b17b09 Backed out 6 changesets (bug 1417232) for failing in /python/mozbuild/mozbuild/test/configure/lint.py::Lint::test_mobile_android r=backout on a CLOSED TREE
Backed out changeset 06e72cdd94a5 (bug 1417232)
Backed out changeset 036308b8fe6b (bug 1417232)
Backed out changeset bb63e12fea6f (bug 1417232)
Backed out changeset d0a9d2d4c5b7 (bug 1417232)
Backed out changeset b613dde03d99 (bug 1417232)
Backed out changeset 8699e19b02e5 (bug 1417232)
2017-12-08 01:25:05 +02:00
Nick Alexander e190805a01 Bug 1417232 - Post: Add gradle.configure to android-* tasks. r=ted.mielczarek
With Gradle integration centralized in gradle.configure, changing
these integration points will need to trigger the android-* tasks.

MozReview-Commit-ID: DuOuW1RIgCh

--HG--
extra : rebase_source : 9aecfab8a8ce41441fb4c25021b14263d9c115c2
2017-11-14 10:15:30 -08:00
Bogdan Tara 71dd57ba46 Merge mozilla central to autoland. r=merge a=merge on a CLOSED TREE 2017-12-07 15:54:19 +02:00
Bogdan Tara 97aeaa6e1f Merge mozilla-central to autoland. r=merge a=merge on a CLOSED TREE 2017-12-07 12:59:54 +02:00
Julian Hector 378f6d9cfb Bug 1398874 - Add static analysis to reject ParamTraits specializations for enum types. r=mystor 2017-12-05 10:26:41 -05:00
Mike Hommey abab5abf88 Bug 1423803 - Turn mozilla::fallible into an alias for std::nothrow. r=njn
The std::nothrow variant of operator new is effectively a fallible
operator new. It is used in third party code.

The duplication with our own fallible operator new is unfortunate, and
we can reduce it by making one an alias of the other.

We keep the fallible library as a dummy on Android because bug 1423802
induces some linking problems.

--HG--
extra : rebase_source : d7b915aaafde40057e87b7ad4bbd82d348e4f12d
2017-12-07 11:32:29 +09:00
Tim Taubert 91a23b2116 Bug 1421723 - Allow localhost as appId for U2F r=jcj
Reviewers: jcj

Reviewed By: jcj

Bug #: 1421723

Differential Revision: https://phabricator.services.mozilla.com/D321
2017-12-06 16:28:20 +01:00
Ryan VanderMeulen ecad46fcc0 Bug 1423307 - Update clang-cl builds to LLVM revision 317840. r=ted
--HG--
extra : histedit_source : 17e273e956a29232fd7b6e262df8ae939216f668
2017-12-06 20:37:13 -05:00
Gurzau Raul f5f1c3f294 Merge inbound to mozilla-central r=merge a=merge 2017-12-06 11:53:55 +02:00
Mike Hommey 566d3d62b1 Bug 1423094 - Remove the msvcrt argument to GeckoProgram. r=gps
The last use in gecko was removed in the previous change, and the only
use in comm-central should be trivial to remove. It's not worth the
extra complexity to keep this argument.

--HG--
extra : rebase_source : 8576316190bf58476b7eb262deae4c972ea3dc2f
2017-12-05 15:36:52 +09:00
Andrew Halberstadt 0e697ce235 Bug 1422302 - Create python/mozterm for sharing terminal blessings across modules r=gps
This is a new module that will provide a place to store some common
abstractions around the 'blessings' module. The main entrypoint is:

    from mozterm import Terminal
    term = Terminal()

If blessings is available, this will return a blessings.Terminal()
object. If it isn't available, or something went wrong on import,
this will return a NullTerminal() object, which is a drop-in
replacement that does no formatting.

MozReview-Commit-ID: 6c63svm4tM5

--HG--
extra : rebase_source : 9ab221774d92a418d9b098d79bb2c88f75d937f8
2017-12-04 09:38:24 -05:00
David Keeler 0bfa8aad3f bug 1421816 - (1/2) add cbor2 library r=ted
This library will be used to create test COSE signatures for the new COSE add-on
signature verification implementation.

MozReview-Commit-ID: KshKHwusT5h

--HG--
extra : rebase_source : 22d65622a77afc93b756829c8ffb4f37101dad26
extra : histedit_source : 869b9b65bdf201a027914a8127d28e5e9baf4d33
2017-11-29 10:57:37 -08:00
Bogdan Tara ebe0a1a20c Merge inbound to mozilla-central r=merge a=merge 2017-12-04 22:20:49 +02:00
Nathan Froyd ec3249906a Bug 1422607 - move PREPROCESS_OPTION to moz.configure; r=chmanchester 2017-12-04 08:14:06 -05:00
Nathan Froyd 3a307d4ebb Bug 1422540 - move --enable-gczeal to moz.configure; r=nalexander 2017-12-03 13:40:03 -05:00
Nathan Froyd 609fb452b4 Bug 1422380 - move --enable-jitspew to moz.configure; r=nalexander 2017-12-02 13:43:40 -05:00
Nathan Froyd 01a91d775d Bug 1421792 - move --enable-trace-logging to moz.configure; r=nalexander 2017-12-02 13:43:41 -05:00
Nathan Froyd e511fa1e4b Backout f9231cda92d8 (bug 1421792) on suspicion of causing inscrutable moz.configure lint errors; r=bustage
Do this on a CLOSED TREE, of course.
2017-12-01 22:04:58 -05:00