Commit Graph

269 Commits

Author SHA1 Message Date
Gregory Szorc
d0846488b5 Bug 784841 - Part 8: Capture and save moz.build tree state; r=ted 2013-01-29 06:24:24 -08:00
Gregory Szorc
8201fdebec Bug 784841 - Part 7: Implement recursive make backend; r=ted 2013-01-29 06:24:24 -08:00
Gregory Szorc
dd6cafb53c Bug 784841 - Part 6: Move some functions from ConfigStatus to mozbuild; r=ted
--HG--
rename : build/tests/unit-ConfigStatus.py => python/mozbuild/mozbuild/test/backend/test_configenvironment.py
2013-01-29 06:24:24 -08:00
Gregory Szorc
1195db73fe Bug 818789 - |mach build| can now control what is built; r=glandium
DONTBUILD (NPOTB)
2013-01-29 10:20:06 -08:00
Ryan VanderMeulen
9e48ac7478 Merge m-c to inbound. 2013-01-24 21:09:59 -05:00
Mike Hommey
40a41c7a8a Bug 834228 - Force a stage-package to run before buildsymbols on universal builds. r=ted,gps
Also, always strip and elfhack executables, so that running make package after
a PKG_SKIP_STRIP=1 stage-package does strip ; but disable both for l10n-repacks
and unpack.
2013-01-25 00:40:13 +01:00
Mike Hommey
04ca6c04b2 Bug 834176 - Use NON_OMNIJAR_FILES value in the new packager. r=gps 2013-01-25 00:38:47 +01:00
Zuhao(Joe) Chen
946bd3900d Bug 831168 - Mach should handle a corrupted warnings database. r=gps 2013-01-24 18:10:27 -05:00
Mike Hommey
38f24ce56c Bug 833946 - Don't scan the entire tree for a root manifest in the packager. r=gps 2013-01-23 23:49:25 +01:00
Mike Hommey
0ab3e81697 Bug 780561 - Unit tests for the new packager code. r=ted,r=gps 2013-01-23 11:23:14 +01:00
Mike Hommey
d56548c34f Bug 780561 - Import new packager code. r=gps 2013-01-23 11:23:14 +01:00
Jeff Hammel
9b6bcd9c0f Bug 831381 - ASCII vs unicode error in mozconfig.py _parse_loader_output();r=gps
--HG--
extra : rebase_source : 5db4d95239c9bde3228bd0820fb1147d7b52f437
2013-01-24 14:50:27 -08:00
Gregory Szorc
9a1c108ce5 Bug 808280 - Remove unused imports from mozconfig.py; r=ted
By preventing the import of pymake, multiprocessing is no longer
imported and BSDs should no longer choke when trying to import it.

DONTBUILD
2013-01-17 11:02:16 -08:00
Gregory Szorc
26636b8d65 Merge mozilla-central into build-system 2013-01-16 12:37:21 -08:00
Gregory Szorc
6fec0d866a Bug 784841 - Part 3: Implement sandbox to data translation layer; r=ted,glandium
This patch takes MozbuildSandbox instances emitted from BuildReader and
converts them to data structures.
2013-01-15 22:21:23 -08:00
Gregory Szorc
fd5055803b Bug 784841 - Part 2: Implement sandboxing for Python build files; r=ted,glandium
This is the beginning of Mozilla's new build system.

In this patch, we have a Python sandbox tailored for execution
of Python scripts which will define the build system. We also have a
build reader that traverses a linked set of scripts.

More details are available in the thorough README.rst files as part of
this patch.
* * *
Bug 784841 - Part 2b: Option to not descend into child moz.build files; r=ted
2013-01-15 22:21:21 -08:00
Gregory Szorc
86668a163d Bug 784841 - Part 1: Create generic container classes; r=jhammel
We create some specialized dicts that will be used in later patches.
2013-01-15 22:21:18 -08:00
Jeff Hammel
d6aea61667 Bug 829664 - make check fails on mozbuild/test/test_mozconfig.py with MOZCONFIG set;r=gps
--HG--
extra : rebase_source : 528f17303eaf11fe92f430c79b21a410aac50251
2013-01-15 12:54:20 -08:00
Ms2ger
0c748a1319 Merge mozilla-central into build-system
--HG--
rename : content/html/content/public/nsHTMLCanvasElement.h => content/html/content/public/HTMLCanvasElement.h
rename : content/html/content/src/nsHTMLCanvasElement.cpp => content/html/content/src/HTMLCanvasElement.cpp
2013-01-06 11:58:19 +01:00
Ms2ger
2971a56b4b Merge mozilla-central into build-system 2013-01-04 21:21:29 +01:00
Chris Peterson
edf32019c2 Bug 826120 - mach's warning parser should not stop at first '['. r=gps
--HG--
extra : rebase_source : b752099f4f6da4ea05220f8120a5518ee39994ed
2013-01-02 16:33:46 -08:00
Gregory Szorc
486b6d72a9 Bug 818646 - Add mozbuild Python tests to |make check|; r=ted 2012-12-21 12:43:46 -08:00
Gregory Szorc
8821ce28f8 Bug 818777 - Switch to NamedTemporaryFile from mozfile; r=ted
This version works with Windows.
2012-12-20 16:11:35 -08:00
Nicholas Nethercote
711c752871 Bug 825820 - Call WarningsDatabase.prune at the end of Build(). r=gps.
--HG--
extra : rebase_source : aefe3d3e1e3f5edacbb83bb0c44031c1cfb200a1
2013-01-02 17:20:47 -08:00
Richard Newman
29e53949c6 Bug 820179 - Mach command for packaging. r=gps 2012-12-11 11:42:11 -08:00
Gregory Szorc
a2f464a439 Bug 818656 - Normalize paths when loading mozconfigs; r=glandium
DONTBUILD (NPOTB)
2012-12-05 22:47:35 -08:00
Gregory Szorc
aeb01bc5bd Bug 803400 - Add clobber mach command; r=glandium
DONTBUILD (NPOTB)
2012-12-05 22:46:01 -08:00
Gregory Szorc
1045fbedcf Bug 818545 - Gracefully handle errors when loading mozconfigs; r=glandium
DONTBUILD (NPOTB)
2012-12-05 14:34:14 -08:00
Gregory Szorc
effb7c4ec4 Bug 818366 - Ability to pass through file descriptors to child processes; r=jhammel 2012-12-05 14:22:58 -08:00
Gregory Szorc
b33427cf95 Bug 818554 - Handle empty variables when parsing mozconfig output; r=glandium
DONTBUILD (NPOTB)
2012-12-05 11:20:59 -08:00
Gregory Szorc
1f8fb33d9c Bug 818543 - Define topsrcdir in mozbuild evaluation environment; r=glandium
DONTBUILD (NPOTB)
2012-12-05 10:20:42 -08:00
Gregory Szorc
cf31c1b995 Bug 808357 - Part 2: Implement mozconfig finding and loading in Python; r=glandium 2012-12-04 22:02:06 -08:00
Gregory Szorc
69b758cb78 Bug 808357 - Part 1: Split mozconfig code into own Python module; r=glandium
--HG--
rename : python/mozbuild/mozbuild/base.py => python/mozbuild/mozbuild/mozconfig.py
2012-12-04 22:02:03 -08:00
Benedict Singer
d431f5b098 Bug 794180 - Rich comparison operators instead of __cmp__; r=gps
DONTBUILD (NPOTB)

--HG--
extra : rebase_source : ae42b4711af58fdc04a55e00f3454c3825c1b311
2012-11-30 15:36:27 -05:00
Gregory Szorc
96087ea75a Bug 807974 - Handle make errors more gracefully; r=jhammel
We now return the status code from executed processes. The API to
require a successful status code has been changed from ignore_errors to
ensure_exit_code. The build mach command no longer spews a stack trace
if make fails.

DONTBUILD (NPOTB)
2012-11-06 17:01:08 -08:00
Gregory Szorc
a015660155 Bug 808346 - Don't scan sys.path to discover mach commands; r=jhammel
All mach modules are now explicitly listed in the mach driver.

--HG--
rename : python/mozbuild/mach/commands/build.py => python/mozbuild/mozbuild/mach_commands.py
2012-11-06 17:00:19 -08:00
Gregory Szorc
47aa1a9366 Bug 808336 - Part 2: Discover mach settings providers via decorators; r=jhammel
With this patch, mach is now decoupled from the build system and is
truly a generic command dispatching framework.
2012-11-06 16:58:13 -08:00
Gregory Szorc
203a9e64f9 Bug 808336 - Part 1: Refactor mach command handler management; r=jhammel
Previously we were tighly coupled with MozbuildObject. This was not in
the spirit of mach being a generic tool. Now, instead of passing multiple
arguments to __init__ of the class providing the mach command we either
pass 0 or 1. The number of arguments is detected when processing the
@CommandProvider decorator. The optional argument is a named tuple
containing mach run-time state.

Capturing of mach command provider information is now captured in a
class (as opposed to an anoymous tuple). We also capture these in a rich
data structure which is passed as part of the run-time data to the
command provider class. This allows mach commands to inspect the mach
environment.

Mach decorators have been moved to mach.decorators. mach.base is
reserved for generic mach data/container classes.

Existing mach command classes derived from MozbuildObject have been
replaced with either object or mozbuild.base.MachCommandBase. This
latter class translates the mach context instance passed to __init__
into the constructor arguments for MozbuildObject.__init__.

Support for registering function handlers with mach has been removed.
All handlers must be inside classes.

--HG--
rename : python/mach/mach/base.py => python/mach/mach/decorators.py
2012-11-06 16:57:41 -08:00
Gregory Szorc
d52cbd4f2e Bug 800633 - Clean up references to code moved out of mozbuild; r=jhammel
DONTBUILD (NPOTB)
2012-10-11 17:13:18 -07:00
Ms2ger
733aa7044b Bug 799648 - Followup: Remove a line accidentally left in; r=gps (NPOTB, DONTBUILD) 2012-10-11 21:47:11 +02:00
Gregory Szorc
a9eb0b06d7 Bug 799648 - Part 4: Temporarily disable settings file integration; r=jhammel
DONTBUILD (NPOTB)
2012-10-10 11:09:21 -07:00
Gregory Szorc
437679b76b Bug 799648 - Part 3: Move config module from mozbuild to mach; r=jhammel
--HG--
rename : python/mozbuild/mozbuild/config.py => python/mach/mach/config.py
rename : python/mozbuild/mozbuild/test/test_config.py => python/mach/mach/test/test_config.py
2012-10-10 11:08:10 -07:00
Gregory Szorc
194f8b0246 Bug 799648 - Part 2: Move mozbuild's log manager into mach; r=jhammel
--HG--
rename : python/mozbuild/mozbuild/logger.py => python/mach/mach/logging.py
rename : python/mozbuild/mozbuild/test/test_logger.py => python/mach/mach/test/test_logger.py
2012-10-10 11:08:09 -07:00
Gregory Szorc
51818ea64b Bug 799648 - Part 1: Move process execution and logging methods into Mach mixin classes; r=jhammel 2012-10-10 11:08:09 -07:00
Gregory Szorc
ca38f7a4a6 Bug 795427 - Part 3: Print more user friendly error messages; r=jhammel 2012-10-10 11:08:09 -07:00
Gregory Szorc
2c1dced77a Bug 799291 - Part 3: Move mozbuild.testing into testing/; r=jhammel
--HG--
rename : python/mozbuild/mozbuild/testing/test.py => testing/moztesting/util.py
2012-10-10 11:08:09 -07:00
Gregory Szorc
360a79dcd2 Bug 799291 - Part 2: Remove "test" command from mach; r=jhammel
The command was practically worthless and will likely be reborn as a
generic "run a test by specific a path or special name" command. But,
that requires a more intelligent build system first.
2012-10-10 11:08:09 -07:00
Gregory Szorc
28c7dd206c Bug 799291 - Part 1: Move mach commands for test running into test runners; r=jhammel
The code interacting with the test runners now resides in closer
proximity to the code it is invoking. We also purge testing
functionality from mozbuild, which is where it never really belonged.

--HG--
rename : python/mozbuild/mozbuild/testing/reftest.py => layout/tools/reftest/mach_commands.py
rename : python/mozbuild/mozbuild/testing/mochitest.py => testing/mochitest/mach_commands.py
rename : python/mozbuild/mozbuild/testing/xpcshell.py => testing/xpcshell/mach_commands.py
2012-10-10 11:08:09 -07:00
Masatoshi Kimura
de945ec757 Bug 795670 - Don't raise exception on convertion failure. r=gps DONTBUILD (NPOTB) 2012-10-07 16:30:13 -07:00
Gregory Szorc
d1f15571d1 Bug 794509 - Part 2: Move mach command modules into a mach.commands sub-module; r=jhammel
This patch on its own will break mach. Part 3 will refactor mach's
loader to discover and load modules using a modified module finding
method.

--HG--
rename : python/mach/mach/settings.py => python/mach/mach/commands/settings.py
rename : python/mach/mach/build.py => python/mozbuild/mach/commands/build.py
rename : python/mach/mach/testing.py => python/mozbuild/mach/commands/testing.py
rename : python/mach/mach/warnings.py => python/mozbuild/mach/commands/warnings.py
2012-10-05 12:13:18 -07:00
Gregory Szorc
7d6969850a Bug 796840 - Don't have mozprocess worry about process children when running make; r=jhammel
DONTBUILD (NPOTB)
2012-10-04 17:23:06 -07:00
Ehsan Akhgari
121c4a6a0a Bug 797093 - Fix running mochitests through mach; r=gps
DONTBUILD
2012-10-02 17:03:31 -04:00
Ms2ger
dd7df1a544 Bug 780698 - Part c: Support mochitest-a11y, reftest, crashtest in mach; r=gps 2012-10-02 10:24:12 +02:00
Ms2ger
40beeb0722 Bug 780698 - Part b: Fix mochitest runners; r=gps 2012-10-02 10:24:11 +02:00
Ms2ger
6916ac819e Bug 780698 - Part a: Give _run_make append_env and explicit_env arguments; r=gps 2012-10-02 10:24:11 +02:00
Ms2ger
fb264b33b8 Bug 795034 - Fix append_env argument to mozbuild's _run_command; r=gps 2012-10-02 10:24:11 +02:00
Gregory Szorc
94bc786952 Bug 795477 - Install NullHandler on root logger; r=jhammel 2012-10-01 11:08:53 -07:00
Gregory Szorc
c9ac45fd01 Bug 794713 - Convert process output to Unicode; handle Unicode in logger properly; r=glandium
DONTBUILD (NPOTB)
2012-09-28 10:29:32 -07:00
Gregory Szorc
ed9eb552db Bug 794729 - Run config.guess and mozconfig through shell; r=glandium
DONTBUILD (NPOTB)
2012-09-27 10:12:48 -07:00
Gregory Szorc
a03757ae9c Bug 751795 - Part 4: Add flags to _run_make to control behavior; r=jhammel 2012-09-26 16:40:14 -07:00
Gregory Szorc
314106f495 Bug 780329 - Part 6: Add testing modules to mozbuild; r=jhammel 2012-09-26 09:43:53 -07:00
Gregory Szorc
7b0d7ce222 Bug 780329 - Part 5: Add base modules to mozbuild; r=glandium, jhammel 2012-09-26 09:43:53 -07:00
Gregory Szorc
b2bb14024c Bug 780329 - Part 4: Define CompilerWarning.__cmp__; r=jhammel DONTBUILD (NPOTB) 2012-09-21 12:05:37 -07:00
Gregory Szorc
8af26e955d Bug 780329 - Part 3: Ability to register structured loggers; r=jhammel 2012-09-21 12:05:12 -07:00
Gregory Szorc
db0d7f8b64 Bug 780329 - Part 2: Add generic settings/config module; r=jhammel 2012-09-21 12:05:12 -07:00
Gregory Szorc
1c407ed6ff Bug 780329 - Part 1: Python 3 compatibility; r=jhammel
This makes existing mozbuild code compatible with Python 2.7 and Python
3.2. Future additions to this package will be compatible with both
Python versions.
2012-09-21 12:05:12 -07:00
Ehsan Akhgari
217645f36e Bug 579517 - Part 4: Manually rewrite some parts of the code base not covered by the automated conversion; r=bsmedberg 2012-08-22 11:59:54 -04:00
Gregory Szorc
38dc386b04 Bug 777233 - Add warning module to mozbuild to track compiler warnings; r=vlad 2012-08-03 11:45:43 -07:00
Gregory Szorc
d2d618fff4 Bug 777231 - Add skeleton for mozbuild package; r=vlad 2012-08-03 11:44:16 -07:00