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

7154 Коммитов

Автор SHA1 Сообщение Дата
shindli a5abf843f8 Merge inbound to mozilla-central. a=merge 2018-02-08 12:04:26 +02:00
Jeff Walden 0e77ce073b Bug 1435484 - Split the integer-overflow blacklist into two blacklists, one for signed integer overflow and one for unsigned integer overflow, and rename both configure flags to be clearer. r=decoder, r=froydnj
--HG--
rename : build/sanitizers/ubsan_blacklist_int.txt => build/sanitizers/ubsan_signed_overflow_blacklist.txt
rename : build/sanitizers/ubsan_blacklist_int.txt => build/sanitizers/ubsan_unsigned_overflow_blacklist.txt
2018-02-02 21:25:31 -08:00
David Major cf15c01efb Bug 1436255: Allow check_prog('LINKER') to fall back to $PATH. r=glandium
--HG--
extra : rebase_source : 8c670636d56dacb51d4d646f8f518992578b9f5c
2018-02-08 12:01:51 +13:00
Geoff Brown 0531bf800b Bug 1436262 - Improve efficiency of detection of end of test Android test runs; r=jmaher
Once a test summary is seen, check for application completion more often,
so that we can complete the test run sooner.
2018-02-07 13:33:44 -07:00
Geoff Brown 8b8a2994e8 Bug 1435433 - Print master test summary after android mochitests when runByManifest; r=jmaher 2018-02-07 13:33:43 -07:00
Ben Hearsum 35948d295c bug 1398799: make the update verify docker image support run-task. r=aki
--HG--
extra : amend_source : 9cfbf429c7078dd004a713ff6c6120a7b6a212cf
2018-02-07 14:50:46 -05:00
Nathan Froyd c887f553f2 Bug 1435502 - add AArch64 support to clang builds; r=chmanchester 2018-02-05 14:25:43 -05:00
J. Ryan Stinnett f69b532a8e Bug 1408643 - Fix up Proguard install command from configure. r=nalexander
MozReview-Commit-ID: nvUvoUzFLy

--HG--
extra : rebase_source : 7df5e8828e044037ba49255f04dfe38ed1cc0ca2
2018-02-02 09:43:18 -05:00
Cosmin Sabou 5742ff4ffb Merge inbound to mozilla-central. a=merge 2018-02-03 23:52:25 +02:00
Noemi Erli 3d97de014c Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-02-03 12:11:21 +02:00
Noemi Erli 3d09e55d55 Merge inbound to mozilla-central. a=merge 2018-02-03 11:52:03 +02:00
Jeff Walden 3c784f2dec Bug 1435170 - Split out --enable-ubsan-uint-overflow from --enable-ubsan-int-overflow. r=decoder, r=froydnj
--HG--
extra : rebase_source : 740de3f742a5c58bd317b8353cb4a86cb4fa92ac
2018-02-02 18:29:29 -08:00
Kartikaya Gupta fe694732ac Bug 1435345 - Part 1: Index use sites of overloaded C++ operators. r=emilio
MozReview-Commit-ID: 1nTIGliiQIz

--HG--
extra : rebase_source : 7ec5898035a19ee70409c15a24475d56a9c3bec6
2018-02-02 22:39:39 -05:00
Kartikaya Gupta e1d953260f Bug 1435345 - Part 0: sync change from searchfox repo. r=emilio
This change was made in the mozsearch/mozsearch repo at some point and wasn't
synced to m-c.

MozReview-Commit-ID: HnW80AIrGt7

--HG--
extra : rebase_source : f621d89cb712ac5c13e7636cf2d9d7222a6f422b
2018-02-02 22:39:24 -05:00
Andreea Pavel 3cb61b9976 Backed out changeset 3b7ef7afd156 (bug 1408643) for failing flake8 at /builds/worker/checkouts/gecko/build/moz.configure/java.configure:98:100 on a CLOSED TREE 2018-02-03 00:20:25 +02:00
J. Ryan Stinnett 4be102b212 Bug 1408643 - Fix up Proguard install command from configure. r=nalexander
MozReview-Commit-ID: nvUvoUzFLy

--HG--
extra : rebase_source : acc1ec9e3c0a3b9e933d3a9ee354b12d69778bd3
2018-02-02 09:43:18 -05:00
Andrew Halberstadt f354075c7a Bug 1434430 - [flake8] Fix blank 'except' statements r=rwood
This is a new issue that gets linted with flake8 3.5.0. Basically you should
never use a blank except: statement.

This will catch all exceptions, including KeyboardInterrupt and SystemExit
(which is likely not intended). If a catch all is needed, use
`except: Exception`.  If you *really* mean to also catch KeyboardInterrupt et
al, use `except: BaseException`.

Of course, being specific is often better than a catch all.

MozReview-Commit-ID: FKx80MLO4RN

--HG--
extra : rebase_source : 7c74a7d0d81f2c984b47aff3a0ee3448b791177b
2018-01-31 14:32:08 -05:00
Florian Quèze 2b1c8dccb6 Bug 1339461 - script-generated patch to convert foo.indexOf(...) == -1 to foo.includes(), r=Mossop. 2018-02-01 20:45:22 +01:00
Eric Rahm f311645aa5 Bug 1434689 - Part 1: Add moz_temporary_class annotation. r=mystor
This adds a `moz_temporary_class` annotation that can be used to indicate
a class is intended to only be used as a temporary.

--HG--
extra : rebase_source : 2c4d5f0946739eafba485053624199bd4a05107a
2018-01-31 15:03:26 -08:00
Mike Hommey a7182c9720 Bug 1436283 - Build a modern gdb version for Wheezy. r=dustin
The GDB version in Debian wheezy doesn't handle the DWARF data that the
GCC version we use to build Firefox and toolchains produce. So we take
the GDB version from Debian stretch and backport it.

--HG--
extra : rebase_source : dae0e9dcd5dde5a7c74b6cefd560480fccd9c5fa
2018-02-07 16:55:49 +09:00
shindli f713c5d75e Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-02-01 00:37:57 +02:00
Nathan Froyd 87e87fc09b Bug 1434659 - move --enable-oom-breakpoint to moz.configure; r=nalexander 2018-01-31 14:35:57 -05:00
Jim Chen baa975d4c7 Bug 1428182 - 2. Check both quota.h and quotactl(); r=glandium
Android headers can have a <sys/quota.h> header but with its functions
ifdef'ed out. Check for that by checking for the presence of quotactl().

MozReview-Commit-ID: 26ILnbP7flO

--HG--
extra : rebase_source : fe78c114189a362cdad3d79ce67868b045328392
2018-01-30 14:08:22 -05:00
Jim Chen b3c3de5de5 Bug 1428182 - 1. Support unified headers for Android builds; r=nalexander
NDK headers are grouped into a "sysroot" directory, which doesn't
contain architecture-specific bits, and a "system" directory, which
contains only the architecture-specific bits. Previously, both
directories are the same, under platforms/android-*/arch-*/. However,
with unified headers in NDK r16, the two are different, so we need to
support that in the Android build scripts.

Unified headers also rely on the build system defining the
__ANDROID_API__ macro, so we add support for that as well.

MozReview-Commit-ID: 9zBNQC3BRFl

--HG--
extra : rebase_source : 9ded282343df64d9cc4abcf7d7c6b03ac3423ff0
2018-01-30 14:08:22 -05:00
Emilio Cobos Álvarez f8bf50c79e Bug 1434326: Cleanup DiagnosticsMatcher constructor. r=mystor
Removing a bit of the ugly :)

MozReview-Commit-ID: ATf2b2oh1F1

--HG--
extra : rebase_source : da6e36533c2b2ec8820c728953b0c0544c5a085e
2018-01-30 17:40:00 +01:00
Jeremy Chen 44323b73ae Bug 1426223 - remove tests for Stylo blocklist mechanism. r=xidorn
In this patch, we remove 3 tests:
1. test for blocked domain
2. test for blocked sub-domain
3. test for non-blocked domain

Two nsIDOMWindowUtils APIs were added for adding/removing a mock domain to the
existing blocklist. They are only used in the Stylo blocklist tests, so we
remove them as well.

MozReview-Commit-ID: A0ETWlqwbpN
2018-01-30 11:58:24 +01:00
Cosmin Sabou c6a0d55423 Backed out 11 changesets (bug 1428182) for build bustages on pixman-inlines.h:29:10 on a CLOSED TREE
Backed out changeset 84c767de6202 (bug 1428182)
Backed out changeset 429433caa78c (bug 1428182)
Backed out changeset c576e9d1f68f (bug 1428182)
Backed out changeset 092662eab5eb (bug 1428182)
Backed out changeset 4dd7eaff3ab5 (bug 1428182)
Backed out changeset fbbb0745b139 (bug 1428182)
Backed out changeset 1d1278b289b7 (bug 1428182)
Backed out changeset 55891ffb3768 (bug 1428182)
Backed out changeset 4655e1b1b237 (bug 1428182)
Backed out changeset 377eada51b3c (bug 1428182)
Backed out changeset 17c0e373d921 (bug 1428182)

--HG--
rename : ipc/chromium/src/third_party/libevent/patches/android-api-level.patch => ipc/chromium/src/third_party/libevent/patches/android-arc4random-buf.patch
2018-01-30 01:22:33 +02:00
Emilio Cobos Álvarez b012f3eebd Bug 1434001: Handle lambdas in CanRunScriptChecker. r=mystor
Such a shame that the functionDecl() matcher doesn't handle them. I didn't find
a cleaner way to handle them, but I'm a 100% noob with AST matchers, so there
may be a more elegant way to do this.

MozReview-Commit-ID: 3HJQdFpN4hy

--HG--
extra : rebase_source : 27e48e6fb264499fd99e75eb54a22276758ab3e4
2018-01-29 22:08:15 +01:00
Jim Chen 9f9eafdcd0 Bug 1428182 - 2. Check both quota.h and quotactl(); r=glandium
Android headers can have a <sys/quota.h> header but with its functions
ifdef'ed out. Check for that by checking for the presence of quotactl().

MozReview-Commit-ID: 26ILnbP7flO

--HG--
extra : rebase_source : 147e4be9eb98326fd4946b7b3695c573c7108347
2018-01-29 17:38:13 -05:00
Jim Chen 35691135a8 Bug 1428182 - 1. Support unified headers for Android builds; r=nalexander
NDK headers are grouped into a "sysroot" directory, which doesn't
contain architecture-specific bits, and a "system" directory, which
contains only the architecture-specific bits. Previously, both
directories are the same, under platforms/android-*/arch-*/. However,
with unified headers in NDK r16, the two are different, so we need to
support that in the Android build scripts.

Unified headers also rely on the build system defining the
__ANDROID_API__ macro, so we add support for that as well.

MozReview-Commit-ID: 9zBNQC3BRFl

--HG--
extra : rebase_source : 36c9d4d5625fecbbe2485668811f85f9d94372d5
2018-01-29 17:38:11 -05:00
Mike Hommey 1d38c4309b Bug 1432398 - Remove the desktop-build docker image and related files. r=dustin
--HG--
extra : rebase_source : 158e14474ce049343105d2be95aabc03ec0b7854
2018-01-27 11:04:23 +09:00
Mike Hommey 508bccd7c7 Bug 1432395 - Add valgrind suppressions for system libraries on Debian. r=njn
The first two are variants of existing ones, with a slightly different
signature, and tha last one is well known and found in glib-related
suppression files like https://github.com/flatpak/flatpak/blob/master/tests/glib.supp

--HG--
extra : rebase_source : 2a209cc5987405e7ff638bbf69e1b74202b0357e
2018-01-27 10:31:31 +09:00
Mike Hommey 478ce5d0b3 Bug 1432395 - Rename valgrind suppressions files to something more generic. r=froydnj
The MACHTYPE bash variable is an odd thing that returns e.g.
x86_64-redhat-linux-gnu on a CentOS system, but x86_64-pc-linux-gnu
on a Debian system, and possibly something different on other distros.

mach valgrind-test is the only place actually relying on MACHTYPE.
Others rely on information from python modules. Uniformize that, and use
the more generic 'pc' rather than 'redhat'.

--HG--
rename : build/valgrind/i386-redhat-linux-gnu.sup => build/valgrind/i386-pc-linux-gnu.sup
rename : build/valgrind/x86_64-redhat-linux-gnu.sup => build/valgrind/x86_64-pc-linux-gnu.sup
extra : rebase_source : ad94ce69e8094d2b9ddae97a3d261945886c0a61
2018-01-27 10:22:56 +09:00
Mike Hommey e8b62fa5df Bug 1431251 - Remove CRT objects from the GCC build. r=rillian
They were added in bug 1427344 to reduce the differences between builds
on CentOS docker images and builds on Debian docker images. We're now
entirely on Debian docker images, so we can back this out.

--HG--
extra : rebase_source : 672e389cb8d6dbf7860a989024690de18e5c320e
2018-01-27 11:52:12 +09:00
Mike Hommey e551e11340 Bug 1431251 - Remove PKG_CONFIG_LIBDIR from mozconfigs. r=rillian
As of bug 1430036 it was only set when building on CentOS, and as of bug
1432398, we don't have CentOS-based docker images anymore.

--HG--
extra : rebase_source : 5ade9bee773bca3283cfdb9d69209033fe82253f
2018-01-27 11:49:23 +09:00
Nick Alexander c27ae370b0 Bug 1411654 - Pre: Update toolchain documents for Android toolchain jobs. r=maliu
MozReview-Commit-ID: 9h0imqIYyaZ

--HG--
extra : rebase_source : 59db336b0fb2e97f3ecc57039d341facd9ada7d6
extra : source : e7b0cc801cf1406a46f576106f014c74a90d9534
2017-11-15 13:42:53 -08:00
Jesse Schwartzentruber 8edb6105b8 Bug 1421728 - Add a macosx64 fuzzing-asan build. r=dustin,froydnj
MozReview-Commit-ID: DNNu4jyG50Z

--HG--
extra : rebase_source : 4440c958965ee6021a3aaf732f9a87cc10763245
2018-02-08 17:16:41 -05:00
Chris Manchester b42986e45e Bug 1429947 - Unset WIN64_LINK and WIN64_LIB in in-tree mozconfigs during an artifact build. r=nalexander
MozReview-Commit-ID: 9mIaxs0xroN

--HG--
extra : rebase_source : 623f50f4186722d6a0da9f01bd6d57b072068bd7
2018-01-26 14:53:44 -08:00
Sylvestre Ledru 3a35e750f3 Bug 1433417 - Fix a bunch of typo in the doc r=ahal
MozReview-Commit-ID: LRgL0CMJdDP

--HG--
extra : rebase_source : b99364bb96c1501a674a1726a3b5fdf0664a8e4f
2018-01-26 12:50:07 +01:00
Mike Hommey 4d0b7a7cab Bug 1432390 - Vendor requests-unixsocket. r=dustin
--HG--
extra : rebase_source : e0e3e0b5baf68aa4e441b81bfda83b17f895a4b1
2018-01-14 07:01:26 +09:00
Ralph Giles dc8c14e96a Bug 1433185 - Require Rust 1.23. r=nalexander
It's been more than two weeks since the 1.23 stable release, and
we're making official builds with that toolchain release, so begin
requiring that version so new language features can be used in
development.

MozReview-Commit-ID: E6WuP41ceTn

--HG--
extra : rebase_source : 75850dd9edbf8e3f9beab394e4af7fad76ce3b17
2018-01-25 10:29:11 -08:00
Chris Manchester 093501400b Bug 1393119 - Add webrtc gn build config; r=dminor
MozReview-Commit-ID: FIPjkDWwAQx

--HG--
extra : rebase_source : 4007024b78d1bb05b189189d18d2e88ec700cd7a
2017-11-29 11:18:44 -08:00
Margareta Eliza Balazs 6adca5400a Backed out 5 changesets (bug 1393119) for bustage on linux in /builds/worker/workspace/build/src/obj-firefox/dist/system_wrappers/alsa/asoundlib.h:3:15: alsa/asoundlib.h missing on a CLOSED TREE
Backed out changeset 7d374c8be17d (bug 1393119)
Backed out changeset 98e1989b1f48 (bug 1393119)
Backed out changeset 8fa5de0eb6ea (bug 1393119)
Backed out changeset c5c2d30ed6da (bug 1393119)
Backed out changeset 17d7a6d5e889 (bug 1393119)
2018-01-24 13:00:42 +02:00
Chris Manchester 0a473080e6 Bug 1393119 - Add webrtc gn build config; r=dminor
MozReview-Commit-ID: FIPjkDWwAQx

--HG--
extra : source : 5b4da712bf1e276dd5df44a1b23e2a715f5c19cb
2017-11-29 11:18:44 -08:00
Andreea Pavel 3a37861e1a Backed out 5 changesets (bug 1393119) for failing dom/media/tests/mochitest/test_peerConnection_audioSynchronizationSources.html on a CLOSED TREE 2018-01-24 03:20:11 +02:00
Dorel Luca 30b5be6d16 Merge mozilla-inbound to mozilla-central r=merge a=merge 2018-01-23 19:46:03 +02:00
Andi-Bogdan Postelnicu 714748cf50 Bug 1430360 - Update the clang svn revision for the clang-tidy build generated by toolchains. r=froydnj
MozReview-Commit-ID: JiHF24Du8By

--HG--
extra : rebase_source : dfd667d30b1e8e0904ffe403afb2689a8f14ebb3
2018-01-19 11:52:54 +02:00
Mike Hommey cab7cc1091 Bug 1431314 - Update clang 3.9 and 5.0 toolchains. r=froydnj
Respectively to 3.9.1 and 5.0.1
2018-01-23 13:48:05 +09:00
Chris Manchester a86c71dab3 Bug 1393119 - Add webrtc gn build config; r=dminor
MozReview-Commit-ID: FIPjkDWwAQx

--HG--
extra : rebase_source : de81c0f2a9a0d3c4406361a52076df8134771202
2017-11-29 11:18:44 -08:00
Gregory Szorc a1f799ec10 Bug 1443712 - Add /d2:-cgsummary to PGO link flags; r=ted
This will tell us which functions PGO is spending its time in,
which functions are being optimized, and other interesting
statistics. The output is a handful of pages of text in our
current PGO builds and it seems useful for understanding the PGO
black box.

MozReview-Commit-ID: HUbAhltQrdL

--HG--
extra : rebase_source : eb188ebf84ee9ce6c7fe8bf69b6b156ee9f14956
2018-03-06 20:26:32 -08:00
Xidorn Quan 46929192a9 Bug 1437796 - Add two valgrind suppressions for stylo-chrome. r=jseward
MozReview-Commit-ID: Cj5Dv4z3Lkc

--HG--
extra : rebase_source : b0ae49e14c88e8de4f0d1c227a00b87607eaa640
2018-02-14 11:21:23 +11:00
Andi-Bogdan Postelnicu c523c8faa9 Bug 1440886 - Implement a static analysis checker to detect usage of PR_LoadLibrary and LoadLibraryA/LoadLibraryExA/LoadLibrary/LoadLibraryEx. r=Nika
MozReview-Commit-ID: CUjfeBeOdsk

--HG--
extra : rebase_source : 633b900794cba24030c2b93d4d070d1447fff39b
2018-03-07 14:36:44 +02:00
Nick Alexander 53a4852ffa Bug 1444546 - Part 3: Use GENERATED_FILES for Android SDK bindings generation. r=froydnj,jchen
MozReview-Commit-ID: 2blmzKTvpj3

--HG--
extra : rebase_source : 0954b407ce6625510eadc67dd9989da949b22110
2018-03-06 19:19:48 -08:00
Nick Alexander 520b63c85e Bug 1444546 - Part 2: Build annotationProcessors with Gradle. r=jchen
We want annotationProcessors to be compiled and archived into a JAR at
build time, ready to generate JNI wrappers.  (That is, until we turn
the whole thing into a real annotation processor.)  But even if we do
use a real annotation processor, we still need to generate SDK
bindings, which is less clearly expressed as an annotation processor.
(It's more of a build step.)

Gradle provides a huge number of ways to organize build logic to
achieve this: see
https://docs.gradle.org/current/userguide/organizing_build_logic.html.
Unfortunately, the best such way -- putting the code into
$topsrcdir/buildSrc -- has key disadvantages:

1) it pollutes the top-level $topsrcdir, and there's no way to change the
location of buildSrc (https://github.com/gradle/gradle/issues/2472);

2) it's complicated to have a dependent project
(mobile/android/annotations) expose its code via a buildSrc project;

3) using buildSrc at all appears to conflict with the Android-Gradle
plugin version that we are using.

Therefore, this commit does something much simpler: it adds a
Java-only project and uses the resulting Gradle "Jar" task and archive
output as input to the existing Gradle "generate JNI wrappers" task.

MozReview-Commit-ID: 2OyYLPneE1M

--HG--
extra : rebase_source : d99b74a0a1e0bb3e8f4d4540978328388e5c2e42
2018-02-22 16:11:14 -08:00
Nick Alexander 90a4b9e4b1 Bug 1444546 - Part 1: hg mv build/annotationProcessors mobile/android/annotations. r=jchen
MozReview-Commit-ID: J3Wz83vWAVX

--HG--
rename : build/annotationProcessors/AnnotationInfo.java => mobile/android/annotations/src/main/java/org/mozilla/gecko/annotationProcessors/AnnotationInfo.java
rename : build/annotationProcessors/AnnotationProcessor.java => mobile/android/annotations/src/main/java/org/mozilla/gecko/annotationProcessors/AnnotationProcessor.java
rename : build/annotationProcessors/CodeGenerator.java => mobile/android/annotations/src/main/java/org/mozilla/gecko/annotationProcessors/CodeGenerator.java
rename : build/annotationProcessors/SDKProcessor.java => mobile/android/annotations/src/main/java/org/mozilla/gecko/annotationProcessors/SDKProcessor.java
rename : build/annotationProcessors/classloader/AnnotatableEntity.java => mobile/android/annotations/src/main/java/org/mozilla/gecko/annotationProcessors/classloader/AnnotatableEntity.java
rename : build/annotationProcessors/classloader/ClassWithOptions.java => mobile/android/annotations/src/main/java/org/mozilla/gecko/annotationProcessors/classloader/ClassWithOptions.java
rename : build/annotationProcessors/classloader/IterableJarLoadingURLClassLoader.java => mobile/android/annotations/src/main/java/org/mozilla/gecko/annotationProcessors/classloader/IterableJarLoadingURLClassLoader.java
rename : build/annotationProcessors/classloader/JarClassIterator.java => mobile/android/annotations/src/main/java/org/mozilla/gecko/annotationProcessors/classloader/JarClassIterator.java
rename : build/annotationProcessors/utils/AlphabeticAnnotatableEntityComparator.java => mobile/android/annotations/src/main/java/org/mozilla/gecko/annotationProcessors/utils/AlphabeticAnnotatableEntityComparator.java
rename : build/annotationProcessors/utils/GeneratableElementIterator.java => mobile/android/annotations/src/main/java/org/mozilla/gecko/annotationProcessors/utils/GeneratableElementIterator.java
rename : build/annotationProcessors/utils/Utils.java => mobile/android/annotations/src/main/java/org/mozilla/gecko/annotationProcessors/utils/Utils.java
extra : rebase_source : 65b85ec338cc5a7cb12afc2ad7678271339a6e89
2018-02-22 13:51:15 -08:00
Cosmin Sabou 2064ded574 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2018-01-20 04:10:50 +02:00
Ryan VanderMeulen bd5f27de6e Bug 1430608 - Loosen the Valgrind MediaList::evaluate suppression to cover both trunk and beta. r=emilio, a=RyanVM on a CLOSED TREE
--HG--
extra : rebase_source : 29985532443d860e4e2552671a780e1f56248f23
extra : amend_source : 3c5a8753d67b32e2aee0ec040cae1dcd1c45cb42
2018-01-19 12:12:11 -05:00
Mike Hommey 6cf772467d Bug 1429056 - Wrap llvm-dsymutil calls on automation. r=ted
We add a wrapper for llvm-dsymutil for macosx CI builds such that when
it crashes, we attempt to get a reduced test case and upload it as a
build artifact. This will allow to more easily report such crashes
upstream.

--HG--
extra : rebase_source : be208e6a46b60659a4e51acbe2bd7c4081189d1c
2018-01-19 10:20:41 +09:00
Gregory Szorc 6f469dc037 Bug 1430908 - Use --progress=dot:mega with wget; r=glandium
By default, wget prints dots every 1k bytes. This can render a
lot of output for large files. We switch to the "mega" style, which
makes each dot represent 64k, thus reducing output by up to 64x.

We also force the use of dot display. By default, it uses "bar"
which attempts to use terminal formatting if possible. Since most
of this code executes in CI and terminal control characters can
interfere with logged output, we force the use of "dot." (Although
wget appears to automatically switch to dot in TC today. But
consistency is good.)

MozReview-Commit-ID: IpTWJdcauTV

--HG--
extra : rebase_source : 5c9aa1bbdcd78eaa0b31347ad026a2c1beaedc03
2018-01-16 14:24:31 -08:00
Tom Ritter 2bce63f964 Bug 1419607 Specify -fno-common for ASAN builds r=glandium,tsmith
MozReview-Commit-ID: JCXLNeQkGpq

--HG--
extra : rebase_source : e9b46f033dd4f8c4e95df85523adc88224410486
2018-01-16 08:00:31 -06:00
Mike Hommey 8d30282b40 Bug 1431297 - Build a xz-utils package for Debian wheezy. r=dustin
There were a few constraints in the choice of the version of dpkg to
backport:
- 1.17.20 is the first version that supports the debian source format
  for that xz-utils package.
- versions >= 1.17.10 and <= 1.17.22 fail to build on wheezy.
- versions >= 1.17.21 depend on a version of patch not available on
  wheezy.

All in all, the simpler choice was to go with version 1.17.20 with a
backport of the build failure fix.

That version of dpkg breaks the version of devscripts in wheezy, so the
version from wheezy-backports would be better to use, but we can't
unconditionally use it on all builds, because it happens that
mk-build-deps from that version is broken with the dpkg in wheezy.

In the end, it's simpler to build that backport and rely on package task
dependencies rather than selectively install the package from
wheezy-backports, so we do that. Except we can't use version
2.14.11~bpo70+1 because of bug 1419577.

--HG--
extra : rebase_source : 19ad1a44b770229fbc7e15bbcf01d3cb101315a8
2018-01-18 14:41:11 +09:00
Mike Hommey 9eb36d84be Bug 1430984 - Automatically create a debian/changelog entry when there is no patch. r=dustin
--HG--
extra : rebase_source : d3d0cb7134470633460ecfc3ef52018145b8325f
2018-01-17 15:18:47 +09:00
Xidorn Quan 8e13ebbe62 Bug 1430608 followup - Suppress valgrind error in MediaList::evaluate on a CLOSED TREE.
--HG--
extra : source : 18e60905c302ec4c58c1d64247f7d65e9b2fe512
2018-01-18 18:09:02 +11:00
Mike Hommey f7984c551b Bug 1430037 - Use sparse checkouts for docker image builds. r=dustin
In many cases, building docker images starts on machines that don't have
a cached checkout, and it often takes forever to get a full clone. It
used to be worsened when 3 jobs could run at the same time because the
worker would start up clean, and 3 jobs would be doing a mercurial clone
at the same time, thrashing I/O, but that part is fortunately fixed.

It is still, however, appreciable not to waste time in the mercurial
clone part of image creation.

--HG--
extra : rebase_source : 8c76bc91e1d5102f68c43e1050d61971fef32e9f
2018-01-11 17:03:09 +09:00
Tiberius Oros 0f3b1d6ace Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-01-18 00:28:57 +02:00
Ryan VanderMeulen ac18fd5152 Backed out 20 changesets (bug 1411654) for incorrect android:debuggable. r=nalexander, a=RyanVM
Backed out changeset cfad693be918 (bug 1411654)
Backed out changeset 55776829a744 (bug 1411654)
Backed out changeset c5bf85d56fed (bug 1411654)
Backed out changeset c270f97bb0da (bug 1411654)
Backed out changeset fde9bf9c14c3 (bug 1411654)
Backed out changeset 01836fd98c63 (bug 1411654)
Backed out changeset 730a70767743 (bug 1411654)
Backed out changeset 690e265c684c (bug 1411654)
Backed out changeset f918500d9cf5 (bug 1411654)
Backed out changeset cec2b8828cc8 (bug 1411654)
Backed out changeset 76085ddd5ac7 (bug 1411654)
Backed out changeset 2b37201606f5 (bug 1411654)
Backed out changeset d0d513d1c379 (bug 1411654)
Backed out changeset e7b0cc801cf1 (bug 1411654)
Backed out changeset 901b304603d9 (bug 1411654)
Backed out changeset 373c9a71d945 (bug 1411654)
Backed out changeset 3dc3beab95f8 (bug 1411654)
Backed out changeset 22a861db1573 (bug 1411654)
Backed out changeset 0850b319efd4 (bug 1411654)
Backed out changeset d276d3deba05 (bug 1411654)

--HG--
rename : mobile/android/app/src/main/res/values-v17/themes.xml => mobile/android/base/resources/values-v17/themes.xml
2018-01-17 15:55:38 -05:00
Noemi Erli 1c9bbfbebc Backed out 2 changesets (bug 1403519) for bustage on \python\mozbuild\mozbuild\test\frontend\test_reader.py on a CLOSED TREE
Backed out changeset f53f8adcd578 (bug 1403519)
Backed out changeset 5b293bcd3fc7 (bug 1403519)
2018-01-17 07:23:40 +02:00
Tom Ritter c65c886e14 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 : 5547e2c8fbf4e2e87182b8720d8352c131e4ec65
2017-11-20 22:20:56 -06:00
Dustin J. Mitchell 26d48b3202 Bug 1403519 - only build docs when necessary r=gps
This marks **/docs/** as exclusively docs, and code that is autodoc'd as
inclusively docs.

That means that a change that purely modifies documentation files will *only*
run `docs` tasks, while a change that modifies autodoc'd source code will
*additionaly* run `docs` tasks.  The tasks do not run by default.

MozReview-Commit-ID: G9tOK0AwtrI

--HG--
extra : rebase_source : 8dd971e5c9b0eb5f47895664a4ea49442f303ecb
extra : source : 0881de9b2b5e36ec37cc866f1d4af109da57a919
2017-10-02 18:22:56 +00:00
Dustin J. Mitchell 00f03c413e Bug 1403519 - only build docs when necessary r=gps
This marks **/docs/** as exclusively docs, and code that is autodoc'd as
inclusively docs.

That means that a change that purely modifies documentation files will *only*
run `docs` tasks, while a change that modifies autodoc'd source code will
*additionaly* run `docs` tasks.  The tasks do not run by default.

MozReview-Commit-ID: G9tOK0AwtrI

--HG--
extra : rebase_source : 8dd971e5c9b0eb5f47895664a4ea49442f303ecb
extra : source : 0881de9b2b5e36ec37cc866f1d4af109da57a919
2017-10-02 18:22:56 +00:00
shindli 334ee0f441 Backed out 2 changesets (bug 1430037) for bustage on beta r=glandium
Backed out changeset 8b80471c1d79 (bug 1430037)
Backed out changeset 800640c0dc3f (bug 1430037)
2018-01-17 04:30:00 +02:00
Mike Hommey 0afbc1f2d9 Bug 1430315 - Use the separate llvm-dsymutil toolchain to build Firefox. r=rillian
--HG--
extra : rebase_source : a71ee493885e9c1eaaed5872df57932fd0c2105f
2018-01-16 17:34:21 +09:00
Mike Hommey 896ba44bb9 Bug 1430037 - Use sparse checkouts for docker image builds. r=dustin
In many cases, building docker images starts on machines that don't have
a cached checkout, and it often takes forever to get a full clone. It
used to be worsened when 3 jobs could run at the same time because the
worker would start up clean, and 3 jobs would be doing a mercurial clone
at the same time, thrashing I/O, but that part is fortunately fixed.

It is still, however, appreciable not to waste time in the mercurial
clone part of image creation.

--HG--
extra : rebase_source : bbe8b001849e59bb655bb0e9766a6071ad38a52c
2018-01-11 17:03:09 +09:00
Mike Hommey 17462147e3 Bug 1430504 - Build a GNU make package for Debian wheezy. r=gps
The one available in Debian wheezy is 3.81, but we're explicitly using
4.0 on CentOS, most notably because of its --output-sync option which
helps make logs better in some ways.

This takes the package from Debian jessie and builds it for Debian
wheezy.

--HG--
extra : rebase_source : 20bb550703fec41ed0175ef7f78c5b9a394160f3
2018-01-12 14:52:05 +09:00
Andreea Pavel 79f23484b4 Backed out changeset 16dc5da96ab6 (bug 1430360) for clang-tidy bustages on a CLOSED TREE 2018-01-16 18:49:14 +02:00
Andi-Bogdan Postelnicu 98077bb2ae Bug 1430360 - Update the clang svn revision for the clang-tidy build generated by toolchains. r=froydnj
MozReview-Commit-ID: JiHF24Du8By

--HG--
extra : rebase_source : 5c3fc94da7ee5d7fdad78a3c718be6902eab726e
2018-01-13 14:10:43 +02:00
Mike Hommey 648d8e17e1 Bug 1430506 - Install pulseaudio 2.0 on CentOS build images. r=nalexander
Switching to Debian build images will force a version bump from
pulseaudio 0.9.something to pulseaudio 2.0. Practically speaking, as
long as bug 1427150 is fixed (which it is), this is strictly better,
because this enables all the PA_CHECK_VERSION(2,0,0) code in libcubeb,
which handles port availability (whether output is plugged or not), and
with bug 1427150, it does so in a backward compatible manner.

Now, since this is a behavior change from what we're currently shipping,
this has the potential of triggering unexpected test failures, or break
sound for users. The likelyhood of the latter happening is rather low,
though, because Linux distros have been building with pulseaudio >= 2.0
for a long time and we haven't heard about port availability breaking
sound for them. But it's still better to decouple this change from the
switch to Debian.

We abuse the build-gtk3.sh script which installs gtk3 in the CentOS
build image to install pulseaudio as well.

--HG--
extra : rebase_source : eb4e4033c50d59117b5199d1653d85f871503b2f
2018-01-13 06:24:51 +09:00
Nick Alexander ed931e36aa Bug 1411654 - Pre: Update toolchain documents for Android toolchain jobs. r=maliu
MozReview-Commit-ID: 9h0imqIYyaZ

--HG--
extra : rebase_source : 2c88689ca69f7133687e07398d62f362b58195a6
2017-11-15 13:42:53 -08:00
Kartikaya Gupta 805ae43226 Bug 1430645 - Fix win64 compilation of mozsearch-plugin. r=emilio
MozReview-Commit-ID: 6xrnnZeYmFy

--HG--
extra : rebase_source : dd2e92b7179ac35baf5c39ecfb70952a21b87141
2018-01-15 14:33:04 -05:00
Chris Peterson 37efe4d0e6 Bug 1428535 - Add missing override specifiers to overridden virtual functions. r=froydnj
MozReview-Commit-ID: DCPTnyBooIe

--HG--
extra : rebase_source : cfec2d96faeb11656d86d760a34e0a04cacddb13
extra : intermediate-source : 6176724d63788b0fe8caa3f91607c2d93dbaa7ec
extra : source : eebbb0600447f9b64aae3bcd47b4be66c02a51ea
2017-11-05 19:37:28 -08:00
Dorel Luca ab63c465d9 Backed out 19 changesets (bug 1411654) for Android nightly bustages a=backout
Backed out changeset 649e7aa405ca (bug 1411654)
Backed out changeset c2e51b70519f (bug 1411654)
Backed out changeset a371f3ef4312 (bug 1411654)
Backed out changeset db978e230556 (bug 1411654)
Backed out changeset 56538ed998cf (bug 1411654)
Backed out changeset 6ff0cdf46a3d (bug 1411654)
Backed out changeset 0e493bacc5e3 (bug 1411654)
Backed out changeset 23cbcf427745 (bug 1411654)
Backed out changeset eda74143389f (bug 1411654)
Backed out changeset 359fadf9b3e9 (bug 1411654)
Backed out changeset 5c64eda20f1e (bug 1411654)
Backed out changeset bffb6a5b78d1 (bug 1411654)
Backed out changeset 43787f4089c3 (bug 1411654)
Backed out changeset 9141bbdfd13b (bug 1411654)
Backed out changeset 108674372ef7 (bug 1411654)
Backed out changeset fb15e1f54987 (bug 1411654)
Backed out changeset 264476c77210 (bug 1411654)
Backed out changeset d23f467218da (bug 1411654)
Backed out changeset 78576ff98660 (bug 1411654)

--HG--
rename : mobile/android/app/src/main/res/values-v17/themes.xml => mobile/android/base/resources/values-v17/themes.xml
2018-01-13 15:17:49 +02:00
Mike Hommey c1667043b2 Bug 1430011 - Build a Git package for Debian wheezy. r=gps
The one available in Debian wheezy is 1.7.10.4, which is really old, and
on our centos images, we're using 2.8.0rc3, which, while old too, is
more modern. While we may want to go with a more recent version, I'd
rather avoid differing from what we currently use, so use the exact same
version.

--HG--
extra : rebase_source : dfdf75a635073c248faef8a67648b2a83e4a1d84
2018-01-12 14:52:05 +09:00
Csoregi Natalia bed10b400c Merge mozilla-central to autoland. r=merge a=merge CLOSED TREE 2018-01-13 00:02:18 +02:00
Csoregi Natalia 7476b71e00 Merge inbound to mozilla-central r=merge a=merge 2018-01-12 23:59:06 +02:00
Ryan VanderMeulen 636edb9f6d Merge m-c to inbound. a=merge 2018-01-12 11:35:56 -05:00
Ryan VanderMeulen 24c532d428 Backed out 6 changesets (bug 1393119, bug 1429819) so it can re-land after the Gecko 60 version bump instead.
Backed out changeset 4bf890d84416 (bug 1429819)
Backed out changeset 91cfd14052f5 (bug 1393119)
Backed out changeset eac997d73d67 (bug 1393119)
Backed out changeset f8321fda6acc (bug 1393119)
Backed out changeset 67092d3b35fe (bug 1393119)
Backed out changeset 5b4da712bf1e (bug 1393119)
2018-01-12 11:33:12 -05:00
Mike Hommey c42e9d7d91 Bug 1429918 - Adjust the MPC download url. r=nalexander
--HG--
extra : rebase_source : 28fedbf2c08c179c2b2f1aeb15921d09e817f7af
2018-01-12 06:58:34 +09:00
Mike Hommey bb2afff5c1 Bug 1425381 - Always enable PIE on Android now that we support only >= 4.1. r=froydnj
--HG--
extra : rebase_source : c73d77ab1274b2dd54a3785a6d77c6e8dcb69f87
2018-01-11 10:42:15 +09:00
shindli f1c9a5da78 Backed out changeset 1af647b2f9e8 (bug 1429918) for a request made by the developer on a CLOSED TREE 2018-01-12 00:47:35 +02:00
Mike Hommey f1dcc7b8db Bug 1427344 - Add Debian CRT objects to GCC. r=nfroyd
One of the last remaining differences when building Firefox on Debian
with all the changes we've done so far is that linking against the
system libc statically links some CRT objects. This causes massive
differences in the resulting binaries because of slight differences
in those objects (because they weren't compiled with the same compiler
and because they're not for the exact same glibc version)

In practice, their content difference don't cause any problem. If they
did, we wouldn't be able to run our builds on newer systems than those
we build them on. The only hypothetical risk would be to run on systems
with a glibc older than Debian 7's, but those already can't run Firefox
anyways (those systems don't have Gtk+3, which is a system requirement).

AFAICT, this is only an hypothetical problem anyways, even such systems
with Gtk+3 should be able to run those builds. Plus, this is a change
that will happen anyways when switching to Debian-based build images,
since they would be using the CRT objects from there. We're merely
making it happen earlier so that the differences from switching to
Debian-based build images are more tractable.

Note we only do this when building GCC on Debian, allowing to roll back
to CentOS-based toolchains by just switching back the toolchain jobs to
use the desktop-build docker image again.
2018-01-12 21:39:57 +09:00
Mike Hommey e17b79e152 Bug 1427344 - Build GCC without --disable-initfini-array. r=nfroyd
When building on Debian (which we now are), this means we enable
.init_array/.fini_array.

When building on CentOS, this means no change. Which implies we could
roll back to CentOS-based toolchains by just switching back the
toolchain jobs to use the desktop-build docker image again.

This change causes massive differences in the resulting binaries because
of the offset differences, but practically speaking, there is no
difference. .init_array/.fini_array have been supported in glibc for 18
years.
2018-01-12 21:39:56 +09:00
Mike Hommey e73fcbf697 Bug 1429918 - Adjust the MPC download url. r=nalexander
--HG--
extra : rebase_source : e457431f9aa04c58ec29eb0c6450d43232de12d2
2018-01-12 06:58:34 +09:00
Mike Hommey 4f2f1a88f6 Bug 1429685 - Build a Valgrind package for Debian wheezy. r=dustin
Apply the patch from bug 1382280 (build/valgrind/valgrind-epochs.patch).

--HG--
extra : rebase_source : 283dbc749e231bc00ea3135423e1606161f0bcd4
2018-01-11 16:06:45 +09:00
Ralph Giles 8101f5ae52 Bug 1418083 - stylo: Suppress valgrind error. r=jseward
We believe this is another spurious memcheck error triggered
by code from Rust 1.23.0. See also bug 1394696.

For some reason, this error occurs both with and without
the leading underscore on mangled std::sync::once methods,
so this change matches either with a wildcard.

MozReview-Commit-ID: 4upSAPqAtNA

--HG--
extra : rebase_source : 5f697aaa5e170369f08d385d10c1aac9d8c1e50b
2018-01-09 16:18:49 -08:00
Margareta Eliza Balazs a331a849a4 Backed out changeset 6d539e4a02bd (bug 1403519) for lint failures on a CLOSED TREE 2018-01-11 22:32:27 +02:00
Ryan VanderMeulen f83acc4c48 Merge m-c to autoland. a=merge 2018-01-12 11:36:30 -05:00
Mike Hommey 0804de7e8e Bug 1430036 - Don't set PKG_CONFIG_LIBDIR when building on Debian. r=ted
--HG--
extra : rebase_source : 06f96fe0060a34f65f1126e3510580e0b6bc4969
2018-01-12 15:16:19 +09:00
Nick Alexander 115f9b57a7 Bug 1411654 - Pre: Update toolchain documents for Android toolchain jobs. r=maliu
MozReview-Commit-ID: 9h0imqIYyaZ

--HG--
extra : rebase_source : e10055d82a35f7fa56279856cc6700d328b21b43
2017-11-15 13:42:53 -08:00
Dustin J. Mitchell 522245f2f2 Bug 1403519 - only build docs when necessary r=gps
This marks **/docs/** as exclusively docs, and code that is autodoc'd as
inclusively docs.

That means that a change that purely modifies documentation files will *only*
run `docs` tasks, while a change that modifies autodoc'd source code will
*additionaly* run `docs` tasks.  The tasks do not run by default.

MozReview-Commit-ID: G9tOK0AwtrI

--HG--
extra : rebase_source : 8dd971e5c9b0eb5f47895664a4ea49442f303ecb
extra : source : 0881de9b2b5e36ec37cc866f1d4af109da57a919
2017-10-02 18:22:56 +00:00
Dorel Luca a19f5582cc Merge mozilla-central to mozilla-inbound r=merge 2018-01-11 00:05:23 +02:00
Mike Hommey 48af0db891 Bug 1429285 - Add cmake and ninja packages to the toolchain-build docker image. r=gps
We build packages of the same versions that were installed by
taskcluster/docker/recipes/install-cmake.sh and
taskcluster/docker/centos6-build/system-setup.sh in the desktop-build
image.

--HG--
extra : rebase_source : 843b89065daabd450f54ebf7a2cf55d00977e23a
2017-12-29 15:43:43 +09:00
Mike Hommey 87c31766de Bug 1429257 - Statically link newfs_hfs against libcrypto. r=gps
For the same reasons as bug 1427266.

--HG--
extra : rebase_source : f27c9d05b2ea74d323fde29c09c2faae9fe8ee19
2018-01-10 09:59:29 +09:00
Mike Hommey e1983fc387 Bug 1429257 - Make build-hfsplus.sh fail when something goes wrong. r=gps
Currently, the build can finish succesfully even when one of the
programs fails to build and is not included in the final artifact. The
macosx build then fails because of that, which is the wrong place to
be failing.

--HG--
extra : rebase_source : 4a41b2f96eea45d3eefa2734900603b6e6ee0ea5
2018-01-10 08:37:44 +09:00
Mike Hommey b25c52c92a Bug 1428989 - Generate Android bindings more deterministically. r=nalexander
There are multiple methods with the same name and that differ in their
arguments. They end up being ordered in the source file randomly,
despite there being some sorting done, because the sorting was only done
on the method name.

Now, when the method name matches, also compare the arguments.

--HG--
extra : rebase_source : a89b8c9dbad1d7506e0068119ba25cd34150bafc
2018-01-09 16:44:27 +09:00
Narcis Beleuzu 3b53e85664 Backed out 2 changesets (bug 1396582) for build bustage "ImportError: No module named which". r=backout a=backout on a CLOSED TREE
Backed out changeset a677efcd8768 (bug 1396582)
Backed out changeset 4e81669959ed (bug 1396582)
2018-01-09 22:45:50 +02:00
Chris Manchester 1be9ea36da Bug 1427840 - Add in-tree docs for GN support in the build system. r=dminor
MozReview-Commit-ID: AWsgvmMMIpX

--HG--
extra : rebase_source : 399d292b429714b8d23e1fc2142b2aedd77c584d
2018-01-09 12:15:08 -08:00
Gregory Szorc b1d1ac0183 Bug 1396582 - Move Python version checking to moz.configure; r=nalexander
The Python version validation in virtualenv.py is only called in 2
locations: `python -m mozbuild.virtualenv` and in moz.configure.

I believe that nobody calls `python -m mozbuild.virtualenv` any more.
That means that moz.configure is the only caller of
verify_python_version(). That means we can inline the logic into
moz.configure.

It makes sense for version checking to live in moz.configure because
the role of moz.configure is to evaluate the sanity of the environment.
So this commit does just that.

MozReview-Commit-ID: 7FLL0cGblFS

--HG--
extra : rebase_source : 4c2ecbe06399aad917f58ffb25a571993b736965
2018-01-08 15:46:35 -08:00
Gregory Szorc 252e60c9b2 Bug 1426566 - Remove wrapper to compare-mozconfigs; r=froydnj,nalexander
Recent refactoring made the wrapper pretty useless. Since I'm about
to look at this code once more, let's remove it while we're here.

MozReview-Commit-ID: GA9cKeLH7Iu

--HG--
extra : rebase_source : 9e08ed60eab694a9f20385aa5f85a9909809b199
2018-01-05 14:16:04 -08:00
Tom Prince 3f982a356e Bug 1428914: Get rid of some unsued python modules in `build/`; r=nalexander
MozReview-Commit-ID: D56lfae300E

--HG--
extra : rebase_source : a6882da45ae9f2019d2013c85c63735b4f1ae057
2018-01-08 16:22:21 -07:00
Matías Zúñiga 5a103f5593 Bug 1428110 - Check both paths of EMULATOR in one pass. r=nalexander 2018-01-08 22:03:10 -03:00
Andi-Bogdan Postelnicu b41605bc5e Bug 1429015 - Add clang-format-diff to the clang-tidy build generated by toolchains. r=sylvestre
MozReview-Commit-ID: FjJqef78wa3

--HG--
extra : rebase_source : ef0682f66f681f7c069fe6ad31baeb78d54c14ea
2018-01-09 13:27:39 +02:00
Emilio Cobos Álvarez 06f30cacd7 Bug 1428864: Fix indexer plugin build with clang >= 5. r=kats
MozReview-Commit-ID: J1DKFkyXu0v

--HG--
extra : rebase_source : 81d6abfa400c9c606d4bef5adc4633a831a713aa
2018-01-08 20:21:53 +01:00
Jean-Luc Bonnafoux 5acf65c7fe Bug 1428629 - elfhack.cpp prefer prefix ++ operator for non primitive types r=froydnj
MozReview-Commit-ID: C0L2NUsbmc4

--HG--
extra : rebase_source : b4b3dfbbabbd610384448169b10c3f9b5c27e621
2018-01-08 09:30:32 +01:00
Jean-Luc Bonnafoux 83cf591ec7 Bug 1417215 - Prefer prefix ++ operator for non primitive types r=froydnj
MozReview-Commit-ID: Hjbj0PEjAnf

--HG--
extra : rebase_source : 659bfb57eba416e6105035e453d7366a9515ea3a
2017-12-30 21:09:58 +01:00
Mike Hommey e34ef317f6 Bug 1427339 - Make mozconfig.stdcxx work with both CentOS and Debian-built GCCs. r=gps 2018-01-06 14:19:30 +09:00
Mike Hommey 0c1517dd8c Bug 1427339 - Configure binutils and gcc --with-sysroot=/. r=gps
The system binutils and gcc are built with that option on Debian, but
not on CentOS. That makes no practical difference, except for the fact
that when building GCC, we use our own-built binutils (as per bug
1427316), but use the system GCC. And a GCC built with --with-sysroot=/
doesn't work with a binutils built without. However, a GCC built without
--with-sysroot=/ works fine with a binutils built with it. So this
change is compatible with building our GCC on both CentOS and Debian.
2018-01-06 14:19:29 +09:00
Mike Hommey 51725c8a00 Bug 1427326 - Build a python package for Debian 7. r=dustin
--HG--
extra : rebase_source : b31d301859a0b6f6ecbb7763a82f162d7673379f
2017-12-29 13:00:59 +09:00
Andreea Pavel 25357802c6 Merge mozilla-inbound to mozilla-central r=merge a=merge 2018-01-04 23:28:19 +02:00
Ted Mielczarek ad688de73b bug 1401647 - use a 64-bit Rust toolchain for win32 builds. r=nalexander,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 : 273a99be71914167664482c2bdb26c840ec6867b
2017-12-14 10:20:33 -06:00
Mike Hommey 25c3f317c0 Bug 1427404 - Always export PATH when passing it through mk_add_options. r=nalexander
mk_add_options has this kind of awkward feature where
  mk_add_options VAR=value
would set VAR for the build through client.mk, but not when running
make -C objdir target. But
  mk_add_options "export VAR=value"
does.

We might want to change that on the long run, but the side effects would
have to be calculated first.

OTOH, we have automation jobs that run compilations during `make check`
(e.g. rusttests), which is not invoked through client.mk. So they
currently don't get the same PATH as the build part, meaning that
they're using system binutils instead of the one from the GCC toolchain
package.

--HG--
extra : rebase_source : aab7f221243c486cf70c7b0c91b9313231050ed8
2017-12-31 08:50:29 +09:00
Zibi Braniecki 6d15cb5ce6 Bug 1411012 - Migrate a small chunk of Privacy pane in Preferences to Fluent. r=mshal,Pike
MozReview-Commit-ID: ahAZCinoui

--HG--
extra : rebase_source : 2e3d68eb1ff91c1ee885d66756d2db74faff13f3
2017-11-09 12:11:32 -08:00
Makoto Kato 336ace5ab7 Bug 1397776 - Removing armv6 config support for Android. r=glandium
We no longer support Android/armv6 and we requires NEON for Android/arm, so
we can remove armv6 support for Android.

MozReview-Commit-ID: Hh17BTyE0wR

--HG--
extra : rebase_source : 57e043ecb1bb57a026c0b656b82768b899ddae78
2017-12-15 16:32:54 -06:00
Mike Hommey a6484528bd Bug 1410148 - Fully re-enable debug info on mac builds. r=gps
--HG--
extra : rebase_source : b6063977691ee68eb8db1bc38b57b6237daee443
2017-12-28 18:01:50 +09:00
Mike Hommey 9f6417f045 Bug 1410148 - Backport llvm r289565 to clang 3.9. r=gps
I was able to reproduce the failure to apply llvm-dsymutil on the last
mozilla-central revision before debug info was temporarily disabled for
rust, and validated that the problem was gone in clang 4.

After some bisection, r289565 was identified as having fixed the
problem, which, reading the commit message, makes sense.

It was however not possible to simply cherry-pick, because of multiple
code changes between 3.9 and 4. However, apart from the volume of
conflicting changes, it was more or less straightforward to backport.

Interestingly, the patch for r313872 was relying on changes from
r289565, which is why it required a variant specifically for 3.9, but
now we can use the same patch as for other versions. Well, except
there's a small difference in the context, and build-clang.py doesn't
allow fuzz, so we manually edit the patch to remove that line from the
context.

--HG--
extra : rebase_source : de0ab262d401c37c0e9300b0ef7923a07c009d87
2017-12-28 14:54:51 +09:00
Mike Hommey 4aa79652c5 Bug 1427232 - Remove .la files when building gtk3. r=gps
In bug 1426785, Gtk+3 build was moved to docker image creation time, and
at the same time, the removal of .la files was stripped, because it
seemed too broad to do that in /usr/local/lib*, and because I didn't
really remember why it was there in the first place.

I now do remember, and that's because libtool likes to add useless
dependencies on libraries just because direct dependencies transitively
depend on them. For example, this adds a dependency on libffi to
libpangocairo, which doesn't use it directly.

I also happens that /usr/local/lib* is empty at the moment we build
gtk3, so we can just do the cleanup there.

On its own, this change is useless, but:
- it restores the libraries in their state pre-bug 1426785,
- it helps reduce some differences when building on Debian (for bug
1399679), easing the comparison of those builds.

--HG--
extra : rebase_source : 3fa644d8ae5eb4ccac5940c7d3605201f589936d
2017-12-28 11:15:00 +09:00
Ciure Andrei 8e754a1049 Backed out 2 changesets (bug 1410148) for bustage failures on python\mozbuild\mozbuild\test\configure\lint.py r=backout a=backout on a CLOSED TREE
Backed out changeset f77f58a060ad (bug 1410148)
Backed out changeset 593515920c7e (bug 1410148)
2017-12-29 22:31:51 +02:00
Mike Hommey 66ed1c2e3a Bug 1410148 - Fully re-enable debug info on mac builds. r=gps
--HG--
extra : rebase_source : 44400063c868c9ce83c1310d30c6359e9b0b0759
2017-12-28 18:01:50 +09:00
Mike Hommey 8a6ab5b9ab Bug 1410148 - Backport llvm r289565 to clang 3.9. r=gps
I was able to reproduce the failure to apply llvm-dsymutil on the last
mozilla-central revision before debug info was temporarily disabled for
rust, and validated that the problem was gone in clang 4.

After some bisection, r289565 was identified as having fixed the
problem, which, reading the commit message, makes sense.

It was however not possible to simply cherry-pick, because of multiple
code changes between 3.9 and 4. However, apart from the volume of
conflicting changes, it was more or less straightforward to backport.

Interestingly, the patch for r313872 was relying on changes from
r289565, which is why it required a variant specifically for 3.9, but
now we can use the same patch as for other versions. Well, except
there's a small difference in the context, and build-clang.py doesn't
allow fuzz, so we manually edit the patch to remove that line from the
context.

--HG--
extra : rebase_source : cda077132ee499a8ffdc4c88a1160cfa5fd86a97
2017-12-28 14:54:51 +09:00
Mike Hommey 6a21d1f58e Bug 1426785 - Remove mozconfig.gtk. r=gps
It now only does something trivial, which also happens to be a no-op
because it's the default. It does have a commented entry for possible
gtk+2 builds, but we're soon going to remove that possibility anyways in
bug 1278282.

--HG--
extra : rebase_source : 9ac927bb7bd8c057264c8f6f9ca5cbf79a839c4e
2017-12-22 07:57:05 +09:00
Mike Hommey 79b5314945 Bug 1426785 - Use gtk+3 from /usr/local on automation. r=gps
Now that build environment docker images have gtk+3 installed in
/usr/local, adjust mozconfigs to point pkg-config there, and remove
all the glue that was required to build using the tooltool package.

Also remove the --x-libraries=/usr/lib on 32-bits builds, which only
confuses the linker.

--HG--
extra : rebase_source : c7de7b3959a3c6b77ea202d9609c891b5b7ec442
2017-12-22 07:53:33 +09:00
Mike Hommey a6e25e84a3 Bug 1426785 - Install gtk+3 in the Centos images used for desktop builds. r=gps
Back when we started needing gtk+3 to build Firefox, we were using mock
to setup the build environment, and a tooltool package was the most
sensible way to handle this.

Fast forward to today, and we're close to moving the build environment
to Debian, which comes with gtk+3 packages. But in order to simplify
the various checks for the transition, it is desirable to stop using the
tooltool package. Which we can actually do in a reasonable way now that
we use docker images instead of mock, by building and installing gtk+3
in the build environment images.

So we modify the script that was producing the gtk+3 tooltool packages
such that it installs gtk+3 in the docker images, both 32 and 64 bits.
And invoke it when creating the desktop build environment docker images.

--HG--
extra : rebase_source : 75e987d6de7f3ae8a3d9b478fc173e191d28aace
2017-12-22 07:41:56 +09:00
Coroiu Cristina dbb27acb6d Backed out 5 changesets (bug 1426785) for failing repackage the nightly build on Linux a=backout.
Backed out changeset 08b5850633de (bug 1426785)
Backed out changeset 61453b6473f1 (bug 1426785)
Backed out changeset 851ce8944b41 (bug 1426785)
Backed out changeset 386cd0532519 (bug 1426785)
Backed out changeset 2a52bf9e0898 (bug 1426785)
2017-12-24 14:03:02 +02:00
Tiberius Oros fd149086d0 Merge mozilla-central to inbound. r=merge a=merge CLOSED TREE 2017-12-24 00:48:00 +02:00
Tiberius Oros 794f6c4955 Merge autoland to mozilla-central r=merge a=merge
--HG--
extra : rebase_source : 688988c7815ca431c434b8804a5c88eb41d67c06
2017-12-23 23:59:51 +02:00
Ryan VanderMeulen 63ac251398 Bug 1426793 - Add DevEdition to mozinfo. r=nalexander 2017-12-23 16:39:53 -05:00
Chris Cooper f2819347e3 Bug 1410148 - Attempt to fix OS X cross-compile builds on central by changing rust debug log level to 0. r=Aryx a=bustage-fix-attempt
--HG--
extra : amend_source : 3eba0bc3e2008806b048f285215b338f2a8bcf2d
2017-12-23 21:12:47 +01:00
Mike Hommey aa8197cc80 Bug 1426788 - Don't fall back to ccache when sccache is not enabled. r=gps
ccache is not beneficial on taskcluster, don't try to use it when
sccache is not enabled for some reason.

--HG--
extra : rebase_source : a17fe88eb92072935cb86f9ada4205863cfc8f85
2017-12-22 10:08:40 +09:00
Mike Hommey 2dca68b63f Bug 1426785 - Remove mozconfig.gtk. r=gps
It now only does something trivial, which also happens to be a no-op
because it's the default. It does have a commented entry for possible
gtk+2 builds, but we're soon going to remove that possibility anyways in
bug 1278282.

--HG--
extra : rebase_source : 0de751e523ee002bbe6638d223eb384364edd22b
2017-12-22 07:57:05 +09:00
Mike Hommey 2e32acf893 Bug 1426785 - Use gtk+3 from /usr/local on automation. r=gps
Now that build environment docker images have gtk+3 installed in
/usr/local, adjust mozconfigs to point pkg-config there, and remove
all the glue that was required to build using the tooltool package.

Also remove the --x-libraries=/usr/lib on 32-bits builds, which only
confuses the linker.

--HG--
extra : rebase_source : 22b1273ae4b78807b355d33ed5895bdfe83a141d
2017-12-22 07:53:33 +09:00
Mike Hommey 089e3a8dc2 Bug 1426785 - Install gtk+3 in the Centos images used for desktop builds. r=gps
Back when we started needing gtk+3 to build Firefox, we were using mock
to setup the build environment, and a tooltool package was the most
sensible way to handle this.

Fast forward to today, and we're close to moving the build environment
to Debian, which comes with gtk+3 packages. But in order to simplify
the various checks for the transition, it is desirable to stop using the
tooltool package. Which we can actually do in a reasonable way now that
we use docker images instead of mock, by building and installing gtk+3
in the build environment images.

So we modify the script that was producing the gtk+3 tooltool packages
such that it installs gtk+3 in the docker images, both 32 and 64 bits.
And invoke it when creating the desktop build environment docker images.

--HG--
extra : rebase_source : fe18bfb2ec8db183c44838d5a7a0051322b2a9c0
2017-12-22 07:41:56 +09:00
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
Mike Hommey 511d112e2d Bug 1427316 - Use the binutils we just built to build GCC. r=gps
We're currently building GCC with the system binutils, which, at the
moment, is whatever version is available on the CentOS 6 build
environments. With the imminent switch to Debian 7, that will be a
different version.

It turns out the GCC configure script does enable some features
depending on the binutils it's built with. For the most notable
differences it makes when going from Centos 6 to Debian, it enables
.init_array/.fini_array depending on the binutils version, and enables
the use of CFI advances depending on gas and objdump respectively
supporting and displaying DW_CFA_advance_loc.

But we're already building a fixed version of binutils (which happens to
be more recent than the one in both CentOS 6 and Debian 7), and we're
using that version when using GCC to build, so we can just as much use
the version we built to build GCC.

In order to avoid any changes to the resulting builds, we explicitly
turn off .init_array/.fini_array (which currently happens implicitly
when building on CentOS 6). This will ensure that there is not other
change to the builds due to this binutils version bump
(.init_array/.fini_array being enabled shifts everything in the
binaries, so it makes the whole diff full of noise)
2018-01-04 19:16:19 +09:00
Chris Manchester 73ad6401d3 Bug 1393119 - Add webrtc gn build config; r=dminor
MozReview-Commit-ID: FIPjkDWwAQx

--HG--
extra : rebase_source : 420774d076919ed5c1424181c8153c5e40acbaaf
2017-11-29 11:18:44 -08:00
David Major 774bdeb18e Bug 1429128: Pass -m32 when building Win32 binaries with Win64 clang-cl. r=froydnj 2018-01-10 12:17:32 -05: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
Nathan Froyd ed33603f94 Bug 1421792 - move --enable-trace-logging to moz.configure; r=nalexander 2017-12-01 21:29:27 -05:00
Nathan Froyd d7b5304b9d Bug 1421791 - move --enable-{ion,simulator} definitions to moz.configure; r=nalexander
--enable-ion was only used by --enable-simulator and related options, so
there wasn't much point in making two separate commits.

This translation is a little more verbose than the original
old-configure code, but I think it is more readable and easier to
follow.  We also don't port over --enable-simulator=no, as there doesn't
seem to be much point in doing so.
2017-12-01 21:29:27 -05:00
David Major 252f0cf0c6 Bug 1421404: Add lld to the build-clang task. r=glandium
--HG--
extra : rebase_source : a41a386965056afdc359f117972f6d5078d83453
2017-12-01 11:12:07 -05:00
Marco Castelluccio a51c72b439 Bug 1421692 - Apply compiler-rt patch to flush gcda files before unlocking them. r=glandium 2017-11-29 13:18:22 +00:00
Marco Castelluccio a3836b3113 Bug 1401230 - Apply compiler-rt patch to hide gcda symbols on Windows too. r=glandium 2017-11-23 20:32:50 +00:00
Dorel Luca bea662dd30 Merge mozilla-central to autoland r=merge
--HG--
rename : layout/reftests/webcomponents/basic-insertion-point-1-ref.html => layout/reftests/webcomponents/basic-slot-5-ref.html
rename : layout/reftests/webcomponents/basic-insertion-point-1.html => layout/reftests/webcomponents/basic-slot-5.html
rename : layout/reftests/webcomponents/basic-insertion-point-2-ref.html => layout/reftests/webcomponents/basic-slot-6-ref.html
rename : layout/reftests/webcomponents/basic-insertion-point-2.html => layout/reftests/webcomponents/basic-slot-6.html
extra : rebase_source : 483a0fb85738c5459165efca8ec6bc971e31b4c2
2017-12-04 12:49:40 +02:00
Noemi Erli c528f7e479 Merge mozilla-central to mozilla-autoland. r=merge a=merge CLOSED TREE 2017-12-02 23:47:37 +02:00
Ciure Andrei 48e5c9892f Merge mozilla-central to autoland. r=merge a=merge CLOSED TREE 2017-12-02 12:19:55 +02:00
Edouard Oger 54088f8c9e Bug 1422115 - Remove storageserver.js from services/. r=markh,tcsc
MozReview-Commit-ID: 4UGCq6SolY1

--HG--
extra : rebase_source : 49e8a5d072d1cb15d0942e7fbc39c7a2c8c08c6f
2017-11-30 15:11:19 -05:00
Kartikaya Gupta ef331d62ea Bug 1421768 - Fix overeager clang-tidy behaviour causing silent breakage in searchfox. r=me
This is an import of the change from https://github.com/mozsearch/mozsearch/pull/66
plus a correction in the README file. The change was reviewed in github.

MozReview-Commit-ID: A7gINlBubZ4
2017-11-30 16:52:51 -05:00
Mike Hommey 2b2a874b47 Bug 1420355 - Statically link DMD. r=njn
--HG--
extra : rebase_source : 8e7cf975d096116b666532f3fe8aa5a7f61b5725
2017-11-28 08:10:48 +09:00
Mike Hommey 50d09b60b0 Bug 1420355 - Allow to statically link replace-malloc libraries. r=njn
And statically link logalloc.

Statically linking is the default, except when building with
--enable-project=memory, allowing to use the generated libraries from
such builds with Firefox.

--HG--
extra : rebase_source : efe9edce8db6a6264703e0105c2192edc5ca8415
2017-11-23 17:24:19 +09:00
Csoregi Natalia 4ce8d0124c Backed out 7 changesets (bug 1420355) for mass failures on OS X and Android. r=backout on a CLOSED TREE
Backed out changeset a7ed89e13a4c (bug 1420355)
Backed out changeset fd6702e6e0a0 (bug 1420355)
Backed out changeset 0479dda078a2 (bug 1420355)
Backed out changeset e69357ccca9e (bug 1420355)
Backed out changeset 3742a4b69ba2 (bug 1420355)
Backed out changeset 451cd087922f (bug 1420355)
Backed out changeset d80b5c4e1dd0 (bug 1420355)
2017-11-29 03:08:46 +02:00
Mike Hommey 7c62087a43 Bug 1420355 - Statically link DMD. r=njn
--HG--
extra : rebase_source : 46800c9c0c5006a5a32f11abc209da27e65ae0f5
2017-11-28 08:10:48 +09:00
Mike Hommey d60e80991e Bug 1420355 - Allow to statically link replace-malloc libraries. r=njn
And statically link logalloc.

Statically linking is the default, except when building with
--enable-project=memory, allowing to use the generated libraries from
such builds with Firefox.

--HG--
extra : rebase_source : efe9edce8db6a6264703e0105c2192edc5ca8415
2017-11-23 17:24:19 +09:00
Ted Mielczarek 0d2c1d3036 bug 1396993 - fix flake8 lint. r=bustage CLOSED TREE
MozReview-Commit-ID: LYxUmVzYMbz

--HG--
extra : rebase_source : 8738ff67e98afb9282a3d70886f3e4afca18d488
extra : amend_source : a614440e705fbd383b0f26249b7c87c1eeb8122e
2017-11-27 09:57:49 -05:00
Ted Mielczarek 8d741405f5 bug 1396993 - Look in ~/.cargo/bin for rustc+cargo even they're not in PATH. r=rillian
rustup installs rustc+cargo to ~/.cargo/bin by default, so make configure look
there to avoid the annoying case where someone installed rust and cargo
(possibly via `mach bootstrap`) but forgot to add ~/.cargo/bin to their PATH.

MozReview-Commit-ID: GZOcFdFmzA5

--HG--
extra : rebase_source : 9dae473b5804f096992cae7f90df4c87bb4e5af4
extra : source : 9324e5e56038a1e548b0fc4d94d9df445734ff1e
2017-09-05 16:38:18 -04:00
Nika Layzell a124bfae77 Bug 1418465 - Add an opt-out to the MOZ_CAN_RUN_SCRIPT analysis, r=andi
MozReview-Commit-ID: 2YKncUdrT5p
2017-11-24 11:15:17 -05:00
Mike Hommey ebb5fb6002 Bug 1420092 - Don't reject --enable-jemalloc on platforms where it's not the default. r=njn
The first step of making --enable-jemalloc the default everywhere is to
at least allow to build with it everywhere. Which currently probably
fails on a few platforms, but they're not going to be fixed if they're
explicitly rejected at configure time.

--HG--
extra : rebase_source : f29383e2d73986f3e5b033ac82c0d520bacd4fa6
2017-11-23 15:39:08 +09:00
Mike Hommey dda2902840 Bug 1420092 - Don't always enable mozjemalloc by default when building the js engine. r=njn
The target.kernel-based tests should be enough.

--HG--
extra : rebase_source : 6dce05a8c097af1402dc98a3fa75a2ef581ef862
2017-11-23 15:38:39 +09:00
Mike Hommey 9fc893add0 Bug 1420092 - Enable mozjemalloc by default on 32-bit OSX. r=njn
Hopefully, the bug we worked around by disabling jemalloc on 32-bit OSX
is gone. We're not shipping 32-bit binaries for OSX anyways.

--HG--
extra : rebase_source : 148a80a7ab006d3be81fb931cbbb4ad2c81690c3
2017-11-23 15:36:13 +09:00
Cosmin Sabou 27758db986 Backed out 3 changesets (bug 1420092) for build bustages on python/mozbuild/mozbuild/test/configure/lint.py::Lint r=backout on a CLOSED TREE
Backed out changeset 3df6a2608986 (bug 1420092)
Backed out changeset 156b99af764d (bug 1420092)
Backed out changeset f472190629fb (bug 1420092)
2017-11-23 11:09:54 +02:00
Mike Hommey a5ffa3c0c0 Bug 1420092 - Don't reject --enable-jemalloc on platforms where it's not the default. r=njn
The first step of making --enable-jemalloc the default everywhere is to
at least allow to build with it everywhere. Which currently probably
fails on a few platforms, but they're not going to be fixed if they're
explicitly rejected at configure time.

--HG--
extra : rebase_source : 0905861d5a2cc62f5b37c5ee811e56e1e063a133
2017-11-23 15:39:08 +09:00
Mike Hommey 9102f2075b Bug 1420092 - Don't always enable mozjemalloc when building the js engine. r=njn
The target.kernel-based tests should be enough.

--HG--
extra : rebase_source : 4af988ac952f3a65c638bf7bb308a8ddf4798bcf
2017-11-23 15:38:39 +09:00
Mike Hommey 95ce6018b6 Bug 1420092 - Enable mozjemalloc by default on 32-bit OSX. r=njn
Hopefully, the bug we worked around by disabling jemalloc on 32-bit OSX
is gone. We're not shipping 32-bit binaries for OSX anyways.

--HG--
extra : rebase_source : bfe765977dedf1949da4d5919032cadfb4675f1f
2017-11-23 15:36:13 +09:00
shindli 82254ca1cf Merge inbound to mozilla-central r=merge a=merge 2017-11-22 23:29:44 +02:00
David Major de1574c9ea Bug 1418453 - Change asan_blacklist_win.txt syntax to get it working again. r=glandium
--HG--
extra : rebase_source : ca7d9b74176d78c87d708eefee2ee244b39cd3c0
2017-11-22 12:07:00 -05:00
Tom Prince 723093b6c2 Bug 1418652: Migrate comm-central configure options to moz.configure; r=chmanchester,Fallen
MozReview-Commit-ID: JBRsgBnB9oF

--HG--
extra : rebase_source : bd4663493fdb851091acae34c5e52195173a9e42
2017-11-18 10:21:38 -07:00
Tom Prince 4972fabbb9 Bug 1418652: Remove non-existant comm-centrall configure option; r=chmanchester,Fallen
It was removed in Bug 1318966.

MozReview-Commit-ID: 6fckjVDubTT

--HG--
extra : rebase_source : a0394af2905ee815faa502987f68921a396c242e
2017-11-18 10:17:21 -07:00
Ciure Andrei c7cf019289 Merge mozilla-central to mozilla-inbound. r=merge a=merge CLOSED TREE 2017-11-22 12:20:25 +02:00
Christian Holler 107b880d6a Bug 1415689 - Add Clang 6 (pre) and use it for ASan builds. r=froydnj
MozReview-Commit-ID: 34rcG7gEswz
2017-11-10 10:14:26 +01:00
Coroiu Cristina 8f9440611e Merge mozilla-central to autoland. r=merge a=merge on a CLOSED TREE 2017-11-22 01:46:49 +02:00
Gregory Szorc 02239354a8 Bug 1419182 - Look for extra lines in nightly whitelist; r=mshal
Before, the whitelist['nightly'] entries could contain lines that
didn't actually occur in the mozconfig. With this commit, we
require that all lines in the whitelist actually exist in the
mozconfig.

MozReview-Commit-ID: LdHfFAcBzgv

--HG--
extra : rebase_source : 0606dbe9641ec9fdb9de3148483bf6a3e00b0335
2017-11-20 14:55:29 -08:00
Tiberius Oros 8b9701dd72 Merge mozilla-central to mozilla-inbound. r=merge a=merge CLOSED TREE 2017-11-21 12:19:30 +02:00
Bob Owen 6732c613c1 Bug 1415569: Make version 10.0.14393.0 the minimum Win10 SDK required for building Firefox. r=ted
This is required for the latest chromium sandbox update.
2017-11-21 09:57:21 +00:00
Kartikaya Gupta 4cf3084e60 Bug 1282172 - Detect enum constants generated by macros when generating the Searchfox index. r=billm
MozReview-Commit-ID: 5RUsVSMTU8

--HG--
extra : rebase_source : 32f803de363aaaaa8df9c3d0eac31653ecb3de48
2017-11-18 20:05:53 -05:00
Bill McCloskey dd8af9fa5c Bug 1418434 - Fix return value warning in clang plugin (r=mystor)
MozReview-Commit-ID: 3p7Vs4hZtoO
2017-11-18 15:41:06 -08:00
David Major 02c9050df5 Bug 1417958 - Normalize lib paths to appease VS2017's incremental linking. r=nalexander
--HG--
extra : rebase_source : d834aef165b35fec0c880656976267e03d68180d
2017-11-17 09:15:00 -05:00
Ciure Andrei 92d28bd8f2 Merge inbound to mozilla-central r=merge a=merge 2017-11-17 11:59:03 +02:00
Nathan Froyd b091540d91 Bug 1418047 - remove -Wc++11-compat warning; r=rillian
We live in a C++14 world now.
2017-11-16 20:51:46 -05:00
Bill McCloskey 794104b1e1 Bug 1413738 - Mozsearch clang plugin (r=mystor)
MozReview-Commit-ID: 53zUQ0vDMpd
2017-11-16 15:06:32 -08:00
Nathan Froyd fd656b936c Backout b0eedb4c140b (bug 1412983 part 6) for breaking local Windows builds; r=bustage; a=bustage 2017-11-16 09:53:34 -05:00
Gurzau Raul 6dcee027d7 Merge inbound to mozilla-central r=merge a=merge 2017-11-16 12:04:45 +02:00
Mike Hommey 6e39384683 Bug 1417689 - Move elfhack related things to python configure. r=nalexander 2017-11-16 09:37:31 +09:00
Mike Hommey 9ec14dddcb Bug 1417689 - Remove explicit --enable-elf-hack in mozconfigs. r=nalexander
--enable-elf-hack is the default on all platforms where it's supported,
and is completely ignored on platforms where it's not supported.
While moving the flag to moz.configure, we're going to make it only
work on platforms where elfhack is supported, so we at least need to
remove it from mozconfigs for those platforms where it's not supported.
But generally speaking, we want less things in mozconfigs, so just
remove it from there, since it's the default anyways.
2017-11-16 09:37:17 +09:00
Alfredo.Yang 7bdbfe6743 Bug 1417011 - remove stagefright folder. r=kinetik
MozReview-Commit-ID: F20u08Dr1yn

--HG--
extra : rebase_source : cd23f462c072f194e5bd8a16c72d0ca02cf9be35
2017-11-15 14:34:07 +08:00
Mike Hommey 398c8e8356 Bug 1417309 - Add the necessary bits to support a --enable-project=memory option. r=nalexander
The option allows to iterate on the allocator code without requiring a
complete setup to build Firefox.
2017-11-16 08:37:36 +09:00
Brindusan Cristian d0a4ab96a0 Merge inbound to mozilla-central r=merge a=merge 2017-11-16 00:24:15 +02:00
Nathan Froyd edb937162e Bug 1325632 - part 6 - compile with C++14 support; r=glandium 2017-11-15 13:53:16 -05:00
Nathan Froyd f51359bd19 Bug 1325632 - part 5 - ensure that we compile with -fno-sized-deallocation when possible; r=chmanchester
We currently turn off the C++14 sized-deallocation facility on MSVC, and
we'd like to ensure we do the same thing for clang and gcc.  To do so,
we add new functionality to moz.configure for checking and adding
compilation flags, similar to the facility for checking and adding
warning flags.  The newly added facility is then used to add
-fno-sized-deallocation to the compilation flags, when the option is
supported.

Once we do this, we can't define the sized deallocation functions in
mozalloc.h; the compiler will complain that we are using
-fno-sized-deallocation, yet defining these special functions that we'll
never use.  These functions were added for MinGW, where we needed to
compile with C++14 ahead of other platforms to be compatible with MSVC
headers.  But they're no longer necessary, though they would be if we
removed -fno-sized-deallocation; the compiler will complain if we do
that and we'll add them back at that point.
2017-11-15 14:53:16 -04:00
Nathan Froyd 2e127f22ea Bug 1325632 - part 4 - split out framework for testing flags; r=chmanchester
We have code to test whether particular flags are supported for the
compiler we're using.  Unfortunately, that code is tied up with checking
for warning flags.  We're about to add a separate facility for generic
compilation flags, and we'd like to avoid cutting and pasting code if
possible.  Let's split the core code out into a separate, reusable function.
2017-11-15 13:53:16 -05:00
Nathan Froyd b38d89886c Bug 1325632 - part 2 - don't warn about c++98/c++11 compatibility problems; r=ted.mielczarek
We're going to compile with C++14 and we don't plan to go back.
2017-11-15 14:53:17 -04:00
Nathan Froyd ade9d452f7 Bug 1412983 - part 6 - compile headers for cross-compilers during configure; r=ted.mielczarek
Our toolchain detection logic checks whether we can reuse the target
C (resp. C++) compiler for the host compiler.  This is generally only
applicable in the not-cross-compiling case, but we had special logic to
check for clang in the cross-compiling case and accept it, as clang is
able to generate code for multiple architectures from a single compiler
binary.

Our recent switch to clang on Android has exposed a problem in this
logic: we would never check whether the target clang, compiling for the
host, could actually find the host's headers.  This was especially
problematic on OS X hosts, where the host clang contains special logic
to grovel inside the XCode installation to find C++ headers.  The clang
from the NDK, however, was ignorant of the XCode installation.
Therefore, the NDK clang would happily compile code for the host, even
including C headers for the host, but would be hopelessly lost when it
came to compiling C++ headers during the actual build.

In hopes of mitigating this, we now include a check for a representative
header for C and C++ when checking compilers for each of those
languages.  This check will detect such problems as the above, and will
also alert people to potentially misconfigured compilers in other
situations.

We need to modify our test framework to cope with headers being
included, since our mock environment isn't actually equipped with a full
set of compilers and headers.
2017-11-15 10:12:22 -05:00
Nathan Froyd fd5e1affd1 Bug 1412983 - part 5 - remove stlport_cppflags dependency from bindgen_cflags_defaults; r=ted.mielczarek
Now that extra_toolchain_flags includes stlport_cppflags, there's no
reason bindgen_cflags_defaults should depend on them both.  So remove
the stlport_cppflags dependency.  (There's no harm to multiply-including
stlport_cppflags, but not repeating -I options is good practice.)
2017-11-15 10:12:22 -05:00
Nathan Froyd e18f985bb2 Bug 1412983 - part 4 - make extra_toolchain_flags depend on stlport_cppflags; r=ted.mielczarek
extra_toolchain_flags is used for compiling target-specific bits of code
elsewhere in configure.  Very shortly, we'll need to compile bits of
code that depend on the C++ standard library, so we'll want to point the
compiler at the C++ standard library.  Making extra_toolchain_flags
include stlport_cppflags is the best way to do that.
2017-11-15 10:12:22 -05:00
Nathan Froyd e03872a402 Bug 1412983 - part 3 - move stlport_cppflags prior to extra_toolchain_flags; r=ted.mielczarek
extra_toolchain_flags is going to depend on stlport_cppflags
momentarily, so this commit is just for moving code around.  Note that
the diff shows other things moving *after* stlport_cppflags.
2017-11-15 10:12:23 -05:00
Nathan Froyd 741ca70abc Bug 1412983 - part 2 - use extra_toolchain_flags for computing bindgen flags; r=ted.mielczarek
We compute the same set of data in extra_toolchain_flags as we were
computing in bindgen_cflags_defaults.  We might as well reuse the former
to compute the latter.
2017-11-15 10:12:23 -05:00
Nathan Froyd c9224d1d2e Bug 1412983 - part 1 - convert stlport_cppflags to return a list; r=ted.mielczarek
A list is a better format for these options, and we'll want a list later
when we use the options as compilation flags.
2017-11-15 10:12:23 -05:00
Tom Prince 36c3e9c780 Bug 1416023: Fix typo in `jar-manifests.rst`. r=gps
MozReview-Commit-ID: HC4J9Bwx3DJ

--HG--
extra : rebase_source : 9fc7ff5bb19a0c7097d8e69dfebe8f7aca4d0191
2017-11-09 15:35:28 -07:00
André Bargull a83f81a2c5 Bug 1405993 - Part 1: Don't report warnings for sprintf calls in ICU. r=mystor
--HG--
extra : rebase_source : 2ad0906e64804f22615373f387d5db427aad8313
2017-11-01 11:47:59 -07:00
Gregory Szorc 2ee15dbd8d Bug 1419182 - Consolidate mozconfig comparison logic into compare-mozconfigs.py; r=mshal
Hopefully this makes it more obvious how all of this is hooked
together.

MozReview-Commit-ID: 1jeyIZgHYht

--HG--
extra : rebase_source : 961474b1c19eacdcfe5ed2d90ba0d1b16a5a29c3
2017-11-20 14:47:01 -08:00
Gregory Szorc 52f4862e3f Bug 1419182 - Pass topsrcdir into compare-mozconfigs.py; r=mshal
We currently have the logic for compare-mozconfigs spread across
2 Python files. I'd like to move the logic into 1 file so we
can do nicer things more easily. In preparation for this, change
compare-mozconfigs.py to receive an argument that is the path to
the topsrcdir. Also, switch to argparse because it is more modern.

MozReview-Commit-ID: 7oFQzAdmcim

--HG--
extra : rebase_source : 547cdac9dabf4fa22832648ac1838300d2d75c4a
2017-11-20 14:34:50 -08:00
Gregory Szorc 446e278913 Bug 1419182 - Clean up value checking; r=mshal
MozReview-Commit-ID: LAS0Iaf40nI

--HG--
extra : rebase_source : e512f28d26f20deecf3a33705632dc9782b15c3e
2017-11-20 14:27:13 -08:00
Gregory Szorc 276f8b37d7 Bug 1419182 - Remove functionality for downloading mozconfigs; r=mshal
Pretty sure this is a relic of running this check in automation
outside the context of a source check. compare-mozconfigs.py is
essentially a source lint. I don't see a need for this feature to
exist.

MozReview-Commit-ID: 1FUbJayg1sO

--HG--
extra : rebase_source : 48d8e9db9e04962eee90bbf5fcbd565c1bbbc9cb
2017-11-20 14:18:46 -08:00
Gregory Szorc 709afc0e39 Bug 1419182 - Don't use mutable default argument value; r=mshal
We always passed this argument in so this change doesn't fix
any bugs. I just didn't like the code smell.

MozReview-Commit-ID: IXzj1gRbkJ6

--HG--
extra : rebase_source : cc8cec18cc7d7f0ab1a997065d1cc6cdd1d5c86d
2017-11-20 14:14:56 -08:00
Gregory Szorc 6055e47e96 Bug 1419182 - Hard code whitelist key; r=mshal
We only call this function once. Behavior doesn't need to
be parameterized.

MozReview-Commit-ID: BR6WU4GSeyO

--HG--
extra : rebase_source : 873e3860efee3abb06e987c9747dfec4ba851e5a
2017-11-20 14:09:47 -08:00
Gregory Szorc e4bc53aec9 Bug 1419182 - Remove unused required keys feature; r=mshal
Nobody passes in the "required" argument. Remove it and
functionality related to it.

MozReview-Commit-ID: IB8s4CiDy6a

--HG--
extra : rebase_source : 1eea96bb6f7ff15b97c72d2b7516db9f83dc0bdf
2017-11-20 14:06:35 -08:00
arthur.iakab e651280a79 Backed out changeset 8d6fd02420f2 (bug 1415689)for failing gtests on request from "decoder" on a CLOSED TREE
--HG--
extra : amend_source : 1a7120da525a636d94dcb584f3b5d6cbacb58014
2017-11-21 23:17:30 +02:00
Christian Holler d02e1fcafa Bug 1415689 - Add Clang 6 (pre) and use it for ASan builds. r=froydnj
MozReview-Commit-ID: 34rcG7gEswz

--HG--
extra : rebase_source : 28ea9400b604a371a873a333f3db0fb29f7907c2
2017-11-10 10:14:26 +01:00
Tom Prince a45ea20b93 Bug 1413575: Adjust in-tree references to mozbase documentation to point in-tree. r=ahal
MozReview-Commit-ID: rctbByyjTA

--HG--
extra : rebase_source : a682eb6d77b79640ac9ec20e9d64340613bcfed7
2017-11-20 11:43:13 -07:00
Chris Peterson 948ba6b694 Bug 1418573 - Remove -Wc++14-compat flag because we now compile with -std=c++14. r=rillian
-Wc++14-compat warns about code whose meaning differs between C++11 and C++14. We want the new C++14 meanings, so we don't need to warn about these differences. We still want -Wc++1z-compat because we want to know about C++14 code whose meaning will change in C++17 or C++20.

MozReview-Commit-ID: 1CD11l2Fd86

--HG--
extra : rebase_source : 7bac029fd3e852fbb92f07e0358307c2c834ddc8
extra : source : 2d49767b136e420d39b88267f611fbe72ed0a3b8
2017-11-17 23:58:04 -08:00
Noemi Erli 550148ab69 Merge inbound to mozilla-central r=merge a=merge 2017-11-15 11:57:12 +02:00
Tom Ritter 59de60ae4b Bug 1407343 Silence multiple classes of warnings for the MinGW build, including not enabling format warnings unless -Wformat is set r=froydnj,glandium
MozReview-Commit-ID: ALmo1hbqVxC

--HG--
extra : rebase_source : a68475b90372cd5679c37474fb6705b2a5d48ddf
2017-11-16 12:36:33 -06:00
John Lin 93c62b59f7 Bug 1417006 - remove tombstone files but keep the directory. r=dminor
MozReview-Commit-ID: Ds87KZ47vf1

--HG--
extra : rebase_source : 0578a58107b39abb546758cd8aa21c89e7b4b81f
2017-11-13 16:10:35 +08:00
Chris Manchester 8055730c30 Bug 1416490 - Ensure environment variables that are configure options are passed from configure to old-configure. r=glandium
MozReview-Commit-ID: GFP8bahu1bb

--HG--
extra : rebase_source : 1ff35a8b6470308b71dc74c2befb8219a41534c2
2017-11-13 23:33:35 -08:00
Chris Manchester 2473770fb6 Bug 1416490 - Check for a value passed to RUSTC_OPT_LEVEL rather than whether its value was a default. r=glandium
The current code will fail if "RUSTC_OPT_LEVEL=" is passed. This can happen
if the value isn't present and that fact is injected into js' configure. We
only want to respect RUSTC_OPT_LEVEL if a value is passed, so we simply check
for the presence of a value rather than its origin.

MozReview-Commit-ID: 6GhLfprJEEn

--HG--
extra : rebase_source : 40f3e381a128e04d65cc0175df32cdcd8302e05e
2017-11-13 22:07:46 -08:00
Chris Manchester 72c380c671 Bug 1416059 - Emit ASFLAGS and YASM_ASFLAGS from configure as lists. r=mshal
MozReview-Commit-ID: LBWpzQ9mISI

--HG--
extra : rebase_source : 4c722e68db4b6858aabbbecac834ea8772e0e06a
2017-11-14 10:38:17 -08:00
Andreea Pavel a1061f09c5 Backed out 2 changesets (bug 1416059) for failing /python/mozbuild/mozbuild/test/frontend/test_emitter.py::TestEmitterBasic::test_use_yasm r=backout on a CLOSED TREE
Backed out changeset 597624409f4c (bug 1416059)
Backed out changeset d0df69766fa5 (bug 1416059)
2017-11-14 20:44:54 +02:00
Chris Manchester 4dca13b1ae Bug 1416059 - Emit ASFLAGS and YASM_ASFLAGS from configure as lists. r=mshal
MozReview-Commit-ID: LBWpzQ9mISI

--HG--
extra : rebase_source : f4074f4bdb0acddceeb57d9806c9a7f63a579280
2017-11-13 14:13:11 -08:00
Robert Helmer 42315c18f8 Bug 1389341 - add basic support for sphinx-js to mach doc r=gps
MozReview-Commit-ID: FIzWD8tnjYi

--HG--
extra : rebase_source : 655ea46cffefda77f0908924fdbbb8d17212654a
2017-09-14 13:17:09 -07:00
Makoto Kato 8e2ff2b365 Bug 1415453 - Use vfpv3-d16 as default on Android/arm. r=froydnj
According to https://developer.android.com/ndk/guides/abis.html,
androideabi-v7a must support vfpv3-d16.  So we should use it for fpu flag.

MozReview-Commit-ID: 3rhmRTekmwD

--HG--
extra : rebase_source : c5ffa22d8712fc7b8006cc340175a9586d77f49b
2017-11-10 16:47:21 +09:00
Ted Mielczarek 851b7e1370 bug 1410148 - try to work around llvm-dsymutil crashes again by lowering rust debuginfo level on cross-mac builds. r=nalexander 2017-11-14 19:48:55 +01:00
Mike Hommey 02cdab48f8 Bug 1418598 - Make cargo-linker properly handle quoted strings in MOZ_CARGO_WRAP_LD and MOZ_CARGO_WRAP_LDFLAGS. r=ted
--HG--
extra : rebase_source : 84bcb0718584adf7a082b657cd8ff7cc8579e346
2017-11-18 20:24:12 +09:00
Ryan VanderMeulen b16410f51c Merge inbound to m-c. a=merge 2017-11-10 16:13:15 -05:00
Ryan VanderMeulen c1d73ef4b3 Merge m-c to autoland. a=merge 2017-11-10 12:33:07 -05:00
Gregory Szorc 02bc7e2b1b Bug 1320738 - Mark MOZ_PGO as a JS option. r=froydnj, a=RyanVM
The changesets in bug 1412932 changed the semantics for MOZ_PGO.
Before, it was effectively being set as an environment variable
by client.mk all the time. Afterwards - specifically after
2013c8dd1824 - the variable is set in mozconfigs via ac_add_options,
which means it is only exposed to configure, not the environment.

Investigation by dmajor revealed that -WX (warnings as errors) was
added to a js/src file's compiler invocation after the PGO code
refactor. (PGO and warnings as errors have a strange interaction
- bug 437002 - and should be disabled there.) Strangely, addition
of -WX was only present on Dev Edition PGO builds.

The reason for this is likely mozharness. Mozharness will export
the MOZ_PGO=1 environment variable for build configurations that
it knows are PGO. It appears to do this for all PGO build
configurations except Dev Edition. Since make and moz.configure
inherit environment variables, mozharness was basically papering
over the intended behavior change in 2013c8dd1824.

This commit fixes the problem by marking MOZ_PGO as a JS option
in moz.configure. This means `ac_add_options MOZ_PGO=1` (the new
convention for enabling PGO) will set MOZ_PGO for SpiderMonkey's
moz.configure.

Of course, MOZ_PGO=1 in an environment variable still works. And
mozharness's setting of this variable has the intended effect.
Eventually, I'd like to clean up the mozharness code so it is less
PGO aware and enables PGO via ac_add_options. But that's for another
day.

MozReview-Commit-ID: 1KYPJARI6SJ

--HG--
extra : amend_source : 5291cead9f1c1af9ed2a1f608af770bc8e4958c5
2017-11-10 09:23:27 -08:00
Margareta Eliza Balazs 7e070192d7 Merge inbound to mozilla-central r=merge a=merge 2017-11-10 11:55:43 +02:00
Gregory Szorc 67d153aef0 Bug 1415971 - Inline sccache.mk into client.mk; r=nalexander
sccache.mk is the only thing that uses MOZ_PREFLIGHT_ALL and
MOZ_POSTFLIGHT_ALL. We're trying to kill client.mk and these
variables are next on the chopping block.

This commit essentially moves the logic of sccache.mk inline into
client.mk. Initially, I wanted to move the management of the
sccache daemon to Python as part of what `mach build` invokes.
However, the sccache daemon needs access to the make jobserver.
Since we don't have an active make process in `mach`, this is
obviously problematic. The sccache daemon is also used by
configure, which is launched from client.mk. So the best we
can do right now is move the sccache daemon logic into client.mk.

As part of the port, we pass the path to the sccache binary via
an environment variable. This feels slightly better than hardcoding
the path that automation uses.

MozReview-Commit-ID: zcOYR4I1OG

--HG--
extra : rebase_source : 305a237dc9f5bd96e4aa83d491ac2498fe3c3ba0
2017-11-09 14:59:06 -08:00
Marco Castelluccio dbb30b1c50 Bug 1415699 - Apply LLVM patches needed to support code coverage on Windows. r=froydnj
--HG--
extra : rebase_source : 29b388ad96123b824f0502a740040a24b54b3e88
2017-11-08 22:44:15 +01:00
Nathan Froyd 17b6101551 Bug 1341234 - part 2 - add an intermediate step for determining bindgen's CFLAGS; r=gps
Add an intermediate step in old-configure.in for setting up
BINDGEN_CFLAGS (renamed to BINDGEN_SYSTEM_FLAGS), so we can add whatever
flags we like (e.g. for system libaries with their includes in
non-standard places) at a later point.
2017-11-10 10:05:36 -05:00
Nathan Froyd 380dc56df2 Bug 1341234 - part 1 - add AC_SUBST_TOML_LIST macro; r=gps
Stylo's bindgen is configured partially through a .toml.in file that
substitutes the value of a configure variable (BINDGEN_CFLAGS) into a
TOML list.  We can debate whether this is a good thing to do some other
time; the reality is that the current moz.configure code that provides
the set_config for BINDGEN_CFLAGS needs to perform all the quoting
itself.

We want, however, to define the substituted variable in old-configure.in
land (some of the values that will go into BINDGEN_CFLAGS are only
defined in old-configure.in, and are not trivially ported to
moz.configure), which means that we need to have quoting logic in
m4/Python when we generate config.status.  This patch adds an
appropriate macro for doing so.
2017-11-10 10:05:36 -05:00
Nathan Froyd 1009160a12 Bug 1341234 - part 0 - fix typo in AC_SUBST_SET checking; r=gps
The various AC_SUBST macros generate AC_SUBST_*FOO macros for holding the
values to substitute.  The macros also cross-check the AC_SUBST_* macros
generated by other variants to make sure that you don't try to do
something like AC_SUBST(FOO) and AC_SUBST_SET(FOO).  However, the check
in AC_SUBST_SET for AC_SUBST_LIST duplicate is missing an underscore:
the AC_SUBST_LIST macro generates another macro starting with
AC_SUBST_LIST_, but the AC_SUBST_SET macro checks for the prefix
AC_SUBST_LIST, which is missing the trailing underscore.

As we're going to be adding yet another AC_SUBST_* macro variant, and
therefore adding more checks to all existing macros, let's clean this up
before we start.
2017-11-10 10:05:36 -05:00
Noemi Erli 8d8df3ddfe Merge mozilla-central to mozilla-autoland. r=merge a=merge CLOSED TREE 2017-11-10 12:43:53 +02:00
Gregory Szorc 8e85824bcb Bug 1411462 - Abort when I/O error seen; r=glandium
Before, I/O errors writing to stdout/stderr (e.g. due to broken pipe)
would result in handleError() being called and execution would
keep running. This would potentially result in an error message for
every log/line failure being printed to stderr.

We change the behavior so I/O failures are fatal and abort
execution.

We test the new behavior by changing a test to pipe to `head`
directly. Since `head` exits once it has seen sufficient output,
this results in an EPIPE which now results in immediate program
termination.

MozReview-Commit-ID: 1UecZJ56h4r

--HG--
extra : rebase_source : b35d9c096621d9698260d29a7d0132c4989200a7
2017-11-09 20:44:10 -08:00
Gregory Szorc 407d687142 Bug 1411462 - Add test for `configure --help`; r=glandium
We add a simple cram test that `configure --help` works.

I added the test to build/tests because I'm not sure where else it should go.

This test uncovers a few interesting things:

1) piping `./configure --help` to `head` directly causes a Python
   traceback (presumably due to the pipe disappearing once N lines
   have been read)
2) "checking for vcs source checkout" is printed for --help
3) It is printed twice (!!)

These will be addressed later. Establishing test coverage is
more important.

MozReview-Commit-ID: 9zQ5X8ulTkc

--HG--
extra : rebase_source : aaf660152cdfe37580f559976bca13ea9bf14c49
2017-10-24 17:10:55 -07:00
Marco Castelluccio 14a1047ffd Bug 1415568 - Support applying patches to Windows clang. r=froydnj
--HG--
extra : rebase_source : ed53f564166f6c26ed4f7fc0dabcc4582116ddbf
2017-11-08 17:23:12 +01:00
Narcis Beleuzu 218e1676cb Merge inbound to mozilla-central r=merge a=merge 2017-11-08 12:51:09 +02:00
Margareta Eliza Balazs 130574a8e2 Merge mozilla-central to mozilla-inbound. r=merge a=merge CLOSED TREE 2017-11-08 00:09:29 +02:00
Margareta Eliza Balazs 4164a3a53d Merge inbound to mozilla-central r=merge a=merge 2017-11-07 23:57:03 +02:00
Randall Barker 8cb9ab66e9 Bug 1413362 - part 3: Add support to build system for GoogleVR based WebVR on Android r=froydnj,nalexander
MozReview-Commit-ID: 8BHBnvor5VT
2017-11-07 10:50:15 -08:00
Tom Prince 0463d142d7 Bug 1414298: Don't try to set yasm version config settings if yasm isn't found. r=froydnj
MozReview-Commit-ID: LTDxJ5su7sM

--HG--
extra : rebase_source : ab80df38451c59760aad0931c66104480195fb96
2017-11-06 11:07:26 -07:00
Gregory Szorc 4783c071f3 Bug 1414558 - Build Clang toolchain on a Docker volume; r=froydnj
Before, the build root was not in a Docker cache or volume. With
current Docker works, that meant AUFS. We know AUFS is slow under
I/O load and can cause random failures due to missing data after
writes.

This commit changes the build root to a known Docker volume, which
will be backed by EXT4 and won't have the problems of AUFS.

MozReview-Commit-ID: 6WOH0yednAv

--HG--
extra : rebase_source : bbff0f00f55acdbe068fdf617a7903b8a303c397
2017-11-06 11:45:17 -08:00
Sylvestre Ledru c2b37a7ed8 Bug 1414794 - Unbreak the lld usage by providing the right data structure r=froydnj
MozReview-Commit-ID: 1caPjLBR4vS

--HG--
extra : rebase_source : e5028d054430028e2ad2caca84bd7514fd37f4de
2017-11-06 14:23:57 +01:00
Gregory Szorc 989efa7a51 Bug 1415335 - Move Windows line endings detection to configure; r=nalexander
This doesn't need to be in client.mk.

Also, we inline the info to help people correct the failure, as this
results in a better user experience.

MozReview-Commit-ID: KURL3RIGzKf

--HG--
extra : rebase_source : dc79d3f6aa4e91a12cab0e26d5fc0a3e15afa833
extra : source : 2eceb30625acd8cfadda0baa6326a7e9fd07dece
2017-11-07 17:16:39 -08:00
Gregory Szorc 6ff5d5762b Bug 1415335 - Move spaces in path check to configure; r=nalexander
Checks like this are what configure is for.

In addition to moving the check, we also validate topobjdir as well.

MozReview-Commit-ID: 9sVNQJsAnjO

--HG--
extra : rebase_source : 688961fffca5922c7186c0d39182de7220f7dbe3
extra : source : d9a4ea9bc34a1e0c710469fc0a556ed624ea387b
2017-10-30 16:35:04 -07:00
Chris Manchester fb88a7e614 Bug 1407388 - Remove build/unix/elfhack/inject/Makefile.in and replace with generated files. r=mshal
MozReview-Commit-ID: Cr2RUlksKBJ

--HG--
extra : rebase_source : 03f32e52d754d29a23e774707b6f92e265bf3ce0
2017-11-07 16:54:22 -08:00
Gregory Szorc 6623fc17dc Bug 1415365 - Run compare-mozconfigs for all platforms; r=mshal
compare-mozconfigs is platform agnostic AFAICT. And it runs fast.
Let's run tests for all the platforms all the time.

MozReview-Commit-ID: GqsFCp3XdZG

--HG--
extra : rebase_source : 4fd8fb48af61bfc95ec6c251ccf6fcf557ff6c0c
2017-11-07 16:19:26 -08:00