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

76 Коммитов

Автор SHA1 Сообщение Дата
Nick Alexander 7fd985b3bb Bug 1220476 - Make --disable-compile-environment work for Android builds without an Android NDK. r=glandium
--HG--
extra : commitid : 9vtzh7HRAB0
extra : rebase_source : d60c6614bf109ba8c0427941b335984d661e85c5
extra : histedit_source : 72ee79eb44ae20ae283768538e747ec2fe355f34
2015-11-02 16:46:42 -08:00
Nick Alexander 3323ad2cde 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.

--HG--
extra : commitid : 2jNIgZpLUq2
extra : source : 0957d3435ac22765d7868cb3c7db1e0787836bc3
2015-10-27 17:41:49 -07:00
Sebastian Kaspari 579c312daa Bug 1189306 - Add Android Design Support library to gradle and mach builds. r=nalexander
--HG--
extra : commitid : J3JxjMlJdcC
extra : rebase_source : 8f4624bcf432201e345f75c834e08755c53766ad
2015-10-15 13:01:32 +02:00
Nathan Froyd 798533b7f5 Bug 1164921 - part 2 - remove now-obsolete --enable-android-libstdcxx; r=glandium 2015-10-15 16:32:25 +09:00
Nathan Froyd b5c94ae442 Bug 1164921 - part 1 - add --with-android-cxx-stl to select the C++ STL to use; r=glandium 2015-10-15 16:32:25 +09:00
Sebastian Kaspari a595f4ee85 Bug 1193206 - Build with Android support library 23.0.1. r=nalexander
--HG--
extra : commitid : 6lU66oAQuFC
extra : rebase_source : fe145d252cb484596c2abce793a6cbb6eadc3968
2015-10-07 09:13:34 +02:00
Sebastian Kaspari faf41dd8da Bug 1197147 - Mach build: Use version 8.1 of Google Play Services. r=nalexander
This patch also adds the new base (sic) library play-services-basement.

Note that the package names have changed too:
* play-services-base: com.google.gms -> com.google.gms.base
* play-services-basement: * -> com.google.gms

--HG--
extra : commitid : EcmxZA10rzV
extra : rebase_source : f39b361807a0b8227f3fb9a6d73e066241c8e36c
2015-10-05 14:59:53 +02:00
Sebastian Kaspari 03b4af6028 Bug 1208576 - Build with appcompat-v7 regardless of MOZ_NATIVE_DEVICES flag. r=nalexander
--HG--
extra : commitid : 5PmivDcq7NB
extra : rebase_source : 01f72d51d670e1cce51b96f2258300df42251485
2015-09-28 12:10:42 +02:00
Nick Alexander 8a89dfb148 Bug 1204260 - Pin Android package versions to android-22 and build-tools-22.0.1. r=glandium
Right now, --with-android-sdk expects a path to a specific Android SDK
version, like /path/to/platforms/android-22.  That path is exposed as
ANDROID_SDK; the Android SDK root is exposed as ANDROID_SDK_ROOT.

Right now, the provided platform's version number is extracted into
ANDROID_TARGET_SDK.  The extracted ANDROID_TARGET_SDK is checked
against a minimum version number (supplied as a parameter to
MOZ_ANDROID_SDK).

After this patch, --with-android-sdk expects what is now
ANDROID_SDK_ROOT, and then derives ANDROID_SDK from that path and a
pinned SDK platform version number.  The exact version number which we
search for is now a parameter given to MOZ_ANDROID_SDK.  We accept and
fail, with a helpful message, if we recognize an old-style ANDROID_SDK
path.

The existing MOZ_ANDROID_{MIN,MAX}_SDK_VERSION variables remain as
they are.

Right now, the Android build tools are searched in a deterministic but
non-obvious manner.  After this patch, the exact build tools version
number is now a parameter given to MOZ_ANDROID_SDK.

--HG--
extra : commitid : 7z4T3EYH8fg
extra : rebase_source : 118a2a163d0deb1896e4959f12e9fbb132732bd8
extra : histedit_source : f18feda343e3c8e9f0dbb65eb7127262690e3cad
2015-09-12 15:04:19 -04:00
Nick Alexander 960eeeb471 Bug 1204260 - Pre: Don't expose ANDROID_{BUILD,PLATFORM}_TOOLS. r=glandium,gbrown
This stops exposing ANDROID_BUILD_TOOLS and ANDROID_PLATFORM_TOOLS via
AC_SUBST.  We expose most tools already, and this adds EMULATOR, and
consumes it (and ADB) where appropriate.

--HG--
extra : commitid : 9u0pibgE00
extra : rebase_source : 04e420c53d1d75ab8f055436d7dd69e148168c67
extra : histedit_source : a930a34f4dda44ee91b52caf68e02877b0502f01
2015-09-12 14:59:31 -04:00
Nick Alexander 7fe859f12c Bug 1204260 - Pre: Move AAR searches later. r=me
This merely groups the AAR searches in the configure output, which
reads a little easier.

--HG--
extra : commitid : 8yoM0J2NNOq
extra : rebase_source : 989bf064ca0f2d4e0126726dad7529a218e11e62
extra : histedit_source : f8c211e64741b4558b185bfbf5523b67cc428232
2015-09-11 19:13:45 -07:00
Nick Alexander 416f8c64aa Bug 1108782 - Part 2: Explode AAR files at configure time. r=glandium
This gets us a limited version of AAR support: we can consume static
AAR libraries, where here static does not refer to linking, but to
static assets that are fixed at build-backend time and not modified
(or produced) during the build.  This lets us pin our dependencies
(and move to Google's versioned Maven repository packages, away from
Google's unversioned ad-hoc packages).

By restricting to static AAR libraries, we avoid having to handle
truly complicated dependency trees, as changing parts of generated AAR
files require delicate rebuilding of the APKs (and internal libraries)
that depend on the AAR files.

It is possible that we will generate AARs in the tree at some time.
Right now, we don't do that, even for GeckoView: the AARs produced are
assembled as artifacts at package time and are intended for external
consumption.  We might want this for GeckoView and Fennec at some
time; we should consider using Gradle everywhere at that point.

The patch itself does the simplest possible thing (which has precedent
from Gradle and other build systems): it simply "explodes" the AAR
into the object directory and uses existing mechanisms to refer to the
exploded pieces.

AARs have both required and optional components.  Each component is
defined with an expected and required flag. If a component is expected
and not present, or not expected and is present, an error is raised.
If the component is expected and present, autoconf's ifelse() macro is
used to define the relevant AAR_* component variables.  If the
component is not expected and not present, no action is taken.  A
consuming build backend therefore can guard all AAR_* component
variables with just the top-level AAR variable.

Many AAR files have empty assets/ directories.  This patch doesn't
explode empty assets/ directories, protecting against trivial changes
to AAR files that don't impact the build.

There's a lot not to like in this approach, including:

* We need to manually reference internal AAR libs;
* I haven't separated the pinned version numbers out of configure.in.

However, it's closer to what we want than what we have!

--HG--
extra : commitid : 11kUhDAkCn5
extra : rebase_source : 2454c9842ab3296d53ca5fa394a5a962aa382c8d
extra : histedit_source : e2f97502d215016925e93500b8fd93f8b32fba3a
2015-09-22 10:04:26 -07:00
Nathan Froyd d5796a148d Bug 1195502 - don't include android toolchain checks for gcc < 4.7; r=nalexander
We don't support gcc < 4.7 when building Gecko, so there's not much
point in potentially checking for those versions.
2015-08-14 17:11:32 -04:00
Sebastian Kaspari caaa022467 Bug 1180132 - android.m4: RecyclerView library should not be dependent on flag $MOZ_NATIVE_DEVICES. r=nalexander
--HG--
extra : commitid : 4ccus9nKM9q
extra : rebase_source : 6716d0e7d9985423533ba94dadf6f9ebdc92b379
extra : amend_source : 3f5febdbe07b0321d15cf8c5f4c8b99828ef54de
2015-07-03 14:46:57 +02:00
Sebastian Kaspari 1e85c546d0 Bug 1171288 - Add ability to build with RecyclerView support library. r=nalexander
--HG--
extra : rebase_source : 781c82348e9ea08183aa8560532ffb63222f8f8d
2015-06-16 19:52:44 +02:00
James Willcox 1da727fb41 Bug 1165460 - Prefer GCC 4.9 for Fennec builds r=glandium 2015-06-03 10:26:17 -05:00
Nathan Froyd 81521abb68 Bug 1164657 - delete dead code for MOZ_ANDROID_LIBSTDCXX flags determination; r=nalexander
We require ndk-r8e, so we don't need to support paths for all the other
NDKs prior to that now.  Also took the opportunity to clean the paths up
so things fit on a reasonable screen.
2015-05-13 15:24:32 -04:00
Nathan Froyd 6415da1d81 Bug 1164619 - delete bit of android.m4 for older NDKs; r=nalexander
We require version r8e of the NDK, so bits handling r8a or before are no
longer necessary.
2015-05-13 15:03:15 -04:00
Akos Kiss 250212e129 Bug 1122111 - Change pattern in autoconf/android.m4 to recognize arm-unknown-linux-androideabi target string returned by recent config.sub. r=glandium 2015-01-16 02:08:00 -05:00
Ehsan Akhgari 17aef44cfc Bug 1117028 - Try to look for zipalign in all of Android build tools; r=nalexander
Some Android SDK installations do not have the zipalign program in
the same directory as other Android build tools.  For example,
zipalign may be found in /build-tools/21.1.2 whereas the
rest of the build tools are in /build-tools/android-4.4.
2015-01-06 23:33:48 -05:00
Nick Alexander 3cab90a5de Bug 1099501 - Export and use ANDROID_TOOLS where appropriate. r=snorp,bnicholson
In certain configurations, in particular when installing the Android SDK
using HomeBrew, one sees a configuration with symlinks like:

    [brian@brian-macbook git]$ ls -l /usr/local/Cellar/android-sdk/23.0.2/
    total 72
    ...
    lrwxr-xr-x   1 brian  admin    38 Nov 14 16:39 platforms -> ../../../var/lib/android-sdk/platforms
    ...
    drwxr-xr-x  26 brian  admin   884 Nov 14 17:43 tools

In this case, we have
ANDROID_SDK=/usr/local/Cellar/android-sdk/23.0.2/platforms/android-21.

It is an anti-pattern to use ANDORID_SDK/.. to find other paths in the
tree.  This pattern is used in at least two places:

1) When we try to find
/usr/local/Cellar/android-sdk/23.0.2/platforms/android-21/../../tools,
we end up in the /usr/local/var/lib subtree.  This patch works around
that by exporting and using ANDROID_TOOLS; ANDROID_TOOLS itself is
extracted using path matching, rather than following .. through the
filesystem.

2) We also need to use ANDROID_SDK_ROOT rather than
ANDROID_SDK/../.. through-out.

--HG--
extra : rebase_source : 5e0323a94f2b80550f17a624e16f338cdeec406d
2014-11-17 11:12:00 -08:00
Nick Alexander 452c901e08 Bug 1091087 - Disable MOZ_NATIVE_DEVICES when MOZ_ANDROID_RESOURCE_CONSTRAINED is set. r=glandium
This saves dexing and shipping the Google Play Services and other Google
libraries, which add resources and about 3megs of code.

Due to ordering issues, the relevant flags and toggles were moved to
configure.in and exposed early enough to be used by confvars.sh.
2014-11-03 20:04:19 -08:00
Mike Hommey deb5d056a6 Bug 1090107 - Define stlport dependencies in moz.build. r=mshal 2014-10-29 13:29:42 +09:00
Jim Chen 52a3b4cf21 Bug 1067018 - Always specify throw() for nothrow placement new/delete; r=glandium 2014-09-26 15:45:45 -04:00
Richard Newman 3f46878e67 Bug 1063868 - Allow exclusion of fonts from constrained APKs. r=nalexander 2014-09-09 11:57:55 -07:00
Richard Newman c6cdef09e8 Bug 1063643 - Allow for building Fennec with a limited set of resources. r=nalexander 2014-09-06 08:25:20 -07:00
Richard Newman b5e2830b25 Bug 1063109 - Allow for aapt to be invoked with max-res-version argument. r=nalexander 2014-09-05 21:10:23 -07:00
Nathan Toone dfb824bdec Bug 1055909 - Check for google play services after loading configure.sh from branding. r=glandium 2014-09-04 08:01:00 +02:00
Mike Hommey 9be788de2f Bug 1050037 - Remove STLPORT_LIBS/STLPORT_LDFLAGS from Makefiles. r=mshal 2014-08-07 13:48:10 +09:00
Richard Newman 6858470513 Bug 1042382 - Follow-up: remove broken use of $1 as minimum SDK version, because that's not what it means. r=trivial 2014-07-25 14:39:14 -07:00
Richard Newman 9834a6db65 Bug 1042382 - Part 1: configure.in changes to allow Android SDK ranges to be specified. r=glandium 2014-07-25 13:27:49 -07:00
Richard Newman d024d6279f Backed out changeset cb8ca90a354d, 894afa1b44ae (bug 1042382) 2014-07-25 13:45:03 -07:00
Richard Newman 0dc8562a92 Bug 1042382 - Part 1: configure.in changes to allow Android SDK ranges to be specified. r=glandium 2014-07-25 13:27:49 -07:00
Nick Alexander 099acdb8e1 Bug 1032756 - Look for Android {build-,platform-}tools in all possible locations. r=glandium
Google has a history of moving the Android tools around.  We don't care
where they are, so let's try to find them anywhere we can.
2014-07-04 09:05:56 -07:00
Wes Johnston 475bb7bb3a Bug 1006158 - Add ability to pull in v7 libraries and google support libraries. r=nalexander 2014-06-11 11:00:17 -07:00
Jim Chen a1d02e6a5e Bug 1013478 - Use GCC 4.8 on Android if available. r=glandium 2014-05-22 10:44:00 +02:00
Nick Alexander 5c164c923e Bug 960640 - Make finding Android build-tools future-proof. r=glandium
This lists the directories in build-tools/*, sorts them by
version (favouring new-style 'android-*' directories), and then takes
the newest version in which aapt exists.
2014-04-17 12:07:26 -07:00
Brad Lassey 34443c56ed bug 979438 - Unify android target SDK versions, follow up to address nits r=nalexander
--HG--
extra : rebase_source : 841e8eece32e10d6d2c3443d5bcbf7ac935dd157
2014-03-28 19:47:32 -04:00
Brad Lassey eade3f50ca bug 979438 - Unify android target SDK versions r=nalexander
--HG--
rename : embedding/android/geckoview_example/AndroidManifest.xml => embedding/android/geckoview_example/AndroidManifest.xml.in
rename : mobile/android/geckoview_library/AndroidManifest.xml => mobile/android/geckoview_library/AndroidManifest.xml.in
rename : mobile/android/geckoview_library/project.properties => mobile/android/geckoview_library/project.properties.in
2014-03-25 23:27:16 -04:00
Jim Chen 40b81f6874 Bug 983730 - Support Android SDK build tools v19.0.3. r=mshal 2014-03-15 17:20:06 -04:00
Trevor Saunders ebd5906b4c bug 933189 - teach android.m4 about build tools v 19.0.2 r=mshal 2014-02-26 14:50:53 -05:00
Mike Hommey 80e79be833 Bug 462427 - Stop requiring CROSS_COMPILE being set. r=ted 2014-02-11 10:37:46 +09:00
Wes Johnston f244dbda1d Bug 962764 - Support Android 4.4 sdk. r=blassey,gps 2014-01-27 14:59:25 -08:00
James Gilbertson 7219ddd9c8 Bug 949314 - Use shell expansion instead of a relative path to get the path for ANDROID_SDK_ROOT. r=glandium
--HG--
extra : rebase_source : 0e8f1881be639678eb80915cfb70aa08a68a7a13
2013-12-17 10:59:04 -05:00
Trevor Saunders aeba5a1b72 bug 900797 - fix warnings as errors with gcc 4.8 from ndk r9 r=glandium 2013-11-20 20:00:05 -05:00
Chris Kitching dfe4a3a964 Bug 709230 - Part 5: activate Proguard. r=gbrown,rnewman 2013-11-18 17:30:00 -08:00
retornam cfec5f4428 Bug 941889 - Make configure recognize Android 19 tools. r=nalexander 2013-11-21 20:19:20 -08:00
Makoto Kato a03f26ded3 Bug 891718 - Can override CPP/CC/CXX on Android. r=glandium 2013-11-07 17:39:13 +09:00
Mike Hommey ea2492b720 Bug 930454 - Remove --with-android-platform. r=ted 2013-10-25 08:23:40 +09:00
Panos Astithas 3ef77d9f54 Search for Android SDK build tools version 18.1.0 (bug 919466). r=glandium 2013-09-24 10:14:33 +03:00