Commit Graph

650 Commits

Author SHA1 Message Date
Nick Alexander
243790089f Bug 853045 - Follow-up: Address review comment and avoid bustage. r=me 2014-02-13 22:25:26 -08:00
Nick Alexander
7a43f1e695 Bug 853045 - Part 6: Allow running AndroidEclipse backend in |mach build-backend|. r=gps
This adds and uses a --backend parameter to config_status.py.
2014-02-13 22:19:50 -08:00
Nick Alexander
3f9d7cf3b6 Bug 853045 - Part 5: Advertise where Eclipse projects were written. r=gps 2014-02-13 22:19:50 -08:00
Nick Alexander
7d686d8280 Bug 853045 - Part 3: Add AndroidEclipseBackend. r=gps
test_recursive_make.py depends on the test data added by this commit, so
it's here rather than in the earlier commit.
2014-02-13 22:19:49 -08:00
Nick Alexander
d3145df1ff Bug 853045 - Part 2: Add frontend and RecursiveMakeBackend for Android Eclipse projects. r=gps 2014-02-13 22:19:49 -08:00
Nick Alexander
f40bc9b6af Bug 853045 - Part 1: Add Android Eclipse project templates to mozbuild. r=gps 2014-02-13 22:19:49 -08:00
Nick Alexander
232546d4fd Bug 971525 - Optionally make FileCopier only delete symlinked directories it needs to replace. r=gps 2014-02-13 22:19:48 -08:00
Nathan Froyd
3319661389 Bug 969085 - try harder to resolve relative paths in MozconfigLoader; r=gps 2014-02-10 10:43:59 -05:00
Andrew Halberstadt
e080311aec Bug 965789 - Check if a clobber is needed before invoking make install-tests, r=gps 2014-02-13 14:36:55 -06:00
Nick Alexander
b2b3cc35fc Bug 971272 - Post: Add informational test showing unnecessary directories may be created. r=gps 2014-02-13 09:09:09 -08:00
Nick Alexander
514820fae2 Bug 971272 - Part 3: Use required_directories in FileCopier.copy. r=gps 2014-02-13 09:09:08 -08:00
Nick Alexander
0d1631ce57 Bug 971272 - Part 2: Expose FileRegistry.required_directories. r=gps 2014-02-13 09:09:08 -08:00
Nick Alexander
0873a1cf20 Bug 971272 - Part 1: Guard against adding {foo, foo/bar} to FileRegistry. r=gps
This already raised if the order was [foo, foo/bar].  But it didn't
prevent adding [foo/bar, foo].

The only sub-classes of FileRegistry are FileCopier and Jarrer.

FileCopier.copy threw in the previously unhandled case: the order of
creation is the same as the order of addition, so that foo is created
after foo/bar.

A zip file index can contain both foo and foo/bar.  I don't think we
should rely on this property in our use of Jarrer, but if we already do,
I guess we need to move these guards into FileCopier.  Let's hope that's
not the case!

(For the record: On my Mac OS X system, unzipping such a zip file
prompts the user for what to do, depending on the order of the entries
in the zip index.)
2014-02-13 09:09:08 -08:00
Nick Alexander
11193dcbd5 Bug 971265 - Add --no-remove-empty-directories to process_install_manifest.py. r=gps 2014-02-13 09:09:08 -08:00
Nick Alexander
4b62c976fd Bug 971265 - Pre: Don't write file in test_util.py. r=gps 2014-02-13 09:09:07 -08:00
Ryan VanderMeulen
7a1c0e3e51 Merge m-c to inbound. 2014-02-13 10:31:44 -05:00
Ted Mielczarek
cfa419cecd Bug 971802 - Make mozpack capable of storing unix file permissions in jars. r=glandium 2014-02-13 07:47:00 -05:00
Wes Kocher
2240e7180d Merge fx-team to mozilla-central 2014-02-12 16:26:16 -08:00
Ted Mielczarek
248a44c49a Bug 969585 - Fix installing support files from a manfiest with just disabled tests. r=gps 2014-02-13 07:46:59 -05:00
Gregory Szorc
94e5fda7a5 Bug 958561 - Measure Sync with Firefox Health Report; r=rnewman
Metrics for Sync have been added to Firefox Health Report. If Sync is
not configured, we'll report that fact and the supported and preferred
Sync protocols (1.1 or 1.5).

If Sync is configured, we report the daily counts of sync attempts and
how many are successful vs errored. We also report daily counts of the
device types attached to the account.

--HG--
extra : rebase_source : 77170b323706a85cbe1542ac993ebdc1dba3b505
extra : amend_source : 7802e80b4fc94937fbe3f67505b447bfb048732d
2014-02-05 08:08:14 -08:00
Ehsan Akhgari
4076764251 Bug 970727 - Move DEFFILE to moz.build; r=mshal 2014-02-11 11:28:54 -05:00
Jacek Caban
06c5f9e5cc Bug 970429 - Don't allow using INITGUID in unified sources. r=Ehsan 2014-02-12 10:59:05 +01:00
Brian O'Keefe
82d30a00dd Bug 772828 - Part a: add support for RESOURCE_FILES in moz.build; r=mshal 2013-11-05 13:37:49 -05:00
Ehsan Akhgari
fbe321aed6 Bug 970745 - Move USE_STATIC_LIBS to moz.build; r=glandium 2014-02-11 09:12:33 -05:00
Ehsan Akhgari
e4f6f2dbbb Bug 969757 follow-up, fix two comments, DONTBUILD 2014-02-10 20:55:57 -05:00
Mike Hommey
0d839c5b66 Bug 969164 - Traverse js/src moz.builds from top-level configure. r=gps
Before, we would run configure in both top-level and js/src, and both
configures would traverse their own set of moz.builds, without actual
knowledge about the other. With this change, both configures still run,
but only top-level traverses moz.build files, and uses js/src's
config.status when traversing its moz.build files. This allows a better
sharing of information between both build systems and the removal of many
hacks.

This also moves running libffi and icu configure to top-level.

Standalone js builds still have their own configure doing moz.build traversal,
as before.

--HG--
rename : config/autoconf.mk.in => config/autoconf-js.mk.in
rename : config/emptyvars.mk.in => config/emptyvars-js.mk.in
2014-02-11 10:37:47 +09:00
Mike Hommey
cb063c5a25 Bug 969164 - Use per-directory config in sandboxes when reading moz.builds. r=gps 2014-02-11 10:37:47 +09:00
Ehsan Akhgari
b870bb3fe9 Bug 969757 - Remove the dead code in our tree which pretends to support OS/2; r=roc,mcmanus,gps,jorendorf,bsmedberg sr=bsmedberg 2014-02-10 17:57:01 -05:00
Ehsan Akhgari
fb23854e8f Bug 968642 - Port RCFILE and RESFILE to moz.build; r=gps 2014-02-10 09:03:53 -05:00
Ted Mielczarek
e979576b2b Bug 968351 - Allow test manifests with just support-files. r=gps 2014-02-06 13:22:35 -05:00
Mike Hommey
8ba483ca8a bug 903620 - Make ExecutableFile support being put directly into a jar. r=gps 2014-02-06 13:22:35 -05:00
Ehsan Akhgari
ac38419e37 Bug 944800 - Move the information about delay loaded DLLs into moz.build; r=gps 2014-02-06 14:17:44 -05:00
Nathan Froyd
5ccc50ad47 Bug 936555 - make mozinfo use MozconfigLoader to locate the mozconfig; r=gps 2014-01-27 11:35:59 -05:00
Mike Hommey
2a6bcee65d Bug 967099 - Hide auto clobber TinderboxPrint during tests. r=gps 2014-02-05 13:02:48 +09:00
Ehsan Akhgari
31e7cec189 Backed out changeset b54e8c328c32 (bug 944800) because of test failures on a CLOSED TREE 2014-02-04 17:03:17 -05:00
Ehsan Akhgari
cf46d0e8c5 Bug 944800 - Move the information about delay loaded DLLs into moz.build; r=gps
--HG--
extra : rebase_source : 3eca29dae04c42fa8e7d113318b8a169a0cf22e4
2014-02-04 13:57:34 -05:00
Gregory Szorc
8fc49a703a Bug 920849 - Part 2: Discover xpcshell tests through metadata, not filesystem; r=ted
--HG--
extra : rebase_source : bbe52abe704072c11a3313d356ceedb2d0d31b6b
2013-10-22 16:54:40 -07:00
Mike Hommey
737f05c75c Bug 944650 - Allow mach to use a pristine GNU make if present and supported. r=gps 2014-01-20 09:09:56 +09:00
Brian O'Keefe
ab95764fa7 Bug 935987 - Part 3: Add preprocessed file support to install manifests; r=gps
--HG--
extra : rebase_source : a6897be53064bd171bd9280735c513c6ff539a4f
2013-12-14 09:46:48 -05:00
Brian O'Keefe
740ef3a15a Bug 935987 - Part 2: Add preprocessed files to mozpack.files; r=gps
--HG--
extra : rebase_source : fe32f92b22aecc82ea1b6d95a5ee43e274a9f8be
2013-11-06 14:46:05 -05:00
Mike Hommey
925edbca14 Bug 950298 - Make the js build system use top-level as its root objdir. r=gps 2014-01-14 07:38:40 +09:00
Mike Hommey
69df9267f2 Bug 958437 - Build static directories as part of compile instead of libs and tools; r=gps
--HG--
extra : rebase_source : dc082b833582972af27adab1e553e4b079fac458
2014-01-10 18:09:14 +09:00
Gregory Szorc
0f330c12a1 Bug 952606 - Don't leave temporary files when executing test_preprocessor.py; r=mshal
--HG--
extra : rebase_source : e8084a91a297732f66e9a981f9b787c7b5300e2e
extra : amend_source : 5c9db101f05af8be37a0f6881e4313b03c9172d7
2013-12-20 15:59:37 -08:00
Benjamin Peterson
94a6c1c7d1 Bug 953195 - Print filename in unused warning. r=gps 2014-01-02 16:34:40 -06:00
Ehsan Akhgari
1d7d91e69d Bug 955699 - Try lowering the path length tolerance some more 2014-01-02 13:44:44 -05:00
Ehsan Akhgari
b9f1126025 Bug 955699 - Try lowering the path length tolerance on Windows for comm-central builds 2014-01-02 12:54:35 -05:00
Brian O'Keefe
8dde112375 Bug 935987 - Part 1: Give the preprocessor a better API; r=gps 2013-11-11 08:50:42 -05:00
Ehsan Akhgari
0f41392a53 Bug 940708 - Part 4: Limit the length of the unified file name prefix to 50 characters so that we don't blow up the Windows path name limit; r=glandium
--HG--
extra : rebase_source : cc3e9238dcda8e0bb49e10407d4bafa4e5be4594
2013-12-18 21:55:19 -05:00
Ehsan Akhgari
db66ae9127 Bug 940708 - Part 3: Handle asm sources for unified webrtc builds; r=gps
--HG--
extra : rebase_source : 517c6e73002b288d2d16bc4c516096ff1a0caf72
2013-12-18 21:52:21 -05:00
Mike Hommey
2f090c7e79 Bug 940708 - Part 2: Build webrtc in unified mode; r=gps
--HG--
extra : rebase_source : b4a4fd21c65851e8e9377218ec19181f5f86e8b8
2013-12-18 15:40:03 +09:00
Gregory Szorc
97c0ff0e56 Bug 951352 - Disallow XPIDL_MODULE if XPIDL_SOURCES isn't defined; r=glandium
Once upon a time XPIDL_MODULE and MODULE were kind of the same and
MODULE got mass-converted into XPIDL_MODULE with the removal of MODULE
in bug 939044. Unfortunately, we forgot to add a check for XPIDL_MODULE
being defined if XPIDL_SOURCES isn't (a build config that makes no sense
and only results in cargo culting).

This patch corrects that oversight.

--HG--
extra : rebase_source : d609e2baa8d16df97c944bc9def26ad05527d937
2013-12-17 12:45:56 -08:00
Ehsan Akhgari
be7f1e698f Backed out 4 changesets (bug 940708) for ASAN bustage
Backed out changeset 8b081bf3d16c (bug 940708)
Backed out changeset 8d1da29cee34 (bug 940708)
Backed out changeset aedcac877ab0 (bug 940708)
Backed out changeset d4aec392a165 (bug 940708)

--HG--
extra : rebase_source : dec5c491a2233dfe7fe2153559e01313d3583a33
2013-12-20 13:05:29 -05:00
Ehsan Akhgari
7936c55391 Bug 940708 - Part 4: Limit the length of the unified file name prefix to 50 characters so that we don't blow up the Windows path name limit; r=glandium
--HG--
extra : rebase_source : 7f28ada75a26132af951893137127e0f1517995b
2013-12-18 21:55:19 -05:00
Ehsan Akhgari
92f1be446d Bug 940708 - Part 3: Handle asm sources for unified webrtc builds; r=gps
--HG--
extra : rebase_source : 75f72fa64c0cde4c63b3ef5c09964cdf99fb32a2
2013-12-18 21:52:21 -05:00
Mike Hommey
cedfb9ccee Bug 940708 - Part 2: Build webrtc in unified mode; r=gps
--HG--
extra : rebase_source : db1315634af0cab9cd47ff38ad0fac703c04f452
2013-12-18 15:40:03 +09:00
Ehsan Akhgari
a1b2d15722 Bug 949704 - Turn off the useless warning about swapping after the build finishes until we have better reasons to display it; r=gps
--HG--
extra : rebase_source : e056be92cba60b970db1b6887a18bff018ef68a0
2013-12-19 15:59:10 -05:00
Mike Hommey
59fcc3df3d Bug 944551 - Handle unicode in mozbuild.util.shell_quote. r=gps 2013-11-30 18:46:13 +09:00
Mike Hommey
4ddd1194d5 Bug 951010 - Move ConfigStatus.py under mozbuild. r=gps
--HG--
rename : build/ConfigStatus.py => python/mozbuild/mozbuild/config_status.py
2013-12-18 08:07:11 +09:00
Gregory Szorc
158ed8b3ec Bug 774572 - Part 2: Define JAR_MANIFESTS in moz.build files; r=glandium
Every directory with a jar.mn now has JAR_MANIFESTS defined in its
moz.build file.

We also removed the may_skip special consideration of jar.mn files
because this information is now available during tier traversal by the
reader courtesy of the variables being present in moz.build files.

--HG--
extra : rebase_source : 21049b15e6bd9cf65b0805ccaccc4ba5aae93c98
extra : amend_source : 0b1ea866d725beef92d37c6f6d475369ac002e19
2013-12-10 16:18:11 +09:00
Gregory Szorc
e36eb7b59b Bug 774572 - Part 1: Support for defining JAR manifests in moz.build; r=glandium
JAR_MANIFESTS can now be defined in moz.build files. However, due to
limitations in rules.mk, only 1 file may be defined at a time. In the
future, this restriction will be lifted. But first, better support for
JAR manifests in the build config must be built.

rules.mk will be updated in the subsequent conversion patch so this
patch applied alone doesn't break the build.

--HG--
extra : rebase_source : 2521d49a1731b659dd720769e4685715925be590
2013-12-13 00:47:02 +09:00
Mike Hommey
f6a47e7e17 Bug 950296 - Turn the map for variable passthrough into a list. r=gps 2013-12-17 11:14:17 +09:00
Mike Hommey
001736e8a4 Bug 950290 - Move python scripts from build/autoconf into a mozbuild submodule. r=gps
--HG--
rename : build/autoconf/check_debug_ranges.py => python/mozbuild/mozbuild/configure/check_debug_ranges.py
rename : build/autoconf/libstdcxx.py => python/mozbuild/mozbuild/configure/libstdcxx.py
2013-12-17 11:13:08 +09:00
Mike Hommey
252e2eece2 Bug 950279 - Expose int() to moz.build sandbox, and use it in build/gyp.mozbuild. r=gps 2013-12-17 11:12:15 +09:00
Nick Alexander
19db3a26ae Bug 923950 - Fix Android single locale repacks. r=glandium
There are two parts to this.  The first is to add AndroidManifest.xml
as a dependency to the "no dependencies" ap_ built during packaging.
The aapt call requires it.  So "no dependencies" is more accurately
"no *resource* dependencies".

The second is to avoid including the Android res/ directory in the
language repack step.  What happens is that the l10n.py script sees
the Android res/ files left in the dist/ directory after unpacking and
expects to find them in the objdir.  They're not there, so the script
fails.  To avoid this, we delete them after unpacking.  See the
comments in packager.mk describing this process.

--HG--
extra : rebase_source : 35c3c125dddcd575c1a5e8ad58f9aa13ff2db4c3
2013-12-14 15:36:17 -08:00
Gregory Szorc
569c7918e8 Bug 950370 - Capture WebIDL example interfaces in moz.build; r=glandium
Previously, the set of WebIDL example interfaces to build was hardcoded
in the mozwebidlcodegen Python package. Unfortunately, the example
interfaces in that set were dependent on test-only bindings files,
resulting in build failures when tests were disabled (because those
test-only bindings were defined in a test directory).

In this patch, we now declare example interfaces in moz.build files
so the set of example interfaces lives next to the set of defined
bindings files. The example interfaces are defined in a test moz.build
file - in the same file declaring the bindings files that contain the
interfaces - so the example interfaces only get picked up if the
corresponding bindings are defined.

We could probably switch WebIDL moz.build variables to use lists with
flags. That would be good followup fodder. For now, let's fix the build.

--HG--
extra : rebase_source : 00070a6d560625bc84ab9b10d6848ea037f8f5ed
extra : amend_source : 0890ecef444ba58533fcfaa333773d78deafd7f3
2013-12-15 11:43:47 -08:00
Mark Hammond
2262e132d8 Bug 948258 - Move browser tests from dom/indexedDB/test/Makefile.in to browser.ini. r=ted 2013-12-16 15:07:44 +11:00
Geoff Brown
4a3e3759a2 Bug 945975 - Add mach support for Android xpcshell tests; r=ted 2013-12-13 21:20:39 -07:00
Mike Hommey
883bf3234f Bug 949334 - Use FINAL_LIBRARY for webrtc. r=gps 2013-12-14 11:38:53 +09:00
Gregory Szorc
e19e827623 Bug 949304 - Print Makefile counts during config.status; r=glandium
We now capture and print the number of Makefile.in and the number of
generated Makefile as part of config.status. This should give us a nice,
easy to extract metric going forward.

Pushing on a CLOSED TREE because this patch didn't deserve to get backed
out.

--HG--
extra : amend_source : 36028b17fd09c57455aef681bbe459891f5ed607
2013-12-13 00:03:55 +09:00
Carsten "Tomcat" Book
3325724568 Backed out changeset 273e7ed05fa3 (bug 949304) for Windows Bustage on a CLOSED TREE 2013-12-13 12:46:03 +01:00
Gregory Szorc
048490bb08 Bug 949906 - Add a callback to modify evaluated moz.build sandboxes, fix Sphinx docs; r=glandium
--HG--
extra : rebase_source : 9ef2219145fb754a9cbe9e7e30b6f2841910f13f
2013-12-13 16:06:53 +09:00
Gregory Szorc
430688bd1f Bug 949304 - Print Makefile counts during config.status; r=glandium
We now capture and print the number of Makefile.in and the number of
generated Makefile as part of config.status. This should give us a nice,
easy to extract metric going forward.

--HG--
extra : rebase_source : 48a3e9f66975505dec76746703875b2364dedc87
2013-12-13 00:03:55 +09:00
Gregory Szorc
57e14ad346 Bug 928195 - Part 4: Rewrite WebIDL build system integration; r=bz, r=glandium
WebIDL build system integration has been rewritten from the ground up.
Changes:

* GlobalGen.py, BindingGen.py, and ExampleGen.py have been removed in
  favor of mozwebidl.py.

* Static .webidl files are now processed directly in their original location
  and aren't copied to the object directory.

* Generated events <stem>.cpp files are now compiled into the unified
  sources. Previously, only the <stem>Binding.cpp files were compiled
  into unified sources.

* Exported .h files are now generated directly into their final location.
  Previously, they were generated into the local directory then
  installed in their final location.

* The list of globalgen-generated files now lives in Python and isn't
  duplicated in 3 places.

* The make dependencies are much simpler as a result of using a single
  command to perform all code generation. The auto-generated .pp file from
  code generation sets up all dependencies necessary to reinvoke code
  generation and Python takes care of dependency management.

--HG--
extra : rebase_source : e4918878274b22a412329c7cb18cc7138daf5dc6
2013-12-12 16:26:38 +09:00
Mike Hommey
cb4b9658e5 Bug 778236 - Remove EXTERNAL_MAKE_DIRS and PARALLEL_EXTERNAL_MAKE_DIRS. r=gps 2013-12-12 23:41:06 +09:00
Mike Hommey
25972646a7 Bug 778236 - Treat gyp files as if their content was defined in moz.build files. r=gps 2013-12-12 23:41:05 +09:00
Nick Alexander
6fade1ad27 Bug 934646 - Part 3: Declare Android resource directories relative to $SRCDIR. r=glandium,gps,mfinkle
--HG--
rename : mobile/android/base/resources/drawable-mdpi/crash_reporter.png => mobile/android/base/crashreporter/res/drawable-mdpi/crash_reporter.png
rename : mobile/android/base/resources/layout/crash_reporter.xml => mobile/android/base/crashreporter/res/layout/crash_reporter.xml
rename : mobile/android/branding/aurora/content/fennec_72x72.png => mobile/android/branding/aurora/res/drawable-hdpi/icon.png
rename : mobile/android/branding/aurora/content/fennec_48x48.png => mobile/android/branding/aurora/res/drawable-mdpi/icon.png
rename : mobile/android/branding/aurora/content/fennec_96x96.png => mobile/android/branding/aurora/res/drawable-xhdpi/icon.png
rename : mobile/android/branding/aurora/content/fennec_144x144.png => mobile/android/branding/aurora/res/drawable-xxhdpi/icon.png
rename : mobile/android/branding/beta/content/fennec_72x72.png => mobile/android/branding/beta/res/drawable-hdpi/icon.png
rename : mobile/android/branding/beta/content/fennec_48x48.png => mobile/android/branding/beta/res/drawable-mdpi/icon.png
rename : mobile/android/branding/beta/content/fennec_96x96.png => mobile/android/branding/beta/res/drawable-xhdpi/icon.png
rename : mobile/android/branding/beta/content/fennec_144x144.png => mobile/android/branding/beta/res/drawable-xxhdpi/icon.png
rename : mobile/android/branding/nightly/content/fennec_72x72.png => mobile/android/branding/nightly/res/drawable-hdpi/icon.png
rename : mobile/android/branding/nightly/content/fennec_48x48.png => mobile/android/branding/nightly/res/drawable-mdpi/icon.png
rename : mobile/android/branding/nightly/content/fennec_96x96.png => mobile/android/branding/nightly/res/drawable-xhdpi/icon.png
rename : mobile/android/branding/nightly/content/fennec_144x144.png => mobile/android/branding/nightly/res/drawable-xxhdpi/icon.png
rename : mobile/android/branding/official/content/fennec_72x72.png => mobile/android/branding/official/res/drawable-hdpi/icon.png
rename : mobile/android/branding/official/content/fennec_48x48.png => mobile/android/branding/official/res/drawable-mdpi/icon.png
rename : mobile/android/branding/official/content/fennec_96x96.png => mobile/android/branding/official/res/drawable-xhdpi/icon.png
rename : mobile/android/branding/official/content/fennec_144x144.png => mobile/android/branding/official/res/drawable-xxhdpi/icon.png
rename : mobile/android/branding/unofficial/content/fennec_72x72.png => mobile/android/branding/unofficial/res/drawable-hdpi/icon.png
rename : mobile/android/branding/unofficial/content/fennec_48x48.png => mobile/android/branding/unofficial/res/drawable-mdpi/icon.png
rename : mobile/android/branding/unofficial/content/fennec_96x96.png => mobile/android/branding/unofficial/res/drawable-xhdpi/icon.png
rename : mobile/android/branding/unofficial/content/fennec_144x144.png => mobile/android/branding/unofficial/res/drawable-xxhdpi/icon.png
extra : rebase_source : f6ec8a38594e70520b10202c735dc019f8c856fd
2013-12-11 21:20:07 -08:00
Gregory Szorc
e413f97acc Bug 939367 - Allow Sphinx docs to come from all over the tree; r=glandium
--HG--
extra : rebase_source : 1c1a444a78c0dfce110db3890e29543eeb67f3aa
2013-11-20 12:37:22 -08:00
Gregory Szorc
b665837433 Bug 941245 - Allow FileFinder to ignore patterns; r=glandium
--HG--
extra : rebase_source : 0dd3f11dcf97abc57962e820ede241b82d715624
extra : amend_source : ef75cc5f516ecba0062002c7432e7b257bff5209
2013-11-20 13:12:21 -08:00
Mike Hommey
b453ccf66e Bug 949265 - Use contextual topsrcdir/topobjdir for preprocessed files during config.status. r=gps 2013-12-12 13:32:30 +09:00
Gregory Szorc
ba2d03eb97 Bug 948787 - Print diffs during config.status; r=glandium
Build system developers commonly need to see what changes have on the
generated build files. We often put our objdir under version control and
diff commits before and after running config.status.

This patch adds a --diff option to config.status that will print diffs
of changes made during config.status. This functionality is implemented
on top of FileAvoidWrite, using Python's built-in diffing library.

While display of diffs is opt-in, diffs are always being captured when
config.status runs. There could be an unwanted performance regression
from this. Because diffs are only computed if files change and most
files don't change during most config.status runs, this greatly reduces
the surface area of the concern. The area for largest concern is clobber
builds. On my machine, I measured an increase of 0.2 to 0.3s from 2.0s.
While this is 10-15%, the total time is so small that I don't feel
snaking a "capture diff" flag through the build system is worth the
effort. This would make a decent followup bug if this turns out to be a
problem in the future.

I also snuck in a change to reindent all-tests.json because displaying
diffs for this massive 11MB all-in-one-line JSON file results in an
extremely large string being printed to my terminal.

--HG--
extra : rebase_source : c0f7ff69cad282e63a050e67f156dbe96b49a142
2013-12-11 13:06:56 +09:00
Gregory Szorc
3efa26a925 Bug 948272 - Report more timings from moz.build; r=glandium
The big change is we now explicitly record time spent in emitter.py. We
also report how much untracked time was measured.

--HG--
extra : rebase_source : f2a867718f0d532748e337abdc6e1c5070646dd7
2013-12-10 14:26:10 +09:00
James Willcox
a275979cc8 Bug 948599 - Add lldb support to 'mach debug' r=ehsan,gps 2013-12-11 09:09:50 -06:00
Gregory Szorc
9d978c69cc Bug 944842 - Record and warn about swapping during builds; r=glandium
--HG--
extra : rebase_source : 3930a423514b5422ba23129b4da2a38f863bffbe
extra : amend_source : a9368fce73d02dc1f5073e652e4ab0b33f4c0a21
2013-12-09 18:58:13 +09:00
Mike Hommey
fdbe4cde3f Fixup for bug 948275 fixing windows bustage and avoiding a forced clobber. r=gps 2013-12-11 16:02:27 +09:00
Mike Hommey
b857244902 Bug 948275 - Refactor handling of CONFIGURE_SUBST_FILES and CONFIGURE_DEFINE_FILES. r=gps 2013-12-11 15:20:38 +09:00
Mike Hommey
72182decfb Bug 948275 - Use mozpack.path instead of os.path in mozbuild.frontend and mozbuild.backend modules. r=gps 2013-12-11 15:20:31 +09:00
Mike Hommey
e83bae80dc Bug 948275 - Keep track of backend files by objdir instead of by srcdir. r=gps 2013-12-11 15:19:58 +09:00
Mike Hommey
b457274c6f Bug 948209 - Remove mozbuild.config. r=gps 2013-12-11 10:59:02 +09:00
Mike Hommey
4fc7d237c6 Bug 947804 - Finish to kill BOTH_MANIFESTS. r=gps 2013-12-09 16:30:06 +09:00
Gregory Szorc
6c9d965e3a Bug 934739 - Part 2: Add pattern matches to install manifests; r=glandium
This patch adds pattern matching entries to install manifests. We store
metadata necessary to construct a pattern match at a later point in
time. When we convert the install manifest to a file registry, we
resolve the patterns using FileFinder.

The build config logic has been updated to store support-files values as
pattern entries. This should resolve the clobber needed issue and make
the local development experience more pleasant as well.

--HG--
extra : amend_source : 3fe659f7ad6930ef54316b5babac6b83bee240af
2013-12-09 19:02:35 +09:00
Ryan VanderMeulen
40fc3e7026 Backed out changesets 572624d76edf and 17a5f2e554e8 (bug 934739) for causing bug 947879. 2013-12-09 17:24:14 -05:00
Ryan VanderMeulen
3083eba130 Merge inbound to m-c. 2013-12-09 16:45:25 -05:00
Mike Hommey
1843703434 Bug 945042 - Add moz.build infrastructure to replace NO_PROFILE_GUIDED_OPTIMIZE from Makefile.in. r=gps 2013-12-09 13:39:16 +09:00
Mike Hommey
ae9cd73b74 Bug 946175 - Forbid assigning over a value previously set in moz.build. r=gps 2013-12-09 13:34:00 +09:00
Mike Hommey
f597ff0757 Bug 946175 - Make all sandbox variables default to an instance of their class type. r=gps 2013-12-09 13:27:58 +09:00
Gregory Szorc
3164293917 Bug 934739 - Part 2b: Fix build bustage; r=glandium on a CLOSED TREE 2013-12-09 19:02:35 +09:00
Gregory Szorc
fc542772f4 Bug 934739 - Part 2: Add pattern matches to install manifests; r=glandium
This patch adds pattern matching entries to install manifests. We store
metadata necessary to construct a pattern match at a later point in
time. When we convert the install manifest to a file registry, we
resolve the patterns using FileFinder.

The build config logic has been updated to store support-files values as
pattern entries. This should resolve the clobber needed issue and make
the local development experience more pleasant as well.

--HG--
extra : rebase_source : 1a89d397beffb75be6c7fe431003d10924c33cf0
2013-12-09 16:43:55 +09:00
Gregory Szorc
651ee14b33 Bug 934739 - Part 1: Make moz.build backend generation depend on all Python modules; r=glandium
--HG--
extra : rebase_source : 267c6f50dd1aa683bb425b3e82dc73f5f3c7a7bb
2013-12-09 15:23:29 +09:00
Mike Hommey
9ccccdd895 Bug 932596 - Avoid link_deps error when srcdir and objdir are not on the same drive. r=gps 2013-12-06 18:26:37 +09:00
Mike Hommey
78e7708024 Bug 941506 - Output a message on tbpl summary box when autoclobbering. r=gps 2013-11-22 08:16:21 +09:00