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

3936 Коммитов

Автор SHA1 Сообщение Дата
Myk Melez de32426cfe Bug 1467307 - whitelist BSD-2-Clause license for Rust crates, r=gps
MozReview-Commit-ID: HVOlQlfley1

--HG--
extra : rebase_source : 0df8293807f7aa321cf20c56d67d4217f9b535af
2018-06-06 07:46:57 -07:00
Dorel Luca b595d82310 Merge mozilla-central to mozilla-inbound 2018-06-20 01:06:23 +03:00
Chris Manchester 86ddf36acf Bug 1469067 - Build host programs in their final locations rather than copying them to dist/host/bin. r=mshal
MozReview-Commit-ID: BrSou1ee2qV

--HG--
extra : rebase_source : 14ab70086b6b43b026c4ca269f27f0ae20a09aa6
2018-06-18 14:22:20 -07:00
Kris Maglione 0506a56751 Bug 1468362: Remove ADDON_SINGING buildconfig setting. r=aswan
MozReview-Commit-ID: MeD4VQPVf6

--HG--
extra : rebase_source : c40ed5b7d194290332f0aa77deaf91812de48c42
extra : histedit_source : 34a69d708597fcdbfb9bffccd7dbf28c9d1a42a7
2018-06-12 13:56:58 -04:00
Chris Manchester 764fa9ac29 Bug 1467319 - Generate fewer redundant conditions when generating moz.build files fron gn configs. r=mshal
MozReview-Commit-ID: Ef67haFgx3A

--HG--
extra : rebase_source : b71a870aa4d838cd0230ed07819cf3f3ced5d1d4
2018-06-06 17:36:45 -07:00
Chris Manchester 649b62ee55 Bug 1466254 - Don't assume flags/includes only appear once when factoring gn-generated moz.build conditions. r=mshal
Some recently introduced gn-configs contain duplicate flags/includes, which
aren't handled correctly and introduce non-determinism into the gn-moz.build
generation. This patch makes the moz.build generator faithfully reproduce
duplicated flags, usually to no effect, which is unfortunate in these cases,
but a reasonable approach for the moz.build generator in general.

MozReview-Commit-ID: 6PvobD9JRwN

--HG--
extra : rebase_source : 50c9e92bb03400e6b41908de1a1bfadaced1ad91
2018-06-06 17:12:19 -07:00
Chris Manchester 46d7807752 Bug 1466254 - Sort conditions when generating the moz.build file at the root of a gn project. r=mshal
MozReview-Commit-ID: FCv8VDho2OF

--HG--
extra : rebase_source : 9b6013615f8cfd5df461b40656f6c61a1dc802c8
2018-06-06 17:11:16 -07:00
Mike Shal e9fda85331 Bug 1469712 - Don't update mtime for backend file during --dry-run; r=gps
When we do a './mach build-backend --dry-run', no files in the objdir
should be written or touched. Updating the mtime of the backend file
during dry-run causes a future './mach build' to think that the backend
is up-to-date when it is not, which causes an incorrect build.

MozReview-Commit-ID: 2NA0rcSGrvL

--HG--
extra : amend_source : f694503264dc6275568c453de59b7f13983091f7
2018-06-19 17:15:37 -04:00
Sebastian Hengst 82bbb42c90 Bug 1469872 - update bugzilla products and components in moz.build files: devtools. r=nalexander
MozReview-Commit-ID: 6bs0jkTP6rP

--HG--
extra : rebase_source : 4e554f8e710aea1fb372a0f21d7539cf568baa17
2018-06-20 21:34:40 +03:00
assiya 10dd6c9781 Bug 1468328 - Make other codecoverage import statements Python3 compatible. r=marco
MozReview-Commit-ID: J3uaRsbE1sf

--HG--
extra : rebase_source : bbf3cad256ab9c46ab0dfd9e6923a1d0338feb52
2018-06-16 00:06:25 -07:00
Dave Hunt bd39c77d3c Bug 1465887 - Allow test manifests to skip based on Python version; r=ahal
This patch allows us to enable Python 3 tests and skip any tests that fail so that we can work on adding support for Python 3 without risking regressing any existing support. It will also eventually allow us to skip tests from running against Python 2, when we decide to drop support for it. To skip a test against Python 3, add "skip-if = python == 3" to the [DEFAULT] or test file section of a manifest file.

MozReview-Commit-ID: KYzjW6PQw2Q

--HG--
extra : rebase_source : 9e0670efe237b8953aab96e95cfa3c9ae678351c
2018-06-10 18:30:46 +01:00
assiya d61184c99d Bug 1468328 - Make import statement Python3 compatible. r=marco
MozReview-Commit-ID: 6NPlMjT6K8J

--HG--
extra : rebase_source : 77d195514c5bee921a7086037d3738e01096c631
2018-06-14 07:32:58 -07:00
Chris Manchester 30f730a545 Bug 1319228 - Build dependentlibs.list in the tup backend, create a group for shared libraries to be used as its input. r=mshal
MozReview-Commit-ID: 5nDZpTcqVfv

--HG--
extra : rebase_source : faa44a40404b24f753ba25962397a1ca484de3fe
2018-06-13 22:33:23 -07:00
Chris Manchester c70aa1dec3 Bug 1319228 - Link libxul in the Tup backend. r=mshal
MozReview-Commit-ID: sqCdlqP9pj

--HG--
extra : rebase_source : beb539cd174d173b745287bd659d4659f976b2b1
2018-06-13 22:33:23 -07:00
Chris Manchester 76dfb7be41 Bug 1319228 - Generate rules for rust in the Tup backend via cargo --build-plan. r=ted
MozReview-Commit-ID: FoCBN9ywIuQ

--HG--
extra : rebase_source : b6b2fdda19492dec13840223ac650507f4648f18
2018-06-13 22:33:22 -07:00
Chris Manchester 82c138c9bf Bug 1319228 - Use pass_thru=True when running config.status to expose error messages from sub-commands. r=mshal
MozReview-Commit-ID: 3eWOM6bZOmA

--HG--
extra : rebase_source : 1989de96cb0af9ae1716f31c68a0c96f446f4565
2018-06-13 22:33:22 -07:00
shindli 11cbcef059 Backed out 6 changesets (bug 1319228) for Btup bustages on Linux x64 on a CLOSED TREE
Backed out changeset 2eedbab9137b (bug 1319228)
Backed out changeset 6ba05238789f (bug 1319228)
Backed out changeset badf116dde30 (bug 1319228)
Backed out changeset a218f97e1b48 (bug 1319228)
Backed out changeset d3c835477d11 (bug 1319228)
Backed out changeset 3f3fa38b1a5f (bug 1319228)
2018-06-14 00:46:46 +03:00
Chris Manchester 25a7f13729 Bug 1319228 - Build dependentlibs.list in the tup backend, create a group for shared libraries to be used as its input. r=mshal
MozReview-Commit-ID: 3nvHaS5ZcIg

--HG--
extra : rebase_source : 4d9d4379a07eee5b7ee6ffde0e60d156c8c88333
2018-06-13 13:00:24 -07:00
Chris Manchester bef973d8b9 Bug 1319228 - Link libxul in the Tup backend. r=mshal
MozReview-Commit-ID: AyhoaPIZJ6I

--HG--
extra : rebase_source : 494683bd65779e791e81f42b379946ea72ec902b
2018-06-13 13:00:24 -07:00
Chris Manchester 20ec9d69d8 Bug 1319228 - Generate rules for rust in the Tup backend via cargo --build-plan. r=ted
MozReview-Commit-ID: 9m0Prz3AvmC

--HG--
extra : rebase_source : f8b810036f39c056c5e312388d8238eaa1ee5d0a
2018-06-13 13:00:13 -07:00
Chris Manchester 0080bc4f66 Bug 1319228 - Use pass_thru=True when running config.status to expose error messages from sub-commands. r=mshal
MozReview-Commit-ID: DLlMAgrwHgc

--HG--
extra : rebase_source : a064a2bad9c9c2101dc2e2b64cd55535ddcd7f6d
2018-06-12 13:48:38 -07:00
Peter Simonyi 542cefeac8 Bug 1445383 - update ccache stats parser for ccache 3.4 and 3.5 r=froydnj
MozReview-Commit-ID: KTr9RhkJN5B

--HG--
extra : rebase_source : b384a7e79f2e349a29942cf85f52aa306ddaa3c8
2018-06-09 14:55:46 -04:00
Sofia Carillo 61c1056c0e Bug 1464235 - option to upload tup db r=mshal
MozReview-Commit-ID: JkzWTu0g41X

--HG--
extra : rebase_source : 1bd8c2dc9f99879ca05dade9c9471cec167f319a
2018-06-06 14:04:47 -07:00
Mike Hommey 5a727099da Bug 1467462 - Adjust test_developer_options after bug 1467041. r=froydnj
Bug 1467041 changed the default for --enable-release such that it is
affected by the milestone. Test both possible cases for milestones.

--HG--
extra : rebase_source : 5bfeadf4cd1e8c672cf78e4922ebb91bdafecad8
2018-06-08 07:11:42 +09:00
Gregory Szorc 6026d2721c Bug 1467605 - Disable processing of fetch dependencies; r=glandium
90dca0906337 accidentally broke `mach artifact toolchain --from-build`
because that code is attempting to load toolchain tasks in isolation.
The new "use_fetches" transform added to toolchain tasks requires
that "fetch" tasks are already processed and their references are
available to toolchain tasks.

This commit adds a mechanism to effectively disable the "use_fetches"
transform when called by `mach artifact toolchain`. It is a hack. I
suspect future planned work around artifacts/fetches will necessitate
additional changes to the `mach artifact toolchain` code. But this
can be deferred to a later day: this commit unbusts `mach artifact
toolchain` and isn't super hacky, so it seems more reasonable than
backing out fetch tasks completely.

Differential Revision: https://phabricator.services.mozilla.com/D1588
2018-06-07 23:05:58 +00:00
Ciure Andrei ac7b2634a4 Backed out 1 changesets (bug 1445383) for Windows 2012 build bustages on a CLOSED TREE
Backed out changeset c4cf68b6b73f (bug 1445383)
2018-06-05 19:54:59 +03:00
Peter Simonyi 2d8ec89bb9 Bug 1445383 - update ccache stats parser for ccache 3.4 and 3.5 r=froydnj
MozReview-Commit-ID: KTr9RhkJN5B

--HG--
extra : rebase_source : 118c23aea9fd640cac6b850d5ae795a2582dd8b1
2018-06-05 00:09:13 -04:00
Nick Alexander 8bf87f6f0e Bug 1465836 - Make MOZ_AUTOMATION artifact builds pull host binaries (mar,mbsdiff). r=chmanchester
This populates $OBJDIR/dist/host/bin as part of |mach artifact install|.

Conceptually, the mar and mbsdiff utilities should be grouped (in the
same way that the test-related binaries are grouped).  However, it's
difficult to achieve that with the current structure of the code, so
this fetches mar and mbsdiff and produces $HASH-mar.processed.jar and
$HASH-mbsdiff.processed.jar files.

MozReview-Commit-ID: 3ks5xsUEKp5

--HG--
extra : rebase_source : 5fcf186decc95537cbaa90ffedb86774eab050d2
2018-05-31 11:12:26 -07:00
Andrew Halberstadt bf87aca534 Bug 1437526 - [docs] Upgrade doc dependencies to their latest versions, r=davehunt
This upgrades sphinx to version 1.7.5, which contained a couple backwards
incompatible changes that needed fixing.

This also leaves sphinx-js at version 2.1 as upgrading that to 2.5 seems to
introduce an intermittent in the Doc task.

MozReview-Commit-ID: FRUTcXs5yzb

--HG--
extra : rebase_source : e874a2e9c637b7cec710203f75f4dd989a5681a1
2018-06-01 10:19:01 -04:00
Andreea Pavel 4ced6e8b2d Merge mozilla-central to autoland. a=merge 2018-06-03 07:27:01 +03:00
Csoregi Natalia e2f48890e1 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-06-02 01:05:17 +03:00
Chris Manchester 17335b2c5a Bug 1444597 - Stringify exception when logging harmless errors in post-build step to avoid confusing stacktrace. r=nalexander
MozReview-Commit-ID: 6B4WCUfjESE

--HG--
extra : rebase_source : b9d753e401688375f809bcf8326582a5f39a87f2
2018-05-31 21:21:41 -07:00
Francesco Lodolo (:flod) 499ae06373 Bug 1464029 - Remove Fluent migration recipes for Firefox 60 and older r=Pike
MozReview-Commit-ID: ICRYkrW7nmy

--HG--
extra : rebase_source : 3f00d54b64787aa0b46fd4b36bdbf5453c915a06
2018-05-30 08:46:18 +02:00
Chris AtLee 8e5587759f Bug 1237182: Get rid of buildprops.json r=tomprince,sfraser
Differential Revision: https://phabricator.services.mozilla.com/D1443

--HG--
extra : rebase_source : 1683b76377e27fdaa5292e1781573ddc4e61afa8
2018-05-25 17:35:43 -04:00
Chris Manchester dbbf582ded Bug 1462489 - Re-generate the build backend when a build backend output is missing. r=mshal
MozReview-Commit-ID: CDO3bTGB4tj

--HG--
extra : rebase_source : 9bf580435d78a5048d05f7a37d8eff76b16f6ac9
2018-05-30 15:25:22 -07:00
Chris Manchester 508b393aa6 Bug 1462489 - Put packaged test addons in the test package with the test packager rather than Makefile.in r=mshal
MozReview-Commit-ID: 56Ah9HQc9TT

--HG--
extra : rebase_source : d1af6d7c92aece08932e93e7a1f1b43a78292410
2018-05-30 15:24:09 -07:00
Chris Manchester a5459b456c Bug 1462489 - Process some chrome manifest entries from dist/xpi-stage from the tup backend. r=mshal
MozReview-Commit-ID: 7X5Mi60j4cw

--HG--
extra : rebase_source : 8fb5220b4ac71618cde34d1b5dba504c46a4915b
2018-05-30 15:21:26 -07:00
Dave Hunt c65268bd7a Bug 1388013 - Support running |mach python-test| against Python 3 using pipenv; r=ahal
This patch allows executing |mach python-test| against Python 3 by specifying the optional |--three| command line option. When this option is present, pipenv will be used to manage a virtual environment using Python 3 and attempt to run the tests. When it is not present, pipenv will not be used, and everything will work as it did before this patch.

My original plan was to use pipenv regardless of the target version of Python, however I encountered several issues running some of the tests against our Python packages. Once all tests have been patched to run against Python 3, then we should be able to use pipenv when running them against Python 2.

Note that this patch allows tests to run against Python 3, but there are plenty of issues preventing them from passing. With this patch in place we can start to add Python 3 support to our packages and have the tests running in CI to ensure we don't regress back to just supporting Python 2.

MozReview-Commit-ID: BuU5gZK83hL


IHG: changed taskcluster/ci/source-test/python.yml

--HG--
extra : rebase_source : ca2b15d905f7a5c895a2fd8916144841f5d205de
2018-05-03 10:34:22 +01:00
Andreea Pavel dd5cd1d832 Backed out 3 changesets (bug 1388013) for build bustages e.g. ../python/mozbuild/mozpack/test/test_files.py on a CLOSED TREE
Backed out changeset eea857170a41 (bug 1388013)
Backed out changeset c55bfefbd4e1 (bug 1388013)
Backed out changeset 3a163da2b21b (bug 1388013)
2018-05-31 11:48:19 +03:00
Dave Hunt 18568a8c94 Bug 1388013 - Support running |mach python-test| against Python 3 using pipenv; r=ahal
This patch allows executing |mach python-test| against Python 3 by specifying the optional |--three| command line option. When this option is present, pipenv will be used to manage a virtual environment using Python 3 and attempt to run the tests. When it is not present, pipenv will not be used, and everything will work as it did before this patch.

My original plan was to use pipenv regardless of the target version of Python, however I encountered several issues running some of the tests against our Python packages. Once all tests have been patched to run against Python 3, then we should be able to use pipenv when running them against Python 2.

Note that this patch allows tests to run against Python 3, but there are plenty of issues preventing them from passing. With this patch in place we can start to add Python 3 support to our packages and have the tests running in CI to ensure we don't regress back to just supporting Python 2.

MozReview-Commit-ID: BuU5gZK83hL


IHG: changed taskcluster/ci/source-test/python.yml

--HG--
extra : rebase_source : e1a64c0ffa8fe5cce71a041579601d4a72e37779
2018-05-03 10:34:22 +01:00
Mike Hommey 81cf850f82 Bug 1253064 - Prefer Clang to GCC in local developer builds. r=gps
For Android targets, we just ignore plain clang, it's unlikely to work.

--HG--
extra : rebase_source : 2ba19ea608921acc2739055115082291bb8996f4
2018-05-31 10:16:10 +09:00
Dorel Luca 308f075972 Backed out 4 changesets (bug 1462489) for breaking mochitest on testing/mochitest/tests/python/test_basic_mochitest_plain.py
Backed out changeset 41cf0d53a95c (bug 1462489)
Backed out changeset daa33716b140 (bug 1462489)
Backed out changeset 3cd6a8ee8f66 (bug 1462489)
Backed out changeset dfed23857cea (bug 1462489)
2018-05-31 02:51:41 +03:00
Chris Manchester 1b8f9ac1a6 Bug 1462489 - Re-generate the build backend when a build backend output is missing. r=mshal
MozReview-Commit-ID: CDO3bTGB4tj

--HG--
extra : rebase_source : dfbd0e6bc3fa9bcdbd96de38e85e38dc945275bc
2018-05-30 15:25:22 -07:00
Chris Manchester adac97a0fe Bug 1462489 - Put packaged test addons in the test package with the test packager rather than Makefile.in r=mshal
MozReview-Commit-ID: 56Ah9HQc9TT

--HG--
extra : rebase_source : cc74b4e385cc98036d24e120732cf4c30e73f962
2018-05-30 15:24:09 -07:00
Chris Manchester 37d56be9a8 Bug 1462489 - Process some chrome manifest entries from dist/xpi-stage from the tup backend. r=mshal
MozReview-Commit-ID: 7X5Mi60j4cw

--HG--
extra : rebase_source : 8fb5220b4ac71618cde34d1b5dba504c46a4915b
2018-05-30 15:21:26 -07:00
byron jones af12ec3053 Bug 1454868: create `mach vendor manifest --verify` r=gps
Creates a standard library for working with moz.yaml files, and adds a `mach
vendor manifest --verify` command that loads and verifies manifest schema.

The list of permitted licenses is one I derived from about:license, pending an
authoritative list from legal.

Differential Revision: https://phabricator.services.mozilla.com/D1208
2018-05-26 00:00:27 +00:00
Mike Hommey 8b091c97fd Bug 1464522 - Count static initializers from the crash reporter symbol files. r=froydnj
The crash reporter symbol files are the easiest cross-platform way to
find static initializers. While some types of static initializers (e.g.
__attribute__(constructor) functions) don't appear there in a notable
way, the static initializers we do care the most about for tracking do
(static initializers from C++ globals). As a matter of fact, there is
only a difference of 2 compared to the currently reported count of 125
on a linux64 build, so this is a good enough approximation. And allows
us to easily track the count on Android, OSX and Windows builds, which
we currently don't do.

The tricky part is that the symbol files are in
dist/crashreporter-symbols/$lib/$fileid/$lib.sym, and $fileid is hard to
figure out. There is a `fileid` tool in testing/tools, but it is a
target binary, meaning it's not available on cross builds (OSX,
Android).

So the simplest is just to gather the data while creating the symbol
files, which unfortunately requires to go through some hoops to make it
happen for just the files we care about.

--HG--
extra : rebase_source : 458fed1ffd6f9294eefef61f10ff7a284af0d986
2018-05-29 08:48:47 +09:00
Chris Manchester 82729d6f6e Bug 1464954 - Print buildstatus messages when building in the top source directory. r=gps
MozReview-Commit-ID: F28u8k2Z24f

--HG--
extra : rebase_source : bcf77bdcfb37c5a43261e773d9b444c5844ae4d8
2018-05-29 15:23:39 -07:00
Kris Maglione 9b633c92ac Bug 1457321: Part 4 - Update built-in add-ons manifst during l10n repack. r=ted f=pike
This is slightly ugly, but is unfortunately necessary due to do the nature of
l10n repacks. Hopefully this can go away once we move to bundling lancpack
add-ons rather than repacking in the future.

MozReview-Commit-ID: JZUblVsEbZI

--HG--
extra : rebase_source : 60c9ced2184a52f52c7f2a8820021b14b1a66abf
2018-05-08 01:04:01 -07:00
Kris Maglione e2fecdd542 Bug 1457321: Part 2 - Add dictionaries to omnijar. r=ted
MozReview-Commit-ID: 4zqD8Di7Imb

--HG--
extra : rebase_source : 2fdf8d1429ed1de6c86fc9dc880af2aadcc2b84b
2018-04-27 15:43:38 -07:00
Nick Alexander 72a9479310 Bug 1464128 - Migrate bookmarks.html.in to LOCALIZED_GENERATED_FILES. r=ted.mielczarek
This one looks to be pretty straight-forward.  It irritates me that
the jar.mn entry doesn't explicitly say that the result is coming from
the object directory, like

locale/browser/bookmarks.html (!bookmarks.html)

but that's for another day.

MozReview-Commit-ID: Cw8E0VJhSxv

--HG--
extra : rebase_source : a1045a5b564b0094b562729bc7234e69ec7a786d
2018-05-24 11:28:47 -07:00
Nick Alexander 4b45f41d0e Bug 1440435 - Remove final remnant of Java JAR building from Makefiles. r=ted
MozReview-Commit-ID: 2IrNI8a15Jh

--HG--
extra : rebase_source : 30a29c163de24128e367469fb68f3f207229a7b0
2018-05-18 11:23:00 -07:00
Dave Hunt 6e1c508542 Bug 1346026 - Unvendor pathlib2 as it is no longer a dependency for pipenv; r=ted
MozReview-Commit-ID: EYQqIDuu5p

--HG--
extra : rebase_source : 4cfa71a95bf333e99aec32431c8db5113bfa6cb4
2018-05-10 09:52:37 +01:00
Dave Hunt 5152485bdc Bug 1346026 - Add ability to vendor Python modules using mach; r=ahal,erik,ted
To vendor a Python package, run ``mach vendor python [PACKAGE]``, where
``[PACKAGE]`` is one or more package names along with a version number in the
format ``pytest==3.5.1``. The package will be installed, transient dependencies
will be determined, and a ``requirements.txt`` file will be generated with the
full list of dependencies. The requirements file is then used with ``pip`` to
download and extract the source distributions of all packages into the
``third_party/python`` directory.

If you're familiar with ``Pipfile`` you can also directly modify this in the in
the top source directory and then run ``mach vendor python`` for your changes
to take effect. This allows advanced options such as specifying alternative
package indexed (see below), and
`PEP 508 specifiers <https://www.python.org/dev/peps/pep-0508/>`_.§

MozReview-Commit-ID: CRWoFamUy7V

--HG--
extra : rebase_source : e71ab6ecc74a168faa9df7cc4c2273cd8bf9e0d2
2018-05-09 16:11:40 +01:00
Dorel Luca d6a248d5cd Backed out 3 changesets (bug 1346026) for Bugzilla linting
Backed out changeset 95410b5cdecc (bug 1346026)
Backed out changeset 705e8cb185d4 (bug 1346026)
Backed out changeset f293475f462d (bug 1346026)
2018-05-23 19:42:13 +03:00
Dave Hunt 5c137d2989 Bug 1346026 - Unvendor pathlib2 as it is no longer a dependency for pipenv; r=ted
MozReview-Commit-ID: EYQqIDuu5p

--HG--
extra : rebase_source : 956148b1ff1fab4b12442206afa501523445d46d
2018-05-10 09:52:37 +01:00
Dave Hunt 4f9d65989d Bug 1346026 - Add ability to vendor Python modules using mach; r=ahal,erik,ted
To vendor a Python package, run ``mach vendor python [PACKAGE]``, where
``[PACKAGE]`` is one or more package names along with a version number in the
format ``pytest==3.5.1``. The package will be installed, transient dependencies
will be determined, and a ``requirements.txt`` file will be generated with the
full list of dependencies. The requirements file is then used with ``pip`` to
download and extract the source distributions of all packages into the
``third_party/python`` directory.

If you're familiar with ``Pipfile`` you can also directly modify this in the in
the top source directory and then run ``mach vendor python`` for your changes
to take effect. This allows advanced options such as specifying alternative
package indexed (see below), and
`PEP 508 specifiers <https://www.python.org/dev/peps/pep-0508/>`_.§

MozReview-Commit-ID: CRWoFamUy7V

--HG--
extra : rebase_source : e71ab6ecc74a168faa9df7cc4c2273cd8bf9e0d2
2018-05-09 16:11:40 +01:00
Mike Hommey 5c6ce84a4c Bug 1464084 - Don't export std:🧵:_M_start_thread symbols with --enable-stdcxx-compat. r=froydnj
This relies on the fact that providing multiple --version-script
combines them all, so we effectively create a new symbol version
that has no global symbol, but hides the std:🧵:_M_start_thread
symbols.

This version script trick happens to work with BFD ld, gold, and lld.

The downside is that when providing multiple --version-script's, ld
doesn't want any of them to have no version at all. So for the libraries
that do already have a version script (through SYMBOLS_FILE), we use a
version where there used to be none, using the library name as the
version. Practically speaking, this binds the libraries a little closer
than they used to be, kind of non-flat namespace on OSX (which is the
default there), meaning the dynamic linker will actively want to use
symbols from those libraries instead of a system library that might
happen to have the same symbol name.

--HG--
extra : rebase_source : a7f672c35609d993849385ddb874ba791b34f929
2018-06-01 08:10:25 +09:00
Gurzau Raul 7e4f5e7dc6 Backed out changeset 838c0ab9cbdb (bug 1464084) for Linux static bustage on a CLOSED TREE 2018-06-02 02:42:52 +03:00
Mike Hommey 3a629b5eac Bug 1466054 - Enable STL wrapping in gn and gyp processed code. r=froydnj
We wrap STL headers so as to ensure our inline infallible operator new
definitions are used, but for some reason, STL wrappers were disabled
in whatever code we used gyp for first, and that ended up spreading as
more things used gyp, and now with gn, whose handling cargo culted
STL disabling from the gyp code.

We remove all this disabling, because it turns out it causes no build
problem anymore.

--HG--
extra : rebase_source : 0dd5dc3dbf613a519db74072ebda04d05ea1214c
2018-06-01 17:20:51 +09:00
Mike Hommey cc7ff037ab Bug 1464084 - Don't export libstdc++ symbols with --enable-stdcxx-compat. r=froydnj
This relies on the fact that providing multiple --version-script
combines them all, so we effectively create a new symbol version
that has no global symbol, but hides as much std::* stuff as possible.

The added symbol script could use `extern "C++"` syntax and demangled
symbols but there is no guarantee the demangled symbols won't change.
Plus, it's not possible to match demangled symbols that have a return
type: they contain a space, and the only way to match that is to use
double quotes, which doesn't allow globs at the same time.

This version script trick happens to work with BFD ld, gold, and lld.

The downside is that when providing multiple --version-script's, ld
doesn't want any of them to have no version at all. So for the libraries
that do already have a version script (through SYMBOLS_FILE), we use a
version where there used to be none, using the library name as the
version. Practically speaking, this binds the libraries a little closer
than they used to be, kind of non-flat namespace on OSX (which is the
default there), meaning the dynamic linker will actively want to use
symbols from those libraries instead of a system library that might
happen to have the same symbol name.

--HG--
extra : rebase_source : 78adb64b90e75ebad203b8a647b305c9d7198d16
2018-06-01 08:10:25 +09:00
James Graham 0fdad07d90 Bug 1345875 - Reduce the amount of text about artifact mode, r=nalexander
Reduce the amount of text so that the options are more likely to be
visible and people are more likely to read it.

--HG--
extra : rebase_source : 95eacc8b6b09a82dfb1bec0e837bc70057c5cef1
2017-03-09 14:38:06 +00:00
Michael Kaply a97758663a Bug 1461345 - Move browser.search.order to list.json. r=adw
MozReview-Commit-ID: 1ulgkNgkAP9

--HG--
extra : rebase_source : 16c469f449a4684c6f43dd2cc82d2288b9fd2a34
2018-05-21 14:27:06 -05:00
Chris Manchester 938659fc16 Bug 1461836 - Check configure dependencies and re-run configure if needed when invoking the Tup backend. r=mshal
MozReview-Commit-ID: LHYT3r4u2CY

--HG--
extra : rebase_source : 54bb48b0a95e0fda146e23e6a1ee7e7650bc4ddf
2018-05-21 14:01:56 -07:00
Noemi Erli cf07f127bc Backed out changeset 80cc5997d8cc (bug 1461345) for xpcshall failures on test_TelemetryEnvironment.js on a CLOSED TREE 2018-05-21 20:16:47 +03:00
Michael Kaply 574e1467e0 Bug 1461345 - Move browser.search.order to list.json. r=adw
MozReview-Commit-ID: 4eaWb8mzIm6

--HG--
extra : rebase_source : 83f01cadfca9ec44d52ba7f737ab9d23f004f044
2018-05-18 16:12:32 -05:00
Kris Maglione f8aeb3dbfc Bug 1462223: Remove unnecessary/unused bootstrap scope setup code. r=aswan
This also removes the workerbootstrap test extension, which is no longer used,
and contains the last references to the Worker and ChromeWorker bootstrap
globals.

MozReview-Commit-ID: 8YWReXMqX5W

--HG--
extra : rebase_source : b0aa59b2b5e6a08f4be803e828bd507f894e4a19
2018-05-19 14:03:50 -07:00
Margareta Eliza Balazs 0bb5e5ba36 Merge inbound to mozilla-central. a=merge 2018-05-19 12:39:28 +03:00
Justin Wood d15902ef2b Bug 1455337 - Set min version appropriately for language packs. r=gps
AMO needs to enter the application version for every Firefox release at this time, and in doing so they don't usually enter .sec versions, as these versions are exposed to addon devs in UX where they can specify outside of the xpi what versions of Firefox they are compatible with.

Language packs however set min version to things like 59.0.2 which AMO doesn't know about.

AMO will also fail to validate an .xpi with an unknown min version.

This code logic is slightly compounded by the fact that SeaMonkey uses these codepaths as well, so we need to account for it here.

Differential Revision: https://phabricator.services.mozilla.com/D1112

--HG--
extra : rebase_source : 5bf74d235bdf651714984b7fbe0e79d2d3f61b6e
extra : histedit_source : 91a49a4c0452f217d4e3de534bfdd817dd2350cc
2018-05-02 22:33:19 -04:00
Andreea Pavel eba827286e Backed out changeset 5afad9b7fd21 (bug 1408051) for slowing down setup of test environments on OS X on a CLOSED TREE 2018-05-18 21:17:33 +03:00
Gabriele Svelto f79b3e0dab Bug 1462444 - Make |mach bootstrap| use the latest version of Oracle's JDK when bootstrapping Fennec on Gentoo; r=nalexander
The previous version was removed from Gentoo's portage repository making it
impossible to bootstrap correctly.

MozReview-Commit-ID: HTao6D3g61L

--HG--
extra : rebase_source : 57be7946b105289e662dc2f687bb1b2b9056a3f2
2018-05-17 21:44:26 +02:00
Chris AtLee cbdca910d6 Bug 1408051: Remove mozharness' copy of virtualenv r=tomprince
MozReview-Commit-ID: 6LsrEcgz0L0

--HG--
extra : rebase_source : e3f35d603fcd79add947a5270590205870316974
2018-05-17 09:52:59 -04:00
Michael Kaply 96b8767c2a Bug 1461432 - Use list.json instead of browsersearch.json. r=nalexander
MozReview-Commit-ID: ISmBoFe45Co

--HG--
extra : rebase_source : f6cdc3ee4d063d9413cb3f6306f9f9f59fff1681
2018-05-17 12:51:16 -05:00
Nathan Froyd e2533026b6 Bug 1461926 - delete unneeded managing of dist/idl from the tup backend; r=mshal
We don't need to install anything in dist/idl anymore.
2018-05-17 10:16:46 -04:00
Mike Shal 642a32a948 Bug 1461795 - Use FileAvoidWrite when writing mozinfo.json; r=chmanchester
Since MozbuildObject.from_environment() reads from mozinfo.json, tup
picks up that file as a dependency for anything that imports buildconfig
(eg: all generated files). Using FileAvoidWrite when creating
mozinfo.json will help avoid unnecessary work after re-running configure
in the tup backend.

MozReview-Commit-ID: EEOPQYJA1MV

--HG--
extra : rebase_source : 136a0579090776dc55ea5cee870574f13cc27c58
2018-05-14 17:30:21 -04:00
Dorel Luca 0d2ff9e60d Merge mozilla-inbound to mozilla-central. a=merge 2018-05-16 00:54:22 +03:00
Nathan Froyd 9bd5c61497 Bug 1459721 - part 8 - pass full paths for IDL files to xpidl-process.py; r=chmanchester
The build system knows at build-backend time where to find each IDL
file; making xpidl-process.py rediscover this by requiring
xpidl-process.py to search through directories to find input IDL files
is silly.  To rememdy this, we're going to modify things so full paths
are passed into the script.  Those paths can then be used directly, with
no searching.
2018-05-15 10:05:23 -04:00
Nathan Froyd 33635829ac Bug 1459721 - part 7 - remove dist_idl install manifest; r=chmanchester
We no longer need to install the IDL files to the objdir for
processing. \o/
2018-05-15 10:05:23 -04:00
Nathan Froyd 2f6686cbec Bug 1459721 - part 5 - explicitly specify include directories for xpidl files; r=chmanchester
The previous patch required us to pass a single -I argument pointing at
$(DIST)/idl so IDL include statements would work correctly.  This patch
lifts that limitation and explicitly points xpidl-process.py at the
locations of all the IDL source directories to search for included IDL
files.  Invocations of xpidl-process.py no longer depend on IDL files
being copied to the objdir.
2018-05-15 10:05:24 -04:00
Nathan Froyd 236d75aaae Bug 1459721 - part 4 - explicitly specify input directories for xpidl modules; r=chmanchester
Building on the last patch, we can change the build process to pass in
the directories where the input IDL files can be found.  It is
convenient to pass in just the relative source directory paths, to
encourage people to not look in the object directory and to make the
command lines slightly shorter.

xpidl-process.py still assumes that included IDL files can be found by
looking in a single directory.  We add a single -I argument to the
invocation of xpidl-process.py to accommodate this short-sightedness.
2018-05-15 10:05:24 -04:00
Nathan Froyd 31e67ea398 Bug 1459721 - part 3 - enable multiple input paths for xpidl-process.py; r=chmanchester
The current IDL build setup assumes that all IDL files can be found in a
single directory.  This setup requires that all IDL files be copied to a
single directory, which is suboptimal in terms of disk I/O and also
complicates things like generating IDL files at build time.

As a first step in moving away from this state of affairs,
xpidl-process.py needs to be taught that the input IDL files could
potentially be found in multiple directories.  The current setup can
just specify $(DIST)/idl as the lone directory to examine.  Future
patches will change this to examine multiple directories.
2018-05-15 10:05:24 -04:00
Nathan Froyd f07a68f051 Bug 1459721 - part 2 - remove install_target member from XPIDLManager.modules; r=chmanchester
This member is unused, so we might as well dispense with it.
2018-05-15 10:05:24 -04:00
Nathan Froyd 1567073b56 Bug 1459721 - part 1 - remove allow_existing keyword arg from register_idl; r=chmanchester
This method is only called in one place, and it doesn't pass
allow_existing.  Whatever ugly thing this keyword was working around
doesn't exist anymore, so let's get rid of it.
2018-05-15 10:05:24 -04:00
Mike Shal 8f1ede4723 Bug 1454912 - Revert "Bug 1218999 - Update mtimes when building a GENERATED_FILES target, even when contents don't change."; r=nalexander
We no longer want to update mtimes of FileAvoidWrites so that downstream
rules aren't triggered if the files aren't changed. Since the .stub file
target of GENERATED_FILES are always touched, make won't continually
rebuild them.

MozReview-Commit-ID: GxrFgCJTYk

--HG--
extra : rebase_source : f4412af1dc29142b76f7695627ba3354baf84edd
2018-05-09 16:51:04 -04:00
Mike Shal 8d4c5d5849 Bug 1454912 - Use a .stub file as the target for all GENERATED_FILES rules; r=nalexander
The make backend was treating the first output of a GENERATED_FILES rule
specially, since it was the target of the rule containing the script
invocation. We want the outputs of GENERATED_FILES rules to be
FileAvoidWrite so that we avoid triggering downstream rules if the
outputs are unchanged, but if the target of the script invocation is
FileAvoidWrite, then make may continually re-run the script during a
no-op build.

The solution here is to use a stub file as the target of the script
invocation which will always be touched when the script runs. Since
nothing else in the build depends on the stub, we don't need to
FileAvoidWrite it. All actual outputs of the script can be
FileAvoidWrite, and make can properly avoid work for files that haven't
changed.

MozReview-Commit-ID: 3GejZw2tpqu

--HG--
extra : rebase_source : 2b9be82f893e89a4c2f254f05b1e8b9a0f9c631b
2018-05-09 08:24:31 -04:00
Mike Shal 6ecfac2683 Bug 1454912 - Only output dependencies for GENERATED_FILES with scripts; r=nalexander
Some GENERATED_FILES entries don't have .scripts associated with them
(notably midl on Windows builds). In this case, we don't want to
generate dependencies automatically since they will be handled by the
Makefiles.

MozReview-Commit-ID: AXmN2Unk9AY

--HG--
extra : rebase_source : 1f06672add87c46ae199189fcae27b721e008f9e
2018-05-09 16:53:19 -04:00
Mike Shal ae545cfb52 Bug 1461488 - trim tup's display of commands with many outputs; r=chmanchester
Some commands produce a large number of output files, such as
make-system-wrappers.py, which has over 1000 outputs. The GeneratedFile
handler in the tup backend displayed all the outputs, which makes the
build output unreadable, and breaks 'tup graph'. This patch displays
only the first 3 outputs and truncates the rest.

MozReview-Commit-ID: 5AnrmMe0Nyx

--HG--
extra : rebase_source : 1a6766be36aef4603c1e5333cfc13af006369966
2018-05-11 15:55:00 -04:00
Andrew Halberstadt f6cad69dd3 Bug 1460690 - [mozlint] Make sure vcs_paths are always joined to the repository root, r=standard8
Files returned from version control (i.e via --outgoing or --workdir), are currently joined to
cwd. This will cause failures if |mach lint| is run from anywhere other than topsrcdir.

However we *do* want to join manually specified paths to cwd so things like:
cd devtools && mach lint client

continue to work. This patch makes sure we join the proper kind of path to the proper place.

MozReview-Commit-ID: EQmRhAr3Oog

--HG--
extra : rebase_source : 2629cc27f79059e44369d46d4f8278f83923582c
2018-05-11 11:13:36 -04:00
Myk Melez 1c99762628 Bug 1459661 - require cargo-vendor version 0.1.14. r=kats
MozReview-Commit-ID: FRSzL74N8vY

--HG--
extra : rebase_source : 39fa35ce687793db28c0bc47466bdd4af491aeaf
2018-05-14 21:28:39 -07:00
Andi-Bogdan Postelnicu c8262a2d3f Bug 1459862 - Mach static-analysis autotest - run tests in parallel. r=gps
MozReview-Commit-ID: LxTmytjaPAn

--HG--
extra : rebase_source : 4492b34f9ba0ab3f7b44693f5f3c548a9af4bc0e
2018-05-08 12:36:57 +03:00
Andi-Bogdan Postelnicu 0374067886 Bug 1432410 - Add tests in tree to make sure we don't regress with clang-tidy on static-analisys. Tests wrote in part by :sylvestre. r=gps
MozReview-Commit-ID: IWxzKfWNIHG

--HG--
extra : rebase_source : d2bd65c66541e5d6e8d5cc721b117f0a3e7716e8
2018-05-03 20:06:16 +03:00
Francesco Lodolo (:flod) e30cbdf2d8 Bug 1460806 - Clean up Fluent migration recipes r=gandalf
MozReview-Commit-ID: 8hODnvJc4Qc

--HG--
extra : rebase_source : 641019353402900bea7985650bdf2b2133d4c754
2018-05-11 08:12:52 +02:00
Andrew Halberstadt 970f7e41b1 Bug 1458571 - Use base testing/profiles in raptor, r=rwood
This gets raptor to use the newly created "perf" profile that talos
also uses. There is a single pref that raptor sets that we can't set
in talos. To that end, this also creates a "raptor" specific profile.

This means to set a pref in talos and raptor, edit:
testing/profiles/perf/user.js

To set a pref in raptor only, edit:
testing/profiles/raptor/user.js

The performance of extensions can now be tested by dropping the
extension into:
testing/profiles/perf/extensions

MozReview-Commit-ID: LEJeytmmiFF

--HG--
extra : rebase_source : 0d2a6b18868f8cc6ff198ef868ad0324b57b1dc2
2018-05-04 11:19:49 -04:00
Andrew Halberstadt afea2c586c Bug 1458571 - Use base testing/profiles in talos, r=rwood
This moves all of the global prefs that were previously defined
in testing/talos/talos/config.py, into a new "perf" profile under
testing/profiles/perf/user.js.

This perf profile will be shared with raptor, so changes to one
framework will result in changes to the other.

MozReview-Commit-ID: JRxZEDlPu6b

--HG--
extra : rebase_source : 38f61eb6f9dd3e8dd9e0425ffe32dbdf845fcf65
2018-05-09 15:06:53 -04:00
Sylvestre Ledru 9773d1f2f1 Bug 1460402 - Create a new class to manage pip install r=ahal
MozReview-Commit-ID: JnscCmC4gBt

--HG--
extra : rebase_source : ffd9c67d50d1ad8a9d81df3eb48ddac0ee614b6f
2018-05-10 19:05:30 +02:00
Dorel Luca a5bc0b3f70 Backed out 4 changesets (bug 1460402) for lint failure on intl/locales/en-US/hyphenation/hyph_en_US.dic. CLOSED TREE
Backed out changeset c2e8fbd72ca6 (bug 1460402)
Backed out changeset 3676e913dbff (bug 1460402)
Backed out changeset bb12ffd4b96e (bug 1460402)
Backed out changeset 3e50885329c4 (bug 1460402)
2018-05-11 00:47:34 +03:00
Sylvestre Ledru 482e851d53 Bug 1460402 - Create a new class to manage pip install r=ahal
MozReview-Commit-ID: JnscCmC4gBt

--HG--
extra : rebase_source : d2d203d63a1c21fa90c36a28a58378bf66718751
2018-05-10 19:05:30 +02:00
Dorel Luca 74bbb3c1eb Backed out 4 changesets (bug 1460402) for breaking taskcluster images. CLOSED TREE
Backed out changeset 5b40f3f18f42 (bug 1460402)
Backed out changeset 17526c61b995 (bug 1460402)
Backed out changeset e1caff997e5a (bug 1460402)
Backed out changeset 06ceda084d69 (bug 1460402)
2018-05-10 23:54:38 +03:00
Andrew Halberstadt 11734ea63e Bug 1454640 - [mozbuild] Ability to find sphinx variables relevant to a given path r=mshal
The current mechanism for reading SPHINX variables assumes we always want to
read metadata for the entire tree. Now that we have the ability to rebuild
specific subtrees, this assumption is false.

This patch allows us to specify a path that find_sphinx_variables can use to
filter down the set of moz.build variables it will traverse, yielding only
moz.builds that could potentially impact the specified path.

MozReview-Commit-ID: ALrCFLFgMLH

--HG--
extra : source : 22f2dc60e6d859d3ca411826c77002d87c1a49bd
2018-04-17 11:51:37 -04:00
Andrew Halberstadt 03da91b713 Bug 1454640 - [docs] Use a single SphinxManager instance across all rebuilds r=mshal
In the mozbuild.sphinx extension, we create a new SphinxManager instance each
time. However this isn't ideal now that we can rebuild the docs within the same
interpreter using the livereload server.

This makes use of a singleton so that we can share state not only between
multiple invocations of sphinx-build, but also with the mach command. This will
be taken advantage of more heavily in future commits in this series.

MozReview-Commit-ID: 7ERYeN5BPeI

--HG--
extra : source : 8309212d820bcca29aa95b7892d39940437f2aa8
2018-04-18 12:56:55 -04:00