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

2628 Коммитов

Автор SHA1 Сообщение Дата
Nicholas Nethercote 5daac04ccf Bug 1316792 - gtestify toolkit/components/places/tests/cpp/test_IHistory.cpp. r=mak.
This is a most minimal gtest conversion possible. It leaves in place
significant amounts of non-typical-for-gtest code.

Notable changes:

- All the mock Link and URLSearchParams method definitions are no longer
  needed.

- The changes adds a new constructor for Link that doesn't set mHistory.
  Without that, leaked URLs occur at shutdown.

- The output printed by the test is slightly streamlined, mostly by omitting
  the test filename.

- It disables TestMediaFormatReader.cpp, which was causing problems. That test
  is slated for removal in bug 1318225 anyway.

--HG--
rename : toolkit/components/places/tests/cpp/mock_Link.h => toolkit/components/places/tests/gtest/mock_Link.h
rename : toolkit/components/places/tests/cpp/moz.build => toolkit/components/places/tests/gtest/moz.build
rename : toolkit/components/places/tests/cpp/places_test_harness.h => toolkit/components/places/tests/gtest/places_test_harness.h
rename : toolkit/components/places/tests/cpp/places_test_harness_tail.h => toolkit/components/places/tests/gtest/places_test_harness_tail.h
rename : toolkit/components/places/tests/cpp/test_IHistory.cpp => toolkit/components/places/tests/gtest/test_IHistory.cpp
extra : rebase_source : b7def3f9afce3a44e99f5ed35cb220f7814551cd
2016-11-12 06:22:01 +11:00
Axel Hecht 25802c7daf bug 1315976, update compare-locales to 1.2.1, r=flod
MozReview-Commit-ID: 6sZtRiw0mQs

--HG--
extra : rebase_source : 9fe3ef84568e1356f60cd179cf234d5fdcf307df
2016-11-24 14:30:31 +01:00
Ralph Giles fc8803bb33 Bug 1321292 - mozboot: Don't suggest non-existent .cargo.env. r=gps
On Windows, the rustup installer doesn't create ~/.cargo/env
but instead pokes .cargo/bin into the path in the Windows
registry. This doesn't necessarily propagate to the msys
evironment however, so some PATH manipulation may still
be necessary.

Split our path advice to be clear in both the new install
and unconfigured path cases, and amend our path update
advice to not mention .cargo/env if it isn't present.

MozReview-Commit-ID: 9IHhS6UYCqq

--HG--
extra : rebase_source : 898615106078882f335385ac0b50eff1612377f0
2016-12-05 20:53:00 -08:00
Mike Hommey e7e497234b Bug 1316250 - Allow functions using the fake os module to not depend on --help. r=chmanchester
--HG--
extra : rebase_source : 3a39f6deb657a30713f4864d54530d6b0b454ae1
2016-11-09 15:32:28 +09:00
Mike Hommey 566d70bc03 Bug 1316250 - Don't pretend imported modules in templates are inherited by functions they contain. r=chmanchester
The current state of python configure sandbox execution is that if a
template imports a module, and a function defined in the template tries
to use the module, it doesn't work. Ideally, it would, but rather than
try to fix this corner case, we remove the unit tests that assume it
works (and consequently pass for half bad reasons), and add a unit test
so that the behavior doesn't change unwillingly.

--HG--
extra : rebase_source : 579ba2bc7c19d4fe7df11bbdb1ceb6171a1ee857
2016-11-09 15:22:17 +09:00
Carsten "Tomcat" Book 846adaea6c merge mozilla-inbound to mozilla-central a=merge 2016-11-09 16:38:04 +01:00
Gregory Szorc cc764ee794 Bug 1315785 - Set an environment variable when mach is attached to a TTY; r=glandium
The way it works now, `mach` commands often invoke subprocesses where
the subprocesses' stdio file descriptors are pipes so the mach command
can e.g. parse output.

Processes like clang, gcc, and cargo determine if they can send color
codes to {stderr, stdout} by seeing if those file descriptors are TTYs.
When e.g. `make` is executed via `mach`, this test fails because those
descriptors are pipes (even though they eventually end up on a TTY).

We can't wire the file descriptors to the TTY because `mach` needs
to analyze output. We don't want users defining process flags to force
color in their mozconfigs because color codes would still be sent
if stdout was not a TTY.

This patch sets the MACH_STDOUT_ISATTY environment variable in all mach
commands when stdout is a TTY. Subsequent processes can then look for
this variable to determine whether to override color settings, print
terminal control codes, etc.

MozReview-Commit-ID: GxXP2mQssjC

--HG--
extra : rebase_source : 4b99547b453cb7dd5cb590a71ed554ce2bc4759d
2016-11-08 12:15:13 -08:00
Gregory Szorc 0f12e2d300 Bug 1315785 - Restore environment variables after running command; r=glandium
Currently, environment variables set when running mach commands will
propagate after the command is finished. This can allow unwanted state
to bleed through.

This likely isn't an issue today, but isolating state during code
execution is generally a good practice. So do that.

MozReview-Commit-ID: AdaomGub5EF

--HG--
extra : rebase_source : ce81987a1f6de3a16bce6a9e45b9dc8e8eb29b4b
2016-11-08 12:15:07 -08:00
Andrew Halberstadt 5b45c5a120 Bug 1315805 - [mozlint] Make sure multiprocess' stdout gets flushed in lint tasks, r=dustin
MozReview-Commit-ID: FhOI92JySXg

--HG--
extra : rebase_source : f3de6198a2616315358e3e3be1441df0713b442f
2016-11-08 13:33:13 -05:00
Phil Ringnalda 393b414467 Merge m-i to m-c, a=merge
MozReview-Commit-ID: 48WAQwKUCpw
2016-11-02 19:28:38 -07:00
Kim Moir c488cc0a40 Bug 1296396 - remove configs that reference fx-team in tc and buildbot u=aselagea r=kmoir 2016-11-02 10:53:19 -04:00
Trevor Saunders 517fb75798 bug 1297723 - support mozilla::UniquePtr in the gdb pretty printers r=froydnj 2016-11-08 16:30:52 -05:00
Wes Kocher df5dbf81cc Merge central to inbound a=merge 2016-11-02 17:31:08 -07:00
Mike Hommey 900e53b021 Bug 1293675 - Error out when GetShortPathName returns a long path name. r=gps
--HG--
extra : rebase_source : fa95f8a1356009c44b33701b76d878e75fba7324
2016-11-01 08:06:40 +09:00
Mike Hommey c35a6888f9 Bug 1313306 - Allow @depends(when=something) without additional dependencies. r=chmanchester
Also allow when=True/False to avoid the chicken-egg problem of using
a generic `when` to use in replacement of @depends('--help') for things
like @dependable.

--HG--
extra : rebase_source : f1571a5b904efb66a361b90f3b7e1edbaa75772e
2016-10-26 16:42:06 +09:00
Mike Hommey 18c9034b4a Bug 1313306 - Relax the rules for --help dependencies. r=chmanchester
--help dependencies currently help identify functions that will run when
running configure --help, which we don't want to have spreading too
much. OTOH, when such functions have no side effect, it's not really
that important to have them explicitly marked.

So, allow missing --help dependencies for functions that:
- don't use @imports
- don't have a closure
- don't use global variables

This is a first step towards entirely removing the --help markings (the
end goal being that --help dependencies will indicate actual --help
dependencies). As such, we don't really care about updating the lint
error message.

--HG--
extra : rebase_source : e81ec9b51ff01c2ee75722904e551286aa0b2bec
2016-10-27 13:40:42 +09:00
Mike Hommey b89b671cc8 Bug 1313306 - Don't expose os.path.{exists,isdir,isfile} to python configure without an @imports. r=chmanchester
We want functions without an @imports to not have any side effects, and
to not use external resources. So remove the few functions we expose from
os.path without @imports('os') that do.

--HG--
extra : rebase_source : a9485ec269d4de5785d66d7772eda4fae5a84b4a
2016-10-26 11:49:58 +09:00
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