Commit Graph

5124 Commits

Author SHA1 Message Date
Mike Hommey
b2837054ff Bug 1469091 - Build the clang plugin as a host shared library. r=ted
This adds just enough host shared library support for this one use case,
but also takes shortcuts, because fully supporting host shared library
is a deep rabbit hole I'm not ready to take just to fix --enable-lto
--enable-clang-plugin on mac builds.

One downside is that one my machine the plugin now takes > 80s to build,
instead of 15s before, thanks to the lack of unified sources.

--HG--
extra : rebase_source : bf52a72a01d4e3eb77cf52b646b19734b9273075
2018-07-05 14:58:09 +09:00
Bogdan Tara
f06fbe92ac Merge inbound to mozilla-central. a=merge 2018-07-07 01:00:41 +03:00
David Major
3438ab8312 Bug 1473954: Use $(ASOUTOPTION) rather than hardcode -o for SOBJS. r=ted 2018-07-06 13:56:50 -04:00
Dave Hunt
ea2e10e990 Bug 1472199 - Set the root directory for Python unit tests to topsrcdir; r=ahal
MozReview-Commit-ID: 4k4CTwzAbli

--HG--
extra : rebase_source : 23075814f6a71d39b451e534f5efba7539d66c1f
2018-07-02 11:22:37 +01:00
Ted Mielczarek
41895658f3 bug 1473121 - Pass -vv to cargo build instead of just --verbose when verbose output is requested. r=gps
Many Rust build scripts compile C/C++ source files with the cc crate, but
cargo doesn't print the output of build scripts unless you pass `-vv`, so
pass that instead of just `--verbose` to get that output in automation and
builds where verbose output was requested.

MozReview-Commit-ID: EUazlKWFsDw

--HG--
extra : rebase_source : 137882c4e970bb0e7b28cc36d7f8e436b59a8011
2018-07-03 14:17:31 -04:00
Andreea Pavel
2ebf16b514 Backed out changeset 530f89f70093 (bug 1472199) for build bustages on a CLOSED TREE 2018-07-05 11:55:11 +03:00
Dave Hunt
4d72fb0ad1 Bug 1472199 - Set the root directory for Python unit tests to topsrcdir; r=ahal
MozReview-Commit-ID: 4k4CTwzAbli

--HG--
extra : rebase_source : 688f4af6029254f986e406383c1bcd5cc6217172
2018-07-02 11:22:37 +01:00
Henri Sivonen
5885cf2259 Bug 1397807 - Allow rustc to emit NEON instructions when clang does on ARMv7 and use NEON in encoding_rs. r=glandium
MozReview-Commit-ID: LNd4jeIGIRg

--HG--
extra : rebase_source : e175f51ec3e8c1097d914d97c6b0d2644dbc4c18
2018-06-05 14:56:11 +03:00
Kris Maglione
b2a784a8bf Bug 1459004: Generate built_in_addons.json from moz.build definitions. r=mshal
MozReview-Commit-ID: 1HRLG5tSlFr

--HG--
rename : python/mozbuild/mozbuild/action/generate_builtin_addons.py => toolkit/mozapps/extensions/gen_built_in_addons.py
extra : rebase_source : 7079d5f6a9355201497ea85a0d8ea8fdcee43a64
2018-06-06 16:43:00 -07:00
Andrew Halberstadt
9435736ade Bug 1471620 - Skip python-tests locally that don't run with python 3 in CI r=davehunt
This will make sure that when running |mach python-test --python 3| locally,
we only run the tests that also run in CI with python 3 (and therefore pass
presumably).

MozReview-Commit-ID: 3OBr9yLSlSq

--HG--
extra : rebase_source : 456340d0ecdddf1078f2b5b4ebb1eddf3813b26a
2018-06-27 11:10:02 -04:00
Xidorn Quan
9d13707bca Bug 1471486 part 1 - Detect rustfmt like other rust executables. r=froydnj
MozReview-Commit-ID: 8LMdpdqbrFS

--HG--
extra : rebase_source : e23b7e467993963eb1a69637dacdabb7cbff3e90
2018-06-27 15:27:43 +10:00
Mike Hommey
354a9e27a0 Bug 1470127 - Move binary checks to a standalone script. r=froydnj
We perform, on the binaries we build, a series of check, that are
implemented as half-baked make commands, invoked after linking them.

- check libstdc++ symbol versions to ensure binary compatibility with
  a baseline.
- check glibc symbol versions to ensure binary compatibility with a
  baseline.
- check that target binaries don't contain text relocations.
- check that libmozglue is linked before libc on android.
- on libxul, check that NSModules are laid out correctly.
- on libxul, check that there is more than one PT_LOAD segment.

Those checks happen to work where they matter, but their setup is
unreliable. For example, the checks for symbol versions are supposed to
work for libclang-plugin on cross osx builds, but in fact, don't,
because the readelf path doesn't exist, and the command doesn't fail in
that case.

So move them all to a standalone script, performing the checks more
thoroughly (especially the NSModules one, where we now also check that
they are all adjacent), and more verbosely.

--HG--
extra : rebase_source : 7072e622e95f363d4a6c3a8e272d3445d998b592
2018-06-21 18:13:03 +09:00
ffxbld
499488f95b Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2018-06-25 09:34:19 -07: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
Andrew Halberstadt
d19095947f Bug 1417920 - [python-test] Use a global pytest.ini configuration file, r=davehunt
This changes two config options:

pytest_classes = PyTest  # only classes that start with 'PyTest' will be considered tests (previously this was Test)
xfail_strict = true      # tests marked as xfail will cause pytest to return non-zero if they unexpectedly pass

MozReview-Commit-ID: DCWoDFbe6Mk

--HG--
extra : rebase_source : 9aa806e035d62d51bb338708396851c40f55ee00
2018-06-06 14:00:04 -04:00
Chris Manchester
a4d8492ece Bug 1464954 - Call TIERS when invoking the build with individual tier names. r=gps
MozReview-Commit-ID: FIEE7jd1jDD

--HG--
extra : rebase_source : 771909ae7376b8d6efc4518126917ab28bef1284
2018-05-31 21:08:18 -07: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
Bogdan Tara
597ad02dc7 Merge inbound to mozilla-central. a=merge
--HG--
rename : testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/shape-outside-circle-056-ref.html => layout/reftests/w3c-css/submitted/shapes1/shape-outside-circle-056-ref.html
rename : testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/shape-outside-circle-056.html => layout/reftests/w3c-css/submitted/shapes1/shape-outside-circle-056.html
rename : testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/shape-outside-ellipse-052-ref.html => layout/reftests/w3c-css/submitted/shapes1/shape-outside-ellipse-052-ref.html
rename : testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/shape-outside-ellipse-052.html => layout/reftests/w3c-css/submitted/shapes1/shape-outside-ellipse-052.html
rename : testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/shape-outside-polygon-032-ref.html => layout/reftests/w3c-css/submitted/shapes1/shape-outside-polygon-032-ref.html
rename : testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/shape-outside-polygon-032.html => layout/reftests/w3c-css/submitted/shapes1/shape-outside-polygon-032.html
2018-05-25 13:01:23 +03: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
Robin Templeton
f6e5382e6a bug 1366287 - Part 2.0: Use GMP integers to represent BigInt values. r=jwalden
Also link to libgmp and initialize it with custom memory allocation
functions.

--HG--
extra : rebase_source : 3aab0578a0b9e61c4aea5c7b7d1d572316f63b46
2018-05-11 19:42:48 -07:00
Sylvestre Ledru
a80feff40b bug 1463425 - Fix flake8/pep8 issue by hand in config/ r=gps
MozReview-Commit-ID: 6B60uh4n2nY

--HG--
extra : rebase_source : 4fd44789a9ee6376c72bae1132f73c81dd1eacbc
2018-05-22 06:22:46 -07:00
Sylvestre Ledru
3d085810e5 bug 1463425 - autopep8 on config/ r=gps
MozReview-Commit-ID: EaTAhH2CAee

--HG--
extra : rebase_source : f278cd9fc6e8f9db720c1430121ba91e0417c9b9
2018-05-22 00:01:01 +02:00
Kris Maglione
f8506d46d0 Bug 1460600: Remove unsupported --enable-system-hunspell flag. r=glandium
Our bundled Hunspell now significantly differs from upstream Hunspell. Most
importantly, it supports loading dictionaries from jar: URIs, which is now a
requirement for loading bundled and extension dictionaries. This means that
system Hunspell libraries are no longer compatible with our spell checker
code. We should remove the option to use them so that users don't fall into
the trap of trying to use them.

MozReview-Commit-ID: 2ihJe6YOnGf

--HG--
extra : rebase_source : ceb091b9475a2b101156405a02a60015fc36da17
2018-05-10 10:36:53 -07:00
Tom Ritter
c5a26d81ec Bug 1457483 Retrieve nm from environment for check_vanilla_allocations.py r=glandium
MozReview-Commit-ID: HIZpMk4Ierb

--HG--
extra : rebase_source : 670da25b7e516e176f2eae116b58e5e62ccbbde7
2018-04-27 10:25:35 -05:00
Andreea Pavel
47d4e9de33 Backed out changeset 23b5cf2c6824 (bug 1457483) for build bustages e.g. OSError: [Errno 13] Permission denied/ make[2]: *** [check-vanilla-allocations] Error 1 on a CLOSED TREE 2018-05-16 17:51:49 +03:00
Tom Ritter
c27fff25b3 Bug 1457483 Retrieve nm from environment for check_vanilla_allocations.py r=glandium
MozReview-Commit-ID: HIZpMk4Ierb

--HG--
extra : rebase_source : 5671a3f0ad8599aafb737f9fe6f76a5a4aa1d896
2018-04-27 10:25:35 -05:00
Martin Stransky
5fbefbfb2d Bug 1460605 - Provide NS_NATIVE_EGL_WINDOW to get a native EGL window on Wayland, r=jhorak
Original patch author is Takuro Ashie <ashie@clear-code.com>

Provide ability to create native EGL window and provide it under NS_NATIVE_EGL_WINDOW
to GL code. The native EGL window is owned/managed by mozcontainer.

MozReview-Commit-ID: 4d0Kk6DRSaD

--HG--
extra : rebase_source : e4677ce51fbf918eb1b0257c66ca4b7220174bbb
2018-05-10 16:04:20 +02: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
6d76a90b37 Bug 1459721 - part 6 - remove redundant dependency code from xpidl Makefile.in; r=chmanchester
The tail end of the xpidl Makefile.in contains a line, generated for
every xpt file:

$(1): $(addsuffix .idl,$(addprefix $(dist_idl_dir)/,$($(basename $(notdir $(1)))_deps)))

This line, in context, is saying that the xpt file depends on all of its
input IDL files.  But xpidl-process.py already generates this
information when we pass it --depsdir, which we do.  So this code is
redundant with what we already generate, and it can be removed.
2018-05-15 10:05:24 -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
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
Nick Alexander
53d03bac82 Bug 1460716 - Make mobile/android artifact builds produce features JSON. r=gps
I don't understand how this will interact with the parts of the build
where we try to avoid installing the dist/bin manifest, but this makes
sense to me and it works locally for mobile/android and for browser/.

MozReview-Commit-ID: L7RtA4K3WrX

--HG--
extra : rebase_source : 3c08a5aab5398eb3b5685b18e5fe06e926db5f85
2018-05-11 13:51:38 -07:00
Ted Mielczarek
1044f75cf5 bug 1459597 - fix Original Filename display in Windows file version info. r=chmanchester
MozReview-Commit-ID: 1JdpRcbS6qN

--HG--
extra : rebase_source : d2b3b6ab3cd5b40b0285557bb6f1b0ae6b0bfc17
2018-05-11 11:56:12 -04:00
André Bargull
a72259bbca Bug 1459285: Update tzdata in ICU data files to 2018e. r=Waldo 2018-05-09 01:12:01 -07:00
Ciure Andrei
a7fbf22348 Backed out 11 changesets (bug 1457560, bug 1366287) for causing Linux build bustages CLOSED TREE
Backed out changeset e71da1f3c048
Backed out changeset 971159738904 (bug 1366287)
Backed out changeset 68fae6784ebe (bug 1366287)
Backed out changeset a18120245eb7 (bug 1366287)
Backed out changeset 3bbd03d726e5 (bug 1366287)
Backed out changeset f80aac2c702a (bug 1366287)
Backed out changeset c834c0c12a7f (bug 1366287)
Backed out changeset dd19d38a2b1c (bug 1366287)
Backed out changeset 76fdbe405fbd (bug 1366287)
Backed out changeset b424782cd5d1 (bug 1366287)
Backed out changeset e4fd5393d398 (bug 1457560)
2018-05-12 08:00:13 +03:00
Robin Templeton
9684972b62 bug 1366287 - Part 2.0: Use GMP integers to represent BigInt values. r=jwalden
Also link to libgmp and initialize it with custom memory allocation
functions.
2018-05-11 19:42:48 -07:00
David Major
e02fd9579e Bug 1460020: Filter out PGO flags from cargo's LDFLAGS. r=froydnj 2018-05-11 10:37:55 -04:00
Kris Maglione
4900714df7 Bug 1457321: Part 1 - Add bundled dictionaries to built_in_addons.json. r=ted,rhelmer
MozReview-Commit-ID: GxCSXXaz8kz

--HG--
extra : rebase_source : a334cfbeee786aeaca373b5a7fc8107fa44c2243
2018-04-27 15:42:55 -07:00
Sylvestre Ledru
d8248a15c7 Bug 1418425 - Remove libbz2 files as we were only using it for crc32 as the updater moved to lzma r=glandium
MozReview-Commit-ID: 8Sz8vtV0b5G

--HG--
extra : rebase_source : 9f48f2e181fb16ad6bde1c357d74f879e1ef101e
2017-11-24 16:45:47 +01:00
Gurzau Raul
fcba2de1c0 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-05-08 01:09:48 +03:00
ffxbld
f30847c12e Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2018-05-07 16:29:07 +00:00
Xidorn Quan
12ddb6a1e7 Bug 1457524 part 3 - Check rustdoc for rust tests. r=froydnj
MozReview-Commit-ID: 4qRccUcXq6O

--HG--
extra : rebase_source : 684fd08a18f55a1f620fa305b22b31e002077a0a
2018-05-02 20:02:04 +10:00
Xidorn Quan
28f16a3912 Bug 1457524 part 2 - Run all rust tests regardless of failures. r=froydnj
MozReview-Commit-ID: K4ZhFOWd6gd

--HG--
extra : rebase_source : 176ecf1b54e949d2a177f15106dd7a31d158c845
2018-05-02 17:13:25 +10:00
Xidorn Quan
1c8dc43017 Bug 1457524 part 1 - Use a list for rust tests. r=froydnj
MozReview-Commit-ID: 6A0hHClXDUE

--HG--
extra : rebase_source : 827bb569642aa2ad834b94f08af3f60b68552de4
2018-05-02 11:51:25 +10:00
Nick Alexander
00dc996ad3 Bug 1444546 - Post: Remove add_java_jar and support. r=froydnj
MozReview-Commit-ID: J6E2ZOs9r3P

--HG--
extra : rebase_source : 0e68f776e95e0fd2fec4607435d030acc68ca0ad
2018-03-06 14:48:20 -08:00
Nick Alexander
bf575d403e Bug 1444546 - Part 4: Use GENERATED_FILES for Android JNI wrapper generation. r=froydnj,jchen
MozReview-Commit-ID: 1IjoQdEMqr8

--HG--
extra : rebase_source : 9f2e539328d83aa15bce0357a8c7d2722d517b2a
2018-03-06 20:09:37 -08:00