Commit Graph

2006 Commits

Author SHA1 Message Date
Mike Hommey
5fa52a8dbd Bug 1241022 - Move JAR_MANIFESTS. r=gps
JAR_MANIFESTS affects the libs tiers through config/rules.mk rules.
While we could move the rules in the backend, they are too complex to
just do that now.
2016-01-21 13:54:03 +09:00
Mike Hommey
27f3aa7c34 Bug 1241022 - Move GENERATED_FILES. r=gps
GENERATED_FILES impacts the export tier through the config/rules.mk
definitions, now moved to the backend itself, so that everything is
close to each other.
2016-01-21 13:54:03 +09:00
Mike Hommey
8513e7f0f1 Bug 1241022 - Move ANDROID_*_DIRS, ANDROID_EXTRA_PACKAGES, ANDROID_ECLIPSE_PROJECT_TARGETS and JAVA_JAR_TARGETS. r=gps
Those are non-passthru variables with the same property as
ANDROID_GENERATED_RESFILES, ANDROID_APK_NAME and ANDROID_APK_PACKAGE, in
that they don't affect tiers through the backend code itself, but from
the Makefile.in along the moz.build they are defined in.
2016-01-21 13:54:03 +09:00
Mike Hommey
427799414b Bug 1241022 - Move ANDROID_GENERATED_RESFILES, ANDROID_APK_NAME, ANDROID_APK_PACKAGE. r=gps
The are passthru variables that don't actually affect any tier per the
backend itself. They do affect the `export` tier by way of the Makefile.in
along the moz.build defining them, and the existence of those
Makefile.in already guarantees those directories not to be skipped for
`export`.
2016-01-21 13:54:03 +09:00
Mike Hommey
cceef82d4d Bug 1241022 - Do not handle HAS_MISC_RULE with affected_tiers. r=gps
This initiates a move off affected_tiers in VARIABLES definition to
explicit in-backend handling, which will hopfully make things clearer.

HAS_MISC_RULE is currently used to opt-in to the misc tier in a few
directories with a misc:: rule.  It is, in fact, mostly used for custom
xpi creation, which will be separately addressed in bug 1240676, so it
will eventually go away entirely, but in the meantime, we send it as a
throwaway passthru.
2016-01-21 13:54:03 +09:00
Mike Hommey
052b8b751f Bug 1241022 - Handle all tiers as opt-in in the recursive make backend. r=gps
Historically, all tiers were handled as opt-out (may_skip), until we
added the first opt-in tier (no_skip). It doesn't make much sense to
differentiate them anymore, so handle them all as opt-in.
2016-01-21 13:54:03 +09:00
Mike Hommey
bdc9ed0d4a Bug 1240990 - Define all backends in one place. r=gps
When adding a backend, we currently have to add them in three different
places so that they appear in the right places.

Instead, keep the list in a single place.
2016-01-21 13:54:03 +09:00
Mike Hommey
a660612a84 Bug 1240945 - Add a --verbose option to mach package. r=mshal 2016-01-21 13:54:03 +09:00
Chris Manchester
e1e56f71a4 Bug 1240530 - Bump the taskcluster version installed by |./mach artifact| to avoid installing an out-dated requests. r=nalexander
Currently |./mach artifact| installs an old version of the taskcluster client,
which installs an old version of requests that's incompatible with commonly
installed python versions. This bumps to a version of taskcluster client that
accepts and requests version < 3, so we pick up the in-tree version instead of
installing 2.4.3.

--HG--
extra : rebase_source : 7b4f450c0492fd3c840e4f0a0cce8b42d120df9f
2016-01-19 16:00:11 -08:00
Carsten "Tomcat" Book
248f7a3dee merge mozilla-inbound to mozilla-central a=merge 2016-01-20 15:34:34 +01:00
Mike Hommey
dd60f8bf2c Backout changeset de0a7a1cdc4a from bug 1240660 for make package bustage on a CLOSED TREE 2016-01-20 08:03:58 +09:00
Mike Hommey
7f62418e45 Bug 1240671 - Move FINAL_TARGET_PP_FILES and TEST_HARNESS_FILES to the misc tier. r=gps 2016-01-20 07:24:40 +09:00
Mike Hommey
299b5dc832 Bug 1240660 - Move jar_maker to the misc tier, now that ordering does't matter. r=gps 2016-01-20 07:24:40 +09:00
Mike Hommey
dcdd7d9f41 Bug 1240660 - Remove support for the "+" prefix in jar manifests. r=gps 2016-01-20 07:24:40 +09:00
Mike Hommey
ba8b3a8a41 Bug 1237140 - Add support for local defines in generate_symbols_file. r=gps
generate_symbols_file only supports the global defines, and completely
ignores DEFINES from the same moz.build the SYMBOLS_FILE is defined.
This fixes this misfeature.
2016-01-20 07:24:40 +09:00
Mike Hommey
5aba5600b3 Bug 1237140 - Allow file_generate scripts to take additional flags. r=gps
Currently, file_generate scripts can only accept input and output file
name, but sometimes, one would like for them to take additional flags.
2016-01-20 07:24:40 +09:00
Mike Hommey
f668d88db6 Bug 1237140 - Move DefinesAction from mozbuild.action.process_install_manifest to mozbuild.util. r=gps 2016-01-20 07:24:40 +09:00
Panos Astithas
d2848915ff Bug 1143698 - Selecting macports on Yosemite fails out. r=gps 2016-01-20 00:00:41 +02:00
Panos Astithas
37abe588ff Bug 1114382 - Implement |mach bootstrap| for mobile/android on OS X with macports package manager. r=nalexander 2016-01-19 14:19:55 +02:00
Jim Chen
5cf0d899cd Bug 1240082 - Remove ant requirements; r=nalexander
--HG--
extra : commitid : LWw4uI6LnMf
extra : rebase_source : 714f77af63279a92fc6c015bea36c814fbe1589e
2016-01-13 13:19:23 -05:00
Chris Manchester
3c7406f19a Bug 1240323 - Fix installation of binary components in a subdir of dist/bin for linux artifact builds. r=nalexander
A recent change regressed this behavior -- while an artifact build runs, it
doesn't load certain "about:" pages due to missing libraries in subdirectories
of dist/bin.

--HG--
extra : commitid : HOPgt9kMKoV
2016-01-16 18:13:47 -08:00
Gregory Szorc
a1cef9be6a Bug 1239880 - Don't copy thousands of web-platform test files to objdir; r=chmanchester
AFAICT, we don't actually access web-platform test files from the
objdir for anything except test packaging. And we already have
a mechanism for creating test archives from files directly in the
source directory. So, let's stop copying them to the objdir and
package them directly from the source directory!

The _tests install manifest reports the following change:

before: 41,977 files installed
after:  24,537 files installed
delta: -17,440 files

We still copy some WPT files to the objdir. We might be able to
eliminate these as well. However, since there are only ~200 files,
I'm not too concerned.

I manually compared the resulting web-platform zip archives from before
and after. No files were removed from the archive. However, the new
archive does gain several hundred empty directories with .gitkeep
files. This feels weird, but it shouldn't break anything (I would
think). I'm inclined to leave them for now. I'll file a follow-up
bug to deal with them (preferably by removing them from version
control).

--HG--
extra : rebase_source : d350f8fc223982c8a11a9bf542411e5ec5e44244
2016-01-15 20:09:12 -08:00
Wes Kocher
84fb907a27 Merge m-c to inbound, a=merge CLOSED TREE
--HG--
rename : testing/taskcluster/tasks/phone_test.yml => testing/taskcluster/tasks/b2g_e2e_tests_base_definition.yml
extra : commitid : 4MrlWshamZ5
2016-01-15 15:13:21 -08:00
Mike Hommey
364bdaff67 Bug 1239872 - Prevent jar maker from installing the same file twice. r=gps
The faster make backend cannot support such things, so it's better to
avoid unsupported things to slip in because it happens that doesn't
break what automation runs.
2016-01-16 07:19:08 +09:00
Mike Hommey
6e930714bd Bug 1239169 - Check that files exist before marking them for removal during install manifest processing. r=gps 2016-01-16 07:19:08 +09:00
Carsten "Tomcat" Book
40335d0645 Backed out changeset a87a27864bb8 (bug 1223385) 2016-01-15 13:51:54 +01:00
Carsten "Tomcat" Book
7e52b24fab merge mozilla-inbound to mozilla-central a=merge 2016-01-15 11:46:47 +01:00
Jim Chen
b1e4e083d5 Bug 1223209 - Clean up old GeckoView library files; r=nalexander
Right now, each incremental build produces a new set of GeckoView
library files, but the previous files don't get cleaned up, and you end
up with a bunch of old libraries in your objdir. This patch cleans up
the old files before producing new ones.
2016-01-14 18:20:02 -05:00
Nick Alexander
4ffb95c185 Bug 1239738 - Handle artifact builds with no test binaries cleanly. r=ahunt
DONTBUILD NPOTB on a CLOSED TREE

--HG--
extra : commitid : FGUTtsps8la
extra : amend_source : 0111b1b9551a9d93749dd81dc961d73d2965ee65
2016-01-14 09:38:48 -08:00
Gijs Kruitbosch
2642bee1a7 Bug 1239678 - fix dll inclusion pattern on Windows and the placement of nested dlls like browsercomps and clearkey, r=nalexander
--HG--
extra : commitid : ISG749GMW8e
extra : rebase_source : 61e8971594cf88bd55dfbe9bb03da999daeba548
extra : amend_source : bd326f18285788f7e23f3c196391a9fc3c4c9d5a
2016-01-14 14:56:59 +00:00
Chris Manchester
ab5e6b6e17 Bug 1238320 - Part 3 (Windows): Download test binaries necessary to run xpcshell tests and mochitests in artifact builds. r=nalexander
--HG--
extra : rebase_source : b1c404789cb4afaa31b0da676ed66ad7cdbed7b4
2016-01-13 21:56:36 -08:00
Chris Manchester
db3a9aef35 Bug 1238320 - Part 2 (Mac): Download test binaries necessary to run xpcshell tests and mochitests in artifact builds. r=nalexander
--HG--
extra : rebase_source : 700fad2fa9b8082efe403b9822f20a738e42fec3
2016-01-13 21:56:36 -08:00
Chris Manchester
59bdb886e9 Bug 1238320 - Part 1 (Linux): Download test binaries necessary to run xpcshell tests and mochitests in artifact builds. r=nalexander
--HG--
extra : rebase_source : 09d7045ad02d30c6f5651dfbac23b38a05a54ed2
2016-01-13 21:56:36 -08:00
Ryan VanderMeulen
5115e9b08b Merge m-c to inbound. a=merge 2016-01-13 20:27:12 -05:00
Ryan VanderMeulen
065a253bf1 Merge inbound to m-c. a=merge 2016-01-13 20:25:33 -05:00
Gregory Szorc
6b9b8a3ac3 Bug 1232580 - Install py27-readline on MacPorts; r=Yoric
See https://trac.macports.org/ticket/48807. Without it, reading
input can break terminals.

--HG--
extra : rebase_source : 7eab1e60d6a6279fdaf25a4789598cf96e2b8d6c
2016-01-12 12:25:52 -08:00
Carsten "Tomcat" Book
0a0515f495 Merge mozilla-central to fx-team 2016-01-13 11:59:17 +01:00
Carsten "Tomcat" Book
d833f9ba1a merge mozilla-inbound to mozilla-central a=merge 2016-01-13 11:57:15 +01:00
Axel Hecht
a942827a5b Bug 1223385 - use in-tree compare-locales in Makefiles, r=gps
Also fix that the default merge dir in the mach command creates a directory
that's the merge make target, and thus keeps that make target from actually
running.

--HG--
extra : transplant_source : R%FE%7Eo%CDS%D1%B4%EA%DB%D0%19q%F92%A1V%91%10%5C
2016-01-08 16:37:52 +01:00
Axel Hecht
afdc275f75 Bug 1237678 - update compare-locales to version 1.0. r=mathjazz
changeset: 300933:aa4e0275bb3c
tag: tip
user: Axel Hecht <axel@pike.org>
summary: bug 1237678, update compare-locales to version 1.0, r=mathjazz
2016-01-09 17:13:13 +01:00
Bryce Van Dyk
866df57055 Bug 1239096 - Improve English is artifacts.py comments. r=me
--HG--
extra : rebase_source : c0f23a8e95d8ec73147410f2325ae8f09c17907f
2016-01-13 10:46:28 +13:00
Dan Minor
30f2bba053 bug 1237619: Record build objects in resource_usage.json r=gps
Collecting the list of object files compiled, while not ideal, will give us
some indication of how much work was involved in the build. This will help
with analyzing the data.

--HG--
extra : rebase_source : e9861ed5c0766e3ee8038dbec0b9267022c523eb
2016-01-12 14:00:24 -05:00
Dan Minor
84c48e39bd bug 1237619: Add system and command metadata to resouce_usage.json r=gps
This adds metadata about the local system to resource_usage.json that will
be useful for analysis when we start collecting these results. Some of it
is redundant with data collected for individual tiers, but having it
available at a top level should make analysis easier.

--HG--
extra : rebase_source : 43b2f6335a4de9c7843f75a3461d2871a97b7752
2016-01-13 06:42:51 -05:00
Dan Minor
ad24f01e02 bug 1237619: save resource usage for "what" builds r=gps
This moves monitor start/end recording so it also occurs for "what"
builds rather than only for full builds.

--HG--
extra : rebase_source : 833c7311ca5ecfe6935e0a160da695acaecbdeeb
2016-01-07 14:18:36 -05:00
Nick Alexander
31dae95089 Bug 1234912 - Check for mozext and pushlog entries after |mach artifact install| hg failure. r=gps
Pushing on a CLOSED TREE after network errors.

--HG--
extra : commitid : 40hmCLC8zZJ
extra : rebase_source : 44a623fdf7cb97bfaca76617062d57c6b50fd970
extra : amend_source : 710db8302b5bf88d6bf293d71f3cc001187b6015
2016-01-06 21:19:49 -08:00
Nick Alexander
00480dd76d Bug 1236110 - Extend mach artifact to handle Linux Desktop builds. r=gps
--HG--
extra : commitid : 95zTSXuAPeR
extra : rebase_source : 478ec692ac60853bd55185532fb740214e249590
2016-01-06 20:15:21 -08:00
Gijs Kruitbosch
06bd7d5a5b Bug 1236111 - part 4: actually add Windows support to artifact code, r=nalexander,gps
--HG--
extra : commitid : 6cE49rCkabN
extra : rebase_source : 00d203e5dfba88ad82d0b0dfad3e3e07d1cba84e
2016-01-05 14:58:22 +00:00
Gijs Kruitbosch
e9063e1fa3 Bug 1236111 - part 3: ensure calls to hg and mach work on Windows, and that we use the right file mode when writing artifacts, r=nalexander,gps
--HG--
extra : commitid : ICu30zW49xb
extra : rebase_source : 8b0ed9467f85e727f20a17f91b73b67abe96a465
2016-01-05 14:57:24 +00:00
Gijs Kruitbosch
fbc8f9a32e Bug 1236111 - part 2: fix mozbuild to use the file mode modifiers specified for opening when writing a FileAvoidWrite, r=gps,nalexander
--HG--
extra : commitid : J6mVFwKgMQh
extra : rebase_source : 8a8b0ba2c21cf561af8dd667e387106869a65124
2016-01-05 14:46:24 +00:00
Gijs Kruitbosch
4f7d946d9f Bug 1236111 - part 0: improve logging from process mixin, r=gps
--HG--
extra : commitid : 8fODk4pYcos
extra : rebase_source : c80e8dc7ce278a98ee27d72fdfe998cbc14a00fb
2016-01-05 11:13:05 +00:00
Richard Newman
f73acc178f Bug 1237342 - Drop support for Android API 14 from Firefox builds. r=nalexander
--HG--
extra : commitid : Exc5s17e8Wt
extra : rebase_source : 0745780e85e84e5fa4263677582991053dcc49d1
2016-01-06 10:43:46 -08:00
Mike Hommey
c666e4b0a1 Bug 1235109 - Remove support for -I in preprocessor and jar maker. r=gps
The last use for this option was removed in bug 1235108.
2016-01-05 20:03:43 +09:00
Mike Hommey
2e0827fdb8 Bug 1235935 - Backout changeset 5a6ef68947e7 from bug 1235738 to enable debug flags in HOST_C{,XX}FLAGS. r=me 2016-01-05 20:03:43 +09:00
Henrik Skupin
7bf2719b66 Bug 1212609 - Add common test package rules for firefox-ui-tests. r=gps 2016-01-04 22:13:43 +01:00
Chris Manchester
a01c2483da Bug 1214885 - Add a "ChromeUrl" build backend to write out information useful for resolving chrome urls. r=glandium
The result of running this backend is a json file containing an array with 3 elements:
a map from resource:// and chrome:// url prefixes to corresponding objdir directories,
a map of overrides, and a map from objdir files to srcdir files (with a flag for whether
the file was preprocessed) for js file in FinalTargetFiles. A subsequent commit implements
the procedure to find an replace based on the url mapping, subsistute based on overrides,
and find sourcedir files based on objdir files.

--HG--
extra : commitid : Di6Ro5c9sTK
2015-10-01 18:56:53 -05:00
Chris Manchester
99fc89d399 Bug 1240239 - Install test plugins in artifact based builds. r=nalexander
--HG--
extra : commitid : ECQBZ0DsPNK
2016-01-19 14:21:30 -08:00
Robert Longson
5e6d529757 Bug 1240616 - mach mochitest-run suggests deprecated commands as an alternative r=cmanchester 2016-01-19 21:39:16 +00:00
Gijs Kruitbosch
62704c57f5 Bug 1240142 - always disable crashreporter when using ./mach run, r=gps
--HG--
extra : rebase_source : 27d22512f407ad025a551796886efb58d0ab31a3
2016-01-18 11:06:00 +00:00
Carsten "Tomcat" Book
b5e5b490e9 Merge mozilla-central to mozilla-inbound 2016-01-15 11:48:08 +01:00
Syd Polk
a0ea4ee256 Bug 1239442 - Update common.tests.zip to contain dom/media/test/external-media-sites. r=gps
--HG--
extra : transplant_source : %A9V%D1%7B%0F%92A%CAg%C6%A6%84Xe%0B%2B%94%B4%C2l
2016-01-13 14:55:43 -06:00
Chris Manchester
89c245af6b Bug 992983 - Build and upload the gtest libxul during test packaging. r=ted
--HG--
extra : commitid : EH7XMBkAkta
2015-07-16 16:52:31 -07:00
Ryan VanderMeulen
f93b41b27c Merge inbound to m-c. a=merge 2016-01-01 19:29:16 -05:00
Richard Newman
e7fe85d170 Bug 1062537 - Pre: correct comments in android_version_code.py.
--HG--
extra : commitid : Lcw6EWjP7DD
2015-12-31 19:32:41 -08:00
Richard Newman
bfd4e42e64 Bug 1155801 - Part 4: miscellaneous SDK_INT bumps.
--HG--
extra : commitid : Jy5ZErXKDrz
extra : source : 06a75f114c316479598d2d147a772b7161abfe57
2015-12-30 18:59:17 -08:00
Richard Newman
4d7a4b3522 Bug 1155801 - Part 2: bump Android version code computation check. r=nalexander
--HG--
extra : commitid : 4yJiSI1Idn
extra : source : 991a5607ee54c41c3dfcf4ca2f63ec58512ebed8
2015-12-30 18:59:17 -08:00
Nick Alexander
540e5004be Bug 1207890 - Follow-up: Fix |mach artifact install| for mobile/android. r=me
DONTBUILD NPOTB

--HG--
extra : commitid : IIqQv1UIMfk
extra : rebase_source : 64544d8581d881a90d7b1fc4755a375216a22d53
2015-12-31 15:38:13 -08:00
Nigel Babu
21c7d01487 Backed out changeset 991a5607ee54 (bug 1155801)
--HG--
extra : commitid : 8y589AQze8f
2015-12-31 13:57:30 +05:30
Nigel Babu
54384ad6a1 Backed out changeset 06a75f114c31 (bug 1155801)
--HG--
extra : commitid : 4AM4nPS3gKY
2015-12-31 13:57:25 +05:30
Nick Alexander
010c3f739b Bug 1216817 - Follow-up: Fix "KeyError: uMOZ_ARTIFACT_BUILDS" in config.status. r=bustage
--HG--
extra : commitid : J6xg4nryqWs
2015-12-30 21:18:14 -08:00
Nick Alexander
1503f05675 Bug 1216817 - Follow-up: Fix "KeyError: u'MOZ_ARTIFACT_BUILDS'". r=bustage
--HG--
extra : commitid : LtAiONtzjTb
2015-12-30 21:07:20 -08:00
Nick Alexander
6dbda99125 Bug 1207890 - Post: Hack to make |mach run| for Mac OS X artifact builds. r=me
--HG--
extra : commitid : Ef8c2hR0pzr
extra : rebase_source : d1a76d9e79d27cdbb9567ceecf01dc15c9f4f300
2015-12-30 20:16:23 -08:00
Nick Alexander
cde466f5ad Bug 1207890 - Post: Move |mach artifact| command out of mobile/android. r=glandium
--HG--
extra : commitid : 1Yf4R5qGMg7
extra : rebase_source : 3bfbb27bfecc31bf6971c4fa5dec9f493c5b1245
2015-12-23 17:08:49 -08:00
Nick Alexander
5c8082138b Bug 1207890 - Part 4: Download and process Mac OS X artifacts. r=glandium
This mounts the downloaded DMG and copies a subset of the libraries
into the correct places in the processed archive.  They'll be
installed, with paths, into dist/bin from there.

--HG--
extra : commitid : 9BXzXzIlh3I
extra : rebase_source : 29ddbe8348f27fff5205da6c40839a04d950fe0a
2015-12-23 16:41:17 -08:00
Nick Alexander
34b48429c2 Bug 1207890 - Part 3: Post-process downloaded artifacts. r=glandium
For Android, this just copies .so files from the APK assets/ and libs/
directories into the root, which ends up in dist/bin.

I include .ini files as a partial replacement for having the build ID
in the downloaded file name, and then don't put the .ini files in
dist/bin.

--HG--
extra : commitid : 9uLXEzBNBdQ
extra : rebase_source : 53ba0e8a7740c2a6eb48e2772f7e12ff9157d21a
2015-11-24 20:42:35 -08:00
Nick Alexander
9acf5790a8 Bug 1207890 - Part 2: Stop extracting build ID from artifacts. r=glandium
Sadly, it's slow to extract the build ID from Mac OS X DMG artifacts.
It's better to sacrifice human-legible names in order to know the
final name for an artifact quickly.

--HG--
extra : commitid : I99dtzv1O2N
extra : rebase_source : c164be1314b3132fba2e1fc86cda65b12b4baa1f
2015-11-24 16:30:38 -08:00
Nick Alexander
1f37efcf8d Bug 1207890 - Part 1: Add rich ArtifactJob extension point. r=glandium
--HG--
extra : commitid : KnimABJXhiG
extra : rebase_source : c00f8f55d518fd300019f1138fb2537a7e80c402
2015-11-24 15:48:57 -08:00
Nick Alexander
407bcaedfd Bug 1207890 - Pre: Make JarWriter handle inputs with read() but not seek(). r=glandium
--HG--
extra : commitid : EVs710IhMlB
extra : rebase_source : 2de3e51b5174b86392a9edd9f49cc91b4ce54baa
2015-12-23 16:05:34 -08:00
Nick Alexander
61727a2cbb Bug 1216817 - Part 5: Run |mach artifact install| automatically when asked. r=glandium
It turns out to be much easier to hook |mach artifact install| into
config.status and |mach build| than to hook into client.mk.

The additional virtualenv package avoids an import error when running
|mach artifact install|.

--HG--
extra : commitid : EnfWU0uyRfQ
extra : rebase_source : f7d11fc4c542f9798712c013c4319d92d40c28e5
2015-12-23 14:25:37 -08:00
Nick Alexander
d9a97523e3 Bug 1216817 - Part 2: Narrow distdir to bindir in artifacts. r=gps
--HG--
extra : commitid : 5mhaqLz9SlX
extra : rebase_source : d305ef0abb655bae2bc1b1e85560dad4c8d176c3
2015-10-30 12:30:35 -07:00
Nick Alexander
137016aacb Bug 1216817 - Part 1: Add install_callback to artifacts. r=gps
--HG--
extra : commitid : 7Qjl1R0EAl9
extra : rebase_source : c34a581f6f513dde939e8e079e2b9676ce121f92
2015-10-30 13:35:13 -07:00
Richard Newman
a3f03c1b51 Bug 1155801 - Part 4: miscellaneous SDK_INT bumps.
--HG--
extra : commitid : C22fCOxjmjN
2015-12-30 18:59:17 -08:00
Richard Newman
6e0d164273 Bug 1155801 - Part 2: bump Android version code computation check. r=nalexander
--HG--
extra : commitid : 5cuH8a6oPLw
2015-12-30 18:59:17 -08:00
Shane Caraveo
eabb5f6400 Bug 1215694 move pocket to a system addon, r=Gijs, r=glandium
part 1: reorganize file locations, r=Gijs
  part 2: remove built-in pocket code, r=Gijs
  part 3: l10n support, r=glandium
  part 4: move code/functionality from part 2 into the addon, r=Gijs
  part 5: remove dead code, r=Gijs
  part 6: create a simple api for addons to add to reader mode, r=Gijs
  part 7: various test fixes related to cui behaviour and pocket, r=me

--HG--
rename : browser/components/pocket/Pocket.jsm => browser/extensions/pocket/content/Pocket.jsm
rename : browser/components/pocket/main.js => browser/extensions/pocket/content/main.js
rename : browser/components/pocket/panels/css/firasans.css => browser/extensions/pocket/content/panels/css/firasans.css
rename : browser/components/pocket/panels/css/normalize.css => browser/extensions/pocket/content/panels/css/normalize.css
rename : browser/components/pocket/panels/css/saved.css => browser/extensions/pocket/content/panels/css/saved.css
rename : browser/components/pocket/panels/css/signup.css => browser/extensions/pocket/content/panels/css/signup.css
rename : browser/components/pocket/panels/fonts/FiraSans-Regular.woff => browser/extensions/pocket/content/panels/fonts/FiraSans-Regular.woff
rename : toolkit/themes/shared/reader/pocket.svg => browser/extensions/pocket/content/panels/img/pocket.svg
rename : browser/components/pocket/panels/img/pocketerror@1x.png => browser/extensions/pocket/content/panels/img/pocketerror@1x.png
rename : browser/components/pocket/panels/img/pocketerror@2x.png => browser/extensions/pocket/content/panels/img/pocketerror@2x.png
rename : browser/components/pocket/panels/img/pocketlogo@1x.png => browser/extensions/pocket/content/panels/img/pocketlogo@1x.png
rename : browser/components/pocket/panels/img/pocketlogo@2x.png => browser/extensions/pocket/content/panels/img/pocketlogo@2x.png
rename : browser/components/pocket/panels/img/pocketlogosolo@1x.png => browser/extensions/pocket/content/panels/img/pocketlogosolo@1x.png
rename : browser/components/pocket/panels/img/pocketlogosolo@2x.png => browser/extensions/pocket/content/panels/img/pocketlogosolo@2x.png
rename : browser/components/pocket/panels/img/pocketmenuitem16.png => browser/extensions/pocket/content/panels/img/pocketmenuitem16.png
rename : browser/components/pocket/panels/img/pocketmenuitem16@2x.png => browser/extensions/pocket/content/panels/img/pocketmenuitem16@2x.png
rename : browser/components/pocket/panels/img/pocketsignup_button@1x.png => browser/extensions/pocket/content/panels/img/pocketsignup_button@1x.png
rename : browser/components/pocket/panels/img/pocketsignup_button@2x.png => browser/extensions/pocket/content/panels/img/pocketsignup_button@2x.png
rename : browser/components/pocket/panels/img/pocketsignup_devices@1x.png => browser/extensions/pocket/content/panels/img/pocketsignup_devices@1x.png
rename : browser/components/pocket/panels/img/pocketsignup_devices@2x.png => browser/extensions/pocket/content/panels/img/pocketsignup_devices@2x.png
rename : browser/components/pocket/panels/img/pocketsignup_hero@1x.png => browser/extensions/pocket/content/panels/img/pocketsignup_hero@1x.png
rename : browser/components/pocket/panels/img/pocketsignup_hero@2x.png => browser/extensions/pocket/content/panels/img/pocketsignup_hero@2x.png
rename : browser/components/pocket/panels/img/signup_firefoxlogo@1x.png => browser/extensions/pocket/content/panels/img/signup_firefoxlogo@1x.png
rename : browser/components/pocket/panels/img/signup_firefoxlogo@2x.png => browser/extensions/pocket/content/panels/img/signup_firefoxlogo@2x.png
rename : browser/components/pocket/panels/img/signup_help@1x.png => browser/extensions/pocket/content/panels/img/signup_help@1x.png
rename : browser/components/pocket/panels/img/signup_help@2x.png => browser/extensions/pocket/content/panels/img/signup_help@2x.png
rename : browser/components/pocket/panels/img/signup_or@1x.png => browser/extensions/pocket/content/panels/img/signup_or@1x.png
rename : browser/components/pocket/panels/img/signup_or@2x.png => browser/extensions/pocket/content/panels/img/signup_or@2x.png
rename : browser/components/pocket/panels/img/tag_close@1x.png => browser/extensions/pocket/content/panels/img/tag_close@1x.png
rename : browser/components/pocket/panels/img/tag_close@2x.png => browser/extensions/pocket/content/panels/img/tag_close@2x.png
rename : browser/components/pocket/panels/img/tag_closeactive@1x.png => browser/extensions/pocket/content/panels/img/tag_closeactive@1x.png
rename : browser/components/pocket/panels/img/tag_closeactive@2x.png => browser/extensions/pocket/content/panels/img/tag_closeactive@2x.png
rename : browser/components/pocket/panels/js/messages.js => browser/extensions/pocket/content/panels/js/messages.js
rename : browser/components/pocket/panels/js/saved.js => browser/extensions/pocket/content/panels/js/saved.js
rename : browser/components/pocket/panels/js/signup.js => browser/extensions/pocket/content/panels/js/signup.js
rename : browser/components/pocket/panels/js/tmpl.js => browser/extensions/pocket/content/panels/js/tmpl.js
rename : browser/components/pocket/panels/js/vendor/handlebars.runtime.js => browser/extensions/pocket/content/panels/js/vendor/handlebars.runtime.js
rename : browser/components/pocket/panels/js/vendor/jquery-2.1.1.min.js => browser/extensions/pocket/content/panels/js/vendor/jquery-2.1.1.min.js
rename : browser/components/pocket/panels/js/vendor/jquery.tokeninput.min.js => browser/extensions/pocket/content/panels/js/vendor/jquery.tokeninput.min.js
rename : browser/components/pocket/panels/license.txt => browser/extensions/pocket/content/panels/license.txt
rename : browser/components/pocket/panels/saved.html => browser/extensions/pocket/content/panels/saved.html
rename : browser/components/pocket/panels/signup.html => browser/extensions/pocket/content/panels/signup.html
rename : browser/components/pocket/panels/tmpl/saved_premiumextras.handlebars => browser/extensions/pocket/content/panels/tmpl/saved_premiumextras.handlebars
rename : browser/components/pocket/panels/tmpl/saved_premiumshell.handlebars => browser/extensions/pocket/content/panels/tmpl/saved_premiumshell.handlebars
rename : browser/components/pocket/panels/tmpl/saved_shell.handlebars => browser/extensions/pocket/content/panels/tmpl/saved_shell.handlebars
rename : browser/components/pocket/panels/tmpl/signup_shell.handlebars => browser/extensions/pocket/content/panels/tmpl/signup_shell.handlebars
rename : browser/components/pocket/panels/tmpl/signupstoryboard_shell.handlebars => browser/extensions/pocket/content/panels/tmpl/signupstoryboard_shell.handlebars
rename : browser/components/pocket/pktApi.js => browser/extensions/pocket/content/pktApi.jsm
rename : browser/locales/en-US/chrome/browser/browser-pocket.properties => browser/extensions/pocket/locales/en-US/pocket.properties
2015-12-29 15:40:52 -08:00
Andreas Tolfsen
aa6b263e59 Bug 1234612: Print path when failing to create virtualenv r=gps
r=gps

--HG--
extra : rebase_source : 029f94079c4f23a8ac5501b6269aa316bec2050d
2015-12-30 11:33:36 +00:00
Gregory Szorc
1ee2112c8f Bug 1234954 - Use LooseVersion for parsing Mercurial version; r=me
StrictVersion is strict about version strings, insisting on whatever
convention Python uses. LooseVersion is not as strict but is strict
enough for our use cases.

DONTBUILD (NPOTB)

--HG--
extra : commitid : 17lNEAJhaV0
extra : rebase_source : 0a0cefa47b4558401cb85c6e9b237c0d6cf0e7fb
extra : amend_source : c7360d1a2f934338ec04d5f384d4530e3e9ebbc5
2015-12-31 16:14:20 -08:00
Gregory Szorc
29bbc52ac7 Bug 1235921 - Update modern Mercurial version to 3.5.2; r=me
3.5.2 is what is listed in `mach mercurial-setup`. These should match.
Add a comment to each file saying to change both.

--HG--
extra : commitid : FebjTovmqGk
extra : rebase_source : 50490c1896a4c402f27cf4154b155932614da558
extra : amend_source : 73ae0ddc9f2770351d2ee2aaf5121656fb7e5750
2015-12-31 16:01:48 -08:00
Mike Hommey
e61c0771e3 Bug 1235738 - Fixup: it turns out we weren't passing debug flags in HOST_C{,XX}FLAGS before. r=me 2015-12-31 09:19:12 +09:00
Mike Hommey
d5c0c5233a Bug 1235733 - Use absolute paths for include paths. r=gps
Limit ourselves to include paths for now, because there are tricky things
involved in making this globally.

While here, use shell_quote instead of manual quoting for those paths.
2015-12-31 08:10:02 +09:00
Mike Hommey
d7c74ef604 Bug 1235676 - Add a topobjdir variable to all Makefiles. r=mshal 2015-12-31 08:10:02 +09:00
Mike Hommey
fd68e826cb Bug 1235748 - Stop post-processing include flags for CompileDB and codecomplete. r=gps
With all include flags now using absolute paths, there is no need to try
to post-process them when getting them for CompileDB and codecomplete.
As a matter of fact, doing so fixes the flags in media/gmp-clearkey/0.1,
since they use literal "-include stdio.h", which was wrongly transformed
into "-include $objdir/media/gmp-clearkey/0.1/stdio.h".
2015-12-31 07:37:01 +09:00
Mike Hommey
b8370a34f9 Bug 1235739 - Move DEFINES quoting from frontend to backend. r=gps 2015-12-31 07:34:51 +09:00
Mike Hommey
8143237ec5 Bug 1235738 - Simplify MOZ_DEBUG_DEFINES. r=gps
Now that it's not directly used in command lines, it can just become a list
of symbols that ought to be defined. This simplifies all the uses of it.
2015-12-31 07:28:05 +09:00
Mike Hommey
e0c501a1c1 Bug 1235738 - Move MOZ_DEBUG_DEFINES to build frontend. r=gps
MOZ_DEBUG_DEFINES are essentially defines used everywhere. So treat them as
feeding the initial value for DEFINES in each moz.build sandbox. This allows
the kind overrides that was done in the past by resetting MOZ_DEBUG_DEFINES
in Makefiles.
2015-12-31 07:27:23 +09:00
Mike Hommey
46c1a4ca28 Bug 1235132 - Remove convert_def_file.py. r=gps 2015-12-31 07:22:18 +09:00
Mike Hommey
54704ce9a1 Bug 1235132 - Add support for a more-or-less cross-platform symbols file. r=gps
Currently, one needs to define DEFFILE or LD_VERSION_SCRIPT appropriately,
and somehow deal with the fact that their input format is different, which
currently relies on manual invocations of the convert_def_file script, with
awkward aggregations.

This simplifies the problem by using a simple list of symbols, with
preprocessing, allowing #includes.
2015-12-31 07:22:04 +09:00
Mike Hommey
83b4ea6bec Bug 1235117 - Add input file to the depfile emitted by process_define_files. r=mshal 2015-12-31 07:16:56 +09:00
Mike Hommey
10b873ff27 Bug 1235021 - Move FasterMakeBackend._consume_jar_manifest to CommonBackend. r=gps
And do some import cleanup at the same time.
2015-12-31 07:06:11 +09:00
Mike Hommey
f834ce6af8 Bug 1235021 - Avoid passing defines to FasterMakeBackend._consume_jar_manifest. r=gps
We want to move it to CommonBackend, so it's better to make it more
independent, which the Defines instances now attached to ContextDerived
instances allow.
2015-12-31 07:06:11 +09:00
Mike Hommey
eb9103453a Bug 1235021 - Re-emit FinalTarget{,Preprocessed}Files from the jar manifest handler code in the FasterMake backend. r=gps
Like with ChromeManifestEntries, reloop in consume_object, with the double
goal of allowing to reuse the jar manifest handler code in other backends
and avoid code duplication in the FasterMake backend itself when support
for e.g. GeneratedFiles is added.
2015-12-31 07:06:11 +09:00
Mike Hommey
9e270a330d Bug 1235021 - Re-emit ChromeManifestEntries from the jar manifest handler code in the FasterMake backend. r=gps
Instead of filling the install manifests accordingly, reloop in
consume_object, so that the jar manifest handler code can eventually
be reused in other backends.
2015-12-31 07:06:11 +09:00
Mike Hommey
b2f22a11cd Bug 1235021 - Add a RenamedSourcePath helper class. r=gps
This class will be used to represent files that are copied with a different
name, which we have plenty of in jar manifests.
2015-12-31 07:06:11 +09:00
Mike Hommey
2b5200312f Bug 1235021 - Associate a Defines instance to each ContextDerived instance. r=gps 2015-12-31 07:06:11 +09:00
Mike Hommey
2a5918fdb4 Bug 1235021 - Rename Linkable.defines to linkable.lib_defines. r=gps 2015-12-31 07:06:11 +09:00
Mike Hommey
0aa84aff6a Bug 1235021 - Use Path instances to handle paths in jar manifest in the FasterMake backend. r=gps
This is a transitional step to make further changes smaller and easier to
review.
2015-12-31 07:06:11 +09:00
Mike Hommey
d5126527fe Bug 1235021 - Always use the % marker for preprocessed css files. r=gps
Currently, only css files added through jar manifests are treated this way.
There is really no reason for the discrepancy, but there are actually no css
files added directly through moz.build, so this was never a problem.

On the other hand, it makes things simpler in a world where jar manifests are
treated as if they were entirely described in moz.build (which is where the
FasterMake backend is heading).
2015-12-31 07:06:11 +09:00
Mike Hommey
37df7ea303 Bug 1235021 - Normalize whitespaces in manifest entries emitted by the jar manifest parser. r=gps
Again, this is not strictly necessary but allows to confirm idempotence of
further changes. And it has the nice side effect of making chrome manifest
files more consistent.
2015-12-31 07:06:11 +09:00
Mike Hommey
76bb6c3b3a Bug 1235021 - Normalize paths from jar manifests before putting them in an install manifest in the FasterMake backend. r=gps
This is not necessary in itself, but allows to confirm that further changes,
which are going to normalize paths as a side effect, are idempotent.
2015-12-31 07:06:11 +09:00
Mike Hommey
6dcd4bc2cf Bug 1235021 - Use SourcePaths for JAR_MANIFESTS. r=gps 2015-12-31 07:06:11 +09:00
Mike Hommey
0619b043f0 Bug 1235021 - Add a relative jar.mn in the end-to-end test. r=gps 2015-12-31 07:06:11 +09:00
Mike Hommey
d7478b6b1e Bug 1234955 - Make TEST_DIRS a SPECIAL_VARIABLE. r=gps
Using TEST_DIRS is nothing more than a shortcut for

if CONFIG['ENABLE_TESTS']:
    DIRS += [...]

As such, we might as well remove it being a separate variable, and use some
Context magic to just fill DIRS when ENABLE_TESTS is set.

The security/manager/ssl/tests/unit/moz.build change ensures that the order
of DIRS before the change is kept, not because it matters, but because it
allows to confirm that nothing else is modified by this change.
2015-12-24 13:12:49 +09:00
Mike Hommey
fbf6637c30 Bug 1234780 - Use Paths for BRANDING_FILES. r=gps
Also, handle them like other FinalTargetFiles.

After this, TEST_HARNESS_FILES is the last use of plain HierarchicalStringList.
2015-12-24 13:12:44 +09:00
Mike Hommey
e8fa609d2a Bug 1234780 - Avoid a loop in RecursiveMakeBackend._process_final_target_files. r=gps 2015-12-24 13:12:40 +09:00
Mike Hommey
b91ae3e89f Bug 1234439 - Add a jar.mn to the end-to-end test. r=gps
Also add the corner case that broke mach build faster on Windows in bug 1191230.
2015-12-24 13:12:34 +09:00
Mike Hommey
2eabcb84c2 Bug 1234439 - Use new install manifests feature for chrome manifests in the FasterMake backend. r=gps
Bug 1191230 added override lines with # characters to chrome manifests
for Windows.

So far, chrome manifests were handled with buildlist.py like in the
RecursiveMake backend, fed with Make variables. Without proper quoting,
those Make variables are just truncated by Make on the first # character,
and this results in mach build faster failing because of that.

However, the reason why chrome manifests were handled with buildlist.py
originally is that not all chrome manifest entries were known to the
FasterMake backend, but they now all are.

So instead of relying on Make variables and buildlist.py, we can now
rely on the newly added install manifests feature allowing to create files
with a given content.
2015-12-24 13:12:29 +09:00
Mike Hommey
4e978ebeda Bug 1234439 - Add support for files with a given content to install manifests. r=gps
This will be used for chrome manifests in the faster make backend.
2015-12-24 13:12:24 +09:00
Carsten "Tomcat" Book
011504aa73 Merge mozilla-central to mozilla-inbound 2015-12-23 12:47:45 +01:00
Carsten "Tomcat" Book
719ce6825c merge mozilla-inbound to mozilla-central a=merge 2015-12-23 12:00:09 +01:00
Mike Hommey
dc1355e42f Bug 1233282 - Add generated FinalTargetFiles as optional_exists in install manifests. r=gps
Otherwise there's a possibility of race condition in some cases.
2015-12-23 16:18:51 +09:00
Mike Hommey
76e43de367 Bug 1233282 - Make CONFIGURE_DEFINE_FILES considered more as GENERATED_FILES in the emitter. r=gps
From the backend perspective, CONFIGURE_DEFINE_FILES is the same as
GENERATED_FILES because in both cases a GeneratedFile object is emitted, but
from the perspective of some checks in the emitter, they aren't the same,
and that causes errors when adding a CONFIGURE_DEFINE_FILES to e.g. EXPORTS.
2015-12-23 16:15:41 +09:00
Kris Maglione
8d948cbdfc Bug 1230776: Support scripts from HTML files in eslint. r=gps
Also removes related unused variables in mach_commands.py.

--HG--
extra : commitid : IiDVMuEZtA5
extra : rebase_source : 575a51dd0ad5450323b4da5f441f8e5d721e41d6
2015-12-05 13:17:49 -08:00
Chris Peterson
90c0e0da61 Bug 1232223 - Part 3: Remove MOZ_WAVE #ifdefs because Wave is always supported. r=jya 2015-12-18 00:51:16 -08:00
Chris Peterson
88051371a9 Bug 1232223 - Part 1: Remove MOZ_WEBM #ifdefs because WebM is always supported, though not necessarily enabled. r=jya r=glandium 2015-12-12 13:49:07 -05:00
Jean-Yves Avenard
42c92612f4 Bug 1234092: P3. Remove dependencies on gstreamer packages. r=glandium 2015-12-23 01:14:23 +11:00
Ms2ger
fdb675bc31 No bug - Note the bug in a todo comment. 2015-12-18 11:13:00 +01:00
Mike Hommey
8ad03f4a21 Backout changesets 53a9d03e4223, e61d18180feb and f07752f611f6 (bug 1233282) for a race condition bustage on a CLOSED TREE. 2015-12-18 17:07:13 +09:00
Mike Hommey
abf55a5284 Bug 1233282 - Make CONFIGURE_DEFINE_FILES considered more as GENERATED_FILES in the emitter. r=gps
From the backend perspective, CONFIGURE_DEFINE_FILES is the same as
GENERATED_FILES because in both cases a GeneratedFile object is emitted, but
from the perspective of some checks in the emitter, they aren't the same,
and that causes errors when adding a CONFIGURE_DEFINE_FILES to e.g. EXPORTS.
2015-12-18 15:57:12 +09:00
Carsten "Tomcat" Book
af252b574e merge mozilla-inbound to mozilla-central a=merge 2015-12-17 11:59:41 +01:00
Gregory Szorc
ee27b8ebce Bug 1225599 - Pull Mercurial repos with common 3rd party extensions disabled; r=dminor
Running old extensions with newer versions of Mercurial may crash `hg`
due to the old extension accessing something or doing something that has
been changed in the new release.

To minimize the risk of this happening, we disable common 3rd party
extensions when cloning or pulling as part of `mach mercurial-setup`. We
don't want to disable everything because some extensions (like
remotenames) provide features the user may want enabled as part of the
clone/update. This leaves the door open for more failures. Hopefully
this approach is sufficient. We can always revisit later.

--HG--
extra : rebase_source : 92e7d8fe227f29fc64c0f69021bd731ba762faf3
2015-12-15 10:47:33 -08:00
Carsten "Tomcat" Book
ee3a10a104 Merge mozilla-central to mozilla-inbound 2015-12-16 12:03:47 +01:00
Carsten "Tomcat" Book
a77b9d40f7 merge mozilla-inbound to mozilla-central a=merge 2015-12-16 12:01:46 +01:00
Wes Kocher
dcd5150ad9 Merge m-c to inbound, a=merge
--HG--
extra : commitid : wg0tOahMU6
2015-12-15 15:52:44 -08:00
Nick Alexander
4899166b70 Bug 1227248 - Part 1: Allow extending StrictOrderingOnAppendListWithFlags. r=gps
In order to use StrictOrderingOnAppendListWithFlags instances in
mozbuild template functions, we need += to work correctly.  This patch
implements extend and the associated functions (including +=),
disallowing some behaviour where convenient.

There's a subtle point hidden in the isinstance() tests: before this
patch, it was not easy to compare two
StrictOrderingOnAppendListWithFlags instances to see if they had the
*same* set of flags.  That was because two instances may not have the
same class, and would only share the common
StrictOrderingOnAppendList, which isn't enough to infer the presence
of flags.  To be slightly more clear, concrete instances will have
class StrictOrderingOnAppendListWithFlagsSpecialization (although
there are still multiple instances of that class) and all extend from
the unique class StrictOrderingOnAppendListWithFlags.

--HG--
extra : commitid : AMVDYt8khR
extra : rebase_source : 1ce0698691fc03fbdf6a976e92017c1d60bad15d
extra : histedit_source : 4812a565179fb4fac2e4b5cd89c4efe74e794dfa
2015-12-14 11:50:06 -08:00
Nick Alexander
a196b3a8a7 Bug 1230848 - Remove Gradle configuration rooted in the object directory. r=gps
DONTBUILD NPOTB

The top source directory configuration requires
mobile/android/gradle/m2repo/**, so it stays.  There's no value
changing the location; it contains an Android-specific Gradle plugin.

We note the removal of |mach gradle-install| and point to the new
documentation.

--HG--
extra : commitid : 9Nhz2dnBIgY
extra : rebase_source : 32a2b8a92d57f963feac2bae28fed5a9f1b26f93
extra : amend_source : bf53a0b2d3d4ac0618bc82fe79914bdeaf1c1e0a
2015-12-06 15:02:11 -08:00
Carsten "Tomcat" Book
5a86bca15a merge mozilla-inbound to mozilla-central a=merge 2015-12-15 12:16:29 +01:00
Brian Murray
4bbd072a06 Bug 1232486 - Implement |mach bootstrap| for Fennec on Fedora. r=nalexander
DONTBUILD NPOTB

--HG--
extra : commitid : 8vOjqwGEMbK
extra : amend_source : 4175892eff7aa506471734946c8d74a24ab8f0ab
2015-12-14 17:20:09 -08:00
Brian Murray
52931434b2 Bug 1232715 - Bootstrap ignores --no-interactive flag when using dnf groupinstall; r=gps
DONTBUILD (NPOTB)

--HG--
extra : commitid : F1laIL5bUHN
extra : amend_source : a21757bd9a69cd7ddadb16e49ab89cdd45841b03
2015-12-15 13:59:23 -08:00
Gijs Kruitbosch
b63e88e1a7 Bug 1232421 - followup: fix test to not use 'inline comments' which are not supported elsewhere, rs=bustage on a CLOSED TREE
--HG--
extra : commitid : JqObbyNgDTC
extra : amend_source : 84a1aacb62cfb28c45012c64edbb38ef392ba9b7
2015-12-16 14:03:20 +00:00
Gijs Kruitbosch
d83623503a Bug 1232421 - force matching the start of the line for comments, r=glandium
--HG--
extra : commitid : KomtUxWCGB6
extra : rebase_source : efa6f6f1f48b2e142536cddebabf1581b732e9b2
2015-12-14 20:33:57 +00:00
Rail Aliiev
7744523519 Bug 1232887 - "make package MOZ_PKG_PRETTYNAMES=1" is busted. r=glandium 2015-12-15 23:23:18 -05:00
Mike Hommey
b13b86d3cc Bug 1231315 - Build CONFIGURE_DEFINE_FILES at build time instead of during configure. r=gps 2015-12-15 08:06:11 +09:00
Mike Hommey
347d2ccc90 Bug 1231314 - Turn mozilla-config.h and js-confdefs.h into CONFIGURE_DEFINE_FILES. r=gps
Both these files, are, after all, define files, like other CONFIGURE_DEFINE_FILES.
They only happen to have a special requirement for an expansion for all defines,
which doesn't need to happen through traditional preprocessing.

This change adds consistency in how configure-related headers are being handled.
2015-12-15 08:06:11 +09:00
Gregory Szorc
aa64dfaae7 Bug 1231989 - Install watchman via Homebrew and MacPorts; r=ahal
This is needed to support hgwatchman.

--HG--
extra : commitid : 8D2A8YPNimB
extra : rebase_source : 7d5932aa049dfb352b93a87c2c8087dd7b324aab
extra : histedit_source : 9863189f265eca9e0b9363e13c59a7d55f5c633d
2015-12-11 12:40:41 -05:00
Felipe Gomes
4680ffb080 Bug 1231720 - Log when ESLint finishes running. r=nalexander
--HG--
extra : commitid : 5u08LIBan4s
2015-12-10 14:31:14 -05:00
Carsten "Tomcat" Book
ffb37c03fb merge mozilla-inbound to mozilla-central a=merge 2015-12-10 12:05:03 +01:00
Mike Hommey
158e08c29b Bug 1230355 - Remove include_deps. r=mshal
We used to use include_deps to trigger a fast-path in pymake, but we don't
use pymake anymore, so we can use normal includes now.
2015-12-09 19:23:53 +09:00
Ted Mielczarek
47dba5ed8c bug 1160185 - support GENERATED_FILES in EXPORTS. r=glandium
This change allows specifying objdir-relative paths in EXPORTS to enable
exporting entries from GENERATED_FILES. Objdir paths in EXPORTS that are
not in GENERATED_FILES will raise an exception.

Example:
```
EXPORTS += ['!g.h', 'f.h']
GENERATED_FILES += ['g.h']
```

Given the implementation, this should also work for FINAL_TARGET_FILES,
FINAL_TARGET_PP_FILES, and TESTING_FILES, but those are not well-tested.

This patch also renames the install manifest for '_tests' to match the
directory name for convenience in some code I refactored.

--HG--
extra : commitid : CwayzXtxv1O
extra : rebase_source : 5fb6f461fc740da9bce14bbdbfabdfe618af8803
2015-12-01 09:53:16 -05:00
Mike Hommey
e876eeef92 Bug 1230060 - Don't fail to read an install manifest containing non-actionable items. r=gps
Future improvements to process_install_manifest's --track option will require
adding data in the tracking dump that uses an install manifest form, and I don't
want e.g. switching branches or bisection to require to clobber in order to do the
right thing, so this change future-proofs the install manifest reader.
2015-12-05 11:04:21 +09:00
Mike Hommey
a6e5352b39 Bug 1230060 - Add a --track option to process_install_manifest. r=gps
There are currently two operating modes for process_install_manifest:
- default, which removes any file in the destination directory that is not
  in the install manifest
- --no-remove, which doesn't do the above.

While install manifests also have the ability to deal with files that may
be left in the destination directory some other way, that requires knowing the
list of those files in advance, which is not always possible.

For instance:
- with the FasterMake build backend, install manifests are split such that
  there is one manifest per application of addon directory (to allow more
  parallelism), which means there is one for dist/bin and one for several
  of its sub-directories.
- With --disable-compile-environment combined with artefacts, the backends
  are not aware of e.g. all the libraries and executables that end up in
  dist/bin.

If we want to properly remove files when they are removed from moz.build
or jar.mn, we can't use --no-remove, but the alternative would remove those
files

So add an option that keeps a list of all the files that were installed as
part of processing the given install manifest(s). That information is simply
a dump of the install manifest, which, while it contains more information
than currently required, will allow to do smarter things in the future.
2015-12-05 11:04:21 +09:00
Mike Hommey
dab94e1f70 Bug 1230060 - Allow to restrict what unaccounted files to remove when copying from a FileCopier. r=gps
The default behavior for a FileCopier's copy is to remove all the files and
directories in the destination that aren't in its registry.

The remove_unaccounted argument can be passed as False to disable this
behavior.

This change adds another possibility, where remove_unaccounted may be a
FileRegistry, in which case only the files in that registry are removed.

This allows to e.g. only remove files that were copied from a previous
FileCopier.copy, leaving aside files that were in the destination for some
other reason.
2015-12-05 11:04:21 +09:00
Carsten "Tomcat" Book
71e373189a Backed out changeset 9d1f7f04a682 (bug 1230060) to complete backout 2015-12-04 15:22:52 +01:00
Carsten "Tomcat" Book
70e80c658e Backed out changeset 0dcea48cbf38 (bug 1230060) for bustage due to race conditions of some sort 2015-12-04 15:18:07 +01:00
Carsten "Tomcat" Book
3e46254e72 Backed out changeset 1e44f391a3cb (bug 1230060) 2015-12-04 15:17:38 +01:00
Mike Hommey
27d503c493 Bug 1230067 - Normalize install target when processing JarManifestParser data in FasterMake backend. r=gps
The loop addon jar.mn data uses '.' as base, and join(path, '.') returns
'{path}/.'. So normalize that so that it becomes '{path}'.
2015-12-04 19:25:42 +09:00
Mike Hommey
3d1b660fdf Bug 1230060 - Don't fail to read an install manifest containing non-actionable items. r=gps
Future improvements to process_install_manifest's --track option will require
adding data in the tracking dump that uses an install manifest form, and I don't
want e.g. switching branches or bisection to require to clobber in order to do the
right thing, so this change future-proofs the install manifest reader.
2015-12-04 19:25:42 +09:00
Mike Hommey
831f8542c7 Bug 1230060 - Add a --track option to process_install_manifest. r=gps
There are currently two operating modes for process_install_manifest:
- default, which removes any file in the destination directory that is not
  in the install manifest
- --no-remove, which doesn't do the above.

While install manifests also have the ability to deal with files that may
be left in the destination directory some other way, that requires knowing the
list of those files in advance, which is not always possible.

For instance:
- with the FasterMake build backend, install manifests are split such that
  there is one manifest per application of addon directory (to allow more
  parallelism), which means there is one for dist/bin and one for several
  of its sub-directories.
- With --disable-compile-environment combined with artefacts, the backends
  are not aware of e.g. all the libraries and executables that end up in
  dist/bin.

If we want to properly remove files when they are removed from moz.build
or jar.mn, we can't use --no-remove, but the alternative would remove those
files

So add an option that keeps a list of all the files that were installed as
part of processing the given install manifest(s). That information is simply
a dump of the install manifest, which, while it contains more information
than currently required, will allow to do smarter things in the future.
2015-12-04 19:25:42 +09:00
Mike Hommey
0a5ad30ee1 Bug 1230060 - Allow to restrict what unaccounted files to remove when copying from a FileCopier. r=gps
The default behavior for a FileCopier's copy is to remove all the files and
directories in the destination that aren't in its registry.

The remove_unaccounted argument can be passed as False to disable this
behavior.

This change adds another possibility, where remove_unaccounted may be a
FileRegistry, in which case only the files in that registry are removed.

This allows to e.g. only remove files that were copied from a previous
FileCopier.copy, leaving aside files that were in the destination for some
other reason.
2015-12-04 19:25:42 +09:00
Maja Frydrychowicz
65297a6d50 Bug 1229467 - Include wptserve in common.tests.zip; r=gps
--HG--
extra : commitid : BqsAW4Qumv3
extra : rebase_source : eba9a1c941c8d3f48e6a02e07689ced16dd32cfe
extra : histedit_source : 3e3726d534589579f896f0b339e800d3513f0b34
2015-12-01 15:45:41 -05:00
Axel Hecht
e3a88f714b Bug 1229330 - fix import, r=glandium
Follow-up fix to bug 1147283

--HG--
extra : transplant_source : %8F%05c%031%90%16%27%A5%A2%8F%D7%CE%9CP%3B%8E%C8%B2%FD
2015-12-01 11:55:59 +01:00
Mike Hommey
6e7dc8af8c Bug 1229341 - Remove HierarchicalStringListWithFlagsFactory. r=gps
It is not used anymore.
2015-12-03 13:34:02 +09:00
Mike Hommey
3df4b2841e Bug 1229341 - Remove .source flag on BRANDING_FILES. r=gps
The only use of BRANDING_FILES[...].source is in xulrunner/app/moz.build, for
the app.ico file.

This file has not been useful since the removal of the xpinstall-based
installer in bug 344236... 9 years ago.
2015-12-03 13:34:02 +09:00
Mike Hommey
524f4438ab Bug 1229279 - Use mozbuild.context.Path for FINAL_TARGET{_PP}_FILES. r=gps 2015-12-03 13:34:02 +09:00
Mike Hommey
d385de836e Bug 1229279 - Add a specialized HierarchicalStringList class for ContextDerivedValue types. r=gps 2015-12-03 13:34:02 +09:00
Chris Pearce
8d1aefe517 Bug 1229541 - Assume config.substs.get() already returns a list in VS mach build-backend backend. r=glandium 2015-12-03 11:47:29 +13:00
Dave Townsend
9ee8a4af74 Bug 1230300: Fix mach eslint to pass command arguments through to eslint. r=gps
Currently mach treats the first argument to eslint as the path and moves it to
the end of the arguments but this breaks usage like "mach eslint -f json browser".

It used to be necessary to change to the directory you wanted to lint but now
the .eslintignore is at the top level we just run from the top level. This means
the path argument doesn't need to be special anymore.

--HG--
extra : commitid : 5ozct0pVSC4
extra : rebase_source : 22132a240d8e6f4d099dbcdeb793958d7173e154
extra : amend_source : 2b9931b4283e1c84f699027e13eccc33fcdec978
2015-12-03 10:38:29 -08:00
Dave Townsend
e966ac1914 Bug 1229858: Add a preprocessor to convert XBL into JavaScript blocks for eslint. r=miker
--HG--
extra : commitid : KBrnZcg3l6i
extra : rebase_source : 0b961d96d021923d7ef2855367549b3aa2a077da
extra : amend_source : 7f403c59c018656bcff98e7fc2996bfbb9b853d3
2015-12-02 17:03:33 -08:00
Carsten "Tomcat" Book
5adcabb340 merge mozilla-inbound to mozilla-central a=merge 2015-12-02 15:20:57 +01:00
Mike Hommey
2a82df055d Bug 1229293 - Enforce order when setting a HierarchicalStringList, and forbid reassignment. r=gps
The current implementation of HierarchicalStringList allows the following:

   FOO.bar = [
       'foo',
       'bar',
   ]

while

   FOO.bar += [
       'foo',
       'bar',
   ]

would be invalid because of the StrictOrderingOnAppendList enforcement.

It also allows to overwrite the entire list with a subsequent

   FOO.bar = [
	'baz',
   ]

while we've explicitly forbidden such things for every other list.

While in the vicinity, fix HierarchicalStringList._get_export_variable to not
call the HierarchicalStringList constructor uselessly.
2015-12-02 11:04:37 +09:00
Mike Hommey
6e38af494c Bug 1229245 - Use a FinalTargetFiles-like object for TESTING_JS_MODULES. r=gps 2015-12-01 16:46:57 +09:00
Mike Hommey
6bea47c16d Backout changeset aad04db89c38 (bug 1229245) for jetpack bustage. r=me on a CLOSED TREE 2015-12-01 16:18:54 +09:00
Mike Hommey
70e723fc78 Fixup for bug 1229233 to fix bustage on OSX universal builds. r=me
Those bits are copied from TestMozbuildObject.
2015-12-01 14:52:31 +09:00
Mike Hommey
4bc4164c0a Fixup for bug 1229233 to fix test bustage on Windows. r=me 2015-12-01 14:52:31 +09:00
Mike Hommey
8dc5201e76 Bug 1229245 - Use a FinalTargetFiles-like object for TESTING_JS_MODULES. r=gps 2015-12-01 13:57:52 +09:00
Mike Hommey
2e73746038 Bug 1229245 - Don't store the target in FinalTarget{,Preprocessed}Files instances. r=gps
They already have that value in self.install_target.
2015-12-01 13:57:52 +09:00
Mike Hommey
2eea6436c2 Bug 1229241 - Use FINAL_TARGET{,_PP}_FILES for EXTRA{,_PP}_JS_MODULES. r=gps 2015-12-01 13:57:52 +09:00
Mike Hommey
85dbd89e83 Bug 1229241 - Redirect RESOURCE_FILES to FINAL_TARGET_FILES.res. r=gps 2015-12-01 13:57:52 +09:00
Mike Hommey
3b9cda439c Bug 1229241 - Use FINAL_TARGET{,_PP}_FILES for JS_PREFERENCE{,_PP}_FILES. r=gps 2015-12-01 13:57:52 +09:00
Mike Hommey
5ea47b3101 Bug 1229241 - Differentiate preprocessed and non-preprocessed JS pref files. r=gps 2015-12-01 13:57:52 +09:00
Mike Hommey
861b5a242a Bug 1229241 - Redirect EXTRA{_PP}_COMPONENTS to FINAL_TARGET{,_PP}_FILES.components. r=gps 2015-12-01 13:57:52 +09:00
Mike Hommey
1743f5051f Bug 1229241 - Support merging HierarchicalStringLists. r=gps 2015-12-01 13:57:52 +09:00
Mike Hommey
5d8c5d2272 Bug 1229241 - Reject FINAL_TARGET{,_PP}_FILES along DIST_INSTALL = False. r=gps 2015-12-01 13:57:52 +09:00
Mike Hommey
1c6231c29c Bug 1229241 - Allow moz.build special variables to be set, as long as the value is not modified. r=gps
This will allow a new kind of special variable where it is possible to do
  FOO += ['bar']

All the current special variables are either strings (for which __setitem__ would
be called with a different string object), or a read-only dict (which doesn't
allow modifications).
2015-12-01 13:57:52 +09:00
Mike Hommey
e5b1bb9e4e Bug 1229233 - Add a (incomplete) end-to-end build test. r=gps
We have many unit tests in the tree for some small parts of the build system
pipeline, but we don't have anything that resembles an end to end test, and we
kind of rely on the resulting Firefox not being broken by our changes.

With the Faster make backend growing, I want to ensure it produces the same
thing as the recursive make backend, at least for the parts it supports.

This adds some kind of test that allows to check that.
2015-12-01 13:57:52 +09:00
Mike Hommey
b80b97e9fa Bug 1229233 - Properly skip the top-level directory in the RecursiveMake backend. r=gps
Somehow this never ended up being a problem in practice, but somehow with a
minimalistic test case, it becomes one.
2015-12-01 13:57:52 +09:00
Mike Hommey
fc199d9034 Bug 1229233 - Skip building XPIDL when there aren't any in the FasterMake backend. r=gps
The test I'm about to add doesn't have XPIDL files, and that currently avoids
the FasterMake backend to run properly. Also, in the future, when the FasterMake
grows the ability to build C++ files, it should be possible to build Spidermonkey
with the FasterMake backend, but it doesn't have XPIDL files either.
2015-12-01 13:57:52 +09:00
Mike Hommey
23883e6652 Bug 1229233 - Use SourcePaths for CONFIGURE_SUBST_FILES and CONFIGURE_DEFINE_FILES. r=gps 2015-12-01 13:57:52 +09:00
Mike Hommey
aa6442b3ae Bug 1229226 - Reject RESOURCE_FILES along DIST_SUBDIR or XPI_NAME. r=gps
Gecko only uses resource files in the GRE directory.
2015-12-01 13:57:52 +09:00
Mike Hommey
572b7a9ece Bug 1229226 - Remove preprocessing support for RESOURCE_FILES. r=gps
No resource file is preprocessed in gecko, and no resource file is defined
in comm-central.
2015-12-01 13:57:52 +09:00
Mike Hommey
23a591952c Bug 1228467 - Make the preprocessor error out for "no preprocessing directives" instead of warning. r=gps 2015-12-01 08:25:22 +09:00
Mike Hommey
3a7b31cfb5 Bug 1228444 - Rename DIST_FILES to FINAL_TARGET_PP_FILES. r=gps
This makes it clearer that really it's the same thing as FINAL_TARGET,
with preprocessing.
We still keep DIST_FILES in backend.mk because it's shorter and doesn't
really matter.
2015-12-01 08:25:22 +09:00
Mike Hommey
3a04b1f8dc Bug 1228444 - Make DIST_FILES a HierarchicalStringList, like FINAL_TARGET_FILES. r=gps 2015-12-01 08:25:22 +09:00
Mike Hommey
655579a1fa Bug 1228444 - Don't silence "no preprocessor directives found" warnings for DIST_FILES. r=gps
and move files without preprocessor directives to FINAL_TARGET_FILES.
2015-12-01 08:25:22 +09:00
Mike Hommey
5dfa8936e1 Bug 1228444 - Validate that FINAL_TARGET_FILES source files exist. r=gps 2015-12-01 08:25:22 +09:00
Mike Hommey
ba507be622 Bug 1227892 - Add basic tests for IS_COMPONENT/NO_COMPONENTS_MANIFEST. r=gps 2015-12-01 08:25:22 +09:00
Mike Hommey
3900e2c115 Bug 1227892 - Emit a specialized object for chrome.manifest entries. r=gps
This new ChromeManifestEntry object type is generic and can hold any kind of
chrome manifest entry, but we currently only emit them for binary components.

References to sub-directory manifests is left to the backend, for now, until
all manifest entries are emitted by the frontend.
2015-12-01 08:25:22 +09:00
Mike Hommey
79e06586da Bug 1227892 - Add a NO_COMPONENTS_MANIFEST moz.build variable. r=gps
The variable is used by Lightning in comm-central and influences
binary-component manifest creation.
2015-12-01 08:25:22 +09:00
Dave Townsend
3593419254 Bug 1228628: Move all eslintignore rules to the top-level of the tree. r=mconley
--HG--
extra : commitid : Dwq9c2G0xAV
extra : rebase_source : 29ef8c7dad0b0477933d82ea87fd157607cc7b14
extra : amend_source : f0353d9eab87d940d29377401b60606153644985
2015-11-27 09:39:59 -08:00
Carsten "Tomcat" Book
358e4575c4 merge mozilla-inbound to mozilla-central a=merge 2015-11-26 16:54:27 +01:00
Nick Alexander
3a8bea8ad4 Bug 1227600 - Fix |mach bootstrap| bustage on Mac OS X. r=me,gps
DONTBUILD NPOTB on a CLOSED TREE

--HG--
extra : commitid : 4gi9M7J0IaR
extra : amend_source : 32ba3af05db20027dfb1776a30a1040bf25494f7
2015-11-25 11:11:39 -08:00
Mike Hommey
b5c0f9f920 Bug 1224452 - Quote passthru variables. r=gps
Ideally, we should properly make and shell quote everything we print out
in makefiles, but that's a can of worms I don't want to open just yet. So
I'll limit myself to just passthru variables.
2015-11-26 08:51:02 +09:00
Mike Hommey
dcfc35f1b9 Bug 1224452 - Better handle make variable references from gyp files. r=gps
This further improves the changes from bug 1224460 to e.g. handle variable
references mixed with text, and to avoid adding empty strings to the
resulting flags variables when the expansion leads to an empty string.
2015-11-26 08:50:59 +09:00
Mike Hommey
d1031e10d6 Bug 1224452 - Add an expand_variables helper function to do simple make-like variable expansion. r=gps 2015-11-26 08:50:54 +09:00
Mike Hommey
b54191a5f8 Bug 1224452 - Use mozbuild.shellutil.split instead of shlex.shlex in mozbuild.compilation.util. r=gps
And then properly quote the strings when printing them out in the compilation
database or the mach compileflags output.
2015-11-26 08:50:44 +09:00
Mike Hommey
6dad957fbb Bug 1224452 - Move shell_quote to the shellutil module. r=gps
Also make it only quote when actually necessary.
2015-11-26 08:49:18 +09:00
Mike Hommey
f485401df4 Bug 1226884 - Keep em:unpack addons unpacked after bug 1216371. r=gps
--HG--
extra : amend_source : 61a2914b964df0bdf1d523e7eb396b54403daa9f
2015-11-23 22:40:00 +01:00
Mike Hommey
fb7b4a5eae Bug 1151124 - Add a simplified version of pymake's clinetoargv to mozbuild and use it. r=gps
Pymake's clinetoargv is very specific to pymake's use case, yet has been abused
as a replacement for shlex because shlex doesn't handle things properly for our
use cases.

Using pymake's clinetoargv, however, has shortcomings, and we're better off
importing its code in mozbuild, simplifying it a little, and using that
instead.

Plus, less dependencies on pymake will help kill it for good some day.
2015-11-24 11:29:14 +09:00
Jared Wein
d118134fda Bug 1229154 - Launch 'eslint' with UNIX environment since 'eslint' is not a valid Win32 binary. r=gps
--HG--
extra : rebase_source : a738aa832da24531c47a72632ecef8c729601966
2015-12-01 14:29:47 -05:00
Geoff Brown
446af250a7 Bug 1219807 - Support 'mach run --debug' for Android; r=jmaher 2015-11-19 13:15:34 -07:00
Mike Hommey
ebd689a328 Bug 1224460 - Expand make variable references we get out of gyp. r=gps 2015-11-19 08:05:51 +09:00
Mike Hommey
b6d285f055 Bug 1216371 - Pack addons that can be packed as XPIs. r=gps 2015-11-19 08:05:51 +09:00
Mike Hommey
3657509c31 Bug 1216371 - Distinguish between addons that can be packed and those that cannot in the packager. r=gps 2015-11-19 08:05:51 +09:00
Mike Hommey
01f29630c8 Bug 1216371 - Use the PiecemealFormatter for the OmniJarFormatter. r=gps 2015-11-19 08:05:51 +09:00
Mike Hommey
b13fb564e4 Bug 1216371 - Use the PiecemealFormatter for the JarFormatter. r=gps 2015-11-19 08:05:51 +09:00
Mike Hommey
96f591ed3f Bug 1216371 - Introduce a PiecemealFormatter base package formatter. r=gps
FlatFormatter, JarFormatter and OmniJarFormatter all, in some way, deal
with different pieces of the package being handled differently.

Instead of each of them dealing with their different pieces in some subtly
different way, instead, introduce a new base package formatter class that
will handle it for all of them.

Use this new PiecemealFormatter for the FlatFormatter.
2015-11-19 08:05:51 +09:00
Mike Hommey
c261a38b06 Bug 1216371 - Add a proxy class to access a subtree of a FileRegistry as an independent FileRegistry. r=gps 2015-11-19 08:05:51 +09:00
Mike Hommey
f7a0e3118a Bug 1216371 - Don't assume the root directory is a base directory in packager formatters. r=gps 2015-11-19 08:05:51 +09:00
Mike Hommey
67e9068329 Bug 1216371 - Add tests for *Formatter.contains(). r=gps
And fix OmniJarFormatter.contains after bug 910660.
2015-11-19 08:05:51 +09:00
Mike Hommey
6e8d11c99c Bug 1216371 - Don't rely on OmniJarFormatter.is_resource for test_omnijar_is_resource. r=gps 2015-11-19 08:05:51 +09:00
Mike Hommey
c8c4eba72c Bug 1216371 - Add package formatter tests emulating mac packaging. r=gps
Only directories containing chrome manifests are given as base to formatters,
but there can still be files given outside the bases, like, on mac builds,
all files in Content/MacOS, or Content/Info.plist, whereas chrome manifests
are under Content/Resources.
2015-11-19 08:05:51 +09:00
Mike Hommey
a20016a7c8 Bug 1216371 - Rearrange test_packager_formats.py. r=gps
There is a lot of repetition across its various tests, and we're going to add
some more in a subsequent change, so it is desirable to make it a less
repetitive task.
2015-11-19 08:05:51 +09:00
Chris Manchester
4de238c02d Bug 1219521 - Add imported python modules in the tree to dependencies of GENERATED_FILES scripts. r=glandium
--HG--
extra : commitid : 3ZGSu0cVuch
2015-11-16 16:51:51 -08:00
Mark Hammond
301563017d Bug 1224689 - Add a 'sync' mozinfo variable and only run test_remotetabmatches.js if it is defined. r=ted
--HG--
extra : rebase_source : 05d28e12a73a2fe0f0746a5ae13e3268a0821ced
2015-11-15 15:21:00 +01:00
Harshit Bansal
56588c2af2 Bug 1217039 - Created a function android_ndk_url() in android.py and used it in all other sub-modules to calculate the URL. r=mshal 2015-11-15 14:49:08 +01:00
Chris Manchester
0cc78b1f16 Bug 1224411 - Speed up FileRegistry._partial_paths by memoizing on the basis of directory. r=nalexander
This function was found to be a little slow while profiling due to repeated calls to
mozpath.dirname. This patch speeds up the function replacing dirname with string manipulation
(these paths are already normalized), by caching results on the basis of directory,
and converting from iteration to recursion to increase use of the cache.

This commit speeds up the "install tests" step run as a part of the build and running
tests by ~10% on a fast linux laptop.

--HG--
extra : commitid : HdYkcXQ2ezQ
2015-11-13 16:14:40 -08:00
Mike Hommey
469865f35c Bug 1219104 - Disallow multiple jar.mn mentioning the same files for the same build in the FasterMake backend. r=mshal 2015-11-14 08:40:54 +09:00
Mike Shal
8d58360198 Bug 1223593 - Make depsdir optional in xpidl-process.py; r=glandium 2015-11-10 18:30:46 -05:00
Gregory Szorc
0ed3c74543 Bug 1223149 - Add basic usage documentation for mach build; r=glandium
Support for displaying docstrings in `mach help` was added relatively
recently. `mach build` was never documented. Let's document it.

There are a gazillion things we could put in the documentation. For now,
mainly focus on targets.

--HG--
extra : commitid : FjtVDISK9Q5
extra : rebase_source : a69ba419e49ca0e4435e87597fdfe34623917a6c
extra : amend_source : 1161bf83569c82340ad1e4e4d21ba7f600753af1
2015-11-10 15:41:08 -08:00
Mike Hommey
ef64322e27 Bug 1222591 - "nsMsgUtils.cpp:52:10: fatal error: 'nsProtocolProxyService.h' file not found". r=gps f=aleth
--HG--
extra : rebase_source : 87f985a43bf2c48ecad143fb2c1973a87966c931
2015-11-06 17:31:00 +01:00
Chris Manchester
cf3bc2e02d Bug 1215238 - Mention the included filepath in pre-processed js sources with #includes. r=glandium
--HG--
extra : commitid : FJpPaYeSyUI
2015-11-06 15:58:30 -08:00
Mike Hommey
762aba02cd Bug 1221453 - Use ObjDirPaths for GENERATED_INCLUDES and merge with LOCAL_INCLUDES. r=gps 2015-11-06 09:59:21 +09:00
Mike Hommey
e855ef1662 Bug 1221453 - Use SourcePaths for LOCAL_INCLUDES. r=gps 2015-11-06 09:59:21 +09:00
Mike Hommey
d2d8de9a5d Bug 1219147 - Use addEntriesToListFile in mozbuild.jar.JarMaker.updateManifest. r=mshal
Also make addEntriesToListFile emit files with CR instead of CRLF on Windows.
2015-11-04 11:21:49 +09:00
A-deLuna
57f72c864a Bug 1220480 - Reference proper variable in Arch Linux bootstrapper; r=gps
DONTBUILD (NPOTB)

--HG--
extra : commitid : FF82L5ToIR1
extra : amend_source : 113a8d10ba1fdf385e2a1dac1aaae262f23b3568
2015-11-03 11:00:02 -08:00
Chris Manchester
deb47f849b Bug 1218999 - Update mtimes when building a GENERATED_FILES target, even when contents don't change. r=glandium
When a make target is generated with FileAvoidWrite, this can cause targets to
get rebuilt perpetually when a prerequisite is updated, because FileAvoidWrite
will leave the target's mtime older than the prerequisite's when the target's
contents are unchanged. To avoid this issue, GENERATED_FILES is modified to
unconditionally update its target's mtime.

--HG--
extra : commitid : 4k5e5rKtPZ2
2015-11-03 10:23:04 -08:00
Chris Manchester
8ffd9ff2ed Bug 1218999 - Back out changeset 5f32b2bcfa43 (bug 1188468) in favor of a more efficient solution. r=glandium
Bug 118468 landed an option for FileAvoidWrite to always write to an output
file, whether or not the contents would be changed. This was to address a
problem caused by not updating mtimes when building GENERATED_FILES, but
undoes the purpose of FileAvoidWrite and isn't really necessary.
This is addressed in a subsequent commit by unconditionally updating
mtimes when processing GENERATED_FILES.

--HG--
extra : commitid : AfOhgUstokq
2015-11-03 10:23:04 -08:00
Mike Hommey
5237200410 Bug 1217276 - Fix the handling of relativesrcdir for localized chrome data in FasterMake backend. r=mshal 2015-10-31 07:32:47 +09:00
Mike Hommey
0ac007b2f5 Bug 1216901 - Make the FasterMake backend reticulate splines when moz.build or jar.mn files are modified. r=mshal 2015-10-31 07:32:43 +09:00
Mike Hommey
8d0eb7a870 Bug 1216901 - Always update backend output list files mtime from the base backend class. r=mshal
Instead of having individual backends do it on their own.
2015-10-31 07:32:42 +09:00
Wes Kocher
36c2970b75 Backed out changeset e22433400ec2 (bug 1216901) to hopefully fix winpgo bustage
--HG--
extra : commitid : JAZy6YeISB7
extra : amend_source : ff101ba617320bae1f76f7232a4c648a451dd4ce
2015-10-30 10:11:46 -07:00
Wes Kocher
1f1147fd63 Backed out changeset b855984ff056 (bug 1216901)
--HG--
extra : commitid : DRn4qQLqwWu
2015-10-30 10:11:45 -07:00
Wes Kocher
9ec1a1aa32 Backed out changeset 9475e3ef6a44 (bug 1217276)
--HG--
extra : commitid : Aaj33hafwl
2015-10-30 10:11:43 -07:00
Geoff Brown
a42b25a374 Bug 1219803 - Support 'mach run' for Android; r=jmaher 2015-10-30 10:57:35 -06:00
Makoto Kato
e5902f9e56 Bug 1219228 - Generate correct source path of cpu-features.c. r=glandium 2015-10-30 12:23:42 +09:00
Mike Hommey
545ea0eff1 Bug 1217276 - Fix the handling of relativesrcdir for localized chrome data in FasterMake backend. r=mshal 2015-10-30 08:19:04 +09:00
Mike Hommey
03e573e93c Bug 1216901 - Make the FasterMake backend reticulate splines when moz.build or jar.mn files are modified. r=mshal 2015-10-30 08:19:04 +09:00
Mike Hommey
d2683de574 Bug 1216901 - Always update backend output list files mtime from the base backend class. r=mshal
Instead of having individual backends do it on their own.
2015-10-30 08:19:04 +09:00
Carsten "Tomcat" Book
535f267585 Merge mozilla-central to mozilla-inbound 2015-10-29 12:15:05 +01:00
Richard Newman
447bf8b18a Bug 1219512 - Bump Android version code computation check. r=nalexander
--HG--
extra : commitid : DlEqjWeeRLj
2015-10-28 18:38:55 -07:00
Carsten "Tomcat" Book
3ec5c00413 merge mozilla-inbound to mozilla-central a=merge 2015-10-28 10:43:33 +01:00
Nick Alexander
3323ad2cde Bug 1207708 - Part 2: Build against play-services-{basement,base,gcm} if MOZ_ANDROID_GCM. r=sebastian
Since MOZ_NATIVE_DEVICES builds against play-services-{basement,base,cast},
some ad-hoc de-duplication is necessary.

--HG--
extra : commitid : 2jNIgZpLUq2
extra : source : 0957d3435ac22765d7868cb3c7db1e0787836bc3
2015-10-27 17:41:49 -07:00
Nathan Froyd
f1742e072f Bug 1218042 - part 2 - make the CompileDB backend follow the backend protocol; r=mshal
Calling CommonBackend.consume_object ensures that we process WebIDL and
IPDL files (and many other things) correctly.  Calling
CommonBackend.consume_finished ensures that the CompileDB backend gets
to see the unified bindings and protocol files that we generate, and add
those files to the compilation database.
2015-10-26 11:53:59 -04:00