Commit Graph

2611 Commits

Author SHA1 Message Date
Mike Hommey
016afea56c Bug 1313306 - Move --help dependency checks to the linter. r=chmanchester
Missing such dependencies shouldn't impair running configure itself
after local modifications, but they are currently required for
(mostly) documentation purpose. Which means they are better done in
the linter.

--HG--
extra : rebase_source : 6bfff2342cda2ed1351f561c9eb9623f1fb4e4c4
2016-10-27 10:02:21 +09:00
Mike Hommey
e9aa83949b Bug 1313306 - Add a placeholder python configure linter. r=chmanchester
--HG--
extra : rebase_source : d7b17160bbf61e9aca2edfb2874a87182140c144
2016-10-27 09:36:33 +09:00
Chris Manchester
0723aadf51 Bug 1313379 - Fix mach bootstrap for Windows desktop artifact mode. r=gps
MozReview-Commit-ID: JqQ52K89q3H

--HG--
extra : rebase_source : b0580f19d8d53d4cf14f0016f7ecda8adeca2a66
2016-10-28 21:45:43 -07:00
Dustin J. Mitchell
ceadc4b4c8 Bug 1301785: update python/redo to 1.6; r=gps
MozReview-Commit-ID: BdSQshy2f0p

--HG--
extra : rebase_source : 2dc5a1a95cbf3a01e4b62251638cdf98a88bf193
2016-10-31 15:41:28 +00:00
Eugen Sawin
e28632312d Bug 1307886 - [2.3] Compress libraries with XZ during packaging. r=glandium 2016-10-28 12:59:23 +02:00
Eugen Sawin
5999591289 Bug 1307886 - [1.2] Remove szip support. r=glandium 2016-10-28 12:59:23 +02:00
Phil Ringnalda
445097654c Merge m-i to m-c, a=merge
MozReview-Commit-ID: 56Hspl8LZMY
2016-10-27 19:21:47 -07:00
aleth
bb41ac3b46 Bug 1311122 - Ensure missing file errors get reported despite missing base path in l10n.py. r=glandium
--HG--
extra : rebase_source : 1171410b3a6df675c3551c694748202176e42cbf
2016-10-18 21:06:36 +02:00
Leo Schwarz
33768e74f6 Bug 1312290 - Force package extension when building AUR packages on Arch Linux. r=gps
Previously if an Arch Linux user had a different package extension configured
in `/etc/makepkg.conf` building AUR packages during bootstrap would fail.
Forcing the extension by providing it as an environment variable makes sure
building doesn't fail regarding of a user's configuration.

MozReview-Commit-ID: 4aryYS0XVr7

--HG--
extra : rebase_source : 4c466e49f729de625e814a92325c6d38e6d1e0b4
2016-10-25 10:28:59 +02:00
Mike Hommey
158b715543 Bug 1313259 - Fix some preprocessor unit tests to actually do the tests they're supposed to do. r=gps
--HG--
extra : rebase_source : 70e9a8ed265d1bb7f74dd1d37cd8e561e649bd5a
2016-10-27 10:24:27 +09:00
Chris Manchester
29650e6f7d Bug 1312574 - Use cPickle instead of json to serialize the build system's tests database. r=gps
MozReview-Commit-ID: 9xmUtVV6SRN

--HG--
extra : rebase_source : 957bfacfa5c13fa88b298e33dcaf475c08be8776
2016-10-25 12:31:59 -07:00
Chris Manchester
b09b78a7c5 Bug 1298740 - Populate Python environment with variables from mozconfig. r=glandium
MozReview-Commit-ID: KDCoxxh37Um
2016-10-14 11:06:30 -07:00
Chris Manchester
0d0d70f0f2 Bug 1312520 - Store and process manifest-level defaults in the build system separately from individual tests. r=gps
MozReview-Commit-ID: 1dSMAaOqToJ
2016-10-25 12:23:39 -07:00
aleth
b8af6b7271 Bug 1311136 - Improve 'multiple locales' error message in l10n.py. r=glandium
--HG--
extra : rebase_source : f46d5120f962380f989ebd115cc44c08ef858eb8
2016-10-18 21:52:19 +02:00
Francesco Lodolo (:flod)
cce240d070 Bug 1312333 - Include bug1309191 in devtools l10n migration script for NetMonitor. r=pike
--HG--
rename : python/devtools/migrate-l10n/migrate/conf/bug1308500 => python/devtools/migrate-l10n/migrate/conf/bug1308500_1309191
2016-10-23 23:19:00 +02:00
Grisha Kruglov
c2e769ff54 Bug 1312476 - Update paths for x86 android artifact builds r=sebastian
MozReview-Commit-ID: 3NLluk5mU9g

--HG--
extra : rebase_source : 86b30c5e2899e2d15e26199323f3aee0b9211391
2016-10-24 09:46:21 -07:00
Gregory Szorc
22c45fdb44 Bug 1310868 - Tie resource collection to lifetime of context manager; r=glandium
Both BuildMonitor and BuildOutputManager are doing similar things and
wrapping the build with forms of monitoring. These classes are only
used in the `mach build` command.

Since the BuildOutputManager takes an instance of BuildMonitor as an
argument and since BuildOutputManager behaves as a context manager,
it makes sense for BuildOutputManager to control the lifetime of
BuildMonitor's collection.

So, we teach BuildOutputManager's context manager to start the
BuildMonitor and ensure its resource collection is stopped when it
exits.

MozReview-Commit-ID: 3l9Hwz0Xe7o

--HG--
extra : rebase_source : 600b0231fce050465bdccb2bc11680f77bbc35d9
2016-10-17 17:03:38 -07:00
Kris Maglione
67e2b2f753 Bug 1309350: Part 2 - Speed up synchronous resolution of module paths. r=gps,ochameau
r?gps for the build changes and ochameau for the rest.

This results in about a 28% speed-up for Jetpack mochitest runs, for me.

MozReview-Commit-ID: K30q7BfvTLs

--HG--
extra : rebase_source : 8074947062c73a329f1d8a255a9601147ba1ba0c
2016-10-14 05:27:15 +01:00
Mike Hommey
2a9930daf9 Bug 1311871 - Fix NSIS version check for NSIS version 3.0. r=chmanchester
--HG--
extra : rebase_source : 5e99dc999e2c54813ec447134bc4b008f7af826a
2016-10-21 09:15:34 +09:00
Chris Manchester
6199bfe74b Bug 1311632 - Update route and package names for android artifact builds to reflect gecko.v2 index locations. r=mshal
MozReview-Commit-ID: 3QtL0bj18x2

--HG--
extra : rebase_source : 01f171ae40c015b00a8cb7689f7afe7f723be1ee
2016-10-20 12:33:44 -07:00
Julian Descottes
336f71fd5e Bug 1295157 - create devtools l10n migration script for dtd to properties migration;r=Pike
For devtools-html, devtools will progressively stop using DTD files and will use only properties
files. To avoid retranslating already localized strings in every locale, this script can be used
by localization teams to automatically migrate strings moved in the scope of the devtools-html
project.

MozReview-Commit-ID: KNDfCoPXOM9

--HG--
extra : rebase_source : 48fbf2ae3daab89891262e460c979b6c141a2caa
2016-09-08 23:45:42 +02:00
Mike Hommey
ffb7fbf6c4 Bug 1311069 - Don't throw InvalidOptionError exceptions when a non-available option was set from an environment variable. r=chmanchester
--HG--
extra : rebase_source : 74b61120a2d1ec721d92c7f8697694b807670013
2016-10-19 09:06:41 +09:00
Mike Shal
0d1c85f23a Bug 1250700 - Use the gecko.v2 instead of buildbot for artifact builds; r=chmanchester
MozReview-Commit-ID: Hn55McoK1sY

--HG--
extra : rebase_source : 5d01539b726014677d64cac43dc616d098b76005
2016-09-30 15:22:28 -04:00
Mike Hommey
5983667dd8 Bug 1296530 - Add an only_when context manager, and a when argument to include(). r=chmanchester
--HG--
extra : rebase_source : a74c539148e0a0597d1ff4af85ccf917cc37e1d4
2016-10-12 16:56:11 +09:00
Mike Hommey
b527447baf Bug 1296530 - Add a when argument to imply_option(). r=chmanchester
--HG--
extra : rebase_source : 4822e6eb942dcfe3580cee9667d85a6e20118ca3
2016-10-12 14:48:47 +09:00
Mike Hommey
6b2314bdbb Bug 1296530 - Add a when argument to set_config() and set_define(). r=chmanchester
--HG--
extra : rebase_source : 707b77c326dfab3b6a7cf484ec88b5d7ece1f98c
2016-10-12 14:24:28 +09:00
Mike Hommey
6742fd1764 Bug 1296530 - Add a when argument to option(). r=chmanchester
--HG--
extra : rebase_source : afc1041aae1ad388e08435999098f06cce3a8e13
2016-10-12 17:45:53 +09:00
Mike Hommey
ff7ca5af9d Bug 1296530 - Add a when argument to @depends(). r=chmanchester
--HG--
extra : rebase_source : ba3e8e781655efd8a0a404382048612a3dc3c7c4
2016-10-12 13:52:08 +09:00
Mike Hommey
e8c24ed7b4 Bug 1296530 - Add a test for unexpected keyword argument to @depends. r=chmanchester
--HG--
extra : rebase_source : 7779cff4702997436da70cecf01df025b2fcb463
2016-10-12 13:48:23 +09:00
Mike Hommey
8a3a49206b Bug 1296530 - Get help text out of TestConfigure.get_config when given --help. r=chmanchester
--HG--
extra : rebase_source : 730c136d9df703365d5da29b6f3b82e3f87a97bf
2016-10-12 11:11:56 +09:00
Mike Hommey
a787f620da Bug 1296530 - Move the somehow redundant check for --help dependency from _resolve to _value_for_depends. r=chmanchester
--HG--
extra : rebase_source : b187fdef27746d4a59af549b2335761618d82d4e
2016-10-11 14:20:18 +09:00
Mike Hommey
f265d16c20 Bug 1296530 - Move @depends dependency resolution to a separate function. r=chmanchester
--HG--
extra : rebase_source : c78f2532258c99f4c8dfe536cce20417657c6e93
2016-10-11 08:42:17 +09:00
Mike Hommey
caeb1547de Bug 1296530 - Move more things in the new DependsFunction and add a repr() for it. r=chmanchester
--HG--
extra : rebase_source : 739ff145c9f50438d9b7997ab12a7270d4c1b4e5
2016-10-13 13:28:06 +09:00
Mike Hommey
359529b830 Bug 1296530 - Store DependsFunction information for the sandbox as class instances instead of tuples. r=chmanchester
--HG--
extra : rebase_source : 5b05df452074180669bc9cc16501acfe7be7be50
2016-10-13 13:04:18 +09:00
Mike Hommey
16f5c51446 Bug 1296530 - Rename DependsFunction to SandboxDependsFunction. r=chmanchester
--HG--
extra : rebase_source : 60d2ef6f9d8eda36a9f9e3fb82c017958eab18a3
2016-10-13 12:45:24 +09:00
Mike Hommey
1c3867ff90 Bug 1296530 - Add a repr() for Option. r=chmanchester
--HG--
extra : rebase_source : 156293c0be028e346c164751178ebc006c291fee
2016-10-13 12:43:01 +09:00
Ting-Yu Lin
6bd7fdd2ae Bug 1309657 - Update ccache stats parser for version 3.3. r=gps
ccache 3.3 added two fields in the status.
1. "cache hit rate"
https://github.com/ccache/ccache/issues/94

2. "cleanups performed"
0769ea3630

We just teach the parser the two fields. Nothing else.

MozReview-Commit-ID: 9kZrDrpCopd

--HG--
extra : rebase_source : ecb55fa9187abb37e668f0d25b40afd41597f7f8
2016-10-13 11:20:58 +08:00
Andrew Halberstadt
dde3965629 Bug 1309963 - Make sure return codes are passed from .lint files up to the cli, r=jgraham
If a linter returns a status code instead of a list of results, mozlint will throw away
that status code and move on to the next linter. We should make sure that status code
bubbles all the way up to the cli.

MozReview-Commit-ID: 9fXpmtlUUT1

--HG--
extra : rebase_source : 84c80d1b24d7233d0c4c6e38b23e775110776d1f
2016-10-13 16:23:13 -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
Kartikaya Gupta
f6d49dac63 Bug 1310215 - Add a verbose argument to mach install which provides useful information in case the android emulator startup fails. r=ahal
MozReview-Commit-ID: EhuBgeewqtb
2016-10-14 11:15:10 -04:00
Michael Kaply
3e3d89e4e2 Bug 1309304 - Move search python files to a central location. r=glandium
MozReview-Commit-ID: DEqQfJ8lHxA

--HG--
rename : browser/locales/searchjson.py => python/mozbuild/mozbuild/action/generate_searchjson.py
rename : browser/locales/searchplugins.py => python/mozbuild/mozbuild/action/output_searchplugins_list.py
extra : rebase_source : 43f808fa50f4124e2ce4e3b36df44c82f143dabf
2016-10-20 11:25:29 -05:00
Chris Manchester
6f8124b45f Bug 1308982 - Read gyp files in a separate process. r=gps
This moves reading of gyp files to a separate process from the main
reader/emitter pipeline, causing gyp contexts to be consumed after other
contexts.

MozReview-Commit-ID: CevPcpe5cFI
2016-12-21 16:28:28 -08:00
Chris Manchester
cc9c24c6a8 Bug 1308982 - Stop adding gyp directories to the DIRS make variable. r=gps
Due to an apparent bug, DIRS are being ouptut inconsistently for directories
with code built by gyp files (as of this writing, they are output for child
directories of media/webrtc but not for some other directories). The DIRS
variable no longer drives compilation, so this was essentially a no-op.

MozReview-Commit-ID: IMfjyrcsWyv
2016-12-21 16:28:28 -08:00
Chris Manchester
4bcebd4fe0 Bug 1308982 - Normalize gyp_reader.py indentation to 4 spaces. r=gps
MozReview-Commit-ID: HRE3cVmNB2d
2016-12-21 16:28:28 -08:00
Chris Manchester
2d2292267f Bug 1316140 - Allow use of multiprocessing from config.status on windows. r=mshal
This generalizes the monkey-patching of the main module added
in bug 914563 to allow multiprocessing to be used from config.status
(which triggers the same bug as when it's used with `mach` as main).

MozReview-Commit-ID: AdOdpKzmbsp
2016-12-21 16:28:28 -08:00
Nathan Froyd
05b3912397 Bug 1193452 - don't use -fallback with clang-cl; r=glandium
We no longer need this.
2016-12-21 06:56:48 -05:00
Ted Mielczarek
11449f6fba bug 1305958 - Allow custom GENERATED_FILES in SYMBOLS_FILE. r=glandium
This patch allows specifying an objdir path in `SYMBOLS_FILE`, with the
requirement that the file is also listed in `GENERATED_FILES`. This is used
for handling NSS' .def files with their special processing.

I added tests for the existing `SYMBOLS_FILE` case as well as the new case
and a test for the error if the file is not listed in `GENERATED_FILES`.

MozReview-Commit-ID: 3cVbKplltfb

--HG--
extra : rebase_source : 0ae4180dbe9383b09f14554bfda8aec20d7cc094
2016-09-02 15:34:09 -04:00
Sebastian Hengst
cdcc9e20da Bug 1304829 - rename RELEASE_BUILD to RELEASE_OR_BETA: main part. r=ted,Mossop
MozReview-Commit-ID: 1lCt0xTMV5O
2016-10-08 11:14:49 +02:00
Carsten "Tomcat" Book
3522f1d38a merge mozilla-inbound to mozilla-central a=merge 2016-10-05 15:42:48 +02:00
Wes Kocher
b4e6b8fba5 Merge m-c to autoland, a=merge 2016-10-04 17:42:48 -07:00
Nathan Froyd
d05eb39d9d Bug 1296737 - make clang-cl compile in c++14 mode; r=glandium
MSVC headers have C++14 features without appropriate guards, so clang-cl
needs to be instructed to default to a C++14-compatible mode by default.
2016-10-04 20:34:04 +00:00
Chris Manchester
0c70afc0a3 Bug 1305502 - Add an option to download symbols for an artifact build. r=glandium
MozReview-Commit-ID: HJxJeMkLiz9
2016-09-26 14:54:24 -07:00
Mike Hommey
09e520c674 Bug 1307355 - Add an implicit dependency on --enable-compile-environment to pkg_check_modules. r=chmanchester
--HG--
extra : rebase_source : bd16320895f54d42c8207722a4a4c366d1332170
2016-10-04 15:33:37 +09:00
Gregory Szorc
f4832137ac Bug 1286900 - Stop producing web-platform tests zip file; r=ted
Now that we access WPT related files from a source checkout, we no
longer need the web-platform tests zip file produced or consumed by
automation. So stop producing it.

MozReview-Commit-ID: Ea8KjKZJ5Yx

--HG--
extra : rebase_source : f22506a02fdd5e78434cdc5d1c1f274db1cd04e2
2016-09-20 18:41:06 -07:00
Phil Ringnalda
c1e745733c Merge m-i to m-c, a=merge
MozReview-Commit-ID: IffTwuMbwmG
2016-10-03 20:09:05 -07:00
Andrew Halberstadt
1b0964f59b Bug 1304593 - Take universal binaries into account when detecting objdir mismatches, r=gps
When attempting to run mach from a make target, there were failures on OSX due to an objdir
mismatch:
https://dxr.mozilla.org/mozilla-central/rev/7c576fe3279d87543f0a03b844eba7bc215e17f1/python/mozbuild/mozbuild/base.py#656

The two detected objdirs were "<objdir>" and "<objdir>/x86_64". I believe this should not
count as a mismatch, otherwise it would not be possible to run a mach command from the
x86_64 directory.

MozReview-Commit-ID: CXDEABNWX8L

--HG--
extra : rebase_source : 9daeaf372d872921e7b2854eee0313b5adc0e707
2016-09-30 14:27:38 -04:00
Andrew Halberstadt
fae591ac2b Bug 1304593 - Fix broken test_entry_point.py in mach, r=gps
Fix and enable python/mach/mach/test/test_entry_poiny.py.

MozReview-Commit-ID: FtMpt8Nmq3g

--HG--
extra : rebase_source : 73755266b7d9570065c0ab18e0b50e074559914c
2016-09-27 17:11:00 -04:00
Ted Mielczarek
739348c41e bug 1294565 - add a mach vendor rust command to vendor crates into third_party/rust. r=gps
This command is mostly just a wrapper around `cargo vendor`, but it runs
it the right way and will install the cargo-vendor tool if necessary.

Additionally, the mach command will by default error if there are uncommited
changes to files other than Cargo.{toml,lock} in your working copy, and it
will stage changes to the vendored crates in your VCS after the update.

MozReview-Commit-ID: 2fMDBawNUMO

--HG--
extra : rebase_source : fe72f26aec795eb663c554933432e700ac5089c3
2016-09-29 06:39:14 -04:00
Ted Mielczarek
93587924f6 bug 1294565 - add some more helpers to mozversioncontrol, add MozbuildObject.repository. r=gps
I wanted to be able to do some VCS interaction from a mach command, and we
didn't have anything suitable, so I tore up mozversioncontrol and replaced
it with a framework to hang new features off of. I've only implemented
the bits I need currently (get_modified_files and add_remove_files),
but it should be straightforward to add more functionality there.

This patch also adds a `repository` property to `MozbuildObject`, which will
return a `Repository` object for the topsrcdir to make using these helpers
even easier for `MozbuildObject`-derived classes.

MozReview-Commit-ID: Gw6Ixp1ltiN

--HG--
extra : rebase_source : e619d6642eb86c3f96e679ac22a3e561dfdbb56a
2016-09-29 06:48:37 -04:00
Mike Shal
07b492f103 Bug 1306405 - add BUILDSTATUS messages to the tup backend; r=chmanchester
MozReview-Commit-ID: HoDUuKkmv2l

--HG--
extra : rebase_source : 3d4acbcf639976d769a51eacd0d04beb87a40bf3
2016-09-26 14:16:09 -04:00
Carsten "Tomcat" Book
5b45193594 merge mozilla-inbound to mozilla-central a=merge 2016-09-29 11:44:58 +02:00
Mike Shal
91feda6d73 Bug 1305157 - Handle the build/ directory's GENERATED_FILES; r=gps
This is a little tricky since tup expects rules in a single Tupfile to
be topologically sorted, and the emitter emits the GeneratedFile object
before it emits the FinalTargetPreprocessedFile object. We work around
this by delaying when we process the application.ini.h GeneratedFile
object, but it's a hack.

MozReview-Commit-ID: 8nVm76nZOKb

--HG--
extra : rebase_source : a82cfbeef739aac791998fb6d45cf88eb7116e32
2016-09-28 13:59:36 -04:00
Mike Shal
b5f5829f3f Bug 1305157 - Handle FinalTargetPreprocessedFiles in the tup backend; r=gps
MozReview-Commit-ID: 6fxTagN6mGl

--HG--
extra : rebase_source : 26a00428ad9a337c355d20b8acf229c8387fbede
2016-09-28 13:55:38 -04:00
Mike Shal
02bca067c4 Bug 1305157 - Fix buildid.h and create source-repo.h in make before tup runs; r=gps
MozReview-Commit-ID: CPYA1OJUfo8

--HG--
extra : rebase_source : ed8f4b193ec37f3015277a4d39f19a4904b04d9a
2016-09-28 13:51:34 -04:00
Mike Shal
deedb1fd3b Bug 1305157 - Move GeneratedFile handling into its own function; r=gps
MozReview-Commit-ID: HbZBYVugj9E

--HG--
extra : rebase_source : 576aa8d93c964740f5c44a9cf151fd1b9cf4bcef
2016-09-27 13:41:16 -04:00
Carsten "Tomcat" Book
b5206d37f5 Merge mozilla-central to mozilla-inbound 2016-09-28 16:25:01 +02:00
Carsten "Tomcat" Book
572e74ee99 merge mozilla-inbound to mozilla-central a=merge 2016-09-28 15:56:33 +02:00
Phil Ringnalda
3e7326c4fd Backed out 6 changesets (bug 1286900) for making wpt-7 permanently fail on Windows debug
CLOSED TREE

Backed out changeset 859457467e3c (bug 1286900)
Backed out changeset 4b08ed30e0a5 (bug 1286900)
Backed out changeset 3928e945b584 (bug 1286900)
Backed out changeset 5b0f69c86028 (bug 1286900)
Backed out changeset 01c3527edde5 (bug 1286900)
Backed out changeset 6b5f059a85ad (bug 1286900)
2016-09-27 18:24:38 -07:00
Matthew Gregan
de2a95a064 Bug 1305604 - Convert dashes to underscores in crate name when generating --extern option. r=froydnj 2016-09-28 10:07:47 +13:00
Ted Mielczarek
6fba0e392a bug 1256642 - have the build system automatically detect LIB_IS_C_ONLY. r=glandium
MozReview-Commit-ID: 3xWSEe0Tmp9

--HG--
extra : rebase_source : 473fd5911dcf5e6d0122cb74de16e7d41cd35cdc
2016-08-24 11:29:00 -04:00
Chris Manchester
732cc6b973 Bug 1304522 - Fix the "when" argument to check_header to actually make checks conditional. r=glandium
MozReview-Commit-ID: JlYUFsPRGAV

--HG--
extra : rebase_source : 8cd667969fefb043f9769f35ba1fd12fe209a2b4
2016-09-21 22:02:43 -07:00
Gregory Szorc
13bf17ed00 Bug 1286900 - Stop producing web-platform tests zip file; r=ted
Now that we access WPT related files from a source checkout, we no
longer need the web-platform tests zip file produced or consumed by
automation. So stop producing it.

MozReview-Commit-ID: Ea8KjKZJ5Yx

--HG--
extra : rebase_source : ee6ec00689696a710faf390d3dec5c5d02d8ec74
2016-09-20 18:41:06 -07:00
Xidorn Quan
1da4aa60e1 Bug 1304302 part 11 - Remove StyleSheetHandle as well as other places reference it. r=heycam
MozReview-Commit-ID: FfYZiShjJNX

--HG--
extra : source : b75ca959d5bc0128e643a58126693b4cc704e09b
2016-09-26 22:03:25 +10:00
Mike Shal
366bb17910 Bug 1304125 - Perform WebIDL code generation in the tup backend; r=gps
MozReview-Commit-ID: Fnw8380zyGU

--HG--
extra : rebase_source : 4cad1fc9699260ce2dd25530060596de51212deb
2016-09-19 13:30:03 -04:00
Mike Shal
b48e8b54f9 Bug 1304129 - Use xpidllex.py / xpidlyacc.py from GENERATED_FILES; r=gps
MozReview-Commit-ID: 8w50kZWinzl

--HG--
extra : rebase_source : c2231f6e776cc8195063dad8c1480cec88bd5e62
2016-09-19 13:47:32 -04:00
Mike Shal
2275e6ed2e Bug 1304129 - Build GENERATED_FILES in the tup backend; r=gps
MozReview-Commit-ID: IaVAuRWIjmC

--HG--
extra : rebase_source : 66e28cea04873ba1ebace456a6607f1ee05f923f
2016-09-19 13:47:05 -04:00
Henrik Skupin
401257b7ed Bug 1301334 - Package Marionette tests via moz.build entries r=gps
Move packaging for Marionette from make to test_archiver by using root manifest files.

MozReview-Commit-ID: 1cxEBYQeJ2Z
**

--HG--
extra : rebase_source : 372a407d9207bfbccbfb88c689df60b8cc1abcaf
2016-09-20 18:05:43 +02:00
Henrik Skupin
e20a8e6f48 Bug 1302364 - Include firefox-ui and puppeteer in all-tests.json, and allow to run tests via "mach test". r=gps
MozReview-Commit-ID: EwONsQSgAym

--HG--
extra : rebase_source : 4bcf4497a2af79790378ddc1bbe47712e4c0ea6c
2016-09-21 10:31:05 +02:00
Henrik Skupin
3cd74b7623 Bug 1302364 - Update TEST_MANIFESTS documentation for install_root in resolve_tests(). r=gps
MozReview-Commit-ID: 9EXT3Jakwx1

--HG--
extra : rebase_source : 2e3752e385e2e9ed9ad38549539f24126452da07
2016-09-21 10:16:33 +02:00
Michael Layzell
73b988acc6 Bug 1303223 - Ensure that panic = 'abort' is specified for all toplevel Cargo.tomls, r=froydnj
MozReview-Commit-ID: GX0FJjDVA5q
2016-09-20 13:56:09 -04:00
Michael Layzell
05bd5a1076 Bug 1300208 - Allow specifying multiple rust crates to mozbuild within the same FINAL_LIBRARY, r=froydnj
MozReview-Commit-ID: IIjV4Kg7wOv
2016-09-20 11:26:43 -04:00
Yen Chi Hsuan
80b867a458 Bug 1143421 - install file copies instead of symlinks for Spidermonkey. r=glandium 2016-08-25 15:51:55 +08:00
Mike Hommey
94ad81b0b0 Bug 1295542 - Ensure at least an empty chrome.manifest next to each omnijar file. r=gps 2016-09-20 13:43:54 +09:00
Phil Ringnalda
c58d0d6900 Merge m-i to m-c, a=merge 2016-09-17 13:44:34 -07:00
Chris Manchester
d8c54a3aa5 Bug 1303436 - Log status when invoking configure directly from Python. r=mshal
MozReview-Commit-ID: H5gbEdBWCds

--HG--
extra : rebase_source : 35384e0451b7cef96e88b5f3e3c80d2922f9f1ba
2016-09-16 14:25:51 -07:00
James Graham
bba975bca2 Bug 1302796 - Add integration between structured logging and lints, r=ahal
MozReview-Commit-ID: K3tu0Zdg5go

--HG--
extra : rebase_source : 2b78059908c3a297b8ce7d134af20733fc082df5
2016-09-13 14:18:41 +01:00
Sebastian Hengst
6247ecc4b9 Backed out changeset e92048c87179 (bug 1302364) for failing test_emitter.py in e.g. spidermonkey tests. r=backout on a CLOSED TREE 2016-09-16 11:25:55 +02:00
Sebastian Hengst
99e7648673 Backed out changeset 1df8bde64853 (bug 1302364) 2016-09-16 11:24:29 +02:00
Henrik Skupin
3418dc5d58 Bug 1302364 - Include firefox-ui and puppeteer in all-tests.json, and allow to run tests via "mach test". r=gps
MozReview-Commit-ID: EwONsQSgAym

--HG--
extra : rebase_source : 61870a85c3f749ac3da202e08c2ba91fa87a261b
2016-09-13 17:21:52 +02:00
Henrik Skupin
2f20475d5e Bug 1302364 - Update TEST_MANIFESTS documentation for install_root in resolve_tests(). r=gps
MozReview-Commit-ID: 9EXT3Jakwx1

--HG--
extra : rebase_source : ba1f6afcaa35103a52e5bbad7618fa2c9f08f2a1
2016-09-13 17:16:51 +02:00
Wes Kocher
0677d5dc43 Merge m-c to inbound, a=merge 2016-09-16 14:35:12 -07:00
Andrew Sutherland
a31e3d2b3a Bug 1303174 - Correct gdb nsTHashtable pretty printer's understanding of table capacity to not be the entry count. r=nfroyd
It turns out the entry count is not the same as the capacity.  This turns out
badly when your hashtable is a hashtable and not an array.  Which is most of
them.  If you were using this pretty printer prior to this fix, you may have
seen anywhere between 0% and 100% of the actual entries in the table.

Apologies!

Note that this change has no bearing on any in-tree tests at this point.  We
still want to add unit tests so this is not the case.  (The JS pretty printers
have them.)
2016-09-16 10:18:29 -04:00
Carsten "Tomcat" Book
25a074d342 merge mozilla-inbound to mozilla-central a=merge 2016-09-15 11:59:50 +02:00
Ted Mielczarek
e254cc07b8 bug 1298422 - vendor byteorder into third-party/rust. r=froydnj
MozReview-Commit-ID: ChKCKiIVEfq

--HG--
extra : rebase_source : c0da7411a2f0b7fc171c9ebb99fce91361944aa5
2016-09-08 15:12:34 -07:00
Andrew Halberstadt
98a0fd6336 Bug 1302172 - [mozlint] Convert unittest tests to use pytest instead, r=maja_zf
MozReview-Commit-ID: D4bN62QbkKm

--HG--
extra : rebase_source : 22ffe05ca78095fc469520b9f85d93585251cd1c
2016-09-09 16:20:09 -04:00
Phil Ringnalda
3748f182f6 Merge m-i to m-c, a=merge 2016-09-10 00:14:21 -07:00
Sebastian Hengst
9d51c314ab Backed out changeset c2115d200aeb (bug 1300152) for permafailing test_crash_rust_panic.js on Windows 8 x64 pgo. r=backout 2016-09-09 16:54:57 +02:00
Shing Lyu
db11558e50 Bug 1288350 - Temporary reftest list for Stylo vs Gecko test r=heycam,manishearth
--HG--
extra : rebase_source : 4772418bd2813d4e79643a833eb09e47fe893d84
2016-09-05 11:45:39 +08:00
Carsten "Tomcat" Book
d98e95abb8 Merge mozilla-central to autoland 2016-09-08 12:51:52 +02:00
Carsten "Tomcat" Book
f4a16a723a merge mozilla-inbound to mozilla-central a=merge 2016-09-08 12:01:17 +02:00
Carsten "Tomcat" Book
38f7eb71e0 Backed out changeset d392d81c5b9e (bug 1297585) for breaking artifact desktop builds
--HG--
extra : rebase_source : 0a2e4754b68f2fd5ed98872c4b2981b18c37aa5a
2016-09-08 11:57:29 +02:00
Wes Kocher
5cbc382303 Merge inbound to m-c a=merge 2016-09-07 17:54:24 -07:00
Wes Kocher
46590574dc Merge autoland to central, a=merge 2016-09-07 17:26:48 -07:00
Wes Kocher
4c4ea87ae0 Backed out 2 changesets (bug 1283919) for being the wrong way to fix this a=backout
Backed out changeset a328778db08d (bug 1283919)
Backed out changeset 7e1f25f59298 (bug 1283919)
2016-09-07 14:22:21 -07:00
Carsten "Tomcat" Book
1c61ba654e merge mozilla-inbound to mozilla-central a=merge 2016-09-07 17:20:12 +02:00
Carsten "Tomcat" Book
7c6c7db247 Merge mozilla-central to autoland 2016-09-07 17:26:11 +02:00
Andrew Halberstadt
0f35e014fa Bug 1300779 - [mozlint] Redirect stderr when detecting version control root, r=smacleod
This avoids printing harmless (but confusing) errors to the log. For instance, git users
will see a '.hg not found!' error in the output even though not finding an hg repo is
expected in that case.

MozReview-Commit-ID: DBPOabcV7PA

--HG--
extra : rebase_source : a40de185cd4bf0c58917065d1331e0e663b92b94
2016-09-06 10:36:45 -04:00
Ted Mielczarek
b482f0e214 bug 1300152 - add rust to mozinfo.json. r=mshal
This patch also reworks how we set all the boolean flags in mozinfo.py.

MozReview-Commit-ID: IhjXCFsx5J1

--HG--
extra : rebase_source : d984d9ecaed765126600c8d85847a82585ab3e67
2016-09-02 11:57:11 -04:00
Wes Kocher
1989131fea Merge m-c to inbound, a=merge 2016-09-07 18:07:21 -07:00
Wei-Cheng Pan
1cba294b85 Bug 1298775 - Fix nullptr dereferencing. r=tbsaunde
This is a follow up to fix nullptr printing.

MozReview-Commit-ID: KDjBsHHiDxv

--HG--
extra : rebase_source : f10f35ad753aa3c1e93c1ab5e5d957af80c5db2f
2016-08-31 18:35:01 +08:00
Henrik Skupin
996622f983 Bug 1283919 - Improve test package archiver for collecting files from directories referenced by a root manifest r=gps
MozReview-Commit-ID: EuGK3OS8XLj

--HG--
extra : rebase_source : 50a4e94b868f8c8931415e3afe30b820e5b6e806
2016-09-07 23:39:45 +02:00
Mike Shal
9f2ce6ecc0 Bug 1293448 - Build XPIDL files in the tup backend; r=glandium,gps
MozReview-Commit-ID: zyojbOFLLn

--HG--
extra : rebase_source : 17ebd8701bf1dc1a45559a3620a3f6703f950070
2016-07-29 13:43:29 -04:00
Mike Shal
62ce34650a Bug 1293448 - Allow build backends to specify custom build commands; r=glandium
MozReview-Commit-ID: G6fICkYUDxd

--HG--
extra : rebase_source : c839919cae6683ce07cfaa9e701e7e9e50652040
2016-08-17 23:20:51 -04:00
Wes Kocher
ee92002ede Merge inbound to m-c a=merge 2016-09-02 13:17:30 -07:00
Andrew Halberstadt
1ec1f86a90 Bug 1299618 - [mozlint] Encode results to utf-8 before printing to stdout, r=smacleod
MozReview-Commit-ID: 93RAqIRKAHc

--HG--
extra : rebase_source : d1973e52e72baab13ba9c8f1b07df5a7ddda7d49
2016-08-31 17:18:52 -04:00
Andrew Halberstadt
817237ca57 Bug 1292674 - Properly set up Firefox for Android dependencies on Fedora, r=gps
This patch solves 3 problems on Fedora when trying to bootstrap Firefox for Android:

1) Installs java
2) Adds a call to android.ensure_android_packages()
3) Uses build-tools-23.0.1 which seems to be the latest on Fedora

I'm not sure why the Android specific packages are only being installed on Fedora
and not CentOS, but as I don't have CentOS distribution to play around with figured
it was best to leave that for another bug.

MozReview-Commit-ID: 19sD6tYj4V

--HG--
extra : rebase_source : eaf17bc05d606d3010b11927f27a482680266992
2016-08-26 16:04:08 -04:00
Mike Hommey
411867285a Bug 1299661 - Use hg --template flag instead of -T. r=gps
Versions of mercurial older than 3.0 don't support the -T shorthand for
the --template option. While most people should be using something
newer, it can still happen that some run an older version, and it's
still trivial to support them by using the long option.

--HG--
extra : rebase_source : 1507aea436779495045df48b044a58f4af1382be
2016-09-01 07:43:38 +09:00
Henrik Skupin
1aa1a59ead Bug 1283919 - Move packaging of Marionette from make to the test archiver r=gps
MozReview-Commit-ID: AOQHcA46bCh

--HG--
extra : rebase_source : e313c669ad0ae999ecba954538572d22ae28b120
2016-08-17 13:43:51 +02:00
Henrik Skupin
c2f0ef7c09 Bug 1283919 - Improve test package archiver for collecting files from directories referenced by a root manifest r=gps
MozReview-Commit-ID: EuGK3OS8XLj

--HG--
extra : rebase_source : 1a547d02d0da68fac3ca5401df36589357f0bbbe
2016-08-17 13:41:59 +02:00
Wes Kocher
81db6ce036 Merge m-c to autoland, a=merge 2016-08-30 18:15:33 -07:00
Andrew Halberstadt
c88eb083d8 Bug 1258341 - [mozlint] Add ability to forward miscellaneous command line arguments to the underlying linter, r=smacleod
This is mostly to maintain backwards compatibility with the |mach eslint| command. But it's also going to be used in
automation. The 'mozlint-eslint' task will need to pass in --quiet to eslint.

Maybe in the future we should remove this ability and only allow well-defined arguments in mozlint. But for now it's
convenient and allows us to land the eslint->mozlint patch series quicker.

MozReview-Commit-ID: KYhC6SEySC3

--HG--
extra : rebase_source : ad7f0cdeb57ed8a99becb90d761d73ef45ce853a
2016-08-25 09:52:50 -04:00
Ryan VanderMeulen
71d43e7c12 Merge inbound to m-c. a=merge 2016-08-30 09:52:55 -04:00
Axel Hecht
202629c54d bug 1291275, sys.stdout is utf-8 in mach, don't double-encode, r=glandium
MozReview-Commit-ID: ISozaWZZB1h

--HG--
extra : rebase_source : 4de8c46ac5db09cf85f2e13648ff030212c043c1
2016-08-29 15:07:19 +02:00
Wei-Cheng Pan
6b92f8c14a Bug 1298775 - Support mozilla::StyleSheetHandle::RefPtr in gdb pretty printer. r=tbsaunde
MozReview-Commit-ID: 77jCHNGbFZ4

--HG--
extra : rebase_source : 2c5b907c9bdd319a64df217825b105a077abe547
2016-08-29 18:27:42 +08:00
Ryan VanderMeulen
feb9c5a04a Merge m-c to inbound. a=merge 2016-08-30 09:59:38 -04:00
Xidorn Quan
a448b4c2d7 Bug 1298210 - Move remove objdir code into clobber.py so that autoclobber and clobber command share the same code. r=gps
MozReview-Commit-ID: 5X1AQac8Fqi

--HG--
extra : source : f6c73c140316b9d6a43b5864b5f36a2620d10b3a
2016-08-30 19:54:38 +10:00
Al Tsai
8f598a057d Bug 1297585 - Modify parameters for buildUrl to satisfy taskcluster changes. r=glandium 2016-09-01 15:02:09 +08:00
Ryan VanderMeulen
520acfd195 Merge inbound to m-c. a=merge 2016-08-25 08:10:52 -04:00
Andrew Halberstadt
ae1bcceeda Bug 1297699 - Mozlint tests should run with test directory as the "project root", r=smacleod
MozReview-Commit-ID: 9sbhlc11YF5

--HG--
extra : rebase_source : dee2bc4820374ca833f8351de72743f8d5a95aec
2016-08-24 09:55:04 -04:00
Mike Hommey
b65bccd9ce Bug 1276003 - Move --enable-necko-protocols to python configure. r=chmanchester
--HG--
extra : rebase_source : 6187c1a382b240e2fa01f38f4c739000d5f177ce
2016-08-18 09:57:06 +09:00
Andrew Halberstadt
ed73940aa9 Bug 1288425 - Make sure we skip invalid extensions when linting with --rev or --workdir, r=smacleod
Some linters, such as flake8, will lint invalid file extensions if you explicitly pass them in. E.g,
|flake8 foobar.js| will result in flake8 attempting to lint a JS file. This is a problem because passing
in files explicitly is exactly what the --rev/--workdir options do. If a developer modifies a JS file
then runs |mach lint -l flake8 -w|, that JS file will get linted.

To prevent this, mozlint needs to handle file extensions instead of relying on the underlying linter to
do it. This patch adds an "extensions" config option to the LINTER dict, and will filter these files out
as part of the 'filterpaths' steps.

MozReview-Commit-ID: KYhC6SEySC3

--HG--
extra : rebase_source : 6fea2942b2db1bea7deca1d6738546362b6ebd65
2016-08-09 16:24:04 -04:00
Andrew Halberstadt
797aa910b7 Bug 1294802 - Improve color handling in mozlint stylish formatter, r=jgraham
This will make specifying terminal colours cleaner and provide fallbacks for terminals
with only 8 colours. It also tweaks the 'grey' color to match an update to the eslint
stylish formatter.

MozReview-Commit-ID: KYhC6SEySC3

--HG--
extra : rebase_source : 8d3242edc54bf6505aa2e60cdb08cb0dd9743dd3
2016-07-19 11:54:04 -04:00
Mike Hommey
f97add6317 Bug 1296503 - Switch config.status to unicode literals. r=ted
Ironically, the first thing we do with those unicode literals is convert
them to byte strings because the build backends don't like them yet.
2016-08-24 07:32:52 +09:00
Mike Hommey
31a17a020e Bug 1296503 - Add an indented_repr function to mozbuild.util. r=ted 2016-08-24 07:32:51 +09:00
Myk Melez
3050b7932b Bug 1296798 - set depth to chrome_src for refs in common.gypi; r=ted
MozReview-Commit-ID: EJTQNk6dbJ1
2016-08-23 14:58:27 -07:00
Myk Melez
1895887f26 Bug 1296798 - specify root_targets; r=ted
MozReview-Commit-ID: 6Ip87xChI8o
2016-08-23 14:58:23 -07:00
Gregory Szorc
579fbb5cf2 Bug 1290201 - Don't clobber .mozbuild directory by default; r=ted
.mozbuild/last_log.json is opened by the process doing the deleting.
On Windows, you can't delete an opened file.

So stop clobbering the .mozbuild directory.

This directory only holds non-essential artifacts from mach/build
invocations. I don't think keeping it around will break anything.

MozReview-Commit-ID: 9b0AC2ywAAZ

--HG--
extra : rebase_source : 9236e3e282d1db2595e8b36353008bc98e2ae6cf
2016-08-19 11:11:48 -07:00
Mike Hommey
885b56f5f4 Bug 1296502 - Serialize lists when preparing a context for the preprocessor in build backends. r=gps
Some substs values are lists, and some CONFIGURE_SUBST_FILES use them,
and don't expect the substitution to use a pythonic expression of the
value. So serialize those lists.

--HG--
extra : rebase_source : 848962c326236607609bca2b92180c8f6f4ad079
2016-08-19 11:33:18 +09:00
Mike Hommey
ce060d48bf Bug 1257049 - Stop spawning a separate process for config.status from configure.py. r=gps
--HG--
extra : rebase_source : c3a76c32eaca7a9a192e239ac143174d599fb28c
2016-08-19 11:11:57 +09:00
Ryan VanderMeulen
01c4e8cc1b Merge inbound to m-c. a=merge 2016-08-19 09:52:53 -04:00
Wes Kocher
a58f8b89a0 Merge m-c to inbound, a=merge 2016-08-18 16:32:58 -07:00
Andrew Halberstadt
8c3bcff5a6 Bug 1289805 - Properly normalize all paths so they are absolute, r=smacleod
It's important to use absolute paths so lint errors for the same files don't show up in two
different places. For example, eslint will absolutize a relative path, whereas flake8 will
not.

This patch also makes sure all include/exclude paths are joined to the mozlint 'root' that
was previously calculated from vcs.

MozReview-Commit-ID: KYhC6SEySC3

--HG--
extra : rebase_source : 9b88ee70a997d3f7b6cc0eb849e47931d5726f20
2016-07-19 13:09:38 -04:00
Andrew Halberstadt
560ce6a254 Bug 1289805 - Resolve vcs arguments directly in LintRoller class, r=smacleod
Previously, vcs related stuff was resolved in the cli.py module. But it's possible
for consumers to bypass the cli and instantiate a LintRoller directly. In fact this
is what the mozlint tests do.

Now that we always try to find the vcs root, calling into vcs is no longer optional.
This patch moves the VCSFiles class to a new vcs.py module and makes LintRoller
responsible for instantiating it instead of cli.py.

MozReview-Commit-ID: 5yA3gDZ1UGM

--HG--
extra : rebase_source : 96adc0ca01e8220b0432b64c96c478fc526db756
extra : source : 709c1e521ad3eb466c3434000aed7f71ebf37365
2016-08-10 10:21:43 -04:00
Andrew Halberstadt
ce3f82ffbe Bug 1289805 - Ensure the VCSFiles class returns paths that have been absolutized to the repository root, r=smacleod
This makes sure we return absolute paths from the VCSFiles class. This is done so we don't accidentally normalize
the relative paths onto $CWD in the event the relative path is valid in both places.

MozReview-Commit-ID: 2QIuR2YqFos

--HG--
extra : rebase_source : 2e82b4a5cf9a18856bbcb8d04fdc916ff7e72deb
2016-08-09 14:49:41 -04:00
Andrew Halberstadt
64bfc88f52 Bug 1289805 - Refactor filterpaths to accept all lintargs, r=smacleod
This makes it easier to pass configuration to the filterpaths method. In
the future, 'root' and 'extensions' will both be used here.

MozReview-Commit-ID: KYhC6SEySC3

--HG--
extra : rebase_source : 19ddf511ebd24a1a6c21f7c06b67ab64e78e7903
2016-08-09 15:29:49 -04:00
Wes Kocher
45575a7f86 Merge m-c to autoland, a=merge
a=release for the webidl hook for a comment-only change

--HG--
extra : amend_source : e590e515ab273d097f88b35be0e5c999502ebdf4
2016-08-16 22:07:30 -07:00
Wes Kocher
48b8d407c8 Merge inbound to central, a=merge
a=release to get around the webidl hook for a comment-only change

--HG--
extra : amend_source : f7e57101e1a25d3cf3536a256898ec2a21c54b38
2016-08-16 17:05:30 -07:00
Gregory Szorc
2562138ede Bug 1291944 - Verify makensis binary is 32-bits; r=glandium
This required implementing a utility function to resolve the binary
type. I used GetBinaryTypeW via ctypes because this seems the fastest.
I arbitrarily limited the function to testing 32-bit and 64-bit Windows
executables because hopefully those are the only executables we'll
ever encounter. We can expand the binary detection later, if needed.
This includes support for running on non-Windows platforms.

MozReview-Commit-ID: CYwyDWQrePc

--HG--
extra : rebase_source : 8fd7ca7f253d9e9e18d64784652a5ff934ad2272
2016-08-15 18:11:48 -07:00
Towkir Ahmed
63867da04a Bug 1284887 - Replaced references to mxr.mozilla.org in the codebase with dxr.mozilla.org r=dolske
a=release to get around a hook that's catching these comment-only idl changes

--HG--
extra : rebase_source : a7353680777fd2eeea24c9993f9937bbbcfb9e4f
2016-08-15 17:28:05 -07:00
Mike Hommey
c6d1e73834 Bug 1294585 - Move --with-*-keyfile options to python configure. r=chmanchester 2016-08-16 08:32:51 +09:00
Wes Kocher
d602abb016 Merge inbound to central, a=merge 2016-08-15 14:20:38 -07:00
Gregory Szorc
46ad65f8b8 Bug 1293868 - Write mozinfo.json deterministically; r=glandium
And with indentation so it is easier for humans to read.

MozReview-Commit-ID: Kkd6vmfLNUf

--HG--
extra : rebase_source : 9f2b4ad2223f361dd6dd1ec9cdda71bd5a8560e3
2016-08-09 19:11:54 -07:00
Nathan Hakkakzadeh
6e14fdc87d Bug 1292715 - Added installer source code for MSYS2 and ConEmu. r=gps
Also, is a ConEmu preferences file which automatically points a newly installed ConEmu to the newly installed MSYS2.

MozReview-Commit-ID: FBeMat4SYjK

--HG--
extra : rebase_source : 83d8f03a6cc011215fe58745c93afdf90162dc58
2016-08-10 15:30:07 -07:00
Wes Kocher
88bc8189f9 Merge m-c to autoland, a=merge 2016-08-15 14:54:25 -07:00
Mike Shal
355501af0c Bug 1294510 - cleanup CompileDB backend; r=glandium
MozReview-Commit-ID: Lj4ahLzZJh9

--HG--
extra : rebase_source : 3a2ce98147327094b2a65429a64ee03b67ef0580
2016-08-11 15:50:31 -04:00
Gregory Szorc
4a0f2d02bc Bug 974281 - Do not clobber msvc directory by default; r=ted
The "remove_objdir" method has been rewritten to support partial
clobber. It still defaults to full clobber. But the "full" argument
can be passed as False to limit to a partial clobber where currently
the "msvc" directory (contains Visual Studio files) is not clobbered.

On Windows, there might be a regression with this change because
we'll be invoking N winrm.exe processes and new processes have
a non-trivial overhead on Windows. However, it is hopefully unlikely
that new processes are more overhead than deleting hundreds of thousands
of files.

MozReview-Commit-ID: 7yeMttztwic

--HG--
extra : rebase_source : 646992be199e1059f0b09cf8bed3334085293fe0
2016-03-11 15:11:33 -08:00
Gregory Szorc
303d2ef97a Bug 974281 - Use mozfile.remove since rmtree is deprecated; r=ted
My Python editor told me rmtree has been marked as deprecated. Use
mozfile.remove instead.

MozReview-Commit-ID: FYkXk1fnxvC

--HG--
extra : rebase_source : df392e8832e52501950f09acda208943c9e3d707
2016-03-11 15:08:54 -08:00
Wes Kocher
b1e2d2ad52 Merge m-c to inbound, a=merge 2016-08-12 16:29:24 -07:00
Andrew Sutherland
e921d069dd Bug 1294633 - Implement gdb pretty-printer for mozilla::LinkedList, recognize StaticAutoPtr/StaticRefPtr in smartptr.py. r=tromey 2016-08-12 14:39:02 -04:00
Andrew Sutherland
bca1376ac5 Bug 1294627 - Enhance gdb pretty printer for nsTHashtable to pierce alias templates and handle when it's used as a hashset, like for ManagedTemplate. r=tromey 2016-08-12 14:38:56 -04:00
Elias Probst
fa561f244a Bug 1293234 - Use octal notation for permission modes in the build system; r=gps
As of Python 3, decimal notations of octal values for permission modes
are no longer permitted and will result in a `SyntaxError` exception
(`invalid token`).

Using the proper octal notation which is also Python 2.7 compatible will
fix this issue.

--HG--
extra : rebase_source : 2e897c51f04ad0ee69071f84b98df224f3af72d3
2016-08-08 13:45:17 +02:00
Mike Hommey
77ee4f3ce4 Bug 1292463 - Move MOZ_C{,XX}_SUPPORTS_WARNING to python configure. r=chmanchester 2016-08-10 10:50:01 +09:00
Mike Hommey
7a80b4e7ee Bug 1292463 - Rename compilechecks.configure and test_header_checks.py. r=chmanchester
to, respectively, compile-checks.configure and test_compile_checks.py.


--HG--
rename : build/moz.configure/compilechecks.configure => build/moz.configure/compile-checks.configure
2016-08-10 10:49:59 +09:00
Timothy Guan-tin Chien
20b7d72944 Bug 1252976 - Follow up, Update Note on Artifact Mode, r=nalexander
Contains a few sentences copied from MDN.

MozReview-Commit-ID: 2wgcCNiWkWw

--HG--
extra : transplant_source : %7B%A2%10%88%83k%AC%AE%D3%A4H/pL%E6%B9%BE-9%5E
2016-08-08 17:54:24 +08:00
Sambuddha Basu
76f610476a Bug 1252976 - Offer |mach artifact| builds in |mach bootstrap| for non-Fennec builds r=nalexander
MozReview-Commit-ID: 2lbrORiTjwH

--HG--
extra : transplant_source : %97%1C%12N%1D%B8eQ%94%F2%A1%26%AA%3F%24X%AA2%AC%12
2016-08-08 17:30:37 +08:00
Carsten "Tomcat" Book
d9e0b4c565 merge mozilla-inbound to mozilla-central a=merge 2016-08-09 15:44:51 +02:00
Mike Hommey
afa6c4d5f3 Bug 1292046 - Add a check that the compiler works with -c out of the box. r=chmanchester
The base compiler check in python configure does some preprocessing,
which ensures the compiler works to some extent. Autoconf used to have
a more complete test, doing a compile/link. We do have plenty of tests
afterwards that do that anyways, but it's better if we fail early if
the toolchain fails somehow.

This refactors try_compile such that the *_compiler variable themselves
can be used to trigger compiler tests. Eventually, we'll want something
similar for preprocessing and possibly other invocations.

This also removes similar tests from build/autoconf/toolchain.m4.

--HG--
extra : rebase_source : c60d1d6e39b6bd2a377516687affd9b8932ebc12
2016-08-04 15:51:47 +09:00
Mike Hommey
6bdf5756ec Bug 1292046 - Add language to the compiler namespace. r=chmanchester
--HG--
extra : rebase_source : c258416a1cec59627e27d4f59e40f1425464f9c5
2016-08-04 16:24:29 +09:00
Mike Hommey
69e768cba4 Bug 1292439 - Use a fake _winreg module during tests. r=chmanchester
While on automation, there is no MSVC to find through the registry, the
story is different on local builds, and that can interfere with tests.

Specifically, it breaks test_toolchain_configure.py because it's not
expecting the registry to provide a valid path to an almost valid
compiler, and then fails because that compiler doesn't match the
expected target CPU.

And because build/moz.configure/toolchain.configure also affects the PATH
environment variable, subsequent tests end up failing even earlier
because executing the empty mozconfig with the modified environment then
fails because of the unicode value of PATH.

This change implements enough of _winreg to make the get_registry_values
function return nothing.

--HG--
extra : rebase_source : f70e40ddabaed1197f6cddce67832bb112f1969d
2016-08-05 14:16:35 +09:00
Mike Shal
035d0ca1a0 Bug 1293385 - Remove idls attribute from BackendMakeFile; r=gps
MozReview-Commit-ID: 4X9iIJArkYg

--HG--
extra : rebase_source : e31ff98109e0f25fadc6f17c685302a2252b214a
2016-08-05 13:23:44 -04:00
Mike Hommey
50a4467ec3 Bug 1282256 - Make MozbuildObject.resolve_config_guess an instance method. r=gps
The last use that didn't have an existing instance was just removed.

--HG--
extra : rebase_source : 81f99e8a8d8046c9741e8a27072a6c4773fa7292
2016-08-04 13:43:47 +09:00
Mike Hommey
e6fb85ebb3 Bug 1282256 - Make MozbuildObject.resolve_mozconfig_topobjdir an instance method. r=gps
The only use that didn't have an existing instance was just removed.

--HG--
extra : rebase_source : 47891a9bd5c6ecef31d8a2c7053c1ae8efe36fa5
2016-08-04 13:41:57 +09:00
Mike Hommey
ad5e3fa4c4 Bug 1282256 - Remove MozbuildObject._config_guess. r=gps
Back when it was added, it was used, but it is not anymore, outside
test_base.py.

--HG--
extra : rebase_source : f0b9a4dab2985e89e9950eda774ae853c7de764c
2016-08-04 10:07:56 +09:00
Mike Hommey
6168f0df5b Bug 1282256 - Avoid loading mozconfig in MozbuildObject.from_environment. r=gps
We've been reading the mozconfig in MozbuildObject.from_environment to
check whether the mozconfig topobjdir matches the detected topobjdir.

Since bug 1278415, everything using the buildconfig python module now
calls MozbuildObject.from_environment, which reads the mozconfig. A lot
of things to that during the build. But none of them actually need the
data from the mozconfig, and the topobjdir match test has been breaking
things randomly on multiple occasions.

The topobjdir match test, however, really only needs to happen once:
when a mach command starts. So we can move the test to MachCommandBase,
where it belongs, and anything actively using MozbuildObject.mozconfig
will have the mozconfig read, but everything else won't.

On a Linux64 opt build, this brings down the number of times the
mozconfig is read during `mach build` from 979 to 9.

--HG--
extra : rebase_source : 6b340f1fcf73a3c3987033c37f8f14ef06a44f04
2016-08-04 11:17:41 +09:00
Phil Ringnalda
d88f9174f3 Merge m-i to m-c, a=merge 2016-08-06 23:34:37 -07:00
Axel Hecht
dc1f52c0e4 bug 1292557, update compare-locales to 1.1, r=flod
Notable changes:

Bug 1238150 - Don't consider trailing comments as junk
Bug 1292215 - Drop Junk entities from merged content, more tests

MozReview-Commit-ID: IkJMxBByHxK

--HG--
extra : rebase_source : 345944601d9d8f4d4c3d30445be05deb8acd99f7
2016-08-05 15:48:21 +02:00
Wes Kocher
e2fcb18843 Backed out 2 changesets (bug 1292046) for android build failures a=backout
Backed out changeset 3263785341f2 (bug 1292046)
Backed out changeset a1b9e1631661 (bug 1292046)
2016-08-04 14:22:54 -07:00
Mike Hommey
94fe17e0c2 Bug 1292046 - Add a check that the compiler works with -c out of the box. r=chmanchester
The base compiler check in python configure does some preprocessing,
which ensures the compiler works to some extent. Autoconf used to have
a more complete test, doing a compile/link. We do have plenty of tests
afterwards that do that anyways, but it's better if we fail early if
the toolchain fails somehow.

This refactors try_compile such that the *_compiler variable themselves
can be used to trigger compiler tests. Eventually, we'll want something
similar for preprocessing and possibly other invocations.

This also removes similar tests from build/autoconf/toolchain.m4 and
old-configure.in.

--HG--
extra : rebase_source : 4f6f84e5ad220386e9edf82d19cc2cd6c1f4c43e
2016-08-04 15:51:47 +09:00
Mike Hommey
81dfda1e3a Bug 1292046 - Add language to the compiler namespace. r=chmanchester
--HG--
extra : rebase_source : 3a8b2c87ec44272990eb4c799759df11115a40dd
2016-08-04 16:24:29 +09:00
Nathan Froyd
f7fb6722a6 Bug 1231764 - part 6 - build rust code via cargo; r=chmanchester
This patch is really two separate changes.

The first change is that rust crates are large, standalone entities that
may contain multitudes of source files.  It therefore doesn't make sense
to keep them in SOURCES, as we have been doing.  Moving to use cargo
will require a higher-level approach, which suggests that we need a
different, higher-level representation for Rust sources in the build
system.

The representation here is to have the build system refer to things
defined in Cargo.toml files as the entities dealt with in the build
system, and let Cargo deal with the details of actually building things.
This approach means that adding a new crate to an existing library just
requires editing Rust and Cargo.toml files, rather than dealing with
moz.build, which seems more natural to Rust programmers.  By having the
source files for libraries (and binaries in subsequent iterations of
this support) checked in to the tree, we can also take advantage of
Cargo.lock files.

The second is that we switch the core build system over to building via
cargo, rather than invoking rustc directly.

We also clean up a number of leftover things from the Old Way of doing
things.  A number of tests are added to confirm that we'll only permit
crates to be built that have dependencies in-tree.
2016-08-06 00:49:26 -04:00
Nathan Froyd
ef91835e00 Bug 1231764 - part 4 - add pytoml to the virtualenv; r=chmanchester
We need to parse Cargo.toml files from moz.build to determine crate
package names.
2016-08-06 00:49:26 -04:00
Nathan Froyd
eb1514a4c1 Bug 1231764 - part 3 - rename RustRlibLibrary to RustCrate; r=chmanchester
rlibs are going to be less important once we start building with cargo:
the focus will move to crates instead, so that's what we should call the
moz.build object.
2016-08-06 00:49:26 -04:00
Nathan Froyd
63d290c934 Bug 1231764 - part 2 - pass the srcdir of an rlib in the moz.build object; r=chmanchester 2016-08-06 00:49:26 -04:00
Nathan Froyd
4fb1a7545d Bug 1231764 - part 0 - only link librul once; r=chmanchester
Through an oversight, we listed librul.a twice when linking libxul: once
as part of the "objects" we were linking, and once as a static library.
This duplication is unnecessary and would cause problems later when we
try to generate librul.a via cargo, as cargo will put it someplace
different from where we expect and the two names will conflict.  Let's
have rules.mk be the single source of truth for how librul.a is named,
and then the code to link libxul can simply refer to that name.
2016-08-06 00:49:26 -04:00
Wes Kocher
a177bd0ff1 Merge m-c to inbound a=merge 2016-08-17 17:24:02 -07:00
Chris Manchester
bea5e287fc Bug 1240134 - Fixup TarFinder test on Windows by closing the TarFile after the test. r=me
MozReview-Commit-ID: EbP4o5XLCeB
2016-08-17 16:12:14 -07:00
Chris Manchester
b0b84a1928 Bug 1240134 - Incorporate the interfaces.xpt from downloaded artifacts instead of building XPIDL during an artifact build. r=glandium
MozReview-Commit-ID: 8oEyS1xLOwV
2016-08-17 15:02:31 -07:00
Chris Manchester
337f05f14a Bug 1240134 - Use the UnpackFinder when extracting from archives for an artifact build. r=glandium
MozReview-Commit-ID: C5Y9oC6ywwP
2016-08-17 15:02:31 -07:00
Chris Manchester
a22526073a Bug 1240134 - Implement a TarFinder to facilitate extracting files from compressed Firefox archives. r=glandium
MozReview-Commit-ID: F4l8505bvwR
2016-08-17 15:02:31 -07:00
Chris Manchester
309a20b1c8 Bug 1240134 - Re-factor UnpackFinder to contain a Finder instance it delegates to rather than inheriting from FileFinder. r=glandium
MozReview-Commit-ID: LKYCROED06S
2016-08-17 15:02:31 -07:00
Wes Kocher
9605851be0 Backed out 7 changesets (bug 1231764) for apparently causing linux debug wpt bustage
Backed out changeset 4b71272c92cf (bug 1231764)
Backed out changeset 234d8a930afa (bug 1231764)
Backed out changeset f9b204c2f5a7 (bug 1231764)
Backed out changeset f933119e57e4 (bug 1231764)
Backed out changeset e3af0b1d3473 (bug 1231764)
Backed out changeset 643b03aae1dd (bug 1231764)
Backed out changeset a945dbf63410 (bug 1231764)

--HG--
extra : rebase_source : e71360fa4b5e3e74859c82e74e183e13e6211c4c
2016-08-03 16:27:06 -07:00
Nathan Froyd
6b2618fb44 Bug 1231764 - part 6 - build rust code via cargo; r=chmanchester
This patch is really two separate changes.

The first change is that rust crates are large, standalone entities that
may contain multitudes of source files.  It therefore doesn't make sense
to keep them in SOURCES, as we have been doing.  Moving to use cargo
will require a higher-level approach, which suggests that we need a
different, higher-level representation for Rust sources in the build
system.

The representation here is to have the build system refer to things
defined in Cargo.toml files as the entities dealt with in the build
system, and let Cargo deal with the details of actually building things.
This approach means that adding a new crate to an existing library just
requires editing Rust and Cargo.toml files, rather than dealing with
moz.build, which seems more natural to Rust programmers.  By having the
source files for libraries (and binaries in subsequent iterations of
this support) checked in to the tree, we can also take advantage of
Cargo.lock files.

The second is that we switch the core build system over to building via
cargo, rather than invoking rustc directly.

We also clean up a number of leftover things from the Old Way of doing
things.  A number of tests are added to confirm that we'll only permit
crates to be built that have dependencies in-tree.
2016-08-03 19:40:41 -04:00
Nathan Froyd
eb4063d257 Bug 1231764 - part 4 - add pytoml to the virtualenv; r=chmanchester
We need to parse Cargo.toml files from moz.build to determine crate
package names.
2016-08-03 19:40:41 -04:00
Nathan Froyd
be1a17c817 Bug 1231764 - part 3 - rename RustRlibLibrary to RustCrate; r=chmanchester
rlibs are going to be less important once we start building with cargo:
the focus will move to crates instead, so that's what we should call the
moz.build object.
2016-08-03 19:40:41 -04:00
Nathan Froyd
c94c59b23b Bug 1231764 - part 2 - pass the srcdir of an rlib in the moz.build object; r=chmanchester 2016-08-03 19:40:41 -04:00
Nathan Froyd
a79d68b929 Bug 1231764 - part 0 - only link librul once; r=chmanchester
Through an oversight, we listed librul.a twice when linking libxul: once
as part of the "objects" we were linking, and once as a static library.
This duplication is unnecessary and would cause problems later when we
try to generate librul.a via cargo, as cargo will put it someplace
different from where we expect and the two names will conflict.  Let's
have rules.mk be the single source of truth for how librul.a is named,
and then the code to link libxul can simply refer to that name.
2016-08-03 19:40:41 -04:00
Jan Beich
534b53feca Bug 1290647 - FreeBSD bootstrap: Drop pkg_add(1) support as it reached EOL downstream. r=glandium
MozReview-Commit-ID: 36Yn6n5bOeQ

--HG--
extra : transplant_source : %C8E%AC%85%A4%A4%A4%7D%DDMz%95%02%FE%D7_%973%04%16
2016-07-30 06:09:54 +00:00
Jan Beich
138edf609e Bug 1290647 - FreeBSD bootstrap: Add watchman (kqueue) for fsmonitor like bug 1231989. r=glandium
MozReview-Commit-ID: 36Yn6n5bOeQ

--HG--
extra : transplant_source : %E0%8Fbb%1AX8%A0%FE%80%0Db%C4%F3%85%C9%E6%C8%15z
2016-07-30 06:09:54 +00:00
Jan Beich
a562e7c4ec Bug 1290647 - FreeBSD bootstrap: Prefer GCC if base Clang is too old after bug 1286204. r=glandium
MozReview-Commit-ID: 36Yn6n5bOeQ

--HG--
extra : transplant_source : FT%8F%90%1D%F86%81%A6%A1%E0%8CM%12%A6%F6%17_%CF%E7
2016-07-30 06:09:54 +00:00
Jan Beich
fb7e6844d2 Bug 1290647 - FreeBSD bootstrap: Allow non-interactive install after bug 1151834. r=glandium
MozReview-Commit-ID: 36Yn6n5bOeQ

--HG--
extra : transplant_source : I%D4%D3%19%F9%ABv%1B%08%C4%B0F%D7%1C%BB%DA%18%0A%5C%C7
2016-07-30 06:09:54 +00:00