Commit Graph

524 Commits

Author SHA1 Message Date
Fabrice Desré
4a509b8e36 Bug 864843 - Part 3. Add build config of ICU for Android r=glandium 2015-10-19 22:25:44 -07: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
Mike Hommey
9af046b5b4 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
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
Carsten "Tomcat" Book
71e22d0c44 merge mozilla-inbound to mozilla-central a=merge 2015-10-06 12:01:35 +02:00
Terrence Cole
b16e5ef7d1 Bug 1205012 - Allow rust source code in SpiderMonkey; r=mshal
--HG--
extra : rebase_source : b837db972abeb5b2a955c4b52b7ceb6f31c74660
2015-09-18 13:55:29 -07: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
Mike Hommey
9f2c4e94ba Bug 1209875 - Get rid of XULPPFLAGS. r=gps
The flags added in toolkit/locales/Makefile.in turn out not to be actually
used, so just remove that.

The remaining uses of XULPPFLAGS are to set debug flags depending on whether
MOZ_DEBUG is set or not. Just set a dedicated variable with the right value
from configure.
2015-10-01 07:30:48 +09:00
Mike Hommey
d0d3300abc Bug 1209398 - Enable the FasterMake backend by default for desktop Firefox builds. r=gps
The order in which backends appear is important, and dealing with deduplication
in configure.in is not really nice, so for all simplification purposes, this relies
on using AC_SUBST_SET, which does the deduplication and keeps the original order
in which items appear (despite its name).
2015-09-30 11:51:47 +09:00
Mike Hommey
8171e1469d Bug 1209398 - Make AC_SUBST_SET emit a list of unique items instead of an actual set. r=gps
While the name AC_SUBST_SET suggests the underlying type would be a set, it does
not actually matter that much in moz.build, and is not used that much anyways.
2015-09-30 11:51:47 +09:00
Carsten "Tomcat" Book
191ce6efd0 Merge mozilla-central to fx-team 2015-09-29 12:41:12 +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
Ehsan Akhgari
3dffc9c59e Bug 1204763 - Enable cross compiling the clang plugin for OS X on Linux; r=glandium 2015-09-28 22:14:53 -04:00
Ehsan Akhgari
b73f093357 Bug 904572 - Add support for generating clang compilation database; r=glandium,r=gps 2015-09-29 09:23:50 +09:00
Mike Hommey
86a76ef43b Bug 1207897 - Add a configure option to build multiple build backends. r=gps
Also record what backends were requested at configure time so that running
`mach build-backend` or `config.status` uses the same set.
2015-09-29 09:23:50 +09: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
Mike Hommey
55fe15cdb5 Bug 1203857 - Allow to build standalone js against jemalloc4. r=gps 2015-09-15 10:21:38 +09:00
Samael Wang
256da665f0 Bug 1198237 - Pass $RANLIB in icu.m4. r=ted
--HG--
extra : rebase_source : 9b0e22ef1de0551c12ab5321dc3965b58bd89e2d
2015-08-25 20:50:00 -04:00
Ted Clancy
60b0829fea Bug 1172609 - Part 1: Build B2G using the version of ICU that exists in the tree. r=ted 2015-06-15 00:20:04 -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
Nathan Froyd
d903c2ee7e Bug 1192277 - remove check for LLVM PR 8927; r=glandium
The PR was fixed in early 2011.  clang 3.3, the oldest version of clang
that we build with, was released in mid-2013.  It's safe to say that all
versions of clang now have this fix, and we can delete the check.
2015-08-07 19:35:43 -04:00
Nathan Froyd
0a5095ccbf Bug 1191884 - remove now-unnecessary check for GCC PR49911; r=glandium
This PR was fixed in the GCC 4.7 development cycle.  Since we require
GCC 4.7 now, we no longer have to check for this bug.
2015-08-06 20:41:38 -04:00
Jacek Caban
da30b32ccd Bug 856404 - Enable libraries folding on mingw. r=glandium 2015-08-06 13:26:33 +02:00
Nathan Froyd
e3c514cea5 Bug 1188499 - reformat MOZ_SUBCONFIGURE_ICU with proper indentation; r=mshal
Trying to decipher MOZ_SUBCONFIGURE_ICU given its lack of indentation is
difficult at best.  It looks like some lines have tabs, and those tabs
make everything line up right...convert everything to spaces to make
sure things line up correctly.
2015-07-28 13:46:55 -04:00
Mike Hommey
4275fcc9a3 Bug 1187101 - Add -Wl,-Bsymbolic to LDFLAGS for ASan builds. r=mshal 2015-07-28 08:19:12 +09: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
Ted Mielczarek
f6af9a3909 bug 1163828 - build system changes to support building for iOS. r=glandium
--HG--
extra : commitid : EAxgCmmuwAx
extra : rebase_source : 854a55e62573e59e042a326d62450fa3fbf2db18
2015-06-10 11:10:40 -04:00
Mike Hommey
d2f37fb969 bug 1172632 - Move some allocator related configure checks in a common location for both top-level and js/src to use. r=mshal 2015-06-10 10:49:22 +09:00
James Willcox
1da727fb41 Bug 1165460 - Prefer GCC 4.9 for Fennec builds r=glandium 2015-06-03 10:26:17 -05:00
Juan Gomez
6bb99c65f3 Bug 1164610 - Increase ANDROID_VERSION to 18 in icu.m4 checks because 17 (JB4.2) doesn't compile. r=Waldo 2015-05-17 09:18:00 -04:00
ISHIKAWA, Chiaki
4c6363c62a Bug 1165733 - Avoid evaluating empty $ANDROID_VERSION in condition where integer is expected, r=glandium
CLOSED TREE
2015-05-20 17:13:00 -07: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
Makoto Kato
375749b0b9 Bug 866301 - Part 3. Use system ICU for gonk-JB or later. r=glandium 2015-04-24 11:22:14 +09:00
Makoto Kato
7d22b3ec0a Bug 866301 - Part 2. Use in-tree ICU source code for gonk. r=glandium 2015-04-21 17:31:38 +09:00
Jacek Caban
0178c95f4c Bug 1147839 - Fixed building installer on mingw. r=glandium 2015-04-01 12:50:44 +02:00
ijdt.editor@gmail.com
3258816e9c Bug 1139429 - Fix ICU configuration for SunOS/OpenSolaris. r=glandium 2015-03-31 13:28:00 +02:00
Hector Zhao
f516cc8b09 Bug 1146869 - Make AM_PATH_{NSPR,NSS} compatible with input version in the form of major.minor. r=glandium 2015-03-24 06:45:38 +08:00
L. David Baron
6760f2e797 Bug 1142420 - Require that the same compiler version be used for C and C++ (at the very least, so that our version checks are valid for both). r=glandium
I tested locally that both checks give the expected error if I
temporarily change the != to an =.
2015-03-25 08:07:14 +09:00
L. David Baron
56a377b2d2 Bug 1142352 - Add a configure test for the gcc version of the host compiler when cross compiling. r=glandium
The duplication of the code higher up is a little bit annoying, but I
don't see an easy way to avoid that.  It's also still quite far from
duplicating everything.

I tested locally with a Fennec build that if I bump the requirement from
4.6 to 4.9, I get the expected build error.
2015-03-25 08:07:09 +09:00
Bob Owen
b7b394038a Bug 1144155 Part 1: Bump our minimum supported GCC version for Gecko up from 4.6 to 4.7. r=glandium 2015-03-19 10:56:13 +00:00
Carsten "Tomcat" Book
6caed0d2ed Backed out changeset e3a4467dc9df (bug 1142352) for causing arm build bustage 2015-03-13 09:43:25 +01:00
Carsten "Tomcat" Book
061fc98b65 Backed out changeset 86a5fea1cd01 (bug 1142420) 2015-03-13 09:42:30 +01:00
L. David Baron
23b631aeab Bug 1142420 - Require that the same compiler version be used for C and C++ (at the very least, so that our version checks are valid for both). r=glandium
I tested locally that both checks give the expected error if I
temporarily change the != to an =.

--HG--
extra : transplant_source : %01N%B9%8B%BC%1E%07%D6%AE%BA2%7B%87%FB%25Y%19%B6%A9%D3
2015-03-12 23:28:55 -07:00
L. David Baron
7c6b3d298f Bug 1142352 - Add a configure test for the gcc version of the host compiler when cross compiling. r=glandium
The duplication of the code higher up is a little bit annoying, but I
don't see an easy way to avoid that.  It's also still quite far from
duplicating everything.

I tested locally with a Fennec build that if I bump the requirement from
4.6 to 4.9, I get the expected build error.

--HG--
extra : transplant_source : D%D3%FE%169%05%D0X%F3KK%17%9EW%88%BCs%9B%86%5D
2015-03-12 23:28:55 -07:00