Commit Graph

1330 Commits

Author SHA1 Message Date
Ralph Giles
36cf88893c Bug 1161339 - Add rust support to moz.build. r=ted
Add .rs as a recognized file extension in SOURCES.

Propagate that through to the Makefile backend and add a dependency
generated and an explicit rule to call $(RUSTC) to compile them.

rustc builds static libraries, not obj files. At least, if one
asks it to output an obj file, I'm not clear how to get all the
compiler-specific runtime libraries the code will expect to link
to. Therefore we generate a static library for each rust source
file (which must be a complete crate for the time being) and link
that. Because of the extension it ends up on the LIBS line in the
the corresponding .desc file.

Note that the static library does still depend on some system
libraries, e.g. -ldl -lpthread -lm on linux. Gecko already
links to all of those, so we don't keep track of it here.

Should we need to add explicit linkage for other targets,
rustc does print a list to stderr which can be parsed.
2015-05-08 15:18:00 -07:00
Mike Hommey
bd61b51f2d Bug 1128037 - Minimalist support for wildcards in jar manifests. r=gps 2015-05-05 09:25:24 +09:00
Brian O'Keefe
26812005c3 Bug 978591 - Remove per-directory uses of MOZ_CHROME_FILE_FORMAT. r=glandium 2015-04-23 18:43:06 -04:00
Brian O'Keefe
5c00cfd457 Bug 786520 - Install things to $(DIST)/branding from moz.build instead of manual rules in Makefile.ins. r=mshal 2015-02-26 16:53:31 -05:00
Randell Jesup
6c571f94f3 Bug 1159300: Add a clone of gmp-fake that doesn't do decryption r=glandium,cpearce 2015-04-30 00:52:26 -04:00
Chris Manchester
81c30de570 Bug 1158019 - Tests exercising the proposed behavior. r=gps 2015-04-24 17:14:03 -07:00
Chris Manchester
2c43b3d747 Bug 1158019 - Only resolve to tests under a subdirectory if an input to mozbuild's test resolver is the prefix of a directory containing tests. r=gps
Formerly, running |./mach test image/| would result in running a number of devtools tests
in addition to running tests under the image/ subdirectory. With this change, only tests
under the image/ directory would be run. Note that ./mach test animations or similar will
still run a variety of tests across the tree, because this input does not match a directory.
2015-04-24 17:14:03 -07:00
Gregory Szorc
0efde2ed68 Bug 1158898 - Cache config.guess output; r=mshal
mach dispatch makes separate, independent calls to construct build
system state. Part of this resolution is determining the object
directory. For environments without an object directory defined, we must
execute config.guess to determine the object directory. This redundant
execution of config.guess can result in significant execution overhead.

Before this patch, `mach help` with no mozconfig took ~1.5s on my OS X
machine. After this patch, it goes down to ~0.750s. On Windows, the
difference is even more pronounced, with execution time dropping from
8.5s to 0.930s.
2015-04-27 17:07:49 -07:00
David Major
ed6ca74f4f Bug 1157835: Remove the MSVC_ENABLE_PGO flag from the build system. r=glandium 2015-04-27 19:59:27 -04:00
Philipp Kewisch
6738c8b403 Bug 1153790 - mac unification doesn't work with packaged addons. r=glandium 2015-04-27 00:46:20 +02:00
Gregory Szorc
af88848af6 Bug 1128586 - Properly look for Mercurial version; r=RyanVM
`mercurial version` doesn't always print the version number. `mercurial
--version` does. Use the latter.
2015-04-27 10:43:25 -07:00
Ehsan Akhgari
583f4bd680 Bug 892973 - Add support for the YouCompleteMe vim plugin; r=gps 2015-04-27 13:08:43 -04:00
Nathan Froyd
cbba27555a Bug 1155816 - followup - delete trailing whitespace, DONTBUILD for whitespace-only change; r=tidybot 2015-04-24 15:46:45 -04:00
Nathan Froyd
c585b5953e Bug 1155816 - part 2 - move EXTRA_*COMPONENTS manifest check to build-backend time; r=mshal
Now that moz.build can see EXTRA_*COMPONENTS and NO_JS_MANIFEST, we can
move some logic from rules.mk (executed every build) to moz.build's
emitter.py (executed only at build-backend time).
2015-04-17 15:02:19 -04:00
Nathan Froyd
a5d64ab97b Bug 1155816 - part 1 - move NO_JS_MANIFEST to moz.build; r=mshal 2015-04-17 14:50:12 -04:00
Nathan Froyd
4883ffd726 Bug 1155776 - move USE_EXTENSION_MANIFEST to moz.build; r=mshal 2015-04-17 13:51:42 -04:00
Morgan Phillips
1fc869367e Bug 1151834 - Allow users to skip all interactive prompts; r=gps
Interactive prompts make automation more difficult for developers looking to stand up machines using bootstrap en masse.
Two new options have been added to allow users with such needs to bypass all prompts: one for selecing an application
(desktop/mobile) and another for assuming yes to all questions posed by package managers (apt-get/yum).
2015-04-22 16:37:19 +00:00
Brian O'Keefe
603ff460b6 Bug 1154687 - Restore EXTERNALLY_MANAGED_MAKE_FILE handling to the moz.build blacklist check. r=gps 2015-04-15 08:15:03 -04:00
ISHIKAWA, Chiaki
c0c35f4f91 Bug 1153566 - Incorrect re in _check_blacklisted_variables did not ignore comment. r=gps 2015-04-11 09:41:00 +02:00
Andrew Halberstadt
7095335f5a Bug 1154006 - [mach] Ability to lazy load parsers passed in via the @Command decorator, r=gps 2015-04-13 15:36:56 -04:00
Nathan Froyd
4ac32b4479 Bug 870891 - move DIST_FILES to moz.build; r=mshal 2015-04-15 16:04:49 -04:00
travis
001d951404 Bug 1151005 - Show notifications when the 'install' and 'package' mach commands complete r=gps 2015-04-14 10:35:10 -05:00
travis
73a802e667 Bug 1151005 - Refactor terminal notification stuff from 'mach build' into MozbuildObject r=gps 2015-04-14 10:35:09 -05:00
Andrew Halberstadt
a8f13fb836 Bug 1151370 - Only guess platform/buildtype in mozinfo.py if processor is known, r=ted 2015-04-07 09:07:32 -04:00
Brian O'Keefe
6f8d3debc1 Bug 852814 - Move mozbuild variable blacklist logic into the backend. r=gps 2015-03-27 15:39:34 -04:00
Andrew Halberstadt
b3e140c779 Bug 1046992 - Consolidate desktop/b2g/b2g desktop mochitest mach commands, r=gbrown 2015-04-08 11:12:52 -04:00
Ryan VanderMeulen
5afbd2927c Backed out changeset 6bbe2e6958a9 (bug 1127801) for intermittent (?!?!) Mulet mochitest bustage.
CLOSED TREE
2015-04-07 13:47:54 -04:00
naru-san
356222839d Bug 1127801 - Capture path to milestone.txt from the OS automatically using MozbuildObject from mozbuild.base. r=ted
CLOSED TREE
2015-04-07 12:43:40 -04:00
Ryan VanderMeulen
466e57892d Backed out changeset a67a0be7325e (bug 1127801) for test bustage. 2015-04-07 11:50:10 -04:00
naru-san
ffdceb8d28 Bug 1127801 - Capture path to milestone.txt from the OS automatically using MozbuildObject from mozbuild.base. r=ted 2015-04-06 16:54:00 -04:00
Markus Stange
866d2f9cc7 Bug 1151349 - Make lldb ns(Int)Region summary handle the numRects==0 case. r=jrmuizel 2015-04-05 14:06:43 -04:00
Mike Hommey
7e054b29dc Bug 1147207 - Use SimplePackager code to find manifest entries and base directories during l10n repack. r=gps
This avoids duplicating the logic from SimplePackager to find base
directories, and fixes some cases where the l10n repack code wouldn't
find them properly.
2015-04-01 13:52:07 +09:00
Mike Hommey
b8be189c18 Backout changeset 685aa4dfe753 (bug 1147207) for build bustage 2015-03-31 13:18:39 +09:00
Mike Hommey
d73b525ade Bug 1147207 - Allow to give extra l10n directories to l10n-repack.py. r=gps
This allows to use separate l10n staging directories for e.g. addons.
2015-03-31 12:32:53 +09:00
Mike Hommey
33e0d61e5f Bug 1147207 - Improve SimplePackager manifest consistency check. r=gps
Bug 910660 added a consistency check that rejects cases where a manifest
inside a directory detected as being the base of an addon is included from
outside the addon. Unfortunately, this triggered false positives when
a manifest is included from within the addon, but just happens to be at
the top-level of that addon.
2015-03-31 12:32:52 +09:00
Mike Hommey
c5c095a07d Bug 1147207 - Use SimplePackager code to find manifest entries and base directories during l10n repack. r=gps
This avoids duplicating the logic from SimplePackager to find base
directories, and fixes some cases where the l10n repack code wouldn't
find them properly.
2015-03-31 12:32:52 +09:00
Mike Hommey
6ad063c793 Bug 1147207 - Add a ComposedFinder class that acts like a FileFinder proxy over multiple FileFinders. r=gps 2015-03-31 12:32:51 +09:00
Mike Hommey
cf36c9a4c6 Bug 1147760 - In mozpack.files.FileCopier.copy, remove files after copying. r=gps
Some file types, such as XPTFile, read their associated data during the
copy. In the case of XPTFiles, several original files are linked together
in one destination file. When a FileCopier is used in-place, those
original files are removed before XPTFile.copy is invoked, so XPTFile.copy
fails.

Generally speaking, there are many other reasons why FileCopier can fail
in-place, but the only active use of this mode is l10n repack code, which
actually doesn't do much of the dangerous uses. However, it can end up
linking XPTFiles for some reason, which fails for the reasons given above.
2015-03-31 12:32:51 +09:00
Mike Hommey
71c139e842 Bug 1147723 - Avoid non TEST_PASS/TEST_UNEXPECTED_FAIL output from test_files.py. r=gps
Instead, capture the output and check it's being printed.
2015-03-31 12:32:50 +09:00
Andrew Halberstadt
f7cfc93e00 Bug 1142050 - Add buildprops platform and buildtype guess to mozinfo.py, r=ted 2015-03-13 11:09:47 -04:00
Wes Kocher
ec293905dc Merge m-c to inbound a=merge CLOSED TREE 2015-03-26 17:46:35 -07:00
Mike Hommey
57fbadfa4f Bug 1147283 - Replace mozpack.path with mozpath. r=mshal
Back when mozpack.path was added, it was used as:

  import mozpack.path
  mozpack.path.func()

Nowadays, the common idiom is:

  import mozpack.path as mozpath
  mozpath.func()

because it's shorter.

$ git grep mozpath\\. | wc -l
423
$ git grep mozpack.path\\. | wc -l
123

This change was done with:
$ git grep -l mozpack.path\\. | xargs sed -i 's/mozpack\.path\./mozpath./g'
$ git grep -l 'import mozpack.path$' | xargs sed -i 's/import mozpack.path$/\0 as mozpath/'
$ (pat='import mozpack.path as mozpath'; git grep -l "$pat" | xargs sed -i "1,/$pat/b;/$pat/d")
2015-03-27 08:13:16 +09:00
Mike Hommey
31dd783e72 Bug 1147217 - Improve l10n repack error message when locale doesn't contain necessary files. r=mshal 2015-03-27 08:13:04 +09:00
Mike Hommey
03f6505eda Bug 1147183 - Avoid test_generate_browsersearch.py printing out unicode. r=mshal 2015-03-27 08:12:15 +09:00
Dirkjan Ochtman
a91bd1e5ec Bug 1143660 - Fix spacing around operators. r=gps 2015-03-18 19:13:27 +01:00
Dirkjan Ochtman
e955d621b1 Bug 1143660 - Remove empty lines before EOF. r=gps 2015-03-18 19:11:50 +01:00
Dirkjan Ochtman
fdd7794f0a Bug 1143660 - Make sure inline comments are preceded by two spaces. r=gps 2015-03-18 19:10:41 +01:00
Dirkjan Ochtman
3078bae904 Bug 1143660 - Fix continuation line indentations for visual indent. r=gps 2015-03-18 19:08:55 +01:00
Dirkjan Ochtman
b68949442f Bug 1143660 - Ascertain 2 blank lines between top-level elements. r=gps 2015-03-18 18:58:35 +01:00
Dirkjan Ochtman
01c0bc7b78 Bug 1143660 - Remove unused imports from mozboot. r=gps 2015-03-18 18:53:24 +01:00