Commit Graph

4989 Commits

Author SHA1 Message Date
Robert Strong
b1d227f07a Bug 641212 - use lzma compression for application update. Part 1 - xz-embedded build config changes. r=glandium, a=app_update_lzma 2017-07-30 23:26:56 -07:00
Sylvestre Ledru
442b5579cf Bug 1383966 - Give the result of the linker detection to OS_LDFLAGS r=glandium
MozReview-Commit-ID: 2zKZtKWMaIs

--HG--
extra : rebase_source : 905206f550feda15c9d317b7281be179effcffae
2017-07-25 07:14:14 +02:00
Tom Prince
f5e17a64ce Bug 1381955 - Don't override RUSTFLAGS to set rust's debuginfo; r=glandium
MozReview-Commit-ID: HevATvXusvE

--HG--
extra : rebase_source : c85d378e9168ffbdd7384710055db6a1806e7a03
2017-07-17 17:13:19 -06:00
Mike Hommey
ef1d3c7153 Bug 1367940 - Pass the make jobserver file descriptors down to cargo. r=gps
cargo 1.19, and later cargo 1.20/rustc 1.19 gained support for the make
jobserver. But that doesn't work unless make passes the jobserver file
descriptors down to subprocesses, which it only does when there is a +
prefixing commands.

--HG--
extra : rebase_source : a00ffb7edb358243ac7b9469941ec6fb5ad84885
2017-07-13 20:07:49 +09:00
Mike Shal
29be674102 Bug 1380381 - Set rust debuginfo=1 for cross-OSX builds; r=glandium a=kwierso to reopen this CLOSED TREE
This is similar to bug 1301751, where something in rust seems to trigger errors
running dsymutil to generate debug symbols in OSX. We can set debuginfo=1 for
these builds as a temporary workaround for now, while we work on a more
permanent solution in rust and/or dsymutil. debuginfo=1 still gives us enough
info for stack traces, although without line info. debuginfo=2 would be useful
for debugging, but is irrelevant to crash reports.

MozReview-Commit-ID: DdA00GzVfWg

--HG--
extra : amend_source : 47d3573042098194a07f9b473e4a02c86a1eba7c
2017-07-13 18:49:10 -04:00
Mike Hommey
ed863255b4 Bug 1378592 - Remove MOZ_REPLACE_MALLOC_LINKAGE. r=froydnj
MOZ_REPLACE_MALLOC_LINKAGE was added back when there were problems with
getting weak references working properly for replace-malloc.

Versions of OSX < 10.6 needed flat namespace, but aren't supported
anymore.

Versions of Xcode < 4.5 required flat namespace + a dummy library in
order to produce proper weak references. There is virtually nobody still
building with such an ancient toolchain.

Keeping those around doesn't /really/ hurt, except recent versions of
Xcode don't expose dyldinfo in /usr/bin, used for the configure test.
Consequently, MOZ_REPLACE_MALLOC_LINKAGE ended up being set to use the
dummy library setup, which, by using flat namespace, now causes harm in
bug 1356701, causing bug 1378332.

--HG--
extra : rebase_source : e3edc1f2cf905943c33fafeb631f2f88fc87167e
2017-07-06 10:26:04 +09:00
Nathan Froyd
c4db85fbe1 Bug 1378440 - part 2 - add mach cargo check; r=rillian
Cargo recently introduced the `cargo check` command for shortening the
edit-compile cycle when working on large programs.  Since we don't
really support invoking `cargo` directly, let's wire up this command to
`mach`.  Gecko developers can then `mach cargo check` to ensure their
changes typecheck.
2017-07-05 14:19:31 -04:00
Nathan Froyd
d73da35d6b Bug 1378440 - part 1 - make Cargo invocation macro more generic; r=rillian
All the machinery we set up for `cargo build` is equally useful for
other commands, such as `cargo check`.  Let's refactor things so that
it's easy to reuse said machinery for `cargo check`.
2017-07-05 14:19:31 -04:00
Nathan Froyd
2c6c66c145 Bug 1377971 - part 3 - honor LIB_IS_C_ONLY in more cases; r=glandium
We currently only honor LIB_IS_C_ONLY for cases where we set a
LIBRARY (and, implicitly, REAL_LIBRARY) and FORCE_SHARED_LIB.  For many
libraries, such as the libraries from NSS, we never set LIBRARY, which
leads to not setting REAL_LIBRARY, which leads to not honoring
LIB_IS_C_ONLY.  This practice has not been harmful thus far (except
perhaps linking in more things than necessary to our NSS shared
libraries), but on some platforms, linking with the C++ compiler will
drag in more things than we would like.

Consulting LIBRARY first should not be necessary; checking
FORCE_SHARED_LIB should be enough to tell us if we're building a shared
library for the purposes of honoring LIB_IS_C_ONLY.
2017-07-05 14:05:10 -04:00
Nicholas Nethercote
b003a6a704 Bug 1377803 - Remove an unnecessary plarena.h #include in WebRTC. r=drno,glandium.
We can avoid the symbol visibility problem by putting
sanitizer/asan_interface.h in the config/system-headers.

--HG--
extra : rebase_source : bc81a81ef8970c3544febf06631740208583c7fa
2017-07-04 09:58:38 +10:00
Nathan Froyd
87007ca0f2 Bug 1377157 - remove VCINSTALLDIR from cargo's environment when running in MozillaBuild; r=ted.mielczarek
Stable Rust currently has logic similar to the following for finding the
linker on Windows:

  if VCINSTALLDIR in os.env:
    search for things in PATH
    if found, return, otherwise fallthrough

  look for MSVC installations of various kinds

For our current MozillaBuild setup where we clear out PATH prior to
invoking Cargo, this works: even though VCINSTALLDIR is set and we
(unsuccessfully) search through an empty PATH, we'll still fallback to
looking for MSVC installations.

Beta Rust has altered this search strategy:

  if VCINSTALLDIR in os.env:
    search for things in PATH
    return the result of the search, regardless of success

  look for MSVC installations of various kinds

Note that in the above logic, if VCINSTALLDIR is set, we are only going
to try looking in PATH for an appropriate linker.  Since PATH is empty
in our current MozillaBuild setup, beta Rust will therefore fail to find
the correct linker.  This failure causes numerous problems.

Since Firefox is already trying to "clean" the environment that Cargo is
invoked in, we should work a little bit harder by unsetting VCINSTALLDIR
entirely, and simply force Rust to search for known MSVC installations.
Making this change makes stable and beta Rust behave identically.

(We don't have to worry about this distinction in automation, because
the "cleaning" code is only activated when we detect a MozillaBuild
shell.)
2017-06-29 13:41:57 -04:00
Nicolas B. Pierron
702d71cbd0 Bug 1376921 - Remove mips from the list of checked MacroAssemblers. r=tcampbell 2017-06-29 18:49:10 +00:00
André Bargull
f277dc9e4b Bug 1353650 - Part 4: Update to ICU 59. rs=Waldo
--HG--
extra : rebase_source : bb1dcedef639ae3a9ee76521d8f9212831918ce4
2017-04-19 07:00:05 -07:00
André Bargull
cbcc8cbf51 Bug 1353650 - Part 3.1: Add unicode/unistr.h to system-headers to unbreak system-ICU builds. r=glandium
--HG--
extra : rebase_source : 05956804a24ddd1aa21aaa79b726102b9160186c
2017-05-11 01:30:09 -07:00
André Bargull
f57a277cd5 Bug 1353650 - Part 2: Update ICU stubdata build file for ICU 59. r=Waldo
--HG--
extra : rebase_source : 7d52b78212ae7973cbf6e68debdcce4c5336f7c3
2017-04-05 13:42:09 +02:00
Jeff Gilbert
58ae26fbc7 Bug 1376057 - Replace MSVC wrappers with std::exception::_Set_raise_handler. - r=froydnj
MozReview-Commit-ID: MG5c4bzDlI
2017-06-27 11:51:34 -07:00
Ted Mielczarek
94c9fe93f2 bug 1357825 - use sccache for caching Rust compilation. r=froydnj
MozReview-Commit-ID: 84PCmiVBlrV

--HG--
extra : rebase_source : ae23d383a1a2057d7027a4a6ffc9cfa4e3e15fcf
extra : histedit_source : 031e0d29f15b07208a08aba477d7bc9ca5a3f196
2017-05-01 11:58:45 -04:00
Chris Manchester
479795876a Bug 1370695 - Remove build system code handling binary components. r=glandium
MozReview-Commit-ID: BKHWR34vWsu

--HG--
extra : rebase_source : d870a222d393479bb8ede2aaec571299488806c0
2017-06-13 16:01:45 -07:00
Henri Sivonen
763d66dd51 Bug 1261841 part 4 - Add a configuration option for enabling explicit SIMD in Rust. r=froydnj.
MozReview-Commit-ID: ICifcJ9499a
2017-06-13 13:24:19 +03:00
ffxbld
120e57745f Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2017-06-12 13:48:15 +01:00
Ryan VanderMeulen
9b7a73b65a Merge m-c to autoland. a=merge
UPGRADE_NSPR_RELEASE UPGRADE_NSS_RELEASE

--HG--
extra : amend_source : a59e53ba2f8db608f613f21ad6da2b5be8814aa4
2017-06-07 22:55:56 -04:00
Marco Castelluccio
adc55303d4 Bug 1322803 - Allow setting additional rustflags via mozconfig. r=ted
--HG--
extra : rebase_source : 996d0e0f9ac85c10ad7b188585e823da74407384
2017-06-06 01:05:10 +01:00
Petr Sumbera
65cd55b48b Bug 1354576 - Allow to build NSPR on Solaris again. r=ted 2017-05-30 01:36:00 -07:00
Makoto Kato
9aa2fd8eed Bug 1364023 - Remove LOCALE_SNAME define for ICU build. r=glandium
Since we set WINVER=601 after dropping Windows XP support, it is unnecessary to define LOCALE_SNAME.  So, we should remove it to remove compiler warning.

MozReview-Commit-ID: EawbHAznXNA

--HG--
extra : histedit_source : d3157300315052048756c22ac2c999523d28679d
2017-06-05 14:13:16 +09:00
Petr Sumbera
1528ff18ca Bug 1369061 - Add Solaris atomic.h to system-headers. r=glandium
--HG--
extra : rebase_source : 688bb5e4532a83fad0d27067e8146c5839fc7d25
2017-05-31 07:39:41 -07:00
Masatoshi Kimura
755eb30580 Bug 1370511 - Suppress more warnings from MSVC when compiling ICU. r=ted.mielczarek
MozReview-Commit-ID: 6N48ksCMnyn

--HG--
extra : rebase_source : 02130293e25495f8bed3c00e580ae50d9ae548fc
2017-06-06 21:06:42 +09:00
Andreas Tolfsen
e2e6d226e5 Bug 1368264 - Fix missing RUST_PROGRAMS entry in if-condition r=froydnj
Final target Rust programs are currently not picked up and
symlinked/copied to ${objdir}/dist/bin because the RUST_PROGRAMS output
variable is missing from the if-condition.

This change causes Rust binaries from RUST_PROGRAMS to be placed alongside
the other final target programs.

MozReview-Commit-ID: 5OIH1UMmCq2

--HG--
extra : rebase_source : cfcff21e9371b920c895ad27df344008962d7471
2017-06-01 20:08:27 +01:00
Nathan Froyd
0fe161627a Bug 1368177 - quote {LIB,}CLANG_PATH for cargo; r=rillian
These paths can contain spaces, particularly if they point into
${HOME}/.mozbuild on Windows.  If people are bold enough to use the
Windows packages from llvm.org, the LLVM packages are installed by
default into C:\Program Files\LLVM, so paths from there would contain
spaces as well.
2017-05-28 17:13:30 -04:00
Ralph Giles
40e81c774e Bug 1365993 - Don't pass mac frameworks to cargo linker. r=froydnj
Procedural macros for rust are compiled as dynamic libraries.
The compiler subsequently loads those libraries at runtime
when it compiles crates which make use of them.

We pass the generic LDFLAGS to our linker wrapper which ensures
cargo links static libraries with the correct flags. However
this also means that any final system dependency libraries
end up linked into the procedural macro dynamic libraries
whether they use them or not.

When building on macOS 10.7, this causes a SIGTRAP when dlopen
calls CFInitialize for system libraries like Cocoa off the main
thread. We believe this is a macOS bug, reported fixed in macOS 10.9.
https://openradar.appspot.com/7209349

Work around the issue by stripping those libraries and Frameworks
from the linker flags we pass to cargo. We could do a more careful
job of parsing and removing all -framework and -lfoo arguments
inside the linker script, but since this is a temporary issue
while we're using older build machines, I thought just stripping
them once in the build system was simpler.

MozReview-Commit-ID: CGXD8ARvojj

--HG--
extra : rebase_source : 33f28e8fbafb43dbdd257d9162a6e792fca79e51
2017-05-25 14:49:32 -07:00
Ryan VanderMeulen
22d214ae4b Merge autoland to m-c. a=merge 2017-05-23 10:32:42 -04:00
Bruce Sun
30306bfc32 Bug 1358023: (2/2) Build freetype2 by using moz.build; r=glandium 2017-05-22 12:02:14 +08:00
Gregory Szorc
2b1957d1e5 Bug 1361172 - Rewrite code for finding files in VCS checkout; r=glandium
We're getting an intermittent failure running `hg manifest` in CI. I
have no clue why.

What I do know is that we now have the mozversioncontrol Python package
for containing utility code for interacting with version control. It is
slightly more robust and I'm willing to support it more than I am
check_utils.py.

This commit adds a new API to our abstract repository class to obtain the
files in the working directory by querying version control.

Since I suspect cwd was coming into play in automation, I've also
added a utility function to mozversioncontrol to attempt to find
a version control checkout from the current working directory. It
simply traces ancestor paths looking for a .hg or .git directory.

Finally, I've ported all callers of the now-deleted API to the new
one. The old code had some "../.." paths in it, meaning it only
worked when cwd was just right. Since we resolve the absolute path
to the checkout and store it on the repo object, I've updated the
code so it should work no matter what cwd is as long as a repo can
be found. I'm not 100% confident I found all consumers assuming cwd.
But it's a start.

I'm not 100% confident this will fix the intermittent issues in CI. But
at least we should get a better error message and at least we'll be
running less hacky code.

MozReview-Commit-ID: AmCraHXcTEX

--HG--
extra : rebase_source : 815ae369776577ad374333920fd645d412a55148
2017-05-18 16:06:49 -07:00
Xidorn Quan
fed3d8d65c Bug 1336540 - Move config info from build_gecko.rs to a toml file in gecko. r=emilio
MozReview-Commit-ID: 9w9UX38YMUt

--HG--
extra : source : 36bcb2c10614c9b9f597f13d302953f9af14f928
extra : amend_source : 8ac25556385e64fe8fae425ccc9bfdc1cbcc49ef
2017-05-19 12:51:48 +10:00
Wes Kocher
090e554ce2 Backed out 2 changesets (bug 1336540) for build bustage a=backout
Backed out changeset 1bef3928a127 (bug 1336540)
Backed out changeset 42feca9f0e17 (bug 1336540)

MozReview-Commit-ID: 8NH4gZcDy6E
2017-05-18 18:11:12 -07:00
Xidorn Quan
029693f013 Bug 1336540 part 1 - Move config info from build_gecko.rs to a toml file in gecko. r=emilio
MozReview-Commit-ID: 9w9UX38YMUt

--HG--
extra : rebase_source : 36bcb2c10614c9b9f597f13d302953f9af14f928
2017-05-19 10:25:36 +10:00
Iris Hsiao
0bbdca7c50 Merge mozilla-central to autoland
--HG--
rename : memory/mozjemalloc/jemalloc.c => memory/mozjemalloc/mozjemalloc.cpp
2017-05-18 14:15:19 +08:00
Nathan Froyd
4d16361faf Bug 1365668 - turn off select warnings for ICU; r=ted.mielczarek
We don't really care about these warnings, and they're just cluttering
the build.
2017-05-17 14:50:08 -04:00
Jon Coppeard
e26d8d5744 Bug 1361458 - Generate the phase tree for GC statistics recording ahead of time r=sfink 2017-05-17 10:37:18 +01:00
Sebastian Hengst
0c5a87d59f Backed out changeset 36f2908f6650 (bug 1361458) for crashing [@ js::GCMarker::drainMarkStack], e.g. in devtools' devtools/client/debugger/new/test/mochitest/browser_dbg-sourcemaps.js. r=backout 2017-05-17 12:53:58 +02:00
Jon Coppeard
03c00562c3 Bug 1361458 - Generate the phase tree for GC statistics recording ahead of time r=sfink 2017-05-17 10:37:18 +01:00
Makoto Kato
456d320877 Bug 1364840 - Part 1. Add sys/auxv.h to system-headers. r=glandium
gfx/skia/skia/src/core/SkCpu.cpp might use sys/auxv.h to detect CPU feature.  So we should add it to system-headers

MozReview-Commit-ID: SijyUYvLgn

--HG--
extra : rebase_source : 0b509c2f5b4f3272578ae511e9c69cf6b0999c42
2017-05-15 18:30:49 +09:00
Ralph Giles
f56cb16c14 Bug 1336153 - Remove MOZ_RUST. r=ted
We now have code that unconditionally requires the rust
compiler and are committed to adding more. Remove this
last vestige of conditional support.

MozReview-Commit-ID: EK6FBnAbR

--HG--
extra : rebase_source : 6efda10a74f9ca0482304c2b1ffe6941e42138f8
2017-05-09 11:36:13 -07:00
Lee Salzman
20ac00c192 Bug 1350262 - implement prime rehash policy compat for unordered_map and unordered_set in libstdc++. r=glandium
MozReview-Commit-ID: 1zlGjRMKcBM
2017-05-09 22:15:18 -04:00
Iris Hsiao
0b748916e8 merge mozilla-inbound to mozilla-central a=merge 2017-05-08 11:11:20 +08:00
Nathan Froyd
60baca157f Bug 1362516 - disable custom Cargo linker for TSan builds; r=rillian,f=bwc
For all the same reasons as why we disable the linker for ASan builds.
2017-05-05 16:53:37 -04:00
Ralph Giles
67df295692 Bug 1314147 - Add --enable-av1 configure switch. r=froydnj
Build system switch for optional inclusion of libaom
for support of the Alliance for Open Media AV1 video
codec.

MozReview-Commit-ID: 2C4o1ogRS9v

--HG--
extra : rebase_source : d4a68f1fc4654895f62a905666f0b75726e20e7f
2017-04-18 09:08:18 -07:00
Nick Alexander
744e5386aa Bug 1361418 - Remove Java Addons from Firefox for Android. r=sebastian
The Java Addons mechanism never got traction and is not Web Extensions
compatible.  Removing it simplifies the product and the build system.

MozReview-Commit-ID: ABUxkqqMISa

--HG--
extra : rebase_source : 346f88882774f072316714cf637a54d771d81a9a
2017-05-02 11:49:16 -07:00
Gregory Szorc
3712aeca37 Bug 1304508 - Remove makefile mkdir testing; r=ted
Several years ago, joey starting writing a handful of unit tests for
primitives in our make files. IIRC a lot of the impetus behind this
work was to flush out bugs between GNU make and pymake.

AFAICT the only survivor of these tests today is check_mkdir.py. The
test is a one-off and has been a bit fragile over the years,
contributing technical debt along the way. And as part of removing the
last references to pymake in automation, it is once again showing
itself and failing in a way that has to do with the way the test
is written and not an issue with the code it is testing. Enough is
enough. This commit removes the test and eliminates the technical
debt. I don't think it will be missed.

MozReview-Commit-ID: 3OzurtFbcyD

--HG--
extra : rebase_source : 6d3cf6121c90e9c47948862b8c4117bb1d3e5afd
2017-04-26 13:27:37 -07:00
Nathan Froyd
d3325ce1a2 Bug 1329737 - part 3 - use an alternate linker for Cargo invocations; r=rillian
For linking static libraries, rustc will use whatever `cc` it finds (or
the equivalent on Windows).  For our purposes, however, `cc` is not what
we use to link and we may have additional options we would like to pass
to the linker.

To do this, we need to tell Cargo about our alternate linker (currently
only used for target compilations, on the theory that the host compiler
rustc finds is probably good enough) and we also need to pass our linker
options into the process.  We do this with environment variables, which
is not a great solution, but works surprisingly well.

This alternate linker is disabled for ASan builds due to peculiar
crashes when running Rust build scripts and for Windows, because we
don't do any interesting cross-compiling there.
2017-04-28 14:06:41 -04:00
Nathan Froyd
67c11f7395 Bug 1329737 - part 2 - turn CARGO_BUILD into a callable function; r=rillian
This change paves the way for injecting target- or host-specific
environment variables for a particular `cargo build` invocation.  Doing
this is not strictly necessary: all of our current `cargo build`
invocations use mostly target-specific environment
variables (e.g. PKG_CONFIG_ALLOW_CROSS).  But separating things out
makes the code notationally cleaner and also avoids weirdness when
target==host.
2017-04-28 14:06:42 -04:00
Tom Ritter
f8c3899ea0 Bug 1353541 Fix rustc in MinGW build r=froydnj,ted
rustc generates .lib files for its libraries when compiling for Windows
(even using MinGW on Linux). But MinGW expects .a files. So we add in
rust-specific prefix and suffixes so MinGW builds can find the libs that
rustc generates. (And the RUST_LIB- variables default to the same vales
as the LIB_ variables otherwise.)

MozReview-Commit-ID: ClsA0YuJaxh

--HG--
extra : rebase_source : 7b46460c94ceb34b7a5a302ce91d3f1dca600041
2017-04-26 12:08:59 -05:00
Mike Shal
bdcfea4abc Bug 1359852 - Use REPORT_BUILD for .xpt files; r=chmanchester
By using $(REPORT_BUILD) instead of just echoing the filename, there is
no change during a regular build without REBUILD_CHECK, but specifying
REBUILD_CHECK in the environment will show which files triggered an .xpt
to rebuild. This is helpful in debugging why these files may be built
unnecessarily.

MozReview-Commit-ID: GGNaKAl02Ea

--HG--
extra : rebase_source : 098a81265deed9afc0b284d9863f18ebd74fda33
2017-04-18 09:27:36 -04:00
Robert O'Callahan
5bfc8d6e8f Bug 279212 - More robust argument detection for ELOG; r=bryner
--HG--
extra : rebase_source : 05a6ef097ceec287091dbce09da551cf0093599d
extra : amend_source : b0cc0b867e8f16bce13f0b41df40bfa48a5ef174
2005-01-21 03:56:31 +00:00
Kartikaya Gupta
0993695398 Bug 1355464 - Only clean out the environment variables that are affected by 32- vs 64-bit builds. r=ted
Instead of using the -i flag to clean out the entire set of environment
variables, we explicitly just clear out the variables that are affected by
32- vs 64-bit builds in vcvars.bat. This still allows cargo to use it's
internal autodetection to do host/target builds as it wants when cross-compiling,
but also allows other things that rely on include directories and so on to
work properly.

MozReview-Commit-ID: 99SECKv1zQa

--HG--
extra : rebase_source : 2c2a7d79201b66ac3262afcc5f060936ca2e8fa2
2017-04-11 13:35:40 -04:00
Nathan Froyd
15f364135a Bug 1358597 - always make Cargo verbose in automation; r=ted.mielczarek
This change brings Cargo closer to what our C/C++ build already does,
and some forms of Cargo failure are only diagnosed when you pass
`--verbose`, so let's eliminate that extra step for people.
2017-04-21 22:25:59 -04:00
Dragana Damjanovic
ecca1ff420 Bug 1310197 - Implement fast open nspr part. r=mcmanus,bagder 2017-04-20 14:11:26 +08:00
Mike Hommey
305ba77f06 Bug 1355671 - Add optimization flags to HOST_CXXFLAGS similarly to HOST_CFLAGS. r=gps
--HG--
extra : rebase_source : a8a0bef056cc7af6325c16b138134bcac561b97a
2017-04-07 17:03:21 +09:00
Sebastian Hengst
65b0030bdb Backed out changeset af627820b970 (bug 1355671) 2017-04-19 00:02:56 +02:00
Mike Hommey
6a7ad030a1 Bug 1355671 - Add optimization flags to HOST_CXXFLAGS similarly to HOST_CFLAGS. r=gps
--HG--
extra : rebase_source : 24148bbac4a6dc712d333473c5ce0a42b5e8c5bb
2017-04-07 17:03:21 +09:00
Nathan Froyd
2989feb7d7 Bug 1353810 - add a --enable-rust-debug option; r=chmanchester
For people working on Rust code, compiling in debug mode (Cargo's "dev"
profile) is convenient: debug assertions are turned on, optimization is
turned off, and parallel compilation inside of rustc itself can be
used.  These things make the build faster and the debugging experience
more pleasant.

To obtain that currently, one needs to --enable-debug at the Gecko
toplevel, which turns on debug assertions for the entire browser, which
makes things run unreasonably slowly.  So it would be desirable to be
able to turn *off* debug mode for the entirety of the browser, but turn
on debug mode for the Rust code only.

Hence this added switch, --enable-rust-debug, which does what it
suggests and defaults to the value of --enable-debug.  For our own
sanity and because we judge it a non-existent use case, we do not
support --enable-debug --disable-rust-debug.
2017-04-12 21:49:25 -04:00
Chris Manchester
5c47bb8d2e Bug 1337986 - Dump symbols during the compile tier. r=ted
This commit moves symbol dumping to the compile tier, to be run via "syms"
targets. Tracking files are used for the sake of incremental builds, because
dump_syms may genearate multiple outputs whose paths are not known ahead of
time.

Minimal changes to symbolstore.py are made here. More extensive
simplifications will be made in a future commit on the basis of symbolstore.py
handling one file at a time.

MozReview-Commit-ID: 3mOP8A6Y7iM

--HG--
extra : rebase_source : bfe97afcdfc05b9e79f01577701c83e8b00eb4e9
2017-02-10 08:34:08 -08:00
Chris Manchester
03bb24b8ba Bug 1337986 - Build dump_syms before any syms target. r=glandium
MozReview-Commit-ID: CXlmMVMhzmf

--HG--
extra : rebase_source : 0ce885e1827b406cc4342309a060a0c1fa57ba8b
2017-04-10 10:27:49 -07:00
Chris Manchester
4db8e0b54a Bug 1337986 - Generate "syms" targets for directories containing programs or shared libraries. r=glandium
This creates "syms" targets that depend on the corresponding "target" for
directories containing shared libraries or programs. These targets are added
to the main compile graph in automation, and can be invoked through a special
"symbols" target. A future commit will use these targets to dump symbols for
shared libraries and programs during the compile tier.

MozReview-Commit-ID: KLuvmqsK4Zj

--HG--
extra : rebase_source : 8d76b999cb6fac8f11168ac6ebfb58774dfc2d3c
2017-04-10 10:27:49 -07:00
André Bargull
f68188a9e5 Bug 1318403 - Part 4.1: Handle special casing characters in String.prototype.to(Lower|Upper)Case. r=Waldo 2017-04-06 10:11:05 +02:00
Carsten "Tomcat" Book
3a762886de Merge mozilla-central to mozilla-inbound 2017-04-07 15:33:03 +02:00
André Bargull
5923180124 Bug 1353649 - Update tzdata in ICU data files to 2017b. r=Waldo
--HG--
extra : rebase_source : 48f6ab3a2bc6c91a1b6cc7429dd1ac0cb12d68ff
extra : histedit_source : 9687446c9877953592b99dd51a6a4d22af874a70
2017-04-05 10:49:53 +02:00
Michael Layzell
a6f6b4a390 Bug 1320179 - Part 4: MOZ_OBJDIR->MOZ_TOPOBJDIR and update m-c-changes.patch for protobuf changes, r=fitzgen
MozReview-Commit-ID: EPhkF350sGY
2017-04-06 18:37:31 -04:00
Michael Layzell
981693a30f Bug 1320179 - Part 2: Add the nserror rust crate and generate NS_ERROR codes, r=froydnj
MozReview-Commit-ID: FFU6WfEqev
2017-04-06 18:37:25 -04:00
Wes Kocher
1f91b9d155 Backed out 4 changesets (bug 1320179) for causing merge conflicts a=backout
Backed out changeset b8aa677f7452 (bug 1320179)
Backed out changeset 9e2f77570128 (bug 1320179)
Backed out changeset 470d8143b350 (bug 1320179)
Backed out changeset ea4f1b3cc7b1 (bug 1320179)
2017-04-06 15:29:24 -07:00
Michael Layzell
c33097aeaa Bug 1320179 - Part 4: MOZ_OBJDIR->MOZ_TOPOBJDIR and update m-c-changes.patch for protobuf changes, r=fitzgen
MozReview-Commit-ID: EPhkF350sGY
2017-04-06 17:37:13 -04:00
Michael Layzell
df411f4313 Bug 1320179 - Part 2: Add the nserror rust crate and generate NS_ERROR codes, r=froydnj
MozReview-Commit-ID: FFU6WfEqev
2017-04-06 17:22:08 -04:00
Mike Hommey
94c16743bb Bug 1344038 - Remove --disable-gio. r=karlt
--HG--
extra : rebase_source : 3b5b820536b0e9b1fb1da3a16c444ed7839770b9
2017-04-05 14:06:25 +09:00
Kartikaya Gupta
8e237884f7 Bug 1350001 - Run cargo in a clean environment when running in a MozillaBuild shell. r=ted
This prevents the variables set in vcvars.bat from causing build failures when
cargo tries to process build scripts in an environment where the default rust
toolchain doesn't match the MozillaBuild shell (in terms of 32-bit or 64-bit).

MozReview-Commit-ID: 5VRnQToYUYf

--HG--
extra : rebase_source : 4ac11f13e17ab04e70c7cb6f60ff46865027f506
2017-04-06 09:59:14 -04:00
Sebastian Hengst
c8c533b78e Backed out changeset dc695c2ea24e (bug 1349064) for breaking Android build. r=backout 2017-04-06 22:49:32 +02:00
Sebastian Hengst
be8901b6ca Backed out changeset 02e10c8eeb95 (bug 1349064) 2017-04-06 22:48:45 +02:00
Sebastian Hengst
110cacbc58 Backed out changeset 8c35a43033bc (bug 1349064) 2017-04-06 22:48:41 +02:00
Jeff Gilbert
4fbb95ac43 Bug 1349064 - Replace MSVC wrappers with std::exception::_Set_raise_handler. - r=froydnj
MozReview-Commit-ID: MG5c4bzDlI
2017-04-06 13:05:36 -07:00
Jeff Gilbert
eaabf3f60f Bug 1349064 - Add <regex> to config/std-headers. - r=froydnj
MozReview-Commit-ID: 6PwjR2ENnfa
2017-04-06 13:05:33 -07:00
Jeff Gilbert
6616a79634 Bug 1349064 - Sort std-headers. - r=froydnj
MozReview-Commit-ID: IAgrtLrwqwD
2017-04-06 13:05:25 -07:00
Sebastian Hengst
312ab71575 Backed out changeset c34970cf36e9 (bug 1318403) 2017-04-06 15:23:13 +02:00
André Bargull
7bead5484a Bug 1318403 - Part 4.1: Handle special casing characters in String.prototype.to(Lower|Upper)Case. r=Waldo
--HG--
extra : rebase_source : 76ecb13008f5c7d5f224b08034653197df56966e
2017-04-06 10:11:05 +02:00
Mike Hommey
77e5b564fc Bug 1353640 - Also check sources in the objdir to preprocess generated sources. r=mshal
--HG--
extra : rebase_source : f4334635680d54e730346798450db8722f0443ff
2017-04-05 16:39:51 +09:00
Mike Hommey
91b701d7c6 Bug 1353640 - Use more targetted vpath instead of broad VPATH for preprocessor rules. r=mshal
VPATH applies to everything, but vpath applies to files matching the
pattern it's given.

--HG--
extra : rebase_source : 17339820e34f4d2f3d4ddde1a8a4325e92bfdb9e
2017-04-05 16:36:24 +09:00
Mike Hommey
9939009c87 Bug 1353640 - Avoid the preprocessor rules creating dependency files. r=mshal
--HG--
extra : rebase_source : bb9916f99533f518f1e65d5309130024c9288fb6
2017-04-05 16:33:37 +09:00
Mike Hommey
b7fd4125eb Bug 1353640 - Factor the preprocessing rules to avoid all the redundancy. r=mshal
--HG--
extra : rebase_source : 4e45edfc94b06877ce25f1df5832faf61b236f66
2017-04-05 16:31:40 +09:00
Iris Hsiao
15a34cacd2 Backed out 3 changesets (bug 1344038) for bustage
Backed out changeset 4befea89d81b (bug 1344038)
Backed out changeset c859506b2e4e (bug 1344038)
Backed out changeset 5d28a6382285 (bug 1344038)

--HG--
rename : netwerk/protocol/gio/moz.build => extensions/gio/moz.build
rename : netwerk/protocol/gio/nsGIOProtocolHandler.cpp => extensions/gio/nsGIOProtocolHandler.cpp
2017-04-06 10:35:56 +08:00
Mike Hommey
0543a25916 Bug 1344038 - Remove --disable-gio. r=karlt
--HG--
extra : rebase_source : b380d5ebfc3689a9d8d4e3825c83028f837838f2
2017-04-05 14:06:25 +09:00
Mike Hommey
4bd092e460 Bug 1262241 - Add a build system mode that prints out how directories are recursed. r=mshal
Run with:
  make -C objdir target RECURSE_TRACE_ONLY=1

--HG--
extra : rebase_source : 25fd1812985433523cf94998b6f48fab8ace526f
2017-04-04 14:02:45 +09:00
Mike Hommey
767a11189c Bug 1353259 - Remove build system parts that generate a dtrace ELF object. r=mshal
The code doing that was already excluding OSX, so we obviously don't
need it on OSX. On FreeBSD, afaict, USDT (userspace dtrace) probes don't
require that extra ELF object. Solaris presumably does, but the 6 years
old bug 702179 says it's not been working for that long, and configure
doesn't support Solaris targets anyways.

Keeping this build system code working past the changes coming in bug
1262241 is not guaranteed and can't be tested, so I'd rather get rid of
effectively dead code rather than trying to maybe not break it while
moving it.

--HG--
extra : rebase_source : b41ab77804c17529e2580ced8e8b5fd302ff7831
2017-04-04 13:30:44 +09:00
Mike Hommey
f4f1b7ba10 Bug 1353259 - Remove rules.mk sections depending on DTRACE_LIB_DEPENDENT. r=mshal
Nothing sets DTRACE_LIB_DEPENDENT.

--HG--
extra : rebase_source : adc650b19f1fa3af519d47482998033ccabb83a3
2017-04-04 13:28:11 +09:00
Jan Beich
b7a7bfc4a0 Bug 1350426 - Define HAVE_POINTER_LOCALTIME_R in NSPR for Unix. r=glandium
MozReview-Commit-ID: FwMPxCDRTZS

--HG--
extra : rebase_source : 44644a63ddb401e409cddcd654025b8a8e9e0bfb
2017-03-24 19:45:06 +00:00
Tooru Fujisawa
bdbfda64bc Bug 1343417 - Verify bytecode documentation in js/src/vm/Opcodes.h in make check. r=nbp 2017-04-03 10:14:38 +09:00
Ting-Yu Chou
9df076864f Bug 1347796 - Bump stack size 3x larger than default for win64 ASan. r=dbaron,gps
This is a similar issue to bug 582910 which the stack isn't big enough
to run the tests that recurse deeply. Set it 3x larger because the
offical site states they've seen up to 3x stack memory increase for
ASan, also the number was confirmed by the measurements in bug
1259796.


MozReview-Commit-ID: FLASlkVrEUM

--HG--
extra : rebase_source : 3e82439e3df7b1e2fa1759c9693bd197431c9f71
2017-03-20 10:52:00 +08:00
Xidorn Quan
12ae34813a Bug 1348157 - Add RUST_BACKTRACE=1 for cargo build. r=glandium
MozReview-Commit-ID: LOqNlOWZ2fC

--HG--
extra : source : a71fcfc7da72c159537cb3fd5ff9e3ef26168dac
2017-03-22 10:08:48 +11:00
Geoff Brown
df122d5bfa Bug 1340584 - Remove devicemanagerSUT and references to sutagent; r=wlach
sutagent is no longer built or used; devicemanagerSUT is completely
unused. After this change, devicemanagerADB is the only implementation of
devicemanager, and test harness options like --dm_trans are eliminated.
2017-03-21 12:20:01 -06:00
Jan Beich
2b7ca7d884 Bug 1348021 - Unbreak config/gcc_hidden.h build with libc++ after bug 1341238. r=froydnj
MozReview-Commit-ID: Bfv6inLV7lV

--HG--
extra : rebase_source : f0e2f461f4d3f4f54bf3d6db61a1202da7e8234c
2017-03-16 18:15:49 +00:00
David Major
d1bf9bd2fd Bug 1345998: Clean up some unused libs and delayloads in xul.dll. r=glandium
MozReview-Commit-ID: 5VgLdt2esRY

--HG--
extra : rebase_source : 9197b09d2d27a5d38dec0a530afc30abe984481e
2017-03-14 22:23:52 +13:00
Makoto Kato
cebfbb06e4 Bug 1345336 - Part 2. Update ICU date file. r=Waldo
MozReview-Commit-ID: 2CWHVsLtaIt
2017-03-13 13:38:01 +09:00
Sebastian Hengst
13270bd74d Backed out changeset 2140db6f8e48 (bug 1345336) 2017-03-13 10:46:40 +01:00
Makoto Kato
1f276e17d9 Bug 1345336 - Part 2. Update ICU date file. r=Waldo
MozReview-Commit-ID: 2CWHVsLtaIt

--HG--
extra : rebase_source : 0b800d13b8b1a4ab86a9f0e0472b4d7beb38eb79
2017-03-13 13:38:01 +09:00
BharatR123
a919e5ab29 Bug 1317099 - Fix filename in check_spidermonkey_style.py error message r=arai
MozReview-Commit-ID: 14H09snq6ht

--HG--
extra : rebase_source : 867fe7d39ab9e79dfdde4b8af15ebd6b94e7c491
2017-03-09 18:14:03 +05:30
Makoto Kato
37ffe9aa86 Bug 1340393 - Remove -FS option on SIMPLE_PROGRAM. r=glandium
Although bug 1322703 is backed out, we can remove -FS options to build SIMPLE_PROGRAM.

MozReview-Commit-ID: 7uO3We5hc5n

--HG--
extra : rebase_source : 6f909c4f38ba5a5bdffed7f9ca5be0030b9c681b
2017-03-07 17:19:04 +09:00
ffxbld
cce942762c Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release
MozReview-Commit-ID: GEyM0F1O4hP
2017-03-06 23:53:55 +01:00
Carsten "Tomcat" Book
cf269a43bd merge mozilla-inbound to mozilla-central a=merge 2017-03-03 13:03:48 +01:00
Makoto Kato
005b442f5f Bug 1225401 - Part 3. Update icudt58l.dat. r=Waldo
MozReview-Commit-ID: GxwJdkk134q
2017-03-03 15:16:06 +09:00
Makoto Kato
46f32e1ec4 Backed out changeset 8c51fd25a389 (bug 1225401)
MozReview-Commit-ID: HdWed0PDTc6
2017-03-03 14:16:07 +09:00
Makoto Kato
50db2c3032 Bug 1225401 - Part 3. Update icudt58l.dat. r=Waldo
MozReview-Commit-ID: BuB7VT3mwiS
2017-03-03 13:56:28 +09:00
Chris Manchester
69554aaee0 Bug 1339673 - Only force re-linking during PGO builds for the compile tier. r=glandium
Depending on a library or program in misc during a pgo build causes extraneous
rebuilding due to an added FORCE dependency, so we stop adding it except during
the compile tier.

MozReview-Commit-ID: 91dZFa6IRzt

--HG--
extra : rebase_source : 9994a5c05865c81d95ea075c753e270d3c223570
2017-02-17 11:08:50 -08:00
Sebastian Hengst
0c32b64e57 Backed out changeset 4aa866ebfeaa (bug 1322703) 2017-03-01 18:45:56 +01:00
Ted Mielczarek
be6f12e547 bug 1322703 - use -Fd to specify unique PDB filename per-object-file for MSVC. r=glandium
MozReview-Commit-ID: CxpLruksaHg
2017-03-01 18:41:46 +01:00
André Bargull
e10fb026e9 Bug 1343493 - Update tzdata in ICU data files to 2017a. r=Waldo 2017-03-02 02:11:16 -08:00
Ted Mielczarek
b89045917e backout b7a2f7ff5e87 (bug 1322703) for making local xul.dll link times way slower
MozReview-Commit-ID: 5QVFWVhfFfD
2017-03-01 10:37:35 -05:00
Nathan Froyd
1cbbd567b5 Bug 1302704 - part 1 - define CARGO_TARGET_DIR in the backend; r=chmanchester
CARGO_TARGET_DIR is currently hardcoded to the current directory, but
we'd like the ability to choose a value for Rust libraries.
2017-02-23 10:35:07 -05:00
Iris Hsiao
bc5590a600 Merge mozilla-central to autoland 2017-02-22 16:17:36 +08:00
Phil Ringnalda
53ccf8158e Backed out 5 changesets (bug 1318370) for mozilla-central Windows static-analysis bustage
Backed out changeset 196f9ddbf7aa (bug 1318370)
Backed out changeset 72f6eace33a1 (bug 1318370)
Backed out changeset c0c0e10ed613 (bug 1318370)
Backed out changeset a8032ae9cb2a (bug 1318370)
Backed out changeset 0848b3201c40 (bug 1318370)
2017-02-21 21:22:01 -08:00
Zibi Braniecki
27ba812587 Bug 1312053 - Expose an API to get locale information. r=Waldo
MozReview-Commit-ID: LivVJzrb3X1

--HG--
extra : rebase_source : a8c566cf918f01216e9f22e953da935ce41b7654
2017-02-17 20:06:43 -08:00
Lee Salzman
fffec15aa3 Bug 1321129 - make nsShmImage stride compatible with XShm. r=karlt
MozReview-Commit-ID: GuiVTPKvAZM
2017-02-21 10:00:52 -05:00
Ted Mielczarek
0ba51f3683 bug 1318370 - move _DEPEND_CFLAGS+CL_INCLUDES_PREFIX to toolchain.configure, ignore {CC,CXX}_WRAPPER when using sccache r=glandium
Currently mozconfig.cache overrides a few build options for sccache. This
patch moves them into toolchain.configure so that the build system will
set them properly when sccache is in use. Additionally, {CC,CXX}_WRAPPER
are set in config.mk, so just avoid setting them when sccache is in use.

MozReview-Commit-ID: FYlVKRI8OiN

--HG--
extra : rebase_source : cc7e4346869b98a52840c101824044abc236637f
2017-01-10 16:52:27 -05:00
Ted Mielczarek
5d759be63f bug 1318370 - stop using -Z7 for MSVC compilation with sccache. r=glandium
We've been using -Z7 to make MSVC emit CodeView debug info directly in
the object files instead of in PDB files because sccache can't cache
PDB files if the same one is written to by multiple compiles, which
was previously happening in our build system, and was hard to override
in the NSS build. Now that those are fixed this should work fine.

This adds a bit to the compile rule to remove the PDB file before
compilation, since sccache won't cache a compilation if the PDB file
it is supposed to generate already exists (for the aforementioned reason).

MozReview-Commit-ID: rFlX0XfTGw

--HG--
extra : rebase_source : 8f991ce72115537466f5720c20dc53083f3b2b35
2016-12-14 14:58:26 -05:00
Ralph Giles
1021cfbd7f Bug 1340672 - Don't clobber CARGOFLAGS in non-debug builds. r=froydnj
Previously, we overrode the CARGOFLAGS when we set --release
for non-debug builds. This was an oversight from bug 1310939.

MozReview-Commit-ID: LOBkCmxwDzc

--HG--
extra : rebase_source : 0325d1705cb28d6c82369abffc6fac3ca5ee6f0a
2017-02-17 12:50:29 -08:00
Ralph Giles
d3fb57abec Bug 1340587 - Remove MOZ_CARGO_SUPPORTS_FROZEN. r=froydnj
We now require cargo by version, and the minimum (0.16)
supports --frozen, so we don't need to check for this.

MozReview-Commit-ID: GPoadLkhRO5

--HG--
extra : rebase_source : e191e5dd2533e28c1bca0812f2776196cc3559cf
2017-02-17 12:16:45 -08:00
Mike Shal
206b54e042 Bug 1338608 - Use mozunit in check_mkdir.py; r=chmanchester
This makes the check_mkdir.py match the TEST-PASS output of other tests
in the suite.

MozReview-Commit-ID: FR3m09wRXg0

--HG--
extra : rebase_source : 2e59fb8bc4756a9ef9fdbcf69af80e179be80cc0
2017-02-02 18:04:23 -05:00
Mike Shal
0acd1a6b5f Bug 1338608 - Move check_mkdir.tpy into a python unittest manifest; r=chmanchester
We also rename it to check_mkdir.py for consistency with other python
files.

MozReview-Commit-ID: ALuX6NUMsD2

--HG--
rename : config/tests/makefiles/autodeps/check_mkdir.tpy => config/tests/makefiles/autodeps/check_mkdir.py
extra : rebase_source : a7215c832896dd040ae2c5b3c3c2d7247c8163d8
2017-02-02 17:49:11 -05:00
Mike Shal
e86326d270 Bug 1338559 - Use the tier system to recurse for 'make check'; r=glandium
This helps us avoid recursing over every directory when we only need to
run 'make check' in a select few.

MozReview-Commit-ID: BJ3hJBOneIz

--HG--
extra : rebase_source : 2493f924b9ccba3c779e512d7a8b7a2c26f43797
2017-02-03 16:47:28 -05:00
Carsten "Tomcat" Book
4b09103e6f Merge mozilla-central to mozilla-inbound 2017-02-16 13:18:55 +01:00
Michał Górny
f9a50474a4 Bug 1329798 - Include sys/sysmacros.h for major(), minor() on Linux. r=glandium
Include sys/sysmacros.h explicitly as that will be required by future
glibc versions to expose major() and minor() macros.

Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1329798
2017-02-15 00:49:00 +01:00
Tooru Fujisawa
43fdb1c7f0 Bug 1336783 - Part 1: Rework on reserved word and remove TokenStream::KeywordIsName. r=jwalden
--HG--
rename : js/src/jsautokw.py => js/src/frontend/GenerateReservedWords.py
rename : js/src/vm/Keywords.h => js/src/frontend/ReservedWords.h
2017-02-15 23:53:05 +09:00
Wes Kocher
51dac1f2e8 Merge m-c to autoland, a=merge
MozReview-Commit-ID: FqToQ9qk7dg
2017-02-15 16:33:46 -08:00
Ted Mielczarek
778b18b977 bug 1322703 - use -Fd to specify unique PDB filename per-object-file for MSVC. r=glandium
MozReview-Commit-ID: CxpLruksaHg

--HG--
extra : rebase_source : 16087aba96fb7e0d7f764b4ca21d27a78a19df4d
2016-12-14 14:40:59 -05:00
Kartikaya Gupta
7ed8a4e41a Bug 1337895 - Make the pkg-config rust crate happy when cross-compiling. r=froydnj
MozReview-Commit-ID: 1430wwCYbj4

--HG--
extra : rebase_source : a66e085219992f0cb75857afebeb1003df95bbdd
2017-02-08 14:13:50 -05:00
Tom Ritter
8d3b0051f6 Bug 1336569 Define SYMBOL_UNDERSCORE for ffi in the mingw build r=glandium
MozReview-Commit-ID: 6BiTcohFDPk

--HG--
extra : rebase_source : d783f2950009d07ea45cdcc693771f4141df6ee9
2017-02-08 09:36:04 -06:00
Martin Stransky
609b4c9aad Bug 1336047 - Add gdk/gdkwayland.h to system headers, r=glandium 2017-02-02 02:08:00 +01:00
Gregory Szorc
19ffcf1738 Bug 1322769 - Declare servo rust feature properly; r=manishearth
268fa5f3bc25 grafted an old patch to define --features=servo in
rules.mk. That patch was written before RUST_LIBRARY_FEATURES
existed. This commit fixes it up.

MozReview-Commit-ID: L5atm5CsP8d

--HG--
extra : amend_source : 9362db15a696ebd5871df94afb429d6f828de184
2017-02-02 16:32:54 -08:00
Gregory Szorc
aaae03d7a8 Bug 1322769 - Add a "servo" feature; r=manishearth
MozReview-Commit-ID: A9dNTxNkl39

--HG--
extra : rebase_source : b9d115025beb00d596d34ca8d414a69b8ea2ba07
extra : source : f142ed52978bfab6407c252b7c56c53d0c3fcecd
2017-02-02 15:30:16 -08:00
Wes Kocher
f5eab47fb9 Merge m-c to autoland, a=merge
MozReview-Commit-ID: HVH8TbXbw7N
2017-02-01 16:30:50 -08:00
Michael Layzell
0dadca05f7 Bug 1335203 - Synchronize rust debug-assertions with C++ DEBUG, r=froydnj
MozReview-Commit-ID: JPD9eNFg89S
2017-02-01 13:54:22 -05:00
Chris Manchester
d668d760b9 Bug 1333135 - Do not attempt to install SIMPLE_PROGRAMS during MOZ_PROFILE_GENERATE. r=mshal
MozReview-Commit-ID: BNvX0dFAIUf

--HG--
extra : rebase_source : ef5ccc377253b27012c7501197c232a18097a4f5
2017-02-01 10:59:41 -08:00
Mike Hommey
dc5d1e6adf Bug 1335309 - Change the default for find_executables to False. r=mshal
Back when the class was written, for the packaging code, it made sense
that the default was True. But now that it's used all over the place,
and that the vast majority of uses are with find_executables=False, it
makes more sense for that to be the default.

--HG--
extra : rebase_source : ff813735fc0d53093f348f20eb77ee03e9b09d4e
2017-01-31 14:06:15 +09:00
Benjamin Smedberg
beb6ea8925 Bug 1333826 - Remove a few references from .mk files, r=mshal
MozReview-Commit-ID: E5cDr4OO91C

--HG--
extra : rebase_source : 3480c22581113ceee42e07e933f10447048cec70
2017-01-25 14:21:30 -05:00
Benjamin Smedberg
ca77995f5d Bug 1333826 - Remove SDK_FILES, SDK_LIBRARY, and related is_sdk support in the build goop, r=mshal
MozReview-Commit-ID: 52vPyDXdFte

--HG--
extra : rebase_source : c3217730bb70eb7319152dd07536b12f49d6a597
2017-01-30 11:24:10 -05:00
Nathan Froyd
960aa50e1b Bug 1324296 - only enable verbose cargo output if BUILD_VERBOSE_LOG; r=ted.mielczarek
This mirrors what we do elsewhere for C/C++/etc.
2017-01-26 20:38:27 -05:00
Chris Manchester
26adeacc8a Bug 1312916 - Add support for host rust libraries in moz.build. r=froydnj
MozReview-Commit-ID: It8VH5Obnx5

--HG--
extra : rebase_source : bc4dabb18ff51c45ac8df5a409881d0d4a7279fa
2017-01-19 14:58:10 -08:00
ffxbld
ed04f7a449 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2017-01-23 15:38:06 +00:00
nfroyd@mozilla.com
8b92f8beb8 Bug 1302028 - part 6 - pass LIBCLANG_PATH and CLANG_PATH environment variables to cargo build; r=gps 2017-01-20 16:33:04 +00:00
Jan Beich
37441c2712 Bug 1325246 - Unbreak build --with-system-icu after bug 1270146. r=glandium
MozReview-Commit-ID: Dob5wTmHgxn

--HG--
extra : rebase_source : 7505163d23978c4cbb308314ba78a7063199face
2016-12-22 01:42:19 +00:00
André Bargull
da4c250c9f Bug 1323254 - Part 1: Update in-tree ICU to release 58.2. r=Waldo 2016-12-13 13:15:43 -08:00
Zibi Braniecki
ee5fe1af13 Bug 1270146 - Add PluralRules API. r=Waldo
MozReview-Commit-ID: 2WCcMjiGjwZ

--HG--
extra : rebase_source : 4fa494e35424be579ba3714bab2a4e1932d6404c
2016-12-20 11:54:44 -08:00
Xidorn Quan
a2cddc7eb7 Bug 1323127 - Pass absolute path of DIST to cargo. r=froydnj
MozReview-Commit-ID: GOK2MSA6imC

--HG--
extra : rebase_source : 4abe1a93ff488a4612f4f6f4ca3961c9db3456e7
2016-12-13 15:38:37 +11:00
Phil Ringnalda
5b74c14e18 Backed out changeset 349a316ed0f7 (bug 1316735) for build packaging failures
CLOSED TREE
2016-12-13 10:48:40 -08:00
Jack Bates
c2c1c10265 Bug 1316735 - Relative symlinks in the dist directory. r=gps
Make the symlinks in the dist directory relative instead of absolute.

MozReview-Commit-ID: HS7KL4JwSbV

--HG--
extra : rebase_source : 5dca673cc17423d47e6707d8800f7ee9693a9c48
2016-11-10 22:24:38 +00:00
André Bargull
d1745aead9 Bug 1321030: Update tzdata in ICU data files to 2016j. r=Waldo 2016-11-29 15:16:21 -08:00
Phil Ringnalda
2edc2d42db Merge m-i to m-c, a=merge
MozReview-Commit-ID: ByPMe4s1FrG
2016-12-02 22:17:31 -08:00
Gregory Szorc
c7c65f2fb5 Bug 1321750 - Remove automatic color flags from HOST_CFLAGS, HOST_CXXFLAGS; r=glandium
moz.configure only sets the color flags value for the target compiler.
If the host compiler is a different version and doesn't support color
flags, we may pass unrecognized command line options.

Until we have better distinction between host and target compilers
throughout the build system, just disable automatic color flags for
host invocations. We don't have too many host binaries, so this should
have negligible impact.

MozReview-Commit-ID: KWTLkKvtwHs

--HG--
extra : rebase_source : 97a7240a796bae42221b2952d4dc1e66294e6219
2016-12-02 10:10:24 -08:00
Nathan Froyd
1c12d3858c Bug 1319156 - part 2 - handle Rust library features in the recursivemake backend; r=chmanchester 2016-12-02 11:39:15 -05:00
Nathan Froyd
8783deedb3 Bug 1318981 - part 2 - pass MOZ_DIST as an environment variable to cargo build; r=chmanchester
rust-bindgen, at least, will need to know where Gecko's headers are to
parse them.
2016-12-02 11:38:45 -05:00
Nathan Froyd
b3f52ed877 Bug 1318981 - part 1 - factor out a CARGO_BUILD makefile variable; r=chmanchester
This change makes the individual cargo rules easier to understand, and
provides a single place to change e.g. environment variables passed to
cargo.
2016-12-02 11:38:45 -05:00
Ting-Yu Chou
4941450f3f Bug 1316545 part 4 - Run clang.exe instead of clang-cl.exe for loading the plugin. r=ehsan,glandium
MozReview-Commit-ID: K85tFo0nzoI

--HG--
extra : histedit_source : 2652e6144760cf77d10ba3b28fc73b85378ec585
2016-11-22 14:20:58 +08:00
Mike Hommey
07083a8dfb Bug 1317504 - Make MSVC builds use the LINK variable instead of LD. r=chmanchester
At the same time, remove HOST_LD. It was only used for MSVC builds,
which don't support cross-compile anyways, so we can, at least for now,
use LINK for both host and target.

--HG--
extra : rebase_source : 9ee9e7e1bd3edefc043fa63d5c03f2a242f76982
2016-11-24 15:45:16 +09:00
Nathan Froyd
36fb414815 Bug 1293253 - part 6 - add build and installation rules for {HOST_,}RUST_PROGRAMS; r=chmanchester
The only complicating factor here is having to split out the --target
flag from cargo_build_flags, so we can pass the appropriate one
depending on our build target.
2016-11-28 11:20:39 -05:00
Nathan Froyd
3d6a6a666a Bug 1293253 - part 5 - move cargo_build_flags determination out of RUST_LIBRARY_FILE block; r=chmanchester
We need cargo_build_flags not just for Rust libraries now, but for Rust
programs as well.
2016-11-28 11:20:39 -05:00
Nathan Froyd
cd91c3196d Bug 1293253 - part 1 - modify existing Rust library build rules to be explicitly about libraries; r=chmanchester
In preparation for a world where we have cargo building binaries too,
the existing rules should be renamed to reflect their library
associations.  The lone Cargo invocation should be updated to explicitly
build libraries only, so libraries and binaries in the same directory
will work correctly.

Fixup a leftover comment from a previous set of changes while we're here.
2016-11-28 11:20:39 -05:00
Wes Kocher
b851c06cc9 Merge m-c to inbound, a=merge 2016-11-23 16:18:24 -08:00
André Bargull
fa6366e3c1 Bug 1319465 - Use the newer ICU string normalization API to improve performance for partially normalized strings. r=arai 2016-11-22 09:20:18 -08:00
Sebastian Hengst
e572ef1bbb Backed out changeset aabf76e98464 (bug 1319465) for failure in Intl.h in Sm-tc(nu). r=backout 2016-11-23 17:40:54 +01:00
André Bargull
f65a5306ad Bug 1319465: Use the newer ICU string normalization API to improve performance for partially normalized strings. r=arai 2016-11-22 09:20:18 -08:00
Gregory Szorc
ef9dd4c540 Bug 1319166 - Don't automatically enable color in iTerm2; r=glandium
iTerm2 interprets the byte sequence "ESC [ 2 i" as a request to open
a print dialog. This sequence can get emitted when printing colorized
compiler output.

Until we figure out a workaround, disable automatic coloring on iTerm2
so developers aren't annoyed.

MozReview-Commit-ID: 3Be4YgArg4k

--HG--
extra : rebase_source : e4e441a6fd97b09f55b05d53af91890649249e1c
2016-11-21 22:37:01 -08:00
Carsten "Tomcat" Book
8b27dda5d1 merge mozilla-inbound to mozilla-central a=merge 2016-11-22 15:53:05 +01:00
Andrew Halberstadt
6adcf5b456 Bug 1317970 - Use manifestparser manifests for python unit tests, r=chmanchester
This deprecates PYTHON_UNIT_TESTS and replaces it with PYTHON_UNITTEST_MANIFESTS.
In the build system, this means python unittests will be treated the same as all
other test suites that use manifestparser. New manifests called 'python.ini' have
been created for all test directories containing python unittests.

MozReview-Commit-ID: IBHG7Thif2D

--HG--
extra : rebase_source : 11a92a2bc544d067946bbd774975140147458caa
2016-11-16 09:59:22 -05:00
Mike Hommey
e8af659498 Bug 1319345 - application.ini fixup for artifact build bustage; r=gps
--HG--
extra : amend_source : 2ee3e26e5e68bbdf718d02dd0d86d40fb0d18be6
2016-11-22 14:50:28 -08:00
Nathan Froyd
55243ce768 Bug 1300835 - enable --disable-optimize --enable-debug to DTRT for Rust code; r=ted.mielczarek 2016-11-21 17:39:39 -05:00
Richard Marti
26169e82fa Bug 1318798 - Remove config/external/nss/target in recurse.mk. r=ted
MozReview-Commit-ID: 884NGQYXfQl

--HG--
extra : amend_source : ed7edd124dc7f1847063f5c0f5a9b068cf45ffa3
2016-11-19 16:15:35 +01:00
Ted Mielczarek
a449823a50 bug 1295937 - build NSS using gyp files. r=glandium
MozReview-Commit-ID: Gm1PLWSJwbD

--HG--
rename : config/external/nss/moz.build => security/moz.build
rename : config/external/nss/nss.symbols => security/nss.symbols
extra : rebase_source : bedd3b2f315f8504e1d0cb1ee94720e380466e5b
2016-11-09 12:37:09 -05:00
André Bargull
af66848eae Bug 1314920 - Update tzdata in ICU data files to 2016i. r=Waldo
--HG--
extra : rebase_source : 3c3b0fa19d7d8f8a47148afaea4290fe6d9b6e65
2016-11-07 10:10:21 -08:00
Gregory Szorc
4732e7cb34 Bug 1171610 - Automatically enable color in compiler output; r=glandium
GCC and Clang will colorize compiler output automatically if stdout is a
TTY. Unfortunately, when the build backend is invoked via `mach`,
stdout is not a TTY.

6e9a4c0b9cd8 (bug 1315785) changed mach so it exports an environment
variable indicating whether mach's original stdout is a TTY. This was
later used to add color flags to `cargo` invocations.

Building on that work, this patch adds color flags to compiler
invocations if the compiler supports color and a mach TTY is
detected. The result is that compiler output from `mach build`
will be colorized automatically if Clang or a modern version of
GCC is used.

The only issue I see with this is that Clang doesn't "unset" its color
sequences when printing a newline. As a result, mach's time line
prefixing can sometimes inherit "bold" or other stylings. AFAICT this is
only a minor cosmetic concern. GCC does not exhibit this issue.

MozReview-Commit-ID: 5Icu6aXGZBL

--HG--
extra : rebase_source : 5b2bf5a287fdf8075b3d7dde36b91f3c65b60728
2016-11-09 14:01:24 -08:00
Phil Ringnalda
aee7b7f39e Merge m-c to autoland 2016-11-14 20:08:18 -08:00
ffxbld
d07aca95ba Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2016-11-14 13:29:32 +01:00
Martin Thomson
0b45b71319 Bug 1316261 - Configure trust anchors list to be empty for WebRTC, r=drno
MozReview-Commit-ID: ltSVAAp2WF

--HG--
extra : rebase_source : cd7e2aea72c74e8eda7089f5a540d3a839534acf
2016-11-12 10:57:21 +11:00
Carsten "Tomcat" Book
846adaea6c merge mozilla-inbound to mozilla-central a=merge 2016-11-09 16:38:04 +01:00
Gregory Szorc
389dbcf95f Bug 1315785 - Invoke cargo with --color=always when original stdout is a TTY; r=glandium
Combined with the previous patch that sets MACH_STDOUT_ISATTY, the
practical effect of this patch is that cargo is invoked with
`--color=always` when mach was attached to a TTY and colorized output
is sent to the terminal.

Note: this doesn't work with Rust/Cargo 1.10 for reasons unknown to me.
It appears there was a bug with Rust/Cargo because `--color=never` still
sent colorized output on that version! Cargo/Rust 1.12.1 works fine.

MozReview-Commit-ID: 6uXS3t3413i

--HG--
extra : rebase_source : 72df6e8248cb14c96850964f694576c7fd2f5fbb
2016-11-07 13:46:15 -08:00
Jan Beich
5e4ba89dca Bug 1315882 - Unbreak --with-system-nspr after bug 1115944. r=glandium
MozReview-Commit-ID: H9A63lwCasG

--HG--
extra : rebase_source : eded64cd638b5efc1293af0060e684c743993177
2016-11-08 06:44:36 +00:00
David Keeler
aca0d93d8d bug 1195434 - specify what signature schemes the platform will actually accept in TLS handshakes r=mt
MozReview-Commit-ID: A3T4EgEfcfy

--HG--
extra : rebase_source : 0369bb38069fde33a57e885b5009257b4a16c7ac
2016-11-03 12:53:23 -07:00
Phil Ringnalda
06521a66a4 Merge m-c to m-i
MozReview-Commit-ID: 7W5SwSOspcB
2016-11-04 21:04:44 -07:00
Mike Hommey
342e5e3816 Bug 1115944 - Work around race condition between building NSPR and NSS. r=mshal
--HG--
extra : rebase_source : 61a9a23360d16ad6d60b0bb65107f2cb797d9736
2016-11-04 17:06:51 +09:00
André Bargull
def7683621 Bug 1299615 - Part 5: Update tzdata in ICU data files to 2016h. r=Waldo 2016-10-27 15:39:49 -07:00
André Bargull
a934a3b70d Bug 1299615 - Part 3: Update in-tree ICU to release 58.1. rs=Waldo 2016-11-03 05:27:28 -07:00
Emanuel Hoogeveen
e0a81d7503 Bug 1309573 - Part 2: Define MOZ_HAS_MOZGLUE in various places so that the crash reason gets used. r=glandium
--HG--
extra : rebase_source : d55e8dd75469759f333366bdf9662178ff0a2474
2016-11-08 03:53:00 -05:00
Zibi Braniecki
89b4923282 Bug 966559 - Use public C API for NumberingSystem. r=Waldo
MozReview-Commit-ID: CBICCJQXI7R

--HG--
extra : rebase_source : b74b9d6038580ab970565bb56c09d5330be92407
2016-11-01 12:15:26 -07:00
Aaron Klotz
a426b005cc Bug 1310841: Modify build rules to allow specification of a manifest for Windows DLLs; r=gps
MozReview-Commit-ID: EdY8Kx8irYW

--HG--
extra : histedit_source : 2c62d93279b54c30840910fb3fe54f9276a80f01
2016-10-17 16:03:11 -06:00
André Bargull
aec865dde5 Bug 1312061 - iUpdate tzdata in ICU data files to 2016h. r=Waldo 2016-10-21 10:18:12 -07:00
Cameron McCormack
4378d41370 Bug 1310939 - Pass $(CARGOFLAGS) to cargo invocations so cargo flags can be passed from a .mozconfig file. r=froydnj
MozReview-Commit-ID: A5GNTzS0BTM

--HG--
extra : amend_source : 01749f41a239949510bbc1e90a3324c934cfe86a
2016-10-18 16:04:57 +08:00
André Bargull
e92830ccfa Bug 1310733 - Part 1: Update tzdata in ICU data files to 2016g. r=Waldo
--HG--
extra : rebase_source : d96161ceb37720a00237d60c0c1b83112b056926
2016-10-18 11:45:57 -07:00
Eugen Sawin
5b99355518 Bug 1307570 - [1.4] Add XZ Embedded support configuration, scripts and the initial library version. r=glandium 2016-10-18 15:11:02 +02:00
Ted Mielczarek
e9130abab5 bug 1305731 - Revert workaround from bug 1301751 now that we have updated to Rust 1.12. r=froydnj
MozReview-Commit-ID: 3akbELExfKT

--HG--
extra : rebase_source : 0308214bae6eb683df65991fc91d41679acd3530
2016-10-17 10:47:30 -04:00
Nathan Froyd
e818915fae Bug 1304815 - rearrange Rust crate structure for newer Rust releases; r=ted.mielczarek
In our current Rust world, we have the following dependency structure:

  xul.so --------------------------+
                                   |
  xul-gtest.so -+--> xul.a --------+-> gkrust
                |
                +--> gkrust-gtest

This structure results in link errors with multiply-defined symbols
between gkrust-gtest and gkrust with newer Rust releases when linking
xul-gtest.so.  So we have to do something different.

Our new structure is:

  xul.so --------------------------+
                                   |
  xul-gtest.so -+--> xul.a --------+-> gkrust --+-> gkrust-shared
                |                               |
                +--> gkrust-gtest --------------+

and we enforce that a given shared library can only have at most one
Rust library that it depends on.  Said Rust library is assumed to
include all significant Rust dependencies of the dependent static
libraries as well.  (In the above structure, gkrust is simply a wrapper
around gkrust-shared, so gkrust-gtest doesn't have to include gkrust as
a dependency.)
2016-10-15 18:16:13 -04:00
Chris Pearce
35e13f726f Bug 1308076 - Move ClearKeyCencParser to PsshParser library. r=glandium
To validate the PSSH init data passed to EME, I'd like to reuse the same
PSSH parser that the ClearKey CDM shared library uses. So move the code
out of gmp-clearkey and into its own library, so we can link it statically
into code that needs to use it.



MozReview-Commit-ID: 7xSUSmCueJz

--HG--
rename : media/gmp-clearkey/0.1/ClearKeyCencParser.cpp => media/psshparser/PsshParser.cpp
rename : media/gmp-clearkey/0.1/ClearKeyCencParser.h => media/psshparser/PsshParser.h
extra : source : 78dcbc5d3c26547c63269eb14034a67863cf28de
2016-10-06 20:23:38 +13:00
Enes Goktas
43ddfab91c Bug 1303227 - Wrap libxul.so linker to prevent getting the linking process killed; r=glandium
This patch removes the memory usage tracking in the script that wraps the
linking of the xul library. This patch also generalizes the wrapping of the
xul linking process to all platforms.

MozReview-Commit-ID: HyncF3aVwdx

--HG--
extra : rebase_source : 8fb90c896dc57793d1c9d9aa4e8492dec8697e36
2016-09-20 17:58:34 -07:00
Andrew Halberstadt
6b48ddc0b0 Bug 1304593 - Use |mach python-test| to run python unittests from make check, r=ted
Currently make check loops over all directories and runs each test file in PYTHON_UNIT_TESTS
individually. This patch instead creates a single top-level check target that runs
|mach python-tests|. This should make automation more similar to running locally, be a bit
quicker and make it easier to pull python tests out of make check completely at a future date.

MozReview-Commit-ID: 4Hg4zdFyc61

--HG--
extra : rebase_source : 31d0c38a76c11b75d3bf569f2bf22a0666161726
2016-09-26 15:29:02 -04:00
Carsten "Tomcat" Book
5b45193594 merge mozilla-inbound to mozilla-central a=merge 2016-09-29 11:44:58 +02:00
Makoto Kato
d78efa6ffb Bug 1305677 - Remove requirement of libffi on aarch64 as default. r=chmanchester
To support android/aarch64, I want to remove the requirement of system's libffi.

MozReview-Commit-ID: Lc3POx09Cks

--HG--
extra : rebase_source : 384852e7b9e61d0d7a950159535e3ddc8457e889
2016-09-27 19:16:03 +09:00
Makoto Kato
347d2f4b09 Bug 1305931 - --enable-system-ffi is broken after landing bug 1262155. r=chmanchester
MozReview-Commit-ID: MQlMdXDhbW

--HG--
extra : rebase_source : cecaa8451f4bbad5ea77211f64c1dc5c90fe5257
2016-09-28 15:41:15 +09:00