Граф коммитов

5 Коммитов

Автор SHA1 Сообщение Дата
Mark Finkle 6dbb5ad52e Bug 1143888 - Integrate the Adjust install tracking SDK. r=mfinkle
--HG--
extra : rebase_source : d4a41c1193d93aa7774e68b302e9f9b13b5ec28c
2015-04-08 22:49:16 -07:00
Nick Alexander 177f286d2b Bug 1125330 - Expose |mach| output after failures invoking from Gradle. r=me,f=ally
--HG--
extra : rebase_source : 8d801f739f77640a587231404e22506f52342438
2015-01-27 21:41:14 -08:00
Nick Alexander 4f3f4284e1 Bug 1098239 - Rewrite mobile/android Gradle integration. r=me
This is a big patch, but it's essentially NPOTB.  The part that is POTB
is ... removing Gradle integration from the build.  I've implemented
|mach gradle-install| as a substitute for the build system stuff; it's
just so much easier to iterate on a mach command than a moz.build and
Makefile.in.

I'm landing this with self-review because this lessens the impact of the
Gradle integration on the build system and because I am the only person
who understands either the old or the new system.

You'll need to run |mach gradle-install| at top level to configure the
new Gradle integration.  But |mach gradle ...| does the right thing
configuration steps too.

This patch rewrites most of the Gradle integration.  The major changes
are:

* all .gradle files move into mobile/android/gradle;
* all the Gradle projects live in the object directory;
* mozconfig exposed to all build.gradle files;
* simplification of Android configuration between build.gradle files;
* support for user-specified version of build tools;
* first steps towards supporting builds from the source directory;
* bumps Gradle to 2.2.1;
* bumps the Android-Gradle plugin to 0.14.4.

This is seemingly a step backwards given that we'd prefer to ship the
.idea directory in the source directory.  But in fact we get closer to
that; it's possible to run ./gradlew in the source directory and get a
reasonable build.  We'll progress with this in time.  The win right now
is that the projects are nested, which makes importing work better on
Linux machines.

Unfortunately IntelliJ 13 and 14 now have conflicting Android-Gradle
plugin version requirements, so we now only support IntelliJ 14.0.2 and
above.

--HG--
rename : mobile/android/base/gradle_AndroidManifest.xml => mobile/android/gradle/base/AndroidManifest.xml
rename : mobile/android/base/gradle_AndroidManifest.xml => mobile/android/gradle/branding/AndroidManifest.xml
rename : mobile/android/gradle/omnijar/gradle_AndroidManifest.xml => mobile/android/gradle/omnijar/AndroidManifest.xml
rename : mobile/android/base/gradle_AndroidManifest.xml => mobile/android/gradle/preprocessed_code/AndroidManifest.xml
rename : mobile/android/base/gradle_AndroidManifest.xml => mobile/android/gradle/preprocessed_resources/AndroidManifest.xml
rename : mobile/android/thirdparty/gradle_AndroidManifest.xml => mobile/android/gradle/thirdparty/AndroidManifest.xml
2014-12-22 19:49:04 -08:00
Nick Alexander 9414bc9e09 Bug 1104855 - Don't rebuild the omnijar on every Gradle build. rs=margaret
This ticket splits a new omnijar project off of base.  The new
project's omnijar task knows the inputs (well, those under
mobile/android) and the omni.ja output and only re-packages the
omnijar when the task's output is out of date.

With this modification, local building and most importantly the
Android JUnit test cycle is much improved, because the APK is not
re-deployed when only test code is modified.

In addition, the new project lists the omnijar inputs as "Java" source
directories.  Previously, they were listed as "Java resource" source
directories, which meant that the omnijar inputs were packaged into
the final APK.  This wasted time and space.

--HG--
extra : rebase_source : 12c94fdfbee9b7c319d5cfb4d7faad254e90abfc
2014-11-25 09:54:31 -08:00
Nick Alexander 75e27bd0f3 Bug 1041395 - Add gradle configuration. r=gps
--HG--
rename : mobile/android/base/docs/index.rst => mobile/android/base/docs/uitelemetry.rst
2014-11-10 13:47:30 -08:00