Commit Graph

1312 Commits

Author SHA1 Message Date
Nick Alexander
9ab5f03f22 Bug 1108771 - Part 2: Implement |mach bootstrap| for mobile/android on Debian-like systems. r=gps
This adds a generic android Python module that handles:

* downloading and unpacking Google's Android SDK and NDK bundles;
* using the |android| tool to install additional Android packages;
* printing a mozconfig snippet suitable for mobile/android builds.

--HG--
extra : rebase_source : abaffcee70eacb391f53d622fba4a445277818db
2014-12-21 15:29:18 -08:00
Nick Alexander
c07812974d Bug 1108771 - Part 1: Prompt for which application to bootstrap. r=gps
This lays the foundation for adding support for bootstrapping
mobile/android.

* Queries for which application to bootstrap, currently browser or
  mobile/android;

* Adds call to install_APPLICATION_packages after
  install_system_packages;

* Adds call to suggest_APPLICATION_mozconfig after bootstrapping
  everything;

* and splits install_browser_packages out of install_system_packages
  throughout (essentially untested, but generally simple).

To implement a new application (b2g?), just add it to the list of
applications and implement install_b2g_packages throughout.

--HG--
extra : rebase_source : 8c9b4485dbe5ceb64436fd73ea0258592a2b818f
2014-12-21 15:29:17 -08:00
Nathan Froyd
acf1d1ab57 Bug 1114684 - inform mozinfo about the MOZ_TSAN build configuration; r=ahal
Various bits of the test harnesses key off of mozinfo.info.get('asan');
we will need a similar switch for finding out whether this build
supports tsan.
2014-12-22 13:46:14 -05:00
Brian O'Keefe
f6037f90a0 Bug 923080 - Generate xpt files into final location. r=glandium
Now that the mozbuild backend knows about FINAL_TARGET, we are able to
install generated xpt files into their final location. This saves us
from copying xpt files into their final location on every build.

Original patch by gps, rebased and comments addressed by Ms2ger

--HG--
extra : transplant_source : %E2%DC%0F%E0%AD%C2%25%A1%B8%A9%FE%B0%8C%60%FF%CB%02G%25%E5
2014-05-21 08:25:57 -04:00
Nathan Froyd
5a17186bee Bug 1109409 - improve mozpack.BaseFile.copy() performance on Windows; r=gps
mopack.BaseFile.copy() performs a generic read/write file copy.  Windows
has an explicit CopyFile() call that tests have shown to be
significantly faster.  Let's use that instead via the magic of ctypes.
2014-12-12 11:59:24 -05:00
Xidorn Quan
2c586157aa Bug 1103644 - Try default browser for "mach resource-usage" if the specified one doesn't work. r=gps DONTBUILD
--HG--
extra : rebase_source : 78aa8c5f3e89dae0680f5688d0b0c80093e7549b
extra : amend_source : bd2dfce52c1647831dba1b3fbb2790bfce0beae0
extra : histedit_source : 2f0640e53e7ac359e4c050f73f86546518211e1e
2014-12-19 09:50:20 +11:00
Nathan Froyd
f4a5c0b55a Bug 1109302 - make moz.build *SOURCES variables emit proper objects; r=gps
Having SOURCES and its close relatives go through VariablePassthru
objects clutters the handling of VariablePassthru in build backends and
makes it less obvious how to handle things that actually get compiled.

Therefore, this patch introduces four new moz.build objects
corresponding to the major variants of SOURCES.  It looks like a large
patch, but there's an ample amount of new tests included, which accounts
for about half of the changes.
2014-12-09 16:45:59 -05:00
Carsten "Tomcat" Book
42565f2b20 merge mozilla-inbound to mozilla-central a=merge 2014-12-18 13:50:27 +01:00
Ankit Goyal
708f6087d0 Bug 1109867 - Check for debugger before getting debugger info; r=gps 2014-12-17 22:30:50 -08:00
Nicholas Nethercote
84f6830b78 Bug 1100851 (follow-up) - Fix trivial bustage in |mach run --dmd|. r=glandium.
DONTBUILD because NPOTB.
2014-12-16 20:46:40 -08:00
Gregory Szorc
d977d9d510 Bug 1108399 - Implement mach sub-command dispatching; r=ahal
--HG--
extra : rebase_source : f81c4c55db4b262e6c3f52d638f66b75d2d5d4e2
extra : source : 7d2f0a5d2829a7f44b2f7e97be93520ce13991f0
extra : histedit_source : 7d8e10a990cd19e3d2f5672b4d4da1bfae214f40
2014-12-06 22:33:12 -08:00
Gregory Szorc
4760a6fb8e Bug 1108399 - Handle help on mach sub-commands; r=ahal
--HG--
extra : rebase_source : b0a0ce3f5f6bf31ee3e0cd7d7cfd3be0fa9db598
extra : histedit_source : 2aee6a7bba61ce8074df1ed5edcd7fc2d27c5bf8
2014-12-06 22:39:32 -08:00
Gregory Szorc
f763bad6f0 Bug 1108399 - Split command group populating into own function; r=ahal
An upcoming patch will reuse this code. Split it out into its own
function.

--HG--
extra : rebase_source : 2057266a1ed4d86b1ca857712cd279bdfbd32148
extra : histedit_source : 8f2b7ec06e5b72ab08586902c51c3025a53259e6
2014-12-07 11:56:31 -08:00
Gregory Szorc
a263f9b2b2 Bug 1108399 - Introduce decorator for mach sub-commands; r=ahal
With this patch, we now have the ability to declare mach sub-commands.
Subsequent patches will implement dispatching for sub-commands.

--HG--
extra : rebase_source : 32a672ff3ba7a1a1c8c27dff3fe657dec08e3569
extra : histedit_source : 2bb2c27ae0e2dab052a6ef93b0a70f488f8cd56e
2014-12-07 11:40:39 -08:00
Gregory Szorc
66816678e1 Bug 1108399 - Properly name command help function; r=ahal
We will soon have proper sub-commands. Let's fix function names.

--HG--
extra : rebase_source : 1cb0c008ecc0d2159dd799e76adad4892d65f119
extra : histedit_source : 9472b2d2609224b011eca04385cf9d5a49986864
2014-12-06 21:58:46 -08:00
Gregory Szorc
d57b022a92 Bug 1108399 - Remove outdated comment about hooking up conditional commands; r=ahal
mach conditions are implemented elsewhere. This comment can die.

--HG--
extra : rebase_source : c956d5af7858d997a1f49f3b24bb54e5f8a52240
extra : histedit_source : 76b8155b12ab0ea86e16e807b1c6f691cb8f3640
2014-12-06 21:53:16 -08:00
Gregory Szorc
a48b6059ef Bug 1108399 - Fix docs for mach decorators; r=ahal
Documentation was referencing sub commands. The proper terminology is
"command."

--HG--
extra : rebase_source : aa2fc73c6141850109324fd5299491e49ef29e91
extra : histedit_source : da075bea5a36a9de81527d93a9fc751cd6cae9b2
2014-12-06 21:15:27 -08:00
Gregory Szorc
66b7a4e8ab Bug 1108399 - Properly link to Python docs; r=ahal
There were a few parts of the docs that were linking to Python types
incorrectly. Let's fix that.

--HG--
extra : rebase_source : 374be660084727eba1ce9181c2abf384f40eeb82
extra : histedit_source : bfa8de9b7a277666d92ebe71cd64ffed96628518
2014-12-07 11:37:54 -08:00
Gregory Szorc
132be91a95 Bug 1108399 - Split mach documentation into multiple articles; r=ahal
The main mach docs page is a bit long. Let's split it into multiple
articles to increase readability going forward.

--HG--
rename : python/mach/docs/index.rst => python/mach/docs/commands.rst
rename : python/mach/docs/index.rst => python/mach/docs/driver.rst
rename : python/mach/docs/index.rst => python/mach/docs/logging.rst
extra : rebase_source : 484d60327568333fcb0069e1f3444dc6db4322c0
extra : histedit_source : 18d09ac2e2e93565661763b6567f7a46226735f5
2014-12-07 11:34:06 -08:00
Gregory Szorc
69aec04d4d Bug 1108399 - Improve code linking in mach docs; r=ahal
Now that mach's docs are part of a proper Sphinx install, link to
Python type docs. While we're here, we also clean up formatting of code
samples.

--HG--
extra : rebase_source : 974337316dc87c04aca79a9e4a0d464490e5cdd4
extra : histedit_source : db87e8e5cb7c9c1969fd89e58c39623862684a6a
2014-12-07 11:23:46 -08:00
Gregory Szorc
0674daf560 Bug 1108399 - Move mach docs into sphinx; r=ahal
mach has restructured text documentation. Let's expose it to the in-tree
Sphinx config so we can increase visibility of the documentation.

--HG--
rename : python/mach/README.rst => python/mach/docs/index.rst
extra : rebase_source : 68a08bebaa5b99ca39e250fa1ed60ca4d7d0af68
extra : histedit_source : 6afda2fece486547192c1c8eba97a2474e3d99c1
2014-12-07 10:40:19 -08:00
Nicholas Nethercote
d335ff94c5 Bug 1100851 (follow-up 2) - Fix more trivial bustage in |mach run --dmd|. r=glandium.
DONTBUILD because NPOTB.

--HG--
extra : rebase_source : 906b0ccf483fb5ab6be3fc9cef8482f28b38844f
2014-12-17 18:24:38 -08:00
Nathan Froyd
fa615683d1 Bug 1109826 - part 1 - make the preprocessor able to avoid emitting warnings about missing directives; r=mshal 2014-12-10 14:49:44 -05:00
Nicholas Nethercote
7d0f2f414e Bug 1100851 - Tweak DMD to account for the fact that $DMD can now be undefined. r=glandium.
Now that defining $DMD is no longer necessary to run DMD, this patch does the
following.
- Removes all the places where we set DMD=1 (test harnesses, etc.)
- Still handles DMD=1, for backwards compatibility.
- Prints "$DMD is undefined" at DMD start-up if appropriate.
- Writes a |null| value for |dmdEnvVar| in the JSON if $DMD is undefined. Bumps
  the DMD output version number accordingly.
- Changes a bunch of the test files accordingly, including changing the mode of
  script-ignore-alloc-fns.json in order to test a case where $DMD is undefined.

--HG--
extra : rebase_source : eb1ef5722410734ce6d7658465ff6f442ee4ed49
2014-11-27 21:04:46 -08:00
Phil Ringnalda
ab93e7a8f5 Backed out 2 changesets (bug 1105128) for Windows make check failures
CLOSED TREE

Backed out changeset 5dfe0838798c (bug 1105128)
Backed out changeset def38e936db8 (bug 1105128)
2014-12-09 20:42:01 -08:00
Gregory Szorc
2d7afd0fac Bug 1105128 - Alias os.path functions in local scope; r=glandium
Various os.path attributes are being used in tight loops. Having local
variables prevents extra dictionary lookups.

This appears to shave 10-20ms off of the tests install manifest
processing time.

--HG--
extra : rebase_source : de941f2978cf0b1fd7c4f7401c848b61d406a2c8
extra : amend_source : e33c896856fa559197496b8227e10ab8149d146e
2014-11-25 18:37:11 -08:00
Gregory Szorc
bea629df49 Bug 1105128 - Avoid excessive path normalization in FileCopier.copy(); r=glandium
FileCopier.copy() was performing a lot of os.path.normpath() operations.
Profiling revealed that os.path.normpath() was the function with the
most wall time CPU usage when processing the tests manifests. Upon
subsequent examination of the code in question, all the paths being used
were already normalized. So, os.path.normpath() wasn't accomplishing
anything.

This patch results in ~300ms reduction in wall time to process the tests
install manifest on a fully populated page cache. Execution time drops
from ~2.8s to ~2.5s.

Profiling reveals that after this patch os.stat() is the #1 wall time
consumer. However, os.path.{join,dirname,normpath} still account for
~1.5x the wall time of os.stat(). There is still room to optimize
this function.

--HG--
extra : rebase_source : b6f0862baa5168c609499fd95eb3517854bc8cce
extra : amend_source : 7e04c1eb74132bbbe86e721f0f209b19309a7a51
2014-11-25 18:16:22 -08:00
Nicholas Nethercote
5cc6a39a9a Bug 1094552 (part 6) - DMD: add support for cumulative heap profiling. r=mccr8.
By adding a new "cumulative" mode.

--HG--
extra : rebase_source : 5c851b7c594a134fae48393ff0becfd057715041
2014-10-30 20:22:47 -07:00
Nicholas Nethercote
5b5d3c27bb Bug 1094552 (part 5) - DMD: choose the profiling mode at start-up. r=mccr8.
This patch moves profiling mode selection from post-processing (in dmd.py) to
DMD start-up. This will make it easier to add new kinds of profiling, such as
cumulative heap profiling.

Specifically:

- There's a new --mode option. |LiveWithReports| is the default, as it is
  currently.

- dmd.py's --ignore-reports option is gone.

- There's a new |mode| field in the JSON output.

- Reports-related operations are now no-ops if DMD isn't in LiveWithReports
  mode.

- Diffs are only allowed for output files that have the same mode.

- A new function ResetEverything() replaces the SetSampleBelowSize() and
  ClearBlocks(), which were used by the test to change DMD options.

- The tests in SmokeDMD.cpp are split up so they can be run multiple times, in
  different modes. The exact combinations of tests and modes has been changed a
  bit.

--HG--
rename : memory/replace/dmd/test/full-reports-empty-expected.txt => memory/replace/dmd/test/full-empty-dark-matter-expected.txt
rename : memory/replace/dmd/test/full-heap-empty-expected.txt => memory/replace/dmd/test/full-empty-live-expected.txt
rename : memory/replace/dmd/test/full-heap-sampled-expected.txt => memory/replace/dmd/test/full-sampled-live-expected.txt
rename : memory/replace/dmd/test/full-reports-unsampled1-expected.txt => memory/replace/dmd/test/full-unsampled1-dark-matter-expected.txt
rename : memory/replace/dmd/test/full-heap-unsampled1-expected.txt => memory/replace/dmd/test/full-unsampled1-live-expected.txt
rename : memory/replace/dmd/test/full-reports-unsampled2-expected.txt => memory/replace/dmd/test/full-unsampled2-dark-matter-expected.txt
rename : memory/replace/dmd/test/script-diff-basic-expected.txt => memory/replace/dmd/test/script-diff-live-expected.txt
rename : memory/replace/dmd/test/script-diff1.json => memory/replace/dmd/test/script-diff-live1.json
rename : memory/replace/dmd/test/script-diff2.json => memory/replace/dmd/test/script-diff-live2.json
extra : rebase_source : bf32cc4e0d82aa1a20ceb55e8ea259850b49cc06
2014-12-08 14:45:14 -08:00
Gregory Szorc
a508387f37 Bug 1108294 - Removed unused makeutils Python module; r=froydnj
There are no more consumers of makeutils.py in the tree. So we delete
it.

--HG--
extra : rebase_source : bf19cdf722027758161e588395464da83fc2c37c
2014-12-06 15:48:42 -08:00
Gregory Szorc
9315af3694 Bug 1107968 - Add --debug-command to mach; r=ahal
People often seek to learn how mach commands work. A common way to do
this is to launch a debugger and step through the code as it is
executing. But this requires someone to first find and modify the mach
command. This involves overhead.

This patch adds a global --debug-command argument to mach. When present,
we launch an interactive debugger right before command dispatch. This
allows people to easily enter a debugger to see what mach commands are
doing, hopefully lowering the barrier to understanding and contributing.

--HG--
extra : rebase_source : 5ebfa7f5fd89f96dac5f7cb035ab520c63b32e55
extra : amend_source : c53c988763c328020b49aa5c6245df685b6f30bc
2014-12-05 10:19:49 -08:00
Mike Shal
14f3dfd3b3 Bug 1091668 - generate voucher on signed plugin-container; r=glandium 2014-11-25 10:43:43 -05:00
Ting-Yu Lin
372d769fb9 Bug 1105090 - Update ccache parser against version 3.2. r=gps
ccache version 3.2 adds primary config and secondary config in the
statistic report. Update the ccache stats parser to support that.
2014-11-26 06:25:00 +01:00
Nick Alexander
002f7dc5c6 Bug 1105052 - Update in-tree jsmin to commit a878bf0. rs=gps
This is a straight copy from

a878bf0ba0

paired with a tiny change to use the new quote_chars option.

--HG--
extra : rebase_source : 75d604ffafc7062c663bca4242af35546d2c1e3a
2014-11-25 16:02:08 -08:00
Mike Shal
19a62eff82 Bug 1091668 - Import eme voucher script; r=ted, r=gerv 2014-11-03 11:24:55 -05:00
Mike Shal
c927a777e6 Bug 1091668 - Import bitstring-3.1.3; r=ted, r=gerv 2014-11-03 10:47:25 -05:00
Mike Shal
1dea3263d8 Bug 1091668 - Import pyasn1-0.1.7; r=ted, r=gerv 2014-11-03 10:46:46 -05:00
Kartikaya Gupta
903c1e3c5c Bug 1092217 - Allow debugging gtests via mach gtests --debug. r=ted 2014-11-24 15:29:40 -05:00
Anton Neumann
dba9e97358 Bug 906177 - Fix bootstrap on elementary; r=gps
DONTBUILD (NPOTB)

--HG--
extra : amend_source : 44cd72c98044aa380a5d60c5dd4127364f9ef6b3
2014-11-21 09:58:29 -08:00
Gregory Szorc
49f7be9f8b Bug 1094303 - Move XPT buildlist into misc tier; r=glandium
buildlist invocations are slow and can occur in parallel since the
underlying program obtains a lock on the modified file.

Moving the XPT-related buildlist invocation from the serial libs tier to
the parallel misc tier decreased my no-op build time on OS X from 43.5s
to 37.0s.

--HG--
extra : rebase_source : 7d274024c401b1ecfbc771424a69eb487808fcbf
2014-11-05 09:20:35 -08:00
Vaibhav Agrawal
d6312a24e8 Bug 1089037 - Removing invalid mochitests and moving webapprt-content tests to a seperate "webapprtContent" folder in object directory. r=jmaher, marco 2014-11-13 12:30:00 +01:00
Gregory Szorc
e77cda14fc Bug 1098135 - Traverse directories with misc rules; r=glandium
When the misc tier was added, only directories with misc-associated
variables from moz.build were traversed. This patch adds a dummy
variable to moz.build whose presence will add the directory to the misc
tier.

This will enable us to aggressively convert existing libs:: rules
to the misc tier.

--HG--
extra : rebase_source : c5477010c7d87fafa512f4fbbf1d2b995e07ffbd
extra : amend_source : a54eee6254ef2d63ef6b247d45e38eda2ab88fef
extra : histedit_source : c0f3352e84ec18ca7b88571cd5f9c2a33ab8eda9
2014-11-12 21:59:22 -08:00
Joshua Cranmer
528101b1f4 Bug 910781 - add support for FINAL_TARGET_FILES; r=gps 2014-07-23 13:56:25 -04:00
Gregory Szorc
e97f72f3d1 Bug 1094302 - Update build system tests to cover moved tier; r=glandium
This fixes |make check| bustage on inbound.
2014-11-06 20:17:17 -08:00
Gregory Szorc
c24dd59ec5 Bug 1094302 - Move JS module installation into the misc tier; r=glandium
JS module installation performs simple file copying or preprocessing.
There is no reason it can't occur in parallel. Move it to the misc tier.

As part of this, I recognized that TESTING_JS_MODULES was assigned to a
tier. Since these files are managed by an install manifest, they don't
belong to any tier. So the tier is now listed as None.

--HG--
extra : rebase_source : 963f0813e43802c017837ce9d55f8e666decd76a
2014-11-05 09:47:14 -08:00
Mike Hommey
090834ccfd Bug 1094037 - Move EXTRA_COMPONENTS and EXTRA_PP_COMPONENTS to the misc tier. r=gps 2014-11-06 09:29:11 +09:00
Wes Kocher
fd1b7c1e19 Backed out changeset db93b3cbdc17 (bug 1094037) on a CLOSED TREE 2014-11-05 17:22:50 -08:00
Mike Hommey
c5ad432837 Bug 1093499 - Add a -C option to mach build. r=gps
The build system being what it currently is, there are various cases where one
wants something explicit, rather than the current autodetection.

For instance, one may want to run
  make -C $objdir chrome
instead of
  make -C $objdir/chrome
that mach build chrome currently invokes.

There are several such usecases that mach's autodetection makes harder, and
it's sometimes awkward when telling people, to debug their issues, to run
  make -C objdir something
and hear back that objdir doesn't exist or something along those lines,
because they took "objdir" literally.
2014-11-06 09:29:27 +09:00
Mike Hommey
636eec2f2a Bug 1094037 - Move EXTRA_COMPONENTS and EXTRA_PP_COMPONENTS to the misc tier. r=gps 2014-11-06 09:29:11 +09:00
Mike Hommey
18ccc42254 Bug 1094033 part 2 - Add a "misc" parallel tier where to move parts of the libs tier that can be moved. r=gps 2014-11-06 09:29:11 +09:00
Mike Hommey
6353f52bb4 Bug 1094033 part 1 - Consolidate how to add new tiers. r=gps 2014-11-06 09:29:11 +09:00
Mike Hommey
0bb4264fe7 Bug 1091383 - Move delayload logic entirely in moz.build frontend code. r=gps 2014-11-04 13:48:25 +09:00
Andrew Halberstadt
4125d6266d Bug 1092149 - Use LooseVersion instead of StrictVersion in |mach mercurial-setup| so release candidates work, r=gps 2014-10-31 15:09:39 -04:00
Nick Alexander
a4f15f29c8 Bug 1090599 - Upgrade in-tree jsmin to release-2.0.11. r=gps
This updates to release-2.0.11 (sha1: 04374472ed18) from
https://bitbucket.org/dcs/jsmin/.
2014-10-30 17:02:33 -07:00
Mike Hommey
d667f4bb59 Bug 1077148 part 4 - Add and use new moz.build templates for Gecko programs and libraries. r=gps
There are, sadly, many combinations of linkage in use throughout the tree.
The main differentiator, though, is between program/libraries related to
Gecko or not. Kind of. Some need mozglue, some don't. Some need dependent
linkage, some standalone.

Anyways, these new templates remove the need to manually define the
right dependencies against xpcomglue, nspr, mozalloc and mozglue
in most cases.

Places that build programs and were resetting MOZ_GLUE_PROGRAM_LDFLAGS
or that build libraries and were resetting MOZ_GLUE_LDFLAGS can now
just not use those Gecko-specific templates.
2014-10-30 13:06:12 +09:00
Mike Hommey
2a17803c46 Bug 1077148 part 1 - Define mozcrt in moz.build. r=gps
--HG--
rename : mozglue/build/Makefile.in => mozglue/crt/Makefile.in
rename : mozglue/build/fixcrt.py => mozglue/crt/fixcrt.py
2014-10-30 13:05:50 +09:00
Mike Hommey
bc89ac2f89 Bug 1090107 - Define stlport dependencies in moz.build. r=mshal 2014-10-29 13:29:42 +09:00
Nicholas Nethercote
bf89af2567 Bug 1080302 (part 3) - Convert -foo options to --foo in |mach run|. r=glandium. 2014-10-23 17:39:49 -07:00
Nicholas Nethercote
b3fe669873 Bug 1080302 (part 1) - Add support for --foo and /foo options where it's not already present. r=glandium. 2014-10-23 17:25:19 -07:00
Nicholas Nethercote
6705ab7753 Bug 1076446 (attempt 2) - Make the DMD test work on Windows. r=glandium. 2014-10-09 19:28:33 -07:00
Wes Kocher
353ba5fc78 Merge inbound to m-c a=merge 2014-10-24 15:05:02 -07:00
Richard Newman
da8a27c4ee Bug 1088788 - Fix build target for Eclipse projects. r=nalexander, DONTBUILD (NPOTB) 2014-10-24 11:06:48 -07:00
Wes Kocher
0fc643cb33 Merge inbound to m-c a=merge 2014-10-23 17:37:23 -07:00
Benoit Girard
b6f9b243d4 Bug 1062726 - Add ./mach ide [visualstudio,eclipse] command. r=gps
--HG--
extra : rebase_source : 6c0ed5227c59380722863be8ecc389d9a53fc0a0
2014-09-04 02:08:33 -04:00
Richard Newman
788ae8894c Back out inadvertent android_eclipse change from 4a19faedc32b (Bug 1070086). r=me, DONTBUILD on a CLOSED TREE (NPOTB) 2014-10-22 17:09:25 -07:00
Wes Kocher
9e6688bd5b Merge m-c to fx-team a=merge 2014-10-20 19:01:55 -07:00
Gregory Szorc
c4dc0ac8b9 Bug 1078007 - Update URL for Homebrew installer; rs=RyanVM
The installer URL moved upstream. Reflect that move.

DONTBUILD (NPOTB)

--HG--
extra : rebase_source : 1ab21c8ef8458db87a6594f1bfca439b386cc254
2014-10-20 09:12:50 -07:00
Wes Johnston
2da0f9c218 Bug 1070086 - Move download integration code to its own class. r=bnicholson 2014-10-20 12:24:49 -07:00
Edwin Flores
eaa54604a8 Bug 1072024 - Fix TestGMPCrossOrigin when run with |mach gtest| - r=ted 2014-10-14 11:04:59 +13:00
Mike Hommey
b9d972fbb4 Bug 1080375 - STATIC_LIBRARY_NAME doesn't need an explicit FORCE_STATIC_LIB. r=mshal 2014-10-10 17:09:10 +09:00
Ting-Yu Lin
c193bb1729 Bug 1088520 - Fix empty eclipse project generated on Linux. r=glandium
Use "Gecko" with captical letter 'G' for both project dir and the
project name in .project.
2014-10-24 03:11:00 +02:00
Carsten "Tomcat" Book
f22c011ab0 Backed out changeset 835fbe63da4a (bug 1076446) for perma failure in 10.8 mozilla-inbound debug test xpcshell 2014-10-24 12:32:38 +02:00
Nicholas Nethercote
0eef32c0e6 Bug 1079657 (follow-up) - Remove --mode=stress option from |mach run|. r=me.
DONTBUILD because this is NPOTB.

--HG--
extra : rebase_source : f2295ccffe59b0af6627169e96f98a8a755570e8
2014-10-08 18:20:07 -07:00
Mike Hommey
139046d56b Bug 1071568 - Only pass down templates to the sandbox context when calling moz.build templates. r=mshal
It's not entirely clear passing down all the metadata makes sense. On the
other hand, when creating the template execution sandbox, passing down
exports does assign the value for the exported variable in that execution
context. When that context is merged with the caller sandbox context, the
exported variable is reassigned, even if the value is not modified. Then,
if the caller sandbox itself reassigns the exported variable, it fails
because calling a template already did it once, unexpectedly.

Not passing down exported variables makes the template execution sandbox
never set those exported variables, so that they are not merged back. The
caller sandbox can then properly reassign the exported variable.
2014-10-09 10:14:26 +09:00
Nicholas Nethercote
c72cb48004 Bug 1074656 - Merge |mach debug| and |mach dmd| into |mach run|. r=gps.
--HG--
extra : rebase_source : a9da86cadae7fdbb0fe9e3931fb1163f4239527c
2014-10-08 15:12:02 -07:00
Nicholas Nethercote
fb69fa73f3 Bug 1077272 - Allow argument groups in mach commands. r=gps.
--HG--
extra : rebase_source : 478b305eedac6d30af748d80da408042aba48c14
2014-10-08 15:11:50 -07:00
Eric Rahm
e3149f012f Bug 806819 - Part 1: Remove FORCE_PR_LOG unified build restriction. r=gps 2014-10-08 13:17:27 -07:00
Gregory Szorc
a91aa652e8 Bug 1071012 - Extract Sphinx variables via AST reading; r=glandium
The in-tree Sphinx docs have been broken since bug 1041941 because
processing moz.build files outside their context doesn't work.
Specifically, templates aren't loaded (because this information usually
comes from a parent moz.build file). A new execution mode is needed.

I tried to implement a proper execution mode. However, I kept running
into walls. While we should strive for a proper execution mode, this can
be a follow-up, tracked in bug 1058359.

This patch implements extraction of Sphinx variables from ast walking.
It is extremely low-level and definitely a one-off. But it solves the
problem at hand: |mach build-docs| will work after this patch is
applied.

--HG--
extra : rebase_source : abd0a91a3efb24d3adfa19f4cd281ce5fd6d0915
extra : amend_source : c1b4f79224bab55e65a8c2b0f3103475281416c1
2014-10-07 10:36:27 -07:00
Bill McCloskey
46c57009ef Bug 930243 - Add a processType flag to chrome manifest directives (r=froydnj) 2014-10-07 11:46:24 -07:00
Mark Hammond
23ead7c6e4 Bug 1074507 - Avoid pre-filtering tests so we can have e10s-only tests. r=ted 2014-10-01 17:06:00 -04:00
Wes Kocher
159b48d0cf Merge m-c to inbound a=merge CLOSED TREE 2014-10-06 20:59:17 -07:00
Wes Kocher
5d7f3c7007 Backed out 5 changesets (bug 806819) for WinXP test failures on a CLOSED TREE
Backed out changeset 009ae35b0c67 (bug 806819)
Backed out changeset 5a57f87f5061 (bug 806819)
Backed out changeset f06cd735b5b3 (bug 806819)
Backed out changeset e25a2a8d4af4 (bug 806819)
Backed out changeset 70a167982c3f (bug 806819)
2014-10-06 16:32:50 -07:00
Mike Hommey
31a9d027d6 Bug 1076649 - Remove the '+' prefixing from mach commands with allow_all_arguments=True. r=gps
The reason to use '+' prefixing was to distinguish between options to the
mach command itself, and options that are passed down to whatever the
command does (like mach run passing down args to the built application).
That makes things unnecessarily awkward, and quite non-standard.

Instead, use standard '-' prefixing, and pass all the unknown arguments
down. If there is overlap between the known arguments and arguments supported
by the underlying tool (like -remote when using mach run), it is possible to
use '--' to mark all following arguments as being targetted at the underlying
tool.

For instance:
    mach run -- -remote something
would run
    firefox -remote something
while
    mach run -remote something
would run
    firefox something

As allow_all_arguments is redundant with the presence of a argparse.REMAINDER
CommandArgument, allow_all_arguments is removed. The only mach command with a
argparse.REMAINDER CommandArgument without allow_all_arguments was "mach dmd",
and it did so because it didn't want to use '+' prefixes.
2014-10-07 07:36:27 +09:00
Nick Alexander
a63ca8c787 Bug 1077381 - Follow-up: Try to fix Windows bustage. r=me
a=bustage on a CLOSED TREE

--HG--
extra : amend_source : c39a128f271f44e263d77f342665594ba161f933
2014-10-06 12:38:12 -07:00
Nick Alexander
3bbe719c31 Bug 1077381 - Encode generate_browsersearch verbose output as utf-8. r=gps
We need codecs for the print function and unicode_literals to let the
format() string stay undecorated.
2014-10-06 11:32:24 -07:00
Eric Rahm
6c9073397b Bug 806819 - Part 1: Remove FORCE_PR_LOG unified build restriction. r=gps
--HG--
extra : rebase_source : 004c828c1fd157fc0f13fd6a2ca85c264a34d60c
2014-10-06 13:06:55 -07:00
Nicholas Nethercote
d0767a756b Bug 1066680 (follow-up) - Unbreak |mach dmd|. r=me.
--HG--
extra : rebase_source : 3cfb38ea47653551c596487e3c51994797a1c733
2014-10-05 20:13:09 -07:00
Nicholas Nethercote
e7c6e0dc5f Bug 1044709 - DMD: emit JSON output and use Python for post-processing. r=mccr8.
--HG--
extra : rebase_source : ddc94d9be1ee0acc6dda30540defd5f40db0adcb
2014-09-02 20:34:58 -07:00
Wes Kocher
40b2127075 Merge m-c to inbound a=merge 2014-10-23 18:09:47 -07:00
Nicholas Nethercote
b3b573ee7b Bug 1076446 - Make the DMD test work on Windows. r=glandium.
--HG--
extra : rebase_source : 7cc8d3b18b0539ff170a98fa1c5706ff46e20d32
2014-10-09 19:28:33 -07:00
Ryan VanderMeulen
9e879e02d8 Merge fx-team to m-c. a=merge 2014-10-02 13:00:31 -04:00
Andrew Halberstadt
4d3fac0c51 Bug 1054809 - Add ability to open support files in gtests, r=ted
In moz.build:
TEST_HARNESS_FILES.gtest += ['foo']     # fopen('foo')
TEST_HARNESS_FILES.gtest.bar += ['foo'] # fopen('bar/foo')
2014-10-02 09:01:34 -04:00
Nick Alexander
e8066e326e Bug 1065306 - Post: Handle utf-8 files in DotProperties. r=gps 2014-10-01 23:23:30 -07:00
Nick Alexander
42a7aaca3d Bug 1065306 - Part 4: Write localized res/raw-*/browsersearch.json. r=mshal 2014-10-01 23:23:29 -07:00
Nick Alexander
74efebda0d Bug 1065306 - Part 3: Extract DotProperties helper. r=lucasr,mshal
The only substantive change here is to stop stripping the
'browser.suggestedsites.' prefix from each line when reading
region.properties.
2014-10-01 23:23:28 -07:00
Panos Astithas
e571a72e4b Bug 1066680 - mach run should provide an option to start without a profile. r=gps 2014-09-12 18:45:53 +03:00
Stephen Pohl
cf2ca1fd7c Mac v2 signing - Bug 1060562 - Update xpcshell-tests for the new v2 bundle structure on OSX. r=jmaher 2014-09-29 11:51:29 -07:00
Nick Alexander
c895290da3 Bug 1069648 - Add instrumentation manifests to moz.build. r=ted
These manifests are special in that they don't package their test files
into the test package.  Each test listed in an instrumentation manifest
serves as an identifier rather than a file.

--HG--
extra : rebase_source : 0321528a2dc380e57b824746efbcf61d295204a9
2014-09-26 11:44:58 -07:00
Nick Alexander
ac9ce94697 Bug 1070057 - Make TestResolver.resolve_tests filter by subsuite. r=ted
--HG--
extra : rebase_source : e04c903d40d5996ca28136bc9941dc74cd31ac9b
2014-09-26 11:44:57 -07:00
Mike Hommey
30749bbb89 Bug 1063437 - Remove MozbuildSandbox.normalize_path. r=gps 2014-10-02 09:14:08 +09:00
Mike Hommey
a98805beff Bug 1063437 - Use SourcePath smart type for sandbox includes. r=gps 2014-10-02 09:14:08 +09:00
Mike Hommey
24467333ae Bug 1063432 - Do type coercion on sandbox function arguments. r=gps 2014-10-02 09:14:08 +09:00
Mike Hommey
c5cfe825f5 Bug 1063414 - Make DIRS relative to the file they were added from. r=gps 2014-10-02 09:14:07 +09:00
Mike Hommey
1293137207 Bug 1063414 - Move sandbox execution stack to context.Context. r=gps 2014-10-02 09:14:07 +09:00
Mike Hommey
8844c6aea2 Bug 1063414 - Add infrastructure to follow what the current file being processed is in a Context. r=gps 2014-10-02 09:14:07 +09:00
Mike Hommey
2ff412e6fe Bug 1062221 - Change how DIRS and TEST_DIRS are handled. r=gps
Up to now, DIRS and TEST_DIRS were dumb values. This change makes them
a list of ContextDerivedValues, and handles the fact that some types of
paths are relative to the current source directory and others to the
topsrcdir.

This also makes us one step closer to fixing bug 991983.
2014-10-02 09:14:07 +09:00
Mike Hommey
0412683b7d Bug 1062221 - Replace add_tier_dir with DIRS. r=gps 2014-10-02 09:14:07 +09:00
Mike Hommey
29a2985c25 Bug 1062221 - Add a TypedList type and refactor mozbuild.util lists. r=gps 2014-10-02 09:14:06 +09:00
Nicholas Nethercote
3ab90f5a13 Bug 1072778 (part 2) - Use '-' instead of '_' in |mach dmd| flags. r=erahm.
DONTBUILD because |mach dmd| is NPOTB.
2014-09-25 17:20:12 -07:00
Nicholas Nethercote
f12878aa71 Bug 1072778 (part 1) - Make |mach dmd| work on Linux. r=erahm.
--HG--
extra : rebase_source : 72b0f570dfacc694fc00fd2ec571c57747c8fe38
2014-09-25 17:19:53 -07:00
Mike Hommey
4de8112911 Bug 837846 - Respect MOZ_MAKE_FLAGS when running make commands from mach. r=mshal 2014-09-26 07:35:28 +09:00
Ryan VanderMeulen
79910dd5bf Merge m-c to inbound. a=merge
CLOSED TREE
2014-09-24 16:08:33 -04:00
Carsten "Tomcat" Book
803e7e1b08 Backed out changeset aa8972afcbe5 (bug 1065306) 2014-09-24 08:30:34 +02:00
Carsten "Tomcat" Book
5eb8e199bc Backed out changeset c4ecd64d8b95 (bug 1065306) 2014-09-24 08:30:30 +02:00
Nick Alexander
48a60fa21f Bug 1065306 - Part 4: Write localized res/raw-*/browsersearch.json. r=mshal 2014-09-23 09:52:47 -07:00
Nick Alexander
ff5d5a9d09 Bug 1065306 - Part 3: Extract DotProperties helper. r=lucasr,mshal
The only substantive change here is to stop stripping the
'browser.suggestedsites.' prefix from each line when reading
region.properties.
2014-09-23 09:52:46 -07:00
Wes Kocher
cdeb7299d2 Merge m-c to inbound a=merge 2014-09-23 16:48:23 -07:00
Mike Hommey
00f2cd8287 Bug 837846 - Fix MOZ_MAKE_FLAGS handling for client.mk. r=mshal
After bug 762358 mk_add_options MOZ_MAKE_FLAGS was simply ignored in client.mk
processing. At the same time, mach environment was expecting a list of options
while the mozconfig reader returned a single string, so straighten this up at
the same time.
2014-09-24 07:56:58 +09:00
Wes Kocher
2a27a561af Merge m-c to inbound a=merge 2014-09-22 20:05:22 -07:00
Dave Townsend
fa734afbbd Bug 1035512: Add a new common JS testing harness based on the mochitest test runner. r=gps, ted, erikvold, jmaher 2014-09-22 11:08:06 -07:00
Eric Rahm
0d6799d21b Bug 1058851 - Add ability to launch with DMD enabled with |mach dmd|. r=njn, r=mshal
--HG--
extra : rebase_source : cef900604d004ea4847d979aeac4c2b5e7e0869d
2014-08-26 15:25:18 -07:00
Nick Alexander
e527d34eaf Bug 1069569 - Complain about missing test files for all suites. r=mshal
--HG--
extra : rebase_source : 55d571b413d6080f8fdb1e56b419c078d66f31e7
2014-09-19 11:19:37 -07:00
Ted Mielczarek
6f25a3ee9c bug 1052744 - Add mozbuild.makeutil.write_dep_makefile. r=gps 2014-08-26 11:55:47 -04:00
Nathan Froyd
272ec74032 Bug 1062518 - ensure that |mach python-test| considers $PWD when finding tests; r=mshal 2014-09-15 13:25:41 -04:00
Nathan Froyd
6db68aaf03 Bug 1067499 - make build error for misspelled variables more helpful; r=mshal 2014-09-15 13:23:53 -04:00
Nathan Froyd
51efcd8004 Bug 976733 - part 3 - convert testing/mozbase/ to use TEST_HARNESS_FILES; r=gps 2014-08-29 11:03:11 -04:00
Nathan Froyd
071791c0ea Bug 976733 - part 2 - add TEST_HARNESS_FILES and convert testing/mochitest/ to use it; r=gps 2014-08-15 14:28:26 -04:00
Nathan Froyd
0ce8a6bf9c Bug 976733 - part 1a - add test for EXTRA_JS{_PP,}_MODULES output; r=mshal 2014-09-15 13:31:25 -04:00
Nathan Froyd
ef62a1db88 Bug 976733 - part 1 - add walking functions to HierarchicalStringList; r=mshal
Having to walk over elements and strings of HierarchicalStringList with
an external recursive function is un-Pythonic and adds unnecessary
obfuscation to several tasks.  Add a walk() function to
HierarchicalStringList, modeled on os.walk(), to handle these cases more
directly.
2014-08-14 13:25:33 -04:00
Alessio Placitelli
77aeb04740 Bug 928397 - Enable xpcshell-test debugging on Windows platforms and default debugger detection. r=ted.mielczarek 2014-07-02 13:52:00 +02:00
Mike Hommey
c9e31ff915 Bug 1063860 - Refresh some of the variable/tier associations in mozbuild.context. r=gps 2014-09-11 12:12:18 +09:00
Gregory Szorc
1e5701ab22 Bug 1061684 - Normalize path separators in JAR paths; r=mshal
The forward slash appears to be the standard path separator in zip/JAR
files. Accept back slashes when adding paths to a JAR.

--HG--
extra : rebase_source : bd94eab36b347006e65952d99b53dd397e2ca758
extra : amend_source : 2cefd887d8bb5d989fafb398a3464429ac376e2e
2014-09-03 10:42:34 -07:00
Ryan VanderMeulen
672fb4d000 Merge fx-team to m-c. a=merge 2014-09-05 11:54:57 -04:00
Nick Alexander
872873401f Bug 1040945 - Part 2: Copy native libraries by name in AndroidEclipse backend make target. r=rnewman 2014-09-04 20:11:15 -07:00
Wes Kocher
e9463cd732 Merge m-c to fx-team a=merge 2014-09-04 18:58:12 -07:00
Nick Alexander
7a8dd29aa3 Bug 1062566 - Update to Java 1.7 and bump SDK version in AndroidEclipse build backend. r=rnewman
DONTBUILD NPOTB
2014-09-03 14:24:49 -07:00
Arnaud Sourioux
afd69a9841 Bug 1057871 - Print full path of mozconfig file used on 'mach ./configure' when error in mozconfig throws an exception r=gps 2014-09-03 12:14:00 +02:00
Carsten "Tomcat" Book
f3a49ddd8d Backed out changeset cfdcf950e403 (bug 105871) for wrong bug number in commit 2014-09-04 09:53:58 +02:00
Arnaud Sourioux
3a1086521b Bug 105871 - Print full path of mozconfig file used on 'mach ./configure' when error in mozconfig throws an exception. r=gps 2014-09-03 12:14:00 +02:00
Mike Hommey
22206d6d18 Bug 1059129 - Move the addition of stdc++compat to templates. r=mshal 2014-09-04 09:05:12 +09:00
Mike Hommey
a653121671 Bug 1059113 - Use templates for shared libraries and frameworks. r=gps
Also force to use the existing template for XPCOM components.
2014-09-04 09:04:45 +09:00
Mike Hommey
37614d5548 Bug 1059126 - Always allow to add a StrictOrderingOnAppendList to another. r=gps 2014-09-03 14:19:55 +09:00
Mike Hommey
fc99c53ae5 Bug 1041941 - Use templates for programs, simple programs, libraries and C++ unit tests. r=gps 2014-09-03 14:10:54 +09:00
Benoit Girard
23436df314 Bug 1060210 - Automatically import new CppEclipse project into the workspace . r=gps 2014-09-03 15:12:18 -04:00
Benoit Girard
1cb0f6a215 Bug 1057986 - Change the location of the eclipse workspace to be along side the srcdir. r=gps 2014-09-03 16:09:36 -04:00
Joshua Cranmer
44f49766fc Bug 1060198, part 2: Move other IS_GYP_DIR rules to gyp_reader.py, r=glandium.
--HG--
extra : rebase_source : 5ad6eae63688f5582568f470b7266b0f7ebc8b6c
2014-09-02 23:45:26 -05:00
Nathan Froyd
610893e3cf Bug 1056862 - make |mach python-test| work even if run from outside the srcdir; r=gps
DONTBUILD because NPOTB
2014-08-21 11:03:26 -04:00
Andrew Halberstadt
3ae82623e4 Bug 1051809 - Package and upload code coverage data to build directory if code coverage is enabled, r=gps 2014-08-27 13:32:42 -04:00
Ahmed Kachkach
e37544ef40 Bug 1057694 - Command suggestions in mach. r=gps 2014-08-26 16:17:00 +02:00
Mathias De Maré
cc7ac9b67a Bug 680009 - Flash taskbar icon on Windows when 'mach build' finishes. r=gps 2014-08-30 09:48:37 +02:00
Joshua Cranmer
2dd3425d77 Bug 1059769 - Add LIBRARY_DEFINES to moz.build, r=glandium. 2014-09-04 23:38:54 -05:00
Mike Hommey
2a08a8e980 Bug 1062668 - Add a timestamp to the message mach prints to indicate the end of the build. r=gps 2014-09-05 10:27:59 +09:00
Matthew Gregan
8ac6f4a39d Bug 1058297 - Allow opting-out of "build complete" spam. r=gps 2014-08-25 15:50:00 +12:00
Wes Kocher
6a270aca67 Merge m-c to inbound a=merge 2014-08-25 17:25:09 -07:00
Gregory Szorc
0d7226903d Bug 1058036 - Ensure dependency isn't lost when ORing InstallManifest; r=glandium
The install manifest processor starts with an empty InstallManifest and
uses |= to "concatenate" instances. It became pretty obvious when
developing some patches that add more preprocessed files to install
manifests that the source install manifest dependency was getting
lost during the |= operation. This patch fixes it.

The solution is not ideal performance wise. But slightly worse
performance (only after config.status, however) is better than
clobbers.

A test has been added to ensure this doesn't regress.

--HG--
extra : rebase_source : 848aebbbc935ce2bca2d3fcc85d1df534e734e0d
2014-08-24 20:19:55 -04:00
Kartikaya Gupta
d9e1cb5087 Bug 1057387 - Remove incorrect documentation for the run/debug commands. r=gps 2014-08-25 19:39:55 -04:00
Roshan M Regy
11eb2f8890 Bug 1057305 - Make mach bootstrap work with elementary os; r=gps
DONTBUILD (NPOTB)

--HG--
extra : amend_source : 40d5633b7099dd0aba9b6933d12aa4d579179694
2014-08-22 16:54:48 +05:30
Joshua Cranmer
558220bd54 Bug 1057708 - The wrong topsrcdir is used when verifying existence of LOCAL_INCLUDES, r=mshal 2014-08-25 09:40:58 -05:00
Mike Hommey
c936d6d87d Bug 1041941 - Add support for templates in moz.build. r=gps 2014-08-24 09:11:05 +09:00
Nathan Froyd
631962a036 Bug 1055281 - check for existence of paths in LOCAL_INCLUDES in moz.build; r=mshal 2014-08-20 11:51:33 -04:00
Sylvestre Ledru
53e13cf766 Bug 1051987 - Remove useless option which wasn't supposed to go in the commit
--HG--
extra : amend_source : 83ccc90a5ee1b0a41640d2b1451208add8dc2c5d
2014-08-18 15:33:51 +02:00
Sylvestre Ledru
a82b0c1825 Bug 1051987 - By default, hide the disabled commands. They are eating the display for no value. $ ./mach -v help bring them back. r=jmaher
From 7c2de97792113d3415acf2cfa1591fa05c5b07a8 Mon Sep 17 00:00:00 2001
 display for no value. $ ./mach -v help bring them back.
---
 build/mach_bootstrap.py        |  2 +-
 python/mach/mach/dispatcher.py | 14 +++++++-------
 python/mach/mach/main.py       |  3 +++
 3 files changed, 11 insertions(+), 8 deletions(-)
2014-08-11 18:31:24 +02:00
Mike Hommey
d0c653396e Bug 1062219 - Don't build build/clang-plugin as an external directory. r=jcranmer 2014-09-04 17:44:01 +09:00
Mike Hommey
e82f0c3fce Bug 1053140 part 3 - Separate out sandbox infrastructure from moz.build variables storage. r=gps
--HG--
rename : python/mozbuild/mozbuild/frontend/sandbox_symbols.py => python/mozbuild/mozbuild/frontend/context.py
rename : python/mozbuild/mozbuild/test/frontend/test_sandbox_symbols.py => python/mozbuild/mozbuild/test/frontend/test_context.py
2014-08-15 13:52:18 +09:00
Mike Hommey
545a37b94f Bug 1053140 part 2 - Add a test for exported variable override. r=gps 2014-08-15 13:52:18 +09:00
Mike Hommey
1d975171da Bug 1053140 part 1 - Add a default_dict-like container, with a default_factory taking the key as argument. r=gps 2014-08-15 13:52:18 +09:00
Mike Hommey
dd1a8b4df8 Bug 1053097 - Delay the gathering of python dependencies for the build backend. r=gps 2014-08-15 13:52:18 +09:00
Mike Hommey
e16a30ebc8 Bug 1053085 part 2 - Move config environment fiddling out of MozbuildSandbox initialization. r=gps 2014-08-15 13:52:17 +09:00
Mike Hommey
7f451f989d Bug 1053085 part 1 - Rely on the config environment for TOPSRCDIR and TOPOBJDIR within frontend code. r=gps 2014-08-15 13:52:17 +09:00
Mike Hommey
c44b81f3c3 Bug 1053080 - Improve mozbuild.util.memoize and add memoized_property. r=gps 2014-08-15 13:52:17 +09:00
Ted Mielczarek
3f3545c38e bug 1050922 - Add an update method to FlagsFactory.Flags. r=gps 2014-08-14 12:12:04 -04:00
Ting-Yu Lin
3435f82b15 Bug 1049263 - Do not report ccache stats unless ccache was used. r=glandium 2014-08-08 03:06:00 -04:00
Mike Hommey
6b738fec38 Bug 1053072 - Cleanup metadata in the moz.build reader. r=gps
- parent and var were used for TOOL_DIRS/TEST_TOOL_DIRS, which were removed in
  bug 1043802.
- tier metadata was not really used, and tiers are going to go away soon
   anyways.
2014-08-14 07:15:44 +09:00
Mike Hommey
bd058eca27 Bug 1053071 - Simplify EXTERNAL_SOURCE_DIR handling. r=gps
As handled in configure.in, EXTERNAL_SOURCE_DIR is a single directory for
external sources, and more specifically, comm-central. There is no need
to handle it as a list in the moz.build emitter.

At the same time, avoid checking the external sources for every moz.build,
and bind it to a config environment.
2014-08-14 07:15:43 +09:00
Mike Hommey
f87114e885 Bug 1053070 - Output a nicer error when reassigning a variable in moz.build. r=gps 2014-08-14 07:15:40 +09:00
Mike Hommey
f7429125b0 Bug 1053069 - Make mozbuild.util.ReadOnlyDefaultDict raise an exception on update() and del. r=gps 2014-08-14 07:15:38 +09:00
Gregory Szorc
02603c4738 Bug 1052526 - Treat appending None to List as empty list; r=glandium
As a special exception, we change List's + and += operators to treat
"+ None" and "+= None" as "+ []" and "+= []" respectively.

This is a hack to make moz.build files simpler so they don't have to
perform "is x" checks before appending x.

While I was here, I fixed the implementation of List.__add__ to return a
List instead of list.

--HG--
extra : rebase_source : e61db4be4cf8144b092609d3baf84c372b9cf9a0
extra : amend_source : dfabc00765582764426f7cf74e79354a0bfb0824
2014-08-12 09:23:33 -07:00
Birunthan Mohanathas
8031546dc8 Bug 1049981 - Make error for non-existent files listed in SOURCES less ambiguous. r=ted 2014-08-10 11:13:38 -07:00
Sylvestre Ledru
ac9d156829 Bug 1050715 - Update the description of the various tests targed proposed by './mach help' r=jmaher
--HG--
extra : rebase_source : 29019a02711ffce5c148787517051855259b6446
2014-08-09 15:37:29 +02:00
Ehsan Akhgari
5a8158b74e Bug 1043390 - Don't use getSourceRepo on local builds; r=glandium 2014-08-07 21:29:39 -04:00
Joshua Cranmer
a043c5f64b Bustage fix for bug 1035599, r+a=bustage-fix for CLOSED TREE
--HG--
extra : rebase_source : 9fc6f0cc80749f869abf3124b6fecd490b023d1c
extra : amend_source : a53044cb583fb213903092848faccc087bab6289
2014-08-07 20:16:13 -05:00
Joshua Cranmer
ae0877aba9 Bug 1035599: Merge the mozilla-central and comm-central objdir, r=gps
This change merges mozilla-central and comm-central into having a single
topobjdir file but retaining two topsrcdirs (and two build systems). This state
is hopefully only the first part of a series of changes that eliminate the
comm-central build system partial clone completely.

--HG--
extra : rebase_source : 02aa2c4551df405d9783ac85cc41fe90b67bf057
extra : amend_source : d3cc677d59603648165bf65afa28413f2c40b2fd
2014-08-07 19:27:58 -05:00
Arnaud Bienner
f9674f5afd Bug 1047823 - Use a default value when getting CPPFLAGS from environment if they aren't set. r=glandium 2014-08-05 20:25:46 +02:00
Mike Hommey
1f543fad14 Bug 1047267 - Remove the trigger hacks added in bug 1043344. r=gps 2014-08-07 14:21:09 +09:00
Mike Hommey
19e8ecfce2 Bug 1047267 - Allow to reference libraries from third-party build systems in USE_LIBS. r=gps 2014-08-07 14:20:38 +09:00
Mike Hommey
0fdbce28ae Bug 1047267 - Add a memoize decorator to the mozbuild module. r=gps 2014-08-07 14:20:37 +09:00
Mike Hommey
1d5475041b Bug 1049281 - Remove static dirs handling, now that there aren't any. r=gps
Also do some overdue cleanup from the removal of parallel and tools dirs
2014-08-07 02:58:53 +09:00
Mike Hommey
1aa0b26726 Bug 1048799 - Improve mach build notification center errors. r=gps 2014-08-07 02:58:46 +09:00
Mike Hommey
8abd4db10f Bug 1045783 - Move OS_LIBS from a passthrough to a more fully supported variable. r=gps 2014-08-06 07:25:05 +09:00
Mike Hommey
9e61b58eaf Bug 1048702 - Error out when trying to add a string to a list in moz.build. r=gps 2014-08-06 07:24:27 +09:00
Ting-Yu Lin
42770334d1 Bug 947256 - Report ccache hit rate at the end of the build; r=gps
This patch add a line at the end of the build like follows:
ccache (direct) hit rate: 98.7%; (preprocessed) hit rate: 0.5%; miss rate: 0.8%

--HG--
extra : rebase_source : 9c814745516d7b8b0db2056a1fa0df540a5a239a
2014-07-30 02:23:00 -07:00
Ian Neal
1c7e2a8ded Bug 1047702 - recursivemake's scan for Makefiles with XPI_PKGNAME or INSTALL_EXTENSION_ID should take account of comm-central r=glandium 2014-08-02 02:52:52 +01:00
Jonathan Griffin
c0acc260fa Bug 1046991 - Fix error message when no build is present for mochitest-plain, r=ahal, DONTBUILD because NPOTB 2014-08-01 10:59:05 -07:00
Mike Hommey
40883c4328 Bug 1045969 - Use paths relative to root topobjdir for backend files for similar reasons as in bug 1045329. r=mshal
and paths relative to the "local" topobjdir for linkage.
2014-08-01 15:56:16 +09:00
Nathan Froyd
f4b3ba5577 Bug 1044162 - part 2 - remove JS_MODULES_PATH from the build system; r=mshal 2014-07-25 14:37:22 -04:00
Nathan Froyd
4246e6b6ea Bug 1044162 - part 1 - make EXTRA_{PP_,}JS_MODULES communicate their installation path; r=mshal
This patch makes EXTRA_{PP_,}JS_MODULES similar in functionality to
TESTING_JS_MODULES: we indicate the path relative to
$(FINAL_TARGET)/modules with an appropriate hierarchy of paths.
2014-07-25 13:40:07 -04:00
Nathan Froyd
8921315aa5 Bug 1044162 - part 0c - add a way to recurse over the 'directory' elements of a hierarchy; r=mshal
We're going to build on top of INSTALL_TARGETS for the next patch, and
it's easiest to do so if we can look at the 'directories' in the
hierarchy, rather than the individual strings.
2014-07-25 14:35:02 -04:00
Nathan Froyd
68165a1b87 Bug 1044162 - part 0b - add __{get,set}item__ to HierarchicalStringList; r=mshal
I am slightly surprised that we haven't needed this before, but the
motivating idea behind this is wanting to do:

VARIABLE.with.some["non-pythonic-identifier"] += ...

It seems unfortunate that the behavior is completely overridden by
subclasses, but I don't see a good way around that.
2014-07-25 14:29:57 -04:00
Nathan Froyd
6eea12bf47 Bug 1044162 - part 0a - make additions to EXTRA_JS_MODULES use += instead of =; r=mshal
Straight assignments to HierarchicalStringList, which we'll change
EXTRA_JS_MODULES to in a later patch, don't work.  This change, in
addition to making things work as expected later on, also is more
consistent with existing practice.
2014-07-25 13:50:55 -04:00
Mike Hommey
7f22e814ef Bug 1045329 - Use paths relative to the root topobjdir for the compile targets. r=gps
While most environments are using the root topobjdir, some can be using a
different path. This happens for comm-central files. For those, the compile
target needs to have paths relative to the root topobjdir instead of relative
to the comm-central topobjdir.
2014-07-30 11:00:54 +09:00