Commit Graph

1685 Commits

Author SHA1 Message Date
Chris Peterson
f00443ad35 Bug 1232223 - Part 3: Remove MOZ_WAVE #ifdefs because Wave is always supported. r=jya 2015-12-18 00:51:16 -08:00
Chris Peterson
e488d1191c Bug 1232223 - Part 1: Remove MOZ_WEBM #ifdefs because WebM is always supported, though not necessarily enabled. r=jya r=glandium 2015-12-12 13:49:07 -05:00
Ms2ger
72e0ddfcf9 No bug - Note the bug in a todo comment. 2015-12-18 11:13:00 +01:00
Mike Hommey
7a5e3aae1f Backout changesets 53a9d03e4223, e61d18180feb and f07752f611f6 (bug 1233282) for a race condition bustage on a CLOSED TREE. 2015-12-18 17:07:13 +09:00
Mike Hommey
77ed15db49 Bug 1233282 - Make CONFIGURE_DEFINE_FILES considered more as GENERATED_FILES in the emitter. r=gps
From the backend perspective, CONFIGURE_DEFINE_FILES is the same as
GENERATED_FILES because in both cases a GeneratedFile object is emitted, but
from the perspective of some checks in the emitter, they aren't the same,
and that causes errors when adding a CONFIGURE_DEFINE_FILES to e.g. EXPORTS.
2015-12-18 15:57:12 +09:00
Carsten "Tomcat" Book
6d2a08ef4b merge mozilla-inbound to mozilla-central a=merge 2015-12-17 11:59:41 +01:00
Gregory Szorc
7cace466fc Bug 1225599 - Pull Mercurial repos with common 3rd party extensions disabled; r=dminor
Running old extensions with newer versions of Mercurial may crash `hg`
due to the old extension accessing something or doing something that has
been changed in the new release.

To minimize the risk of this happening, we disable common 3rd party
extensions when cloning or pulling as part of `mach mercurial-setup`. We
don't want to disable everything because some extensions (like
remotenames) provide features the user may want enabled as part of the
clone/update. This leaves the door open for more failures. Hopefully
this approach is sufficient. We can always revisit later.
2015-12-15 10:47:33 -08:00
Carsten "Tomcat" Book
4f44bd4fd6 Merge mozilla-central to mozilla-inbound 2015-12-16 12:03:47 +01:00
Carsten "Tomcat" Book
9db2517cbc merge mozilla-inbound to mozilla-central a=merge 2015-12-16 12:01:46 +01:00
Wes Kocher
e8b7fd1209 Merge m-c to inbound, a=merge 2015-12-15 15:52:44 -08:00
Nick Alexander
fb47845ff1 Bug 1227248 - Part 1: Allow extending StrictOrderingOnAppendListWithFlags. r=gps
In order to use StrictOrderingOnAppendListWithFlags instances in
mozbuild template functions, we need += to work correctly.  This patch
implements extend and the associated functions (including +=),
disallowing some behaviour where convenient.

There's a subtle point hidden in the isinstance() tests: before this
patch, it was not easy to compare two
StrictOrderingOnAppendListWithFlags instances to see if they had the
*same* set of flags.  That was because two instances may not have the
same class, and would only share the common
StrictOrderingOnAppendList, which isn't enough to infer the presence
of flags.  To be slightly more clear, concrete instances will have
class StrictOrderingOnAppendListWithFlagsSpecialization (although
there are still multiple instances of that class) and all extend from
the unique class StrictOrderingOnAppendListWithFlags.
2015-12-14 11:50:06 -08:00
Nick Alexander
a2df8f3cff Bug 1230848 - Remove Gradle configuration rooted in the object directory. r=gps
DONTBUILD NPOTB

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

We note the removal of |mach gradle-install| and point to the new
documentation.
2015-12-06 15:02:11 -08:00
Carsten "Tomcat" Book
2c5f71c734 merge mozilla-inbound to mozilla-central a=merge 2015-12-15 12:16:29 +01:00
Brian Murray
ace51c7b99 Bug 1232486 - Implement |mach bootstrap| for Fennec on Fedora. r=nalexander
DONTBUILD NPOTB
2015-12-14 17:20:09 -08:00
Brian Murray
34b2fb3ed9 Bug 1232715 - Bootstrap ignores --no-interactive flag when using dnf groupinstall; r=gps
DONTBUILD (NPOTB)
2015-12-15 13:59:23 -08:00
Gijs Kruitbosch
f0a47f0a16 Bug 1232421 - followup: fix test to not use 'inline comments' which are not supported elsewhere, rs=bustage on a CLOSED TREE 2015-12-16 14:03:20 +00:00
Gijs Kruitbosch
2a4fcef993 Bug 1232421 - force matching the start of the line for comments, r=glandium 2015-12-14 20:33:57 +00:00
Rail Aliiev
e9237498c7 Bug 1232887 - "make package MOZ_PKG_PRETTYNAMES=1" is busted. r=glandium 2015-12-15 23:23:18 -05:00
Mike Hommey
6874992719 Bug 1231315 - Build CONFIGURE_DEFINE_FILES at build time instead of during configure. r=gps 2015-12-15 08:06:11 +09:00
Mike Hommey
3c29698cac Bug 1231314 - Turn mozilla-config.h and js-confdefs.h into CONFIGURE_DEFINE_FILES. r=gps
Both these files, are, after all, define files, like other CONFIGURE_DEFINE_FILES.
They only happen to have a special requirement for an expansion for all defines,
which doesn't need to happen through traditional preprocessing.

This change adds consistency in how configure-related headers are being handled.
2015-12-15 08:06:11 +09:00
Gregory Szorc
d6cbc328d8 Bug 1231989 - Install watchman via Homebrew and MacPorts; r=ahal
This is needed to support hgwatchman.
2015-12-11 12:40:41 -05:00
Felipe Gomes
ae6ed21c61 Bug 1231720 - Log when ESLint finishes running. r=nalexander 2015-12-10 14:31:14 -05:00
Carsten "Tomcat" Book
209b6fca86 merge mozilla-inbound to mozilla-central a=merge 2015-12-10 12:05:03 +01:00
Mike Hommey
b36ad7dc0b Bug 1230355 - Remove include_deps. r=mshal
We used to use include_deps to trigger a fast-path in pymake, but we don't
use pymake anymore, so we can use normal includes now.
2015-12-09 19:23:53 +09:00
Ted Mielczarek
56d30d0b18 bug 1160185 - support GENERATED_FILES in EXPORTS. r=glandium
This change allows specifying objdir-relative paths in EXPORTS to enable
exporting entries from GENERATED_FILES. Objdir paths in EXPORTS that are
not in GENERATED_FILES will raise an exception.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

This allows to e.g. only remove files that were copied from a previous
FileCopier.copy, leaving aside files that were in the destination for some
other reason.
2015-12-04 19:25:42 +09:00
Maja Frydrychowicz
b6adad677d Bug 1229467 - Include wptserve in common.tests.zip; r=gps 2015-12-01 15:45:41 -05:00
Axel Hecht
ef2ed3a3d9 Bug 1229330 - fix import, r=glandium
Follow-up fix to bug 1147283
2015-12-01 11:55:59 +01:00
Mike Hommey
a3c00474ca Bug 1229341 - Remove HierarchicalStringListWithFlagsFactory. r=gps
It is not used anymore.
2015-12-03 13:34:02 +09:00
Mike Hommey
10c190af7a Bug 1229341 - Remove .source flag on BRANDING_FILES. r=gps
The only use of BRANDING_FILES[...].source is in xulrunner/app/moz.build, for
the app.ico file.

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

It used to be necessary to change to the directory you wanted to lint but now
the .eslintignore is at the top level we just run from the top level. This means
the path argument doesn't need to be special anymore.
2015-12-03 10:38:29 -08:00
Dave Townsend
f2c42c1f62 Bug 1229858: Add a preprocessor to convert XBL into JavaScript blocks for eslint. r=miker 2015-12-02 17:03:33 -08:00
Carsten "Tomcat" Book
0f9a85616c merge mozilla-inbound to mozilla-central a=merge 2015-12-02 15:20:57 +01:00
Mike Hommey
547d572dd9 Bug 1229293 - Enforce order when setting a HierarchicalStringList, and forbid reassignment. r=gps
The current implementation of HierarchicalStringList allows the following:

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

while

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

would be invalid because of the StrictOrderingOnAppendList enforcement.

It also allows to overwrite the entire list with a subsequent

   FOO.bar = [
	'baz',
   ]

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

While in the vicinity, fix HierarchicalStringList._get_export_variable to not
call the HierarchicalStringList constructor uselessly.
2015-12-02 11:04:37 +09:00
Mike Hommey
8a4b8e4cf7 Bug 1229245 - Use a FinalTargetFiles-like object for TESTING_JS_MODULES. r=gps 2015-12-01 16:46:57 +09:00
Mike Hommey
d5397256a1 Backout changeset aad04db89c38 (bug 1229245) for jetpack bustage. r=me on a CLOSED TREE 2015-12-01 16:18:54 +09:00
Mike Hommey
75fae169cd Fixup for bug 1229233 to fix bustage on OSX universal builds. r=me
Those bits are copied from TestMozbuildObject.
2015-12-01 14:52:31 +09:00
Mike Hommey
ea4d1d128a Fixup for bug 1229233 to fix test bustage on Windows. r=me 2015-12-01 14:52:31 +09:00