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

5503 Коммитов

Автор SHA1 Сообщение Дата
Nick Alexander c46ec74815 Bug 1580356 - Remove Fennec (Firefox for Android). r=snorp,mshal
This does many things:

1) stops producing (and consuming) `FennecJNI*` JNI wrappers
2) removes the :app and :thirdparty Gradle projects
3) removes relevant pieces of the Gradle target configuration
4) updates lints
5) purges old configurations

After this commit, the `mobile/android` project/application builds
only GeckoView.

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

--HG--
extra : moz-landing-system : lando
2019-10-04 20:55:11 +00:00
André Bargull ee6797f7ee Bug 1583268: Update tzdata in ICU data files to 2019c. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D46923

--HG--
extra : moz-landing-system : lando
2019-09-25 23:33:11 +00:00
Jesse Schwartzentruber 146562d993 Bug 1581158 - Add fuzzing target for rkv r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D45891

--HG--
rename : tools/fuzzing/moz.build => tools/fuzzing/rust/moz.build
extra : moz-landing-system : lando
2019-09-20 21:27:35 +00:00
Emilio Cobos Álvarez 9c8ffa9e68 Bug 1578661 - Add telemetry histograms for all CSS properties. r=chutten,boris
And add them to the UseCounter enum. Also add some sanity-check assertions that
the reporting code relies on.

This works much like the deprecated operation list.

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

--HG--
extra : moz-landing-system : lando
2019-09-19 00:20:37 +00:00
Cosmin Sabou 2978a72248 Backed out 10 changesets (bug 1578661) for linting failures on layout/style/ServoCSSPropList.py. CLOSED TREE
Backed out changeset b1b5393b1099 (bug 1578661)
Backed out changeset b87eebb0cf6e (bug 1578661)
Backed out changeset 6ba2ee45f26e (bug 1578661)
Backed out changeset 4a1d45160d60 (bug 1578661)
Backed out changeset 7a5687bebc02 (bug 1578661)
Backed out changeset 33c306c9020a (bug 1578661)
Backed out changeset 89d7e6fb24b0 (bug 1578661)
Backed out changeset 42c4943e569b (bug 1578661)
Backed out changeset 88d988a80de1 (bug 1578661)
Backed out changeset 78c90f9e9eee (bug 1578661)
2019-09-19 01:50:03 +03:00
Mike Hommey a2c98c357d Bug 1578530 - Add missing dependencies for clang-plugin tests. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D46255

--HG--
extra : moz-landing-system : lando
2019-09-18 13:39:03 +00:00
Emilio Cobos Álvarez 7155c266f5 Bug 1578661 - Add telemetry histograms for all CSS properties. r=chutten,boris
And add them to the UseCounter enum. Also add some sanity-check assertions that
the reporting code relies on.

This works much like the deprecated operation list.

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

--HG--
extra : moz-landing-system : lando
2019-09-18 15:44:39 +00:00
Andreea Pavel 7494b360c0 Backed out 10 changesets (bug 1578661) for lints failure at ServoCSSPropList.cpp on a CLOSED TREE
Backed out changeset ed3c619100e7 (bug 1578661)
Backed out changeset 027514a2eaf6 (bug 1578661)
Backed out changeset f2e228282b20 (bug 1578661)
Backed out changeset 67c36136dce7 (bug 1578661)
Backed out changeset 2280b27cc130 (bug 1578661)
Backed out changeset 445d13a2c452 (bug 1578661)
Backed out changeset 89caaa850049 (bug 1578661)
Backed out changeset 2f8be5db1786 (bug 1578661)
Backed out changeset 51a015a9a0f8 (bug 1578661)
Backed out changeset ad8e1f27a600 (bug 1578661)
2019-09-18 18:09:30 +03:00
Emilio Cobos Álvarez e1882a044c Bug 1578661 - Add telemetry histograms for all CSS properties. r=chutten,boris
And add them to the UseCounter enum. Also add some sanity-check assertions that
the reporting code relies on.

This works much like the deprecated operation list.

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

--HG--
extra : moz-landing-system : lando
2019-09-18 12:04:35 +00:00
Karl Tomlinson 78bb2541b3 Bug 834505 undef GetCurrentTime() from windows-h-wrapper.template.h r=glandium
GetCurrentTime is declared in WinBase.h
https://github.com/tpn/winsdk-10/blob/master/Include/10.0.10240.0/um/WinBase.h#L91

Documentation for functions declared in winbase.h instruct to include
Windows.h. e.g.
https://docs.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-copyfile
Other macro declarations in winbase.h such as CopyFile() are already adjusted
with this wrapper via windows-h-unicode.decls.h

A similar, but different, static inline could be provided but is not required.

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

--HG--
extra : moz-landing-system : lando
2019-09-18 02:52:20 +00:00
Kai Engert d65daa1f26 Bug 1570064 - Allow app (e.g. Thunderbird) to extend the system-headers variable. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D45922

--HG--
extra : moz-landing-system : lando
2019-09-17 09:54:33 +00:00
championshuttler 873e68649c Bug 1570772 - Fix license text for some files. r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D45532

--HG--
extra : moz-landing-system : lando
2019-09-11 14:24:29 +00:00
Mike Shal 3b8df1c395 Bug 1580028 - Always merge PGO profile data in the run task; r=firefox-build-system-reviewers,chmanchester
If the run task generates bad profile data, the merge step in the
profile-use task will fail. However, retrying the profile-use task
doesn't fix the problem, and there isn't a straightforward way to retry
the run task in this situation. Instead we can add a clang toolchain to
all the run tasks, and perform the merge there.

This means the output from the run task will always be a successfully
merged file called 'merged.profdata', and we no longer need to perform
the merge as part of the profile-use build as a GENERATED_FILES step.

Depends on D45262

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

--HG--
extra : moz-landing-system : lando
2019-09-10 21:56:15 +00:00
Nathan Froyd 5411ed9874 Bug 1578876 - add exception for Decimal code to check_vanilla_allocations.py; r=njn
Calls to these allocation functions from mozglue can generally be ignored.

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

--HG--
extra : moz-landing-system : lando
2019-09-10 16:22:33 +00:00
Mike Shal 4d1c6efb73 Bug 1579969 - Don't add export dependency on .cargo/config when testing; r=glandium
Bug 1578254 added a dependency on .cargo/config to export, which happens
to work in the python/mozbuild/mozbuild/test/backend/test_build.py test
cases because DEPTH=., and make finds the checked-in file .cargo/config
in topsrcdir because VPATH points there. After removing VPATH in bug
1496746, the test no longer finds the file in topsrcdir, and doesn't
have a rule to build it since that exists in the top-level moz.build
file.

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

--HG--
extra : moz-landing-system : lando
2019-09-09 23:56:10 +00:00
Mike Shal f8f5fce637 Bug 1496746 - Remove VPATH; r=glandium
Having a full VPATH for the srcdir sometimes causes make to grab the
wrong prerequisite for a rule, in particular if we have a file in the
srcdir and also generate a file of the same name in the objdir. We don't
really need VPATH anymore though, since most of the information comes
from mozbuild, where we can explicitly list the path to the srcdir or
objdir as necessary.

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

--HG--
extra : moz-landing-system : lando
2019-09-09 17:44:47 +00:00
Mike Hommey d9362c0f85 Bug 1578254 - Trick Make into running rust targets earlier again. r=nalexander
One of the things bug 1567616 did was to change how .cargo/config is
preprocessed, from it happening during configure to it happening during
the build. And to make things happen properly, dependencies were added
on the rust targets to ensure the .cargo/config file is created before
they run.

Unfortunately, that changed the order in which Make would run all the
targets while recursing for the compile tier, when the file doesn't
exist first. So instead of starting the compile tier with rust targets,
it would start with most C++, then do rust... which we know to make
builds slower overall because of the need to wait for those rust builds
to finish which C++ has all been dealt with already, and lacking
parallelism during the rust build.

So we force .cargo/config to be generated during export (which it is not
already because OBJDIR_PP_FILES are currently dealt with during misc).
That makes Make still run the rust targets early during the compile
tier.

And while here, we extend the if block in recurse.mk that excludes all
the top-level recursion dependencies when running from subdirectories.

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

--HG--
extra : moz-landing-system : lando
2019-09-06 22:58:03 +00:00
Nathan Froyd b5f39847e1 Bug 1578776 - wrap some synchronization-related STL headers; r=firefox-build-system-reviewers,mshal
I'm not sure how things have worked without these headers getting
wrapped, but they need to be for declarations in them to work properly.

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

--HG--
extra : moz-landing-system : lando
2019-09-04 17:56:49 +00:00
ffxbld 426de7d9bd Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2019-09-02 09:00:31 +00:00
Tom Ritter be95428eb4 Bug 1576758 - Correct a HostSharedLibrary's link command to correctly output a pdb r=glandium
-Fd is the parameter accepted by clang. -PDB is the parameter accepted by lld-link. Additionally, to produce a pdb you apparently also need the -DEBUG flag

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

--HG--
extra : moz-landing-system : lando
2019-08-27 01:00:18 +00:00
Mike Hommey 2c49da7d67 Bug 1575760 - Generate .cargo/config as part of the build rather than as a configure subst file. r=firefox-build-system-reviewers,chmanchester
We'll require preprocessing that configure subst files don't allow in
the next change, so prepare for that.

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

--HG--
extra : moz-landing-system : lando
2019-08-22 21:27:24 +00:00
Mike Hommey 5426bad1b9 Bug 1575484 - Don't LTO gkrust-gtest. r=froydnj
We don't actually care that much about LTO'ing the rust parts of libxul
for gtests, and not LTO'ing it would save multiple minutes of build time
on automation.

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

--HG--
extra : moz-landing-system : lando
2019-08-21 11:14:14 +00:00
Mike Hommey 20f01277a6 Bug 1575375 - Pull mozbuild tests out of make check. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D42759

--HG--
extra : moz-landing-system : lando
2019-08-21 05:00:50 +00:00
Mike Hommey 66d7fe943e Bug 1575420 - Replace MOZ_WIDGET_TOOLKIT value of "gtk3" with "gtk". r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D42765

--HG--
extra : moz-landing-system : lando
2019-08-21 12:25:42 +00:00
Mike Hommey 58d070f0bd Bug 1435498 - Change how Make depend files are included. r=froydnj
Make depend files related to object files are only really useful when
the corresponding build targets are being processed. OTOH, when they are
included too broadly, when the build recurses in the same directory for
different targets (e.g. target-objects, target, host-objects and/or
host), it is possible for one of them to start creating depend files
that the others would end up reading, and those reads might be
incomplete, possibly leading to build failures because Make think it's
malformed.

So, we only include the object files's depend files in when Make is
explicitly treating a target that will build objects.

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

--HG--
extra : moz-landing-system : lando
2019-08-21 12:27:49 +00:00
Mike Hommey 00256d3837 Bug 1575135 - Make configure sandbox open() look more like python 3's. r=nalexander
As a consequence, we can replace the encoded_open function that did the
same in an opt-in manner.

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

--HG--
extra : moz-landing-system : lando
2019-08-21 04:44:43 +00:00
Nick Alexander 6790ecb3a2 Bug 1550146 - Part 2: Make mach "build" run "stage-package && android assemble-app" for mobile/android. r=glandium
Android artifacts (GeckoView AARs, GeckoViewExample (and Fennec) APKs)
require native libraries (`libxul.so`) and an omnijar (`omni.ja`).
These are produced by `mach package` (really, the `stage-package`
target).  Engineers essentially never want a build without a package
for mobile/android.  This adds mobile/android-only tiers that run
`mach package` and then `mach android assemble-app`.  The latter
consumes `libxul.so` and `omni.ja` to produce _all the things_
relevant to GeckoView engineers.

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

--HG--
extra : moz-landing-system : lando
2019-08-21 03:07:16 +00:00
André Bargull d741382cd1 Bug 1402379 - Part 3: Remove ICUStubs.h file. r=jwalden
Depends on D41769

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

--HG--
extra : moz-landing-system : lando
2019-08-19 18:39:04 +00:00
Mike Hommey c8dc824814 Bug 1573566 - Add target/host-objects targets to build objects. r=froydnj
Make the target and host targets depend on those, and flatten the
dependencies.

That is, instead of chains like:
  browser/app/target: mozglue/build/target
  mozglue/build/target: memory/build/target

we now have:
  browser/app/target: browser/app/target-objects \
                      mozglue/build/target-objects \
                      memory/build/target-objects

Which means Make can feel free to build the object files in browser/app
before building other dependencies.

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

--HG--
extra : moz-landing-system : lando
2019-08-16 17:25:05 +00:00
Mike Hommey c15df41c2f Bug 1573566 - Undo bug 1573314 and bug 1572046. r=froydnj
With the addition of toolkit/library/build because of the rust
shenanigans, bug 1573314 and bug 1572046 don't do anything useful
anymore. We're going to do something better anyways.

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

--HG--
extra : moz-landing-system : lando
2019-08-16 14:39:54 +00:00
Mike Hommey 8c8ec786b2 Bug 1573566 - Make rust libraries more like normal libraries. r=froydnj
Apart from the need to link them last, they don't actually need to be
treated any different from normal static libraries.

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

--HG--
extra : moz-landing-system : lando
2019-08-16 14:39:02 +00:00
Nathan Froyd 0f2fea34dc Bug 1573861 - remove unused OBJ_TARGETS from rules.mk; r=dmajor
This variable isn't used anywhere.

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

--HG--
extra : moz-landing-system : lando
2019-08-14 15:22:07 +00:00
Rob Lemley 428f3b39d5 Bug 1572394 - Remove MOZ_LDAP_XPCOM ifdef from config/recurse.mk. r=glandium
Fixes Thunderbird build bustage related to target-shared.

Investigation into the build issue revealed that this hack is no longer necessary and can be removed. And it's always nice to remove Thunderbird specific code from the build system.

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

--HG--
extra : moz-landing-system : lando
2019-08-09 01:48:46 +00:00
Mike Hommey 0637bfef3e Bug 1572046 - Build shared libraries in a separate target. r=nalexander
When a directory, like toolkit/library, builds both a static and a
shared library, and another, like toolkit/library/gtest, depends on the
static part, it currently needs to wait for the shared library to be
finished building, preventing both libraries being built in parallel.

By separating shared libraries to a different target, we allow more
parallelism to the build.

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

--HG--
extra : moz-landing-system : lando
2019-08-07 22:50:14 +00:00
Nathan Froyd 3f8bbdf042 Bug 1437452 - add makefile bits for cross-language PGO; r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D36772

--HG--
extra : moz-landing-system : lando
2019-08-01 21:27:11 +00:00
Nathan Froyd 4bc1fdffc6 Bug 1570334 - remove `MOZ_ENABLE_CONTENTMANAGER` headers; r=dmajor
`MOZ_ENABLE_CONTENTMANAGER` is no longer defined in m-c or c-c.

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

--HG--
extra : moz-landing-system : lando
2019-07-31 14:57:17 +00:00
André Bargull d31b7c3f20 Bug 1569567 - Part 7: Remove currency codes and gender lists from ICU data file. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D39670

--HG--
extra : moz-landing-system : lando
2019-07-30 08:03:11 +00:00
André Bargull 4bfe032920 Bug 1569567 - Part 6: Remove unused "locales" values from ICU data file. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D39669

--HG--
extra : moz-landing-system : lando
2019-07-30 08:01:21 +00:00
André Bargull 749ffe624f Bug 1569567 - Part 5: Remove "Sequence" collation values from ICU data file. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D39668

--HG--
extra : moz-landing-system : lando
2019-07-30 07:59:27 +00:00
André Bargull 6ce8fbc4fa Bug 1569567 - Part 4: Remove "UCARules" collation values from ICU data file. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D39667

--HG--
extra : moz-landing-system : lando
2019-07-30 07:57:28 +00:00
André Bargull 748f4f0bc3 Bug 1569567 - Part 3: Remove "variant" and "formal" currency values from ICU data file. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D39666

--HG--
extra : moz-landing-system : lando
2019-07-30 07:55:21 +00:00
André Bargull 68cf5e5a7e Bug 1569567 - Part 2: Remove "Version" info from ICU data file. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D39665

--HG--
extra : moz-landing-system : lando
2019-07-30 07:53:14 +00:00
André Bargull fe20e01eb1 Bug 1569567 - Part 1: Exclude additional resource files currently not needed. r=jwalden
"confusables" feature:
- Used in 'unicode/uspoof.h' for spoofing detection.

"stringprep" feature:
- Used in 'unicode/usprep.h' for RFC 3454 string preparation.

"unames" feature:
- Used in 'unicode/uchar.h' for `u_charName` to retrieve the name of a Unicode character.

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

--HG--
extra : moz-landing-system : lando
2019-07-30 07:51:11 +00:00
André Bargull 2beb9f62fb Bug 1566410 - Part 9: Handle the case when a system ICU supports a different set of measurement units. r=jwalden
This gives a nicer error when a sanctioned unit identifier isn't supported by
the current ICU.

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

--HG--
extra : moz-landing-system : lando
2019-07-24 11:04:50 +00:00
André Bargull 677e918830 Bug 1566410 - Part 6: Add units to ICU data file. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D38334

--HG--
extra : moz-landing-system : lando
2019-07-24 10:31:43 +00:00
Nathan Froyd c27638c4bd Bug 1567888 - remove unneeded QT-related rules and configure bits; r=nalexander
We needed these rules and bits for the QT widget port, but there's no
longer a QT port in the tree, so we might as well remove them.

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

--HG--
extra : moz-landing-system : lando
2019-07-22 18:53:43 +00:00
Makoto Kato c0d323f7d3 Bug 1567069 - Set valid _DEPEND_CFLAG for host compiler when target and host are different type. r=glandium
Actually we set _DEPEND_CFLAGS to both host and target compiler. But if host and target are different compiler type, we may pass invalid option.

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

--HG--
extra : moz-landing-system : lando
2019-07-18 07:46:03 +00:00
Tom Ritter 2459299591 Bug 1565877 - Bump the stack size on mingwclang builds r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D38019

--HG--
extra : moz-landing-system : lando
2019-07-18 13:04:19 +00:00
Tom Ritter 9016e1592f Bug 1566960 - Remove unused Windows stuff from rules.mk r=firefox-build-system-reviewers,chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D38396

--HG--
extra : moz-landing-system : lando
2019-07-17 22:17:02 +00:00
Eric Rahm a2d6b2398d Bug 1565757 - Don't run networking binary checks on PGO instrumented builds. r=mshal
We don't need to run binary checks on the instrumentation builds, only the final optimized build.

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

--HG--
extra : moz-landing-system : lando
2019-07-17 19:01:46 +00:00
Mike Hommey 6098f22649 Bug 1565706 - Allow to run `mach build rust` without setting MOZ_RUST_TIER. r=froydnj
At the same time, make things a little more tangible in the tiers setup
in baseconfig.mk.

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

--HG--
extra : moz-landing-system : lando
2019-07-15 23:50:31 +00:00
André Bargull d8ea37c7c3 Bug 1564330: Update tzdata in ICU data files to 2019b. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D37541

--HG--
extra : moz-landing-system : lando
2019-07-10 15:50:28 +00:00
Adam Gashlin 55b9f173eb Bug 1561749 - Link Rust programs with Windows resources. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D36123

--HG--
extra : moz-landing-system : lando
2019-07-04 00:40:02 +00:00
André Bargull 8767ed1f43 Bug 1543675 - Part 1: Change Intl.NumberFormat to use UNumberFormatter API. r=jwalden
- Add NumberFormatterSkeleton as a helper class to construct a number formatter
  skeleton. When the "Intl.NumberFormat Unified API" proposal gets implemented
  a more feature-rich class may be necessary.
- In addition to a UNumberFormatter instance, NumberFormatObject now also
  stores a UFormattedNumber instance. This avoids a performance regression
  compared to creating a new UFormattedNumber object each time a number gets
  formatted. (In micro-benchmarks 20% regressions were seen, with a cached
  UFormattedNumber the same micro-benchmarks even improved by ~33%.)
- Add accessors for reserved slot values to NumberFormatObject to improve
  readibility.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 14:12:03 +00:00
André Bargull ae3180c00d Bug 1473229 - Part 3: Add support for "formatToParts" to Intl.RelativeTimeFormat. r=jwalden
- The new formatted-value API is still draft-only, so extra U_HIDE_DRAFT_API guards
  are currently needed.
- Also moves steps 4-5 of PartitionRelativeTimePattern to native code to reduce code
  duplication.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 10:04:45 +00:00
Mihai Alexandru Michis 57a64c3906 Backed out 3 changesets (bug 1473229) for causing bustages in ICUStubs.h CLOSED TREE
Backed out changeset 953a2bd4220b (bug 1473229)
Backed out changeset f3a2031bde94 (bug 1473229)
Backed out changeset 5109ce5a4b44 (bug 1473229)
2019-07-09 12:07:22 +03:00
André Bargull 435d94c7fa Bug 1473229 - Part 3: Add support for "formatToParts" to Intl.RelativeTimeFormat. r=jwalden
- The new formatted-value API is still draft-only, so extra U_HIDE_DRAFT_API guards
  are currently needed.
- Also moves steps 4-5 of PartitionRelativeTimePattern to native code to reduce code
  duplication.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 08:45:12 +00:00
Narcis Beleuzu 8478c8b076 Merge autoland to mozilla-central. a=merge 2019-07-09 06:43:17 +03:00
ffxbld 6ca9b306bd Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2019-07-08 17:27:36 +00:00
Justin Wood baa089903e Bug 1559975 - Make config/ lint with 'py2' and 'py3' r=catlee
Depends on D36091

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

--HG--
extra : moz-landing-system : lando
2019-07-08 17:30:34 +00:00
Gijs Kruitbosch 72cdd37986 Bug 1557762 - ensure we define NS_FREE_PERMANENT_DATA for single-stage pgo builds, r=chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D35469

--HG--
extra : moz-landing-system : lando
2019-06-28 16:38:14 +00:00
Andreea Pavel 796eb812c0 Backed out changeset 455dff329fcc (bug 1557762) build bustages on a CLOSED TREE 2019-06-28 00:59:10 +03:00
Gijs Kruitbosch aa0f4d84f5 Bug 1557762 - ensure we define NS_FREE_PERMANENT_DATA for single-stage pgo builds, r=chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D35469

--HG--
extra : moz-landing-system : lando
2019-06-27 19:53:07 +00:00
Nathan Froyd 03e51146b9 Bug 1561088 - emit unwind information for libffi aarch64/win assembly; r=dmajor,gsvelto
The hand-written assembly for libffi on aarch64/windows doesn't emit
unwind information.  If we ever tried to unwind through these functions,
they'd look like leaf functions, which is decidedly not true and would
cause great pain.

For whatever reason, the original aarch64 libffi functions used
x21/x22/x23/x24 as their (callee-saved) scratch registers.  This
convention works on windows as well, but the unwind information on
windows mandates that we start saving callee-saved registers starting
from x19, rather than x21.  Rather than rewriting the assembly to use
x19/x20 instead of x21/x22, which would be a large change, we chose
instead to simply save/restore extra registers in the prolog/epilog.
This change does make the stack frame sizes slightly bigger, but an
extra 16 bytes in libffi stack frames should not matter.

The `-TC` change is necessary to make the compiler play nicely with .asm
file suffixes.

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

--HG--
extra : moz-landing-system : lando
2019-06-27 13:36:48 +00:00
Mike Hommey 7d0561299d Bug 1561465 - Remove ELOG. r=nalexander
The condition that enabled ELOG to do something has been broken since
bug 279212 landed two years ago, because MAKEFLAGS doesn't contain the
dash for flags, so looking for "-s" never did anything.

Bug 1560527 changed the condition to !BUILD_VERBOSE_LOG, which as of the
previous commit, does work. This would restore the old behavior, at the
expense of build time, since it involves wrapping in a shell script,
which is not necessarily desirable (and hasn't been done for two years
now)

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

--HG--
extra : moz-landing-system : lando
2019-06-26 02:20:29 +00:00
Mike Hommey d128a390a6 Bug 1561465 - Avoid being too verbose after bug 1560527. r=nalexander
Bug 1560527 was not supposed to change verbosity for mach build, but it
turns out it did, because the ifeq it copied from one place to another
was wrong in the first place.

While here, replace a ifeq that did work with the now equivalent
BUILD_VERBOSE_LOG.

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

--HG--
extra : moz-landing-system : lando
2019-06-26 02:19:43 +00:00
Mike Shal 26b533deae Bug 1557785 - Process install manifests in 3-tier Windows builds; r=firefox-build-system-reviewers,chmanchester
Windows 1-tier PGO builds only partially clobber between the
profile-generate and profile-use stages, so that exports/installed files
don't have to be reprocessed. Unfortunately we can't skip the install
manifests in 3-tier PGO because the profile-generate build happens on a
different machine, so we have to differentiate between 1-tier and 3-tier
PGO builds. A new variable, MOZ_1TIER_PGO, is used for this purpose.

Eventually this logic can be cleaned up in bug 1557788 once all PGO
builds use the 3-tier model.

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

--HG--
extra : moz-landing-system : lando
2019-06-19 22:06:14 +00:00
Nathan Froyd adb2ee48ac Bug 1561069 - fix mistranslation in preprocess_libffi_asm.py; r=glandium
When we converted our libffi assembly preprocessing to use
`GENERATED_FILES`, we translated `sed 's%/F[dpa][^ ]*%%g'` to use the Python
regular expression `'F[dpa][^ ]*'`.  Note that we missed the leading `/` in
the sed expression; omitting that leading slash causes no end of trouble if
you have particular expressions in your assembly file, such as
"FastFailCode".  (I'm a little surprised this hasn't bitten us yet.)

The straightfoward fix is to add the leading slash.

But wait, the rabbit hole goes deeper.  The actual bit from libffi's
`msvcc.sh` that this was trying to translate was:

```
    echo "$cl -nologo -EP $includes $defines $src > $ppsrc"
    "$cl" -nologo -EP $includes $defines $src > $ppsrc || exit $?
    output="$(echo $output | sed 's%/F[dpa][^ ]*%%g')"
    args="-nologo $safeseh $single $output $ppsrc"

    echo "$ml $args"
    eval "\"$ml\" $args"
    result=$?
```

Note that the sed expression is operating on `$output`, which is a
completely *separate* thing from the output from the result of
preprocessing.  In `msvcc.sh`, `$output` is actually some arguments that are
supposed to be passed to the assembler, per the above and the only place in
the script that sets `$output` to a non-trivial value:

```
    -o)
      outdir="$(dirname $2)"
      base="$(basename $2|sed 's/\.[^.]*//g')"
      if [ -n "$single" ]; then
        output="-Fo$2"
      else
        output="-Fe$2"
      fi
      if [ -n "$assembly" ]; then
        args="$args $output"
      else
        args="$args $output -Fd$outdir/$base -Fp$outdir/$base -Fa$outdir/$base"
      fi
```

Presumably the sed expression is attempting to remove `-Fd` and friends from
`$args` instead of `$output`, but failing badly at doing so.

In any event, the regex substitution the script is doing is unnecessary and,
with the current code, actively harmful.  Let's remove the regular
expression substitution entirely.

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

--HG--
extra : moz-landing-system : lando
2019-06-24 21:26:32 +00:00
Mike Hommey de3ed8119f Bug 1560620 - Export PKG_CONFIG so that the pkg-config rust crate picks the same pkg-config as configure. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D35582

--HG--
extra : moz-landing-system : lando
2019-06-21 23:54:12 +00:00
Mike Hommey 9c53f7e19d Bug 1560527 - Enable make backend verbose mode automatically rather than relying on mach setting it. r=froydnj
This makes running without mach more consistent. e.g. running
`make -C $objdir/toolkit/library/rust target` makes the cargo log
verbose, and adding `-s` makes it less verbose.

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

--HG--
extra : moz-landing-system : lando
2019-06-21 13:15:30 +00:00
Mike Hommey c74d2769cd Bug 1560442 - Allow to build rust code in a separate tier. r=froydnj
When the `MOZ_RUST_TIER` environment variable is set, we enable a separate
tier that builds rust code only. This is useful to measure build times for
rust code separately from other compilations.

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

--HG--
extra : moz-landing-system : lando
2019-06-21 13:20:17 +00:00
Logan Smyth a1de03c27b Bug 1529345 - Part 2: Add Gecko infrastructure for receiving notifications about debugger-related events. r=jimb,smaug
Differential Revision: https://phabricator.services.mozilla.com/D30565

--HG--
extra : moz-landing-system : lando
2019-06-17 04:36:29 +00:00
Mike Hommey 87bda34b48 Bug 1558737 - Remove BUILD_FASTER define. r=nalexander
The last use of the define was removed in bug 1437942.

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

--HG--
extra : moz-landing-system : lando
2019-06-12 16:20:16 +00:00
Mike Hommey 4f79d8057f Bug 1557171 - Wrap the sys/cachectl.h system header on mips linux. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D33883

--HG--
extra : moz-landing-system : lando
2019-06-07 00:02:18 +00:00
Mike Hommey d4ea925beb Bug 1557229 - Add `-d16` as a target_feature along `+neon` for rust code. r=nalexander
When enabling neon (--with-fpu=neon, or when the C++ compiler defaults
to use neon), we pass +neon as a target feature to the rust compiler.
That enables neon in rust, which is the default with the
thumbv7neon-linux-gnueabihf rust target, but not the default for the
armv7-unknown-linux-gnueabihf rust target.

ARM processors may have various different FPUs, with different number of
registers. On ARMv7, there are FPUs with 16 registers and FPUs with 32
registers. NEON requires 32 registers.

Because the common denominator for ARMv7 is 16 registers, the
armv7-unknown-linux-gnueabihf rust target defaults to 16 registers,
although by enabling neon, we're guaranteed the processor will have 32.

But while the rust compiler keeps limited to 16 registers, it also hits
a wall while compiling the hyper crate, where it finds it doesn't have
enough registers (which in itself can be considered a bug).

Since enabling neon means there are 32 registers available, it makes
sense to tell the compiler to lift the restricted use of FPU registers,
and that's what the `-d16` target feature does.

That's the default for the thumbv7neon-linux-gnueabihf rust target, so
nothing is changed, there, and fixes things for the
armv7-unknown-linux-gnueabihf rust target.

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

--HG--
extra : moz-landing-system : lando
2019-06-07 00:47:03 +00:00
Mike Hommey 98317c472f Bug 1551639 - Use .inc suffix for generated source files that are only included. r=nalexander
There is a big difference between generated source files that are built
directly, and those that are only included.

In the latter case, the build system won't know the files that does the
including depends on the generated source. So those sources do need to
be built during the export tier.

But in the former case, the build system has all the dependency
information it needs, and, while these generated sources are currently
built as part of the export tier, they don't actually need to be. We're
going to change that, and in preparation, we rename included files so as
to be more clearly identified.

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

--HG--
extra : moz-landing-system : lando
2019-06-06 04:34:53 +00:00
Lars T Hansen bdd3ecb214 Bug 1539806 - Hook zydis into our source code and build system. r=froydnj
This changes check_spidermonkey_style.py to account for Zydis and
makes the spidermonkey moz.build aware of the one in zydis.

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

--HG--
extra : rebase_source : 69f5f37eab2e8bf0c5a55bbffcab894a3a1fe023
2019-04-02 12:43:08 +02:00
Nick Alexander 5893476bdb Bug 1508976 - Produce a multi-architecture GeckoView "fat AAR". r=glandium
This follows the model set down for EME artifacts:

- a new tier is added that uses a new Python build action to fetch and
  artifacts
- the action unpacks the fetched artifacts and moves specific inputs
  into places expected by the build and packager
- in automation, MOZ_ARTIFACT_TASK* is used to ensure the artifacts
  come from the correct tasks

In this case, the artifact fetching is done entirely in a new Python
build action that internally uses `mach artifact install --job ...`.
The action also verifies that the fetched artifacts are compatible and
that we're not assembling a fat AAR that is nonsensical.  The specific
inputs are not used in the Fennec APK that is produced; they're only
used in the GeckoView AAR that is produced.

The artifact fetching itself required tweaking to fetch only
`target.maven.zip` artifacts and to not unpack them.

The specific inputs used are the native libraries (libs/$ARCH/*.so)
and the architecture-specific preference files ($ARCH/greprefs.js and
defaults/pref/$ARCH/geckoview-prefs.js).  None of these inputs are
impacted by l10n.

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

--HG--
extra : moz-landing-system : lando
2019-05-30 15:22:09 +00:00
Mike Hommey 4c0ecc6982 Bug 1554063 - Move decimal to mozglue. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D32435

--HG--
rename : mfbt/decimal/Decimal.cpp => mozglue/misc/decimal/Decimal.cpp
rename : mfbt/decimal/Decimal.h => mozglue/misc/decimal/Decimal.h
rename : mfbt/decimal/UPSTREAM-GIT-SHA => mozglue/misc/decimal/UPSTREAM-GIT-SHA
rename : mfbt/decimal/comparison-with-nan.patch => mozglue/misc/decimal/comparison-with-nan.patch
rename : mfbt/decimal/fix-wshadow-warnings.patch => mozglue/misc/decimal/fix-wshadow-warnings.patch
rename : mfbt/decimal/mfbt-abi-markers.patch => mozglue/misc/decimal/mfbt-abi-markers.patch
rename : mfbt/decimal/moz-decimal-utils.h => mozglue/misc/decimal/moz-decimal-utils.h
rename : mfbt/decimal/to-moz-dependencies.patch => mozglue/misc/decimal/to-moz-dependencies.patch
rename : mfbt/decimal/update.sh => mozglue/misc/decimal/update.sh
rename : mfbt/decimal/zero-serialization.patch => mozglue/misc/decimal/zero-serialization.patch
extra : moz-landing-system : lando
2019-05-29 06:57:28 +00:00
Ehsan Akhgari 4cb428d268 Bug 1555205 - Move db/sqlite3 to third_party/; r=mak
Differential Revision: https://phabricator.services.mozilla.com/D32939

--HG--
rename : db/sqlite3/README => third_party/sqlite3/README
rename : db/sqlite3/README.MOZILLA => third_party/sqlite3/README.MOZILLA
rename : db/sqlite3/src/moz.build => third_party/sqlite3/src/moz.build
rename : db/sqlite3/src/sqlite.symbols => third_party/sqlite3/src/sqlite.symbols
rename : db/sqlite3/src/sqlite3.c => third_party/sqlite3/src/sqlite3.c
rename : db/sqlite3/src/sqlite3.h => third_party/sqlite3/src/sqlite3.h
extra : moz-landing-system : lando
2019-05-29 10:16:29 +00:00
Mihai Alexandru Michis 372773e7f5 Backed out changeset 3edc5be703be (bug 1554063) for mass test failures. CLOSED TREE
--HG--
rename : mozglue/misc/decimal/Decimal.cpp => mfbt/decimal/Decimal.cpp
rename : mozglue/misc/decimal/Decimal.h => mfbt/decimal/Decimal.h
rename : mozglue/misc/decimal/UPSTREAM-GIT-SHA => mfbt/decimal/UPSTREAM-GIT-SHA
rename : mozglue/misc/decimal/comparison-with-nan.patch => mfbt/decimal/comparison-with-nan.patch
rename : mozglue/misc/decimal/fix-wshadow-warnings.patch => mfbt/decimal/fix-wshadow-warnings.patch
rename : mozglue/misc/decimal/mfbt-abi-markers.patch => mfbt/decimal/mfbt-abi-markers.patch
rename : mozglue/misc/decimal/moz-decimal-utils.h => mfbt/decimal/moz-decimal-utils.h
rename : mozglue/misc/decimal/to-moz-dependencies.patch => mfbt/decimal/to-moz-dependencies.patch
rename : mozglue/misc/decimal/update.sh => mfbt/decimal/update.sh
rename : mozglue/misc/decimal/zero-serialization.patch => mfbt/decimal/zero-serialization.patch
2019-05-29 09:54:37 +03:00
Mike Hommey 66cb95a768 Bug 1554063 - Move decimal to mozglue. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D32435

--HG--
rename : mfbt/decimal/Decimal.cpp => mozglue/misc/decimal/Decimal.cpp
rename : mfbt/decimal/Decimal.h => mozglue/misc/decimal/Decimal.h
rename : mfbt/decimal/UPSTREAM-GIT-SHA => mozglue/misc/decimal/UPSTREAM-GIT-SHA
rename : mfbt/decimal/comparison-with-nan.patch => mozglue/misc/decimal/comparison-with-nan.patch
rename : mfbt/decimal/fix-wshadow-warnings.patch => mozglue/misc/decimal/fix-wshadow-warnings.patch
rename : mfbt/decimal/mfbt-abi-markers.patch => mozglue/misc/decimal/mfbt-abi-markers.patch
rename : mfbt/decimal/moz-decimal-utils.h => mozglue/misc/decimal/moz-decimal-utils.h
rename : mfbt/decimal/to-moz-dependencies.patch => mozglue/misc/decimal/to-moz-dependencies.patch
rename : mfbt/decimal/update.sh => mozglue/misc/decimal/update.sh
rename : mfbt/decimal/zero-serialization.patch => mozglue/misc/decimal/zero-serialization.patch
extra : moz-landing-system : lando
2019-05-29 00:59:20 +00:00
Emilio Cobos Álvarez 435ba395cf Bug 1552080 - Don't clobber library features with test features in the make backend. r=chmanchester
We weren't honoring the case where the library features differ from the tests
features (situation which my previous patch does).

We were incorrectly overriding `rust_feature_flags`, which of course ended up
with a working rusttests with my patches, but a bunch of negative leaks :)

Name the test features differently so that they don't affect the regular library
features.

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

--HG--
extra : moz-landing-system : lando
2019-05-28 21:05:03 +00:00
Justin Wood c003a4ad6b Bug 1547730 - Fix precomplete file generation when passing in unicode strings. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D32407

--HG--
extra : moz-landing-system : lando
2019-05-28 14:28:57 +00:00
Nathan Froyd 0839a1bd24 Bug 1542746 - remove code for frontend-based PGO instrumentation; r=dmajor
We're moving to IR-level PGO instrumentation for clang-cl.  We've also
moved to using static linker ordering files, which was the primary
application of the previous style of PGO instrumentation.  We therefore
we no longer need this code.

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

--HG--
extra : moz-landing-system : lando
2019-05-24 20:00:38 +00:00
Nathan Froyd 0fadcd4cfd Bug 1553810 - remove RSSRCS support from the build system; r=nalexander
We used to support specifying single Rust files for compilation,
emphasis on "used to".

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

--HG--
extra : moz-landing-system : lando
2019-05-23 15:20:26 +00:00
Nathan Froyd 3a05468aa4 Bug 1548563 - move symbol file logic into the moz.build frontend; r=firefox-build-system-reviewers,chmanchester
This way compilation backends don't all have to figure out the right way
to handle symbol files.

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

--HG--
extra : moz-landing-system : lando
2019-05-22 13:25:06 +00:00
ffxbld 866936d99a Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2019-05-20 13:22:45 +00:00
Nathan Froyd 3ffe3911b3 Bug 1546438 - add `-Clinker-plugin-lto` for Rust target libraries when appropriate; r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D28509

--HG--
extra : moz-landing-system : lando
2019-04-26 09:39:02 +00:00
Tom Ritter 0cbbf6fd46 Bug 1505936 - Copy and provide pdbs for cppunit tests if MOZ_COPY_PDBS is specified r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D29760

--HG--
extra : moz-landing-system : lando
2019-05-07 22:16:36 +00:00
Tom Ritter 4e6bb3e03d Bug 1506016 - If we're building with MOZ_COPY_PDBS, build the pdb next to the executable r=firefox-build-system-reviewers,mshal
This will allow us to copy the pdbs for test files into the resulting
test file archive, but doesn't do it automatically.

Bug 1505936 is for copying some of them.

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

--HG--
extra : moz-landing-system : lando
2019-05-09 19:52:26 +00:00
Josh Matthews c2627621c9 Bug 1457669 - Support Android system headers for standalone SpiderMonkey builds. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D29698

--HG--
extra : moz-landing-system : lando
2019-05-02 17:07:52 +00:00
Andreea Pavel accc389b66 Merge mozilla-inbound to mozilla-central. a=merge 2019-05-01 18:56:07 +03:00
Sylvestre Ledru e226046cb8 Bug 1547143 - Format the tree: Be prescriptive with the pointer style (left) r=Ehsan
# ignore-this-changeset

Depends on D28954

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

--HG--
extra : moz-landing-system : lando
2019-05-01 08:47:10 +00:00
André Bargull 868d7f1acd Bug 1543644: Include RBNF data for Japanese to support Gannen year representation. r=jwalden
ICU changes the numbering system of date formats which include an era marker
to "jpanyear". "jpanyear" is a rule-based numbering system and therefore the
RBNF data for the Japanese locale now need to be included.

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

--HG--
extra : moz-landing-system : lando
2019-04-26 20:55:35 +00:00
Nathan Froyd a780e0f5a1 Bug 1541068 - add Rust compilation directories to GARBAGE_DIRS; r=nalexander
We add to `GARBAGE_DIRS` in the toplevel `Makefile.in` because all of
our Rust libraries share a single `CARGO_TARGET_DIR`, located in
topobjdir.

We add to `GARBAGE_DIRS` for Rust programs because Rust programs
currently do not share compilation artifacts with Rust libraries (as our
libraries are built with `panic=abort` and our programs are not, sharing
compilation artifacts between the two is a non-starter).

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

--HG--
extra : moz-landing-system : lando
2019-04-09 18:59:19 +00:00
Henri Sivonen 1240f02f32 Bug 1536575 - Stack size on aarch64 Windows should match stack size on x86_64 Windows. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D26272

--HG--
extra : moz-landing-system : lando
2019-04-09 08:15:24 +00:00
Petr Sumbera eb6f9e60ac Bug 1540079 - Firefox NSPR build on Solaris SPARC need to include os_SunOS_sparcv9.s r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D26131

--HG--
extra : moz-landing-system : lando
2019-04-05 06:43:52 +00:00
André Bargull 16d9e7dfcd Bug 1533481 - Part 5: Update in-tree ICU to release 64.1. r=jwalden!
--HG--
extra : rebase_source : 9dfdf09968fb65ba1288b5d79d8dd238c270e34f
2019-03-28 07:29:13 -07:00
André Bargull a6b52311ad Bug 1533481 - Part 4: Prepare update to ICU 64. r=jwalden!
Summary:

- ICU no longer supports removing resource files manually, instead the new data
  filter builder needs to be used.
- This includes test data, which also must be preserved in ICU 64.
- umutex.h contains an implicit call to `new` in ICU64 which needs to be allowed
  in check_vanilla_allocations.py.
- Drive-by: Make ICU with multiple jobs for faster rebuilds.

Reviewers: jwalden

Reviewed By: jwalden

Bug #: 1533481

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

--HG--
extra : rebase_source : 9fde775ee9b189c84a29f69f11ebd955f0030b38
2019-04-04 11:52:54 +03:00
Jed Davis 65bfb7a861 Bug 1516325. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D22638

--HG--
extra : moz-landing-system : lando
2019-03-23 10:25:18 +00:00
Noemi Erli cfaf79673c Backed out changeset e5117d2f9311 (bug 1533051) for Android xpcshell failures CLOSED TREE 2019-03-28 01:33:00 +02:00
Nick Alexander 3dce09e76f Bug 1533051 - Package GeckoView prefs at architecture-specific paths for Android fat AAR/GeckoView multi-architecture builds. r=glandium
Bug 1533425 makes Gecko try to load from $ARCH/greprefs.js, etc on
Android.  This patch teaches the packager to put preferences into
those architecture-specific locations for that code to find.

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

--HG--
extra : moz-landing-system : lando
2019-03-27 17:35:26 +00:00
André Bargull cc456464eb Bug 1527879: Explicitly set ICU's data directory to stop ICU from trying to load individual files on Windows. r=jwalden
And change the shell to use JS_InitWithFailureDiagnostic instead of plain
JS_Init, so any ICU data loading errors will be printed to stderr instead of
simply exiting the application.

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

--HG--
extra : moz-landing-system : lando
2019-03-25 23:32:40 +00:00
Mike Hommey 49a0cbadc9 Bug 1524396 - Unify how target/host linker/flags are passed to rust. r=chmanchester
The current setup uses different ways for different platforms, with
different workarounds, even using extra configuration items for Windows.

Now that there can't be a difference between the host per the build
system and the host per rust, we can get rid of those configuration
items, and use a more common infrastructure.

We cannot, however, avoid using wrapper scripts, because per-target rust
link-arg flags don't work up great.

The downside is that multiplies the number of wrappers, as we now have
to have a different one for host and target, and then we have .bat files
and shell scripts for, respectively, Windows hosts, and other hosts.

Depends on D24321

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

--HG--
extra : moz-landing-system : lando
2019-03-22 11:05:18 +00:00
Mike Hommey 46318ccb91 Bug 1524396 - Replace RUST_TARGET_ENV_NAME with make substitutions. r=chmanchester
While the substitution pattern is kind of awful in make, it will allow
to more straightforwardly deal with the difference between target and
host.

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

--HG--
extra : moz-landing-system : lando
2019-03-22 11:06:11 +00:00
Noemi Erli 81350b76e9 Backed out 2 changesets (bug 1524396) for mass build bustages CLOSED TREE
Backed out changeset 3a444460cb6c (bug 1524396)
Backed out changeset 0480bca0d680 (bug 1524396)
2019-03-22 06:23:04 +02:00
Mike Hommey d58c9a5f85 Bug 1524396 - Unify how target/host linker/flags are passed to rust. r=chmanchester
The current setup uses different ways for different platforms, with
different workarounds, even using extra configuration items for Windows.

Now that there can't be a difference between the host per the build
system and the host per rust, we can get rid of those configuration
items, and use a more common infrastructure.

We cannot, however, avoid using wrapper scripts, because per-target rust
link-arg flags don't work up great.

The downside is that multiplies the number of wrappers, as we now have
to have a different one for host and target, and then we have .bat files
and shell scripts for, respectively, Windows hosts, and other hosts.

Depends on D24321

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

--HG--
extra : moz-landing-system : lando
2019-03-21 23:40:41 +00:00
Mike Hommey 27044ed480 Bug 1524396 - Replace RUST_TARGET_ENV_NAME with make substitutions. r=chmanchester
While the substitution pattern is kind of awful in make, it will allow
to more straightforwardly deal with the difference between target and
host.

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

--HG--
extra : moz-landing-system : lando
2019-03-21 23:40:23 +00:00
ffxbld 6008843d84 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2019-03-18 11:01:13 +00:00
Mike Hommey e8b6f15845 Bug 1529194 - Allow to opt-in to widevine on aarch64 Windows. r=firefox-build-system-reviewers,chmanchester
This uses artifacts from a win32 build to get the necessary DLLs.

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

--HG--
extra : moz-landing-system : lando
2019-03-05 08:41:04 +00:00
Dorel Luca 4b0b9944c9 Backed out 2 changesets (bug 1516325) for xpcshell failures in netwerk/test/unit/test_udpsocket.js. CLOSED TREE
Backed out changeset 7f9508dc59e1 (bug 1516325)
Backed out changeset 28eb88277ffc (bug 1516325)
2019-03-06 20:51:39 +02:00
Jed Davis 07a3a4354d Bug 1516325 - Use poll() in NSPR on MacOS. r=glandium
This is being changed in Firefox's build config rather than NSPR's
to avoid possibly introducing regressions into other NSPR users due
to bugs in MacOS's poll, such as the POLLPRI issue addressed in the
previous patch.  (There is also a known bug when calling poll() with
zero descriptors, but PR_Poll already has code to call PR_Sleep instead
in that case.)

Depends on D21321

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

--HG--
extra : moz-landing-system : lando
2019-02-27 15:12:21 +00:00
Mike Hommey fa7300a70b Bug 1531680 - Don't disable LTO on standalone profile-generate builds. r=chmanchester
On one-go MOZ_PGO builds, it's generally not wanted to do LTO during the
profile-generate phase. And the build system doesn't really support
different build options between both phases in this case, so we relied
on MOZ_PROFILE_GENERATE to disable the LTO flags.

However, in standalone profile-generate builds, if --enable-lto is
passed explicitly, the build should respect that choice.

So instead of checking MOZ_PROFILE_GENERATE to disable the LTO flags,
we disable them when MOZ_LTO is not set, and we force it to be disabled
during the profile-generate phase of one-go MOZ_PGO builds.

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

--HG--
extra : moz-landing-system : lando
2019-03-05 22:09:46 +00:00
Robert Helmer 228ecafc9c Bug 1523312 - build msgpack separately from libprio r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D21076

--HG--
extra : moz-landing-system : lando
2019-02-27 18:58:37 +00:00
David Major c402a2d8be Bug 1530483 - Use UNIFIED_SOURCES in NSPR's moz.build r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D21060

--HG--
extra : moz-landing-system : lando
2019-02-26 07:05:23 +00:00
Ted Mielczarek 0539de896a bug 1481614 - detect icecream usage in build telemetry. r=chmanchester,glandium
This patch adds detection for when icecream is in use to build telemetry.
icecream is commonly enabled in two ways: by either setting CC/CXX to point
to icecream's cc/c++ symlinks, or by setting adding
mk_add_options 'export CCACHE_PREFIX=icecc' to a mozconfig when also using
ccache. For the former, this patch adds a simple configure check to see
if CXX is a symlink to a file named 'icecc'. For the latter this patch adds
CCACHE_PREFIX as a configure subst to capture the value.

We don't currently have a facility for writing telemetry tests that depend on
configure values. Local manual testing shows that it does work as expected.

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

--HG--
extra : moz-landing-system : lando
2019-02-25 19:06:27 +00:00
Jeff Gilbert eac3025b28 Bug 1349064 - Add <regex> to config/std-headers. r=froydnj 2019-02-21 11:23:58 -08:00
Jeff Gilbert cd538febf3 Bug 1349064 - Sort std-headers. r=froydnj 2019-02-21 11:23:57 -08:00
Mike Hommey edeae90ee0 Bug 1529139 - Add proper dependencies for win{32,64}.asm. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D20587

--HG--
extra : moz-landing-system : lando
2019-02-21 00:11:04 +00:00
Matthew Gaudet 367d45c49a Bug 1528028 - Remove obsolete Shark profiling support r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D20323

--HG--
extra : moz-landing-system : lando
2019-02-19 19:56:48 +00:00
Mike Hommey ef3ad686ee Bug 1512504 - Remove support for MSVC. r=froydnj
Consequently, this removes:
- MOZ_LIBPRIO, which is now always enabled.
- non_msvc_compiler, which is now always true.
- The cl.py wrapper, since it's not used anymore.
- CL_INCLUDES_PREFIX, which was only used for the cl.py wrapper.
- NONASCII, which was only there to ensure CL_INCLUDES_PREFIX still
  worked in non-ASCII cases.

This however keeps a large part of detecting and configuring for MSVC,
because we still do need it for at least headers, libraries, and midl.

Depends on D19614

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

--HG--
extra : moz-landing-system : lando
2019-02-14 21:45:27 +00:00
Andy Wingo 585800608e Bug 1522436 - Enable BigInt compilation by default r=jandem,terpri,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D17487

--HG--
extra : moz-landing-system : lando
2019-02-06 13:41:56 +00:00
Mike Hommey 76882a03f3 Bug 1512541 - Don't force-include mozilla-config.h in rust-built C/C++ code. r=mshal
Differential Revision: https://phabricator.services.mozilla.com/D18653

--HG--
extra : moz-landing-system : lando
2019-02-06 21:02:20 +00:00
Mike Hommey bdaa5d90e4 Bug 1522609 - Pass compilers and flags down to cargo on sanitizer/fuzzying/ccov builds. r=ted
Depends on D18280

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

--HG--
extra : moz-landing-system : lando
2019-02-06 03:05:52 +00:00
Mike Hommey 401ecc4521 Bug 1522609 - Pass HOST_CC/HOST_CXX/HOST_CFLAGS/HOST_CXXFLAGS down to cargo. r=ted
While this isn't related to the bug, since we're going to touch the
cargo compiler flags, we might as well do this too.

It wasn't previously reliable to pass those flags down because what
cargo uses as target for build scripts and procedural macros is
determined by the rust host, which was not necessarily the same as the
build system host. But as of bug 1523143, they are always the same.

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

--HG--
extra : moz-landing-system : lando
2019-02-05 23:23:13 +00:00
Mike Hommey 30cc95d370 Bug 1522614 - Pass CC/CXX/CFLAGS/CXXFLAGS/AR down to cargo on Windows. r=froydnj
Now that Make invokes cargo without going through an msys shell,
environment variables are going to be preserved properly, and we can now
"safely" pass the compiler-related variables down to cargo on Windows.

This makes rust target builds use the expected compiler and flags,
instead of the cc-rs crate guessing, picking cl.exe, and using the wrong
one, with the build later failing when linking it all together because
one of the objects is not for the right target.

Interestingly, the lmdb code is today built for the wrong target on
aarch64, but somehow, it doesn't break the build on automation,
presumably because the lmdb code is actually dead code, and the linker
eliminates the object as unused, masking the problem.

Depends on D18186

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

--HG--
extra : moz-landing-system : lando
2019-02-05 21:43:28 +00:00
Mike Hommey 32cb1d63a2 Bug 1522614 - Replace double quotes with single quotes. r=froydnj
Double quotes on a command line forces Make to use a msys shell when
invoking the command. Single quotes don't have this effect. This is the
last bit that prevented Make from invoking cargo directly on Windows.

Depends on D18184

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

--HG--
extra : moz-landing-system : lando
2019-02-05 21:39:00 +00:00
Mike Hommey af821199b6 Bug 1522614 - Move remaining cargo environment variable settings to recipes. r=froydnj
These require some awkward setup to keep things working on
non-cross-compiles on non-Windows, but we'll change that shortly in a
later bug.

Depends on D18183

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

--HG--
extra : moz-landing-system : lando
2019-02-05 21:38:55 +00:00
Mike Hommey 604a536a37 Bug 1522614 - Move RUSTFLAGS to per-recipe environment variables. r=froydnj
Depends on D18182

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

--HG--
extra : moz-landing-system : lando
2019-02-05 21:42:58 +00:00
Mike Hommey 34a96a7a13 Bug 1522614 - Move check from bug 1376621 to the RUST_LIBRARY_FILE recipe. r=froydnj
This is a drive-by change, allowing to keep the
force-cargo-library-build recipe more like the others.

Depends on D18181

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

--HG--
extra : moz-landing-system : lando
2019-02-05 21:41:31 +00:00
Mike Hommey fe99ca1c78 Bug 1522614 - Move most environment variables we pass to cargo to make exports. r=froydnj
The `env` program, on windows, comes from msys, so invoking `env cargo`
guarantees an msys roundtrip, which usually breaks environment variable
in interesting ways.

This moves most of the environment variables we set with `env` (the
easiest ones) to exporting the same values from make itself.

Depends on D18180

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

--HG--
extra : moz-landing-system : lando
2019-02-05 21:40:13 +00:00
Mike Hommey f23ed044ba Bug 1522614 - Move rust related rules/setup to a separate makefile. r=froydnj
Because we're going to change how cargo recipes are called to export
environment variables rather than by wrapping the call with `env`, to
avoid msys roundtrips, it's better to avoid the complexity when not
building rust, and including a separate file only when required helps
with that. It is also possible to wrap the entire rust section of
rules.mk in the same condition we use for the include, but using a
separate file also makes things clearer.

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

--HG--
rename : config/rules.mk => config/makefiles/rust.mk
extra : moz-landing-system : lando
2019-02-05 21:38:42 +00:00
Ted Mielczarek 8a4288a193 bug 1506848 - switch Windows debug flags from -Zi to -Z7. r=nalexander
We default to -Zi for Windows debug flags, which is for generating debug info
into a PDB file, but clang-cl doesn't actually implement that so -Zi is
an alias for -Z7 in clang-cl:
http://clang.llvm.org/docs/UsersManual.html#id9

sccache has special handling for -Zi because multiple compiles writing
to the same PDB file is not cacheable, so we've always overridden -Zi with -Z7
in CI when using sccache.

Given that everyone should be using clang-cl nowadays and MSVC will no longer
be supported soon, this patch changes the default and removes some PDB
file name flag setting from rules.mk, as well as the no-longer-necessary
overrides from mozconfig.cache.

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

--HG--
extra : moz-landing-system : lando
2019-02-01 11:12:06 +00:00
Christian Holler df998e7c06 Bug 1522066 - Disable unused ICU code during build. r=froydnj,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D17341

--HG--
extra : moz-landing-system : lando
2019-01-31 12:22:10 +00:00
Mike Hommey bf0e86a9dc Bug 1523540 - Remove WIN64_LIB and WIN64_LINK. r=ted
Now that everything is lined up nicely, we don't need those anymore.

We can fill cargo-linker.bat with HOST_LINKER and HOST_LINKER_LIBPATHS,
which, unfortunately, can't be used as is, so we add a variant for
substitution in .bat files.

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

--HG--
extra : moz-landing-system : lando
2019-01-30 21:46:39 +00:00
shindli d5c5369355 Merge inbound to mozilla-central. a=merge 2019-01-29 23:37:33 +02:00
Tom Ritter 0a85461461 Bug 1376621 - Search for networking symbols in rust code and fail if they are found. r=glandium
--HG--
extra : amend_source : dfe442d1be95c5f37c959b38c12701d8d14432c1
2019-01-25 12:19:41 -06:00
Mike Hommey 2b3de8f0dc Bug 1523203 - Don't override HOST_LINKER with cargo-linker.bat. r=froydnj
This was added back in bug 1414287, as a sort of quick hack, but since
then, bug 1515528 fixed things such that the hack is not necessary
anymore, and bug 1523201 allows for things to work on automation
(HOST_LINKER ended up being wrong because of the lack of "proper" VC
configuration on automation)

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

--HG--
extra : moz-landing-system : lando
2019-01-28 23:13:40 +00:00
Razvan Maries 969c788da4 Merge autoland to mozilla-central a=merge 2019-01-28 23:43:47 +02:00
ffxbld b3800063cd Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2019-01-28 04:57:22 -08:00
Andy Wingo 30503c1b25 Bug 1522431 - Implement IC support for BigInt r=jandem,terpri
Differential Revision: https://phabricator.services.mozilla.com/D17483

--HG--
extra : moz-landing-system : lando
2019-01-28 00:21:41 +00:00
Mike Hommey 03a6fa8570 Bug 1521691 - Remove _MSC_VER from configure. r=chmanchester
The only use in configure itself is for a MSVC version check that is now
always true (we don't accept versions < 19.15 anymore).

The only uses in the build system are in code that could just use
CC_TYPE instead.

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

--HG--
extra : moz-landing-system : lando
2019-01-23 00:35:10 +00:00
Cosmin Sabou 7ccc9d8b0b Merge mozilla-inbound to mozilla-central. a=merge 2019-01-19 11:57:49 +02:00
Chris Manchester 63da49dd4f Bug 1520516 - Set verbose logging for cargo when -v is passed to |./mach build|. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D16907

--HG--
extra : moz-landing-system : lando
2019-01-18 19:03:24 +00:00
Razvan Maries 642dd2cc11 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2019-01-11 17:33:16 +02:00
Mike Hommey 9936784a53 Bug 1515528 - Detect MSVC paths separately for host and target. r=chmanchester
Because MSVC compilers only support one architecture, we need to search
"cl" in different toolchain search paths for each of the host and
target, especially when they are different.

Likewise for the library paths for the linker. Ideally we'd pass
-LIBPATH both for host and target, but that has implications for rust
that I don't want to have to figure just now.

Depends on D15263

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

--HG--
extra : moz-landing-system : lando
2019-01-11 00:20:31 +00:00
Mike Hommey 28376bb4f9 Bug 1519042 - Remove special case adding -xgot assembly flag on NetBSD. r=ted
None of the values tested against OS_TEST are actually possible per
split_triplet in build/moz.configure/init.configure, so the code is
dead in practice.

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

--HG--
extra : moz-landing-system : lando
2019-01-10 22:06:02 +00:00
Ehsan Akhgari e5e885ae31 Bug 1521000 - Part 2: Adjust our clang-format rules to include spaces after the hash for nested preprocessor directives r=sylvestre
# ignore-this-changeset

--HG--
extra : amend_source : 7221c8d15a765df71171099468e7c7faa648f37c
extra : histedit_source : a0cce6015636202bff09e35a13f72e03257a7695
2019-01-18 10:16:18 +01:00
Henri Sivonen f28bbfc06f Bug 256180 build config part - Increase the max size for the runtime stack on Windows. r=glandium. 2019-01-11 09:44:09 +02:00