Commit Graph

418 Commits

Author SHA1 Message Date
Benoit Girard
20d379b12e Bug 1239498 - Don't ask for FPO on win64. r=ehsan 2016-01-13 18:35:23 -05:00
Ralph Giles
ff42e06b72 Bug 1239366 - Remove leading 'v' from detected versions. r=mshal
The leading 'v' was intended to distinguish the detected from
the literal version string, but this is non-obvious, and could
be confused with the git tag convention.

Instead, make the strings match, but put the detected version
first since it's what configure is likely to act on.
2016-01-13 11:20:00 -08:00
Mike Hommey
f6876363ac Bug 1235738 - Simplify MOZ_DEBUG_DEFINES. r=gps
Now that it's not directly used in command lines, it can just become a list
of symbols that ought to be defined. This simplifies all the uses of it.
2015-12-31 07:28:05 +09:00
Landry Breuil
734d750e17 Bug 1225753: move $prefix default initialization before it gets used r=glandium 2015-12-26 13:40:54 -05:00
Sotaro Ikeda
e1321cf912 Bug 1214249 - Set MOZ_FLOAT_ABI in armv6 case r=glandium 2015-12-21 22:48:39 -08:00
Nathan Froyd
2959265ed1 Bug 1208566 - require Rust 1.5 for --enable-rust builds; r=mshal
Rust 1.5 features fine-grained dependency tracking that we need for
proper incremental builds.  As a side effect, it also features choosing
between the builtin-to-Rust jemalloc and the system allocator, which
Gecko needs for interoperation.  (Gecko needs to make Rust use the
system allocator, which then gets redirected into Gecko's copy of
jemalloc if necessary.)  It's not great to require an unstable Rust
target here, but we need to upgrade at some point anyway, so we might as
well make people aware of the upgrade requirement sooner rather than
later.
2015-12-17 12:14:19 -08:00
Wes Kocher
ab5c2fdc6e Backed out 2 changesets (bug 1208566) for breaking mulet builds
Backed out changeset a5618a5cbc7f (bug 1208566)
Backed out changeset f3fd530324ee (bug 1208566)
2015-12-17 09:34:33 -08:00
Nathan Froyd
1bbe9a982d Bug 1208566 - require Rust 1.5 for --enable-rust builds; r=mshal
Rust 1.5 features fine-grained dependency tracking that we need for
proper incremental builds.  As a side effect, it also features choosing
between the builtin-to-Rust jemalloc and the system allocator, which
Gecko needs for interoperation.  (Gecko needs to make Rust use the
system allocator, which then gets redirected into Gecko's copy of
jemalloc if necessary.)  It's not great to require an unstable Rust
target here, but we need to upgrade at some point anyway, so we might as
well make people aware of the upgrade requirement sooner rather than
later.
2015-12-17 08:25:03 -08:00
Jan Beich
c592cbd9e4 Bug 1228208 - Make sure ICU flags are prepended before system flags. r=glandium 2015-12-02 09:40:50 +00:00
Mike Hommey
341164ef20 Bug 1229541 - Turn NSPR_CFLAGS, NSS_CFLAGS, MOZ_JPEG_CFLAGS, MOZ_PNG_CFLAGS and MOZ_ZLIB_CFLAGS into AC_SUBST_LISTs. r=mshal 2015-12-02 11:24:34 +09:00
Mike Hommey
c92b4e9eed Bug 1178266 - Link against libatomic when necessary. r=froydnj 2015-12-02 11:04:37 +09:00
Mike Hommey
cc7e23b5d8 Bug 1228068 - Always set MOZ_USING_COMPILER_WRAPPER when a compiler wrapper is involved. r=gps on a CLOSED TREE 2015-11-26 08:08:29 +09:00
Mike Hommey
571476e323 Bug 1224460 - Avoid make variable references in TK_CFLAGS, TK_LIBS, MOZ_CAIRO_CFLAGS, MOZ_ICU_CFLAGS and CAIRO_FT_CFLAGS. r=gps 2015-11-19 08:05:51 +09:00
Mike Hommey
dc8d7f5659 Bug 1224490 - Kill LIBXUL_DIST. r=mshal 2015-11-17 10:00:19 +09:00
Ralph Giles
2304dc63ea Bug 1223093 - Bump required rustc version to 1.4. r=mshal
Bug 1220754 added code which requires feaures in the rust 1.4
standard library. Update our configure version check so we
catch this up front.
2015-11-09 10:53:00 -08:00
Nick Alexander
3eb6a927fb Bug 1220476 - Make --disable-compile-environment work for Android builds without an Android NDK. r=glandium 2015-11-02 16:46:42 -08:00
Mike Hommey
bba9cb6be5 Backout changeset 3ced6f84960c (bug 1178266) because it was not reviewed by a peer and isn't a complete fix. 2015-10-31 07:36:49 +09:00
Mike Hommey
f2a96b899e Bug 1178266 - Link against libatomic when necessary r=huangwenjun06
---
 build/autoconf/toolchain.m4 | 26 ++++++++++++++++++++++++++
 mfbt/moz.build              |  3 +++
 2 files changed, 29 insertions(+)
2015-10-29 22:19:35 +08:00
Simon Montagu
b43cdcd175 Bug 479520: Implement IDNA2008 standard for International Domain Names, patch 1: build system changes, r=ted; code changes, r=jfkthame 2015-10-28 07:05:15 -07:00
Carsten "Tomcat" Book
13e11e60f6 Backed out changeset 533f3277cdbb (bug 479520) for bustage on a CLOSED TREE 2015-10-28 12:29:27 +01:00
Simon Montagu
0eb47abb65 Bug 479520: Implement IDNA2008 standard for International Domain Names, patch 1: build system changes, r=ted; code changes, r=jfkthame 2015-10-28 03:46:44 -07:00
Nick Alexander
fcf66979c8 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
Sebastian Kaspari
066f8a25de Bug 1189306 - Add Android Design Support library to gradle and mach builds. r=nalexander 2015-10-15 13:01:32 +02:00
Fabrice Desré
9521b5b535 Bug 864843 - Part 3. Add build config of ICU for Android r=glandium 2015-10-19 22:25:44 -07:00
Nathan Froyd
c082fc152f Bug 1164921 - part 2 - remove now-obsolete --enable-android-libstdcxx; r=glandium 2015-10-15 16:32:25 +09:00
Nathan Froyd
7f075960d4 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
a40deb2059 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
244c5f93c3 Bug 1193206 - Build with Android support library 23.0.1. r=nalexander 2015-10-07 09:13:34 +02:00
Carsten "Tomcat" Book
6e46667c14 merge mozilla-inbound to mozilla-central a=merge 2015-10-06 12:01:35 +02:00
Terrence Cole
7bf2fa0feb Bug 1205012 - Allow rust source code in SpiderMonkey; r=mshal 2015-09-18 13:55:29 -07:00
Sebastian Kaspari
404609cc29 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
2015-10-05 14:59:53 +02:00
Mike Hommey
63e6851011 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
9a08a8facc 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
d7b7903647 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
13501ce691 Merge mozilla-central to fx-team 2015-09-29 12:41:12 +02:00
Sebastian Kaspari
4171b18b4a Bug 1208576 - Build with appcompat-v7 regardless of MOZ_NATIVE_DEVICES flag. r=nalexander 2015-09-28 12:10:42 +02:00
Ehsan Akhgari
f7aa19335f 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
785992e1b5 Bug 904572 - Add support for generating clang compilation database; r=glandium,r=gps 2015-09-29 09:23:50 +09:00
Mike Hommey
57c58210df 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
38d3e0bd69 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.
2015-09-12 15:04:19 -04:00
Nick Alexander
2d40e159e4 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.
2015-09-12 14:59:31 -04:00
Nick Alexander
626486d95c Bug 1204260 - Pre: Move AAR searches later. r=me
This merely groups the AAR searches in the configure output, which
reads a little easier.
2015-09-11 19:13:45 -07:00
Nick Alexander
b8eab59285 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!
2015-09-22 10:04:26 -07:00
Mike Hommey
b61d5fe1e6 Bug 1203857 - Allow to build standalone js against jemalloc4. r=gps 2015-09-15 10:21:38 +09:00
Samael Wang
e6aeb5877c Bug 1198237 - Pass $RANLIB in icu.m4. r=ted 2015-08-25 20:50:00 -04:00
Ted Clancy
a9a82b5233 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
5a5839c9b1 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
9f527fd802 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
3786d45326 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
666295f515 Bug 856404 - Enable libraries folding on mingw. r=glandium 2015-08-06 13:26:33 +02:00