Commit Graph

1578 Commits

Author SHA1 Message Date
Mike Hommey
405622a83e Bug 1221453 - Use ObjDirPaths for GENERATED_INCLUDES and merge with LOCAL_INCLUDES. r=gps 2015-11-06 09:59:21 +09:00
Mike Hommey
10276f39ee Bug 1221453 - Use SourcePaths for LOCAL_INCLUDES. r=gps 2015-11-06 09:59:21 +09:00
Mike Hommey
88f05aae29 Bug 1219147 - Use addEntriesToListFile in mozbuild.jar.JarMaker.updateManifest. r=mshal
Also make addEntriesToListFile emit files with CR instead of CRLF on Windows.
2015-11-04 11:21:49 +09:00
A-deLuna
82b05b847b Bug 1220480 - Reference proper variable in Arch Linux bootstrapper; r=gps
DONTBUILD (NPOTB)
2015-11-03 11:00:02 -08:00
Chris Manchester
1eb3ea5839 Bug 1218999 - Update mtimes when building a GENERATED_FILES target, even when contents don't change. r=glandium
When a make target is generated with FileAvoidWrite, this can cause targets to
get rebuilt perpetually when a prerequisite is updated, because FileAvoidWrite
will leave the target's mtime older than the prerequisite's when the target's
contents are unchanged. To avoid this issue, GENERATED_FILES is modified to
unconditionally update its target's mtime.
2015-11-03 10:23:04 -08:00
Chris Manchester
111bc7fe80 Bug 1218999 - Back out changeset 5f32b2bcfa43 (bug 1188468) in favor of a more efficient solution. r=glandium
Bug 118468 landed an option for FileAvoidWrite to always write to an output
file, whether or not the contents would be changed. This was to address a
problem caused by not updating mtimes when building GENERATED_FILES, but
undoes the purpose of FileAvoidWrite and isn't really necessary.
This is addressed in a subsequent commit by unconditionally updating
mtimes when processing GENERATED_FILES.
2015-11-03 10:23:04 -08:00
Mike Hommey
093d32dc22 Bug 1217276 - Fix the handling of relativesrcdir for localized chrome data in FasterMake backend. r=mshal 2015-10-31 07:32:47 +09:00
Mike Hommey
76d603eddb Bug 1216901 - Make the FasterMake backend reticulate splines when moz.build or jar.mn files are modified. r=mshal 2015-10-31 07:32:43 +09:00
Mike Hommey
86ab51c1af Bug 1216901 - Always update backend output list files mtime from the base backend class. r=mshal
Instead of having individual backends do it on their own.
2015-10-31 07:32:42 +09:00
Wes Kocher
6eda870e01 Backed out changeset e22433400ec2 (bug 1216901) to hopefully fix winpgo bustage 2015-10-30 10:11:46 -07:00
Wes Kocher
35b7fcf43d Backed out changeset b855984ff056 (bug 1216901) 2015-10-30 10:11:45 -07:00
Wes Kocher
51bf70ed8a Backed out changeset 9475e3ef6a44 (bug 1217276) 2015-10-30 10:11:43 -07:00
Geoff Brown
e82abaa8b7 Bug 1219803 - Support 'mach run' for Android; r=jmaher 2015-10-30 10:57:35 -06:00
Makoto Kato
7cc17a4f18 Bug 1219228 - Generate correct source path of cpu-features.c. r=glandium 2015-10-30 12:23:42 +09:00
Mike Hommey
8a0899d518 Bug 1217276 - Fix the handling of relativesrcdir for localized chrome data in FasterMake backend. r=mshal 2015-10-30 08:19:04 +09:00
Mike Hommey
0c3bd62ba9 Bug 1216901 - Make the FasterMake backend reticulate splines when moz.build or jar.mn files are modified. r=mshal 2015-10-30 08:19:04 +09:00
Mike Hommey
e0d7951362 Bug 1216901 - Always update backend output list files mtime from the base backend class. r=mshal
Instead of having individual backends do it on their own.
2015-10-30 08:19:04 +09:00
Carsten "Tomcat" Book
feb51da6a8 Merge mozilla-central to mozilla-inbound 2015-10-29 12:15:05 +01:00
Richard Newman
a26cfa8435 Bug 1219512 - Bump Android version code computation check. r=nalexander 2015-10-28 18:38:55 -07:00
Carsten "Tomcat" Book
da15097e12 merge mozilla-inbound to mozilla-central a=merge 2015-10-28 10:43:33 +01:00
Nick Alexander
21e9816e85 Bug 1207708 - Part 2: Build against play-services-{basement,base,gcm} if MOZ_ANDROID_GCM. r=sebastian
Since MOZ_NATIVE_DEVICES builds against play-services-{basement,base,cast},
some ad-hoc de-duplication is necessary.
2015-10-27 17:41:49 -07:00
Nathan Froyd
3b64fa8d95 Bug 1218042 - part 2 - make the CompileDB backend follow the backend protocol; r=mshal
Calling CommonBackend.consume_object ensures that we process WebIDL and
IPDL files (and many other things) correctly.  Calling
CommonBackend.consume_finished ensures that the CompileDB backend gets
to see the unified bindings and protocol files that we generate, and add
those files to the compilation database.
2015-10-26 11:53:59 -04:00
Nathan Froyd
5b70be67e6 Bug 1218042 - part 1 - pass an objdir into _build_db_line; r=mshal
The only thing we need the obj for here is getting the objdir.  Future
patches will just have an objdir when calling this function, and not a
proper mozbuild object.  In light of these facts, let's change the
function to accept an objdir only, which will make those future patches
easier.
2015-10-26 11:50:27 -04:00
Michael Ratcliffe
02854fcf71 Bug 1212047 - Improve ESLint logging in case of error r=glandium
Fix *all* return codes
2015-10-23 17:18:45 +01:00
Carsten "Tomcat" Book
2dbe6c23a9 merge mozilla-inbound to mozilla-central a=merge 2015-10-26 10:57:35 +01:00
Nick Alexander
5fb41e1225 Bug 1192064 - Add 'android-x86' job to |mach artifact|. r=jonalmeida 2015-10-23 12:55:16 -07:00
Nathan Froyd
ec49e7f64d Bug 1215526 - part 3 - make preprocessor.preprocessor report all included files; r=glandium
For GENERATED_FILES scripts that want to report dependencies, this
change makes it easy to use |preprocess|, rather than having to
construct and use |Preprocessor| manually.
2015-10-21 10:38:18 -04:00
Nathan Froyd
203a056782 Bug 1215526 - part 2 - write dependencies to file_generate.py's depfile; r=glandium 2015-10-21 10:36:08 -04:00
Nathan Froyd
d93013ebc9 Bug 1215526 - part 1 - pass dependencies file to file_generate.py; r=glandium
In addition to their inputs declared in moz.build files, generated files
may also depend on other files, such as #includes in preprocessed files.
Let's provide a place for file_generate.py to write out those extra
dependencies.
2015-10-21 09:23:09 -04:00
Michael Ratcliffe
a4ccbf9055 Bug 1211223 - Error running eslint setup on Windows r=mh+mozilla, r=pbro 2015-10-23 14:36:24 +01:00
Nick Alexander
2bc88c8e14 Bug 1114718 - Make |mach bootstrap| support 'mobile/android' builds on Arch Linux. r=mcomella 2015-10-19 16:36:00 -07:00
Andrew Halberstadt
0180005548 Bug 1216575 - [mozbuild] Remove if statement that sets bindir to resource dir on osx, r=spohl 2015-10-21 10:04:21 -04:00
Mike Hommey
df2bf35d9e Bug 1212773 - Extend jar maker syntax for jar file location. r=gps
Indicating a jar currently looks like the following in a jar manifest:
  path/to/name.jar:

The `path/to` doesn't contain the implicit "chrome/" directory. This, in
turn, doesn't allow much flexibility to use the jar maker for what is not
necessarily under chrome/.

To use the jar maker to fill some chrome manifest for the default theme
extension, we currently use a hackish path to get to the right location,
and rely on the chrome.manifest file in the parent directory never to be
picked by the package manifest, which is a quite horrible way to do this,
but worked well enough for that specific use case.

With the need to handle system addons at the build system level, it
becomes necessary to come up with something less hackish.

What this change introduces is an additional syntax for the jar manifest,
in the following form:
  [base/path] sub/path/to/name.jar:

Using this syntax, there is no implicit 'chrome' path. The `base/path` is
relative to the current DIST_SUBDIR, and the `sub/path` is relative to that
`base/path`. The distinction can be useful for build system backends.

The assumption that the "root" chrome.manifest is in the parent directory
of the implicit "chrome" directory dies, and the `base/path` is where the
root chrome.manifest is placed.
2015-10-20 07:36:51 +09:00
Mike Hommey
96b01137ad Bug 1212773 - Pass a base directory to jar maker, instead of a chrome directory. r=gps 2015-10-20 07:36:47 +09:00
Andrew Halberstadt
ba14b6cb2a Bug 1216171 - Fix MozbuildObject.bindir to import the correct mozinfo, r=jmaher 2015-10-19 11:15:15 -04:00
Nathan Froyd
e4e2da55c9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi
2015-10-18 01:24:48 -04:00
Tooru Fujisawa
53a5a94d88 Bug 1208160 - Show information when Xcode requires accepting license agreement; r=gps 2015-10-16 11:17:48 -07:00
Mike Hommey
302d6ecb6c Bug 1211765 - Remove remnants from --with-libxul-sdk. r=bsmedberg
The configure option has explicitly thrown an error for more than a year now,
and it happens that the remaining way to still forcefully use it has been
broken for more than 8 months.
2015-10-14 08:02:34 +09:00
Nick Alexander
4f55b86c08 Bug 1213418 - Part 2: Use Fennec APKs in |mach artifact|; use mozversion to extract build IDs. r=me
DONTBUILD NPOTB

This downloads to a temporary file named uniquely but consistently
based on the URL, and then extracts a build ID using mozversion to use
as a human readable and sortable prefix.  This approach can be re-used
by |mach artifact| based Desktop builds.
2015-10-09 18:32:52 -07:00
Nick Alexander
c3815047b7 Bug 1213418 - Part 1: Use mozregression to download in |mach artifact|. r=me
DONTBUILD NPOTB
2015-10-09 17:47:17 -07:00
Nick Alexander
44e32c2c8a No bug - Message which upstream pushhead is used in |mach artifact|. r=me
DONTBUILD NPOTB
2015-10-09 17:23:46 -07:00
Mike Hommey
68aeaf30b5 Bustage fix for bug 1210687 on a CLOSED TREE. r=me
Looks like I went too fancy removing a part of the jarline regexp before landing.
2015-10-08 17:28:36 +09:00
Mike Hommey
56f097b817 Bug 1210687 - Use install manifests for jar.mn files in FasterMake backend. r=gps 2015-10-08 17:11:23 +09:00
Mike Hommey
2c9f0f2b2f Bug 1210687 - Remove PushbackIter now it's not used anymore. r=gps 2015-10-08 17:11:23 +09:00
Mike Hommey
3fb5792b30 Bug 1210687 - Separate out jar.mn parsing in a separate class. r=gps 2015-10-08 17:11:23 +09:00
Mike Hommey
f2843f8439 Bug 1211957 - Add the repackage step at the end of a faster build on Mac. r=gps
That is necessary until bug 934070 is fixed
2015-10-08 17:11:23 +09:00
Wes Kocher
618bcef407 Backed out changeset 91d4539e00ce (bug 1207245) 2015-10-07 10:19:19 -07:00
Wes Kocher
624dfbe469 Merge fx-team to central, a=merge 2015-10-07 09:58:09 -07:00
Nathan Froyd
141e4d0f43 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi
2015-10-07 16:50:25 -04:00
Carsten "Tomcat" Book
c03f3ce652 merge mozilla-inbound to mozilla-central a=merge 2015-10-06 12:01:35 +02:00