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

664 Коммитов

Автор SHA1 Сообщение Дата
Mike Hommey 70fc00898e Bug 1253203 - Remove everything COMM_BUILD. r=nalexander,r=chmanchester
comm-central doesn't set it since bug 1040009.
2016-03-08 15:41:32 +09:00
Mike Hommey 29758f5f42 Bug 1250297 - Make python configure output config.status instead of old-configure doing it. r=gps
The nice side effect is that now we can have actual dicts for defines
and substs from the start, which simplifies so things, although it
requires adjustments to some unit tests.
2016-03-08 15:41:32 +09:00
Ehsan Akhgari b7dad904d3 Bug 1246334 - Add support for building the clang plugin using clang-cl; r=glandium 2016-02-26 07:29:48 -05:00
Chris Peterson dcaae98769 Bug 1233297 - Part 2b: Remove some unnecessary warning flags. r=glandium
-Wno-psabi has not been necessary since we updated the build machines to Android NDK r8c three years ago in bug 826133.

-Wsometimes-initialized is not necessary because it is implicitly enabled by clang's -Wuninitialized, which is enable by -Wall.

-Wcast-align is very noisy and we apparently only enable it for gcc on 32-bit x86 builds?

-Wno-unused-local-typedef is no longer necessary. This is the clang flag; gcc's flag is -Wno-unused-local-typedefs, with an 's'. Suppressing gcc's warning was recently deemed unnecessary and WONTFIX'd in bug 1243604. Unsurprisingly, we no longer need it on clang either.

-Wrange-loop-analysis is no longer necessary because it is implicitly enabled by -Wloop-analysis, which is enabled by the previous commit.
2016-02-24 22:51:21 -08:00
Chris Peterson 8f65e4251e Bug 1233297 - Part 2a: Enable some more warnings. r=glandium
-Wsign-compare is enabled by gcc's -Wall (for C++ only), but not by clang's -Wall. -Wsign-compare is enabled for C and C++ by gcc's -Wextra and clang's -Wextra, which we don't use.
2016-02-02 00:04:26 -08:00
Chris Peterson fb67cdc658 Bug 1233297 - Part 1: Consolidate MOZ_C*_SUPPORTS_WARNING configure checks in compiler-opts.m4. r=glandium 2016-02-02 00:04:26 -08:00
Michael Comella c48a870a5f Bug 1233238 - Compile with play-services-{ads,analytics,appindexing} to support Adjust SDK. r=nalexander
On a CLOSED TREE because this is Android only.

When we switched to fine-grained Google Play Services bundling (Bug
1115004), we stopped shipping com.google.android.gms.analytics.  That
silently breaks Adjust, which queries the Google Ad ID using
reflection: now the package isn't present!  This patch restores the
Play Services libraries that Adjust relies on.  (Sadly, this bloats
our APK tremendously.)

There is some hijinkery, however: the Play Services libraries
reference a library (org.apache.http) that is deprecated in Android
23!  However, the library is still present on Android 23 devices,
which buys Google time to replace the offending code.  This compiles
just fine, breaks the Proguard global optimization pass.  To give
Proguard the information, we add the library as a Proguard "library
JAR".  This is equivalent to the Google-provided Gradle `useLibrary`
directive.

--HG--
extra : commitid : I4rTyC8lxLd
extra : rebase_source : 96f30d735e898cb9853d53f236ac8e2337186814
extra : amend_source : 3e4d68789b3ef980e4e1d7f743e332bdbb6be176
2016-02-04 16:10:29 -08:00
Ehsan Akhgari ef18719332 Bug 1245269 - Part 2: Add a configure check for the existence of the new AST Matcher API names; r=glandium 2016-02-05 10:29:39 -05:00
Nathan Froyd 4f05a4f840 Bug 1177599 - always pass --target to rustc; r=mshal
rustc, unlike our typical C++ compilers, can target multiple platforms
with ease through its use of the --target flag.  To support
cross-compiling, we just need to pass the appropriate --target option.

rustc uses specific names for its accepted --target option, however, and
they are slightly different from the values we get out of autoconf.  So
in addition to checking whether rustc can accept --target for our chosen
platform, we also need to munge autoconf's idea of the target into
something rustc understands.
2016-01-25 16:25:59 -05:00
Ted Mielczarek 26f7b04705 bug 1243349 - fix NSPR link paths for NSS. r=mshal
--HG--
extra : commitid : 4eavO61nNKX
extra : rebase_source : f5ddf4c1df5105f6f46b7780b0c49d89970fc47e
extra : amend_source : e5d3d5b809c27608c3d897373c0ea888ebfceaa1
2016-01-27 09:28:40 -05:00
Carsten "Tomcat" Book 10d60e258b Backed out changeset b538734b6a17 (bug 1243349) for bustage on a CLOSED TREE 2016-01-27 16:13:12 +01:00
Ted Mielczarek c2b6bb1e3b bug 1243349 - fix NSPR link paths for NSS. r=glandium
--HG--
extra : commitid : 7MNlvrCCE6W
extra : rebase_source : a2919eef6b02edc31682ba1a9a12f66b19b66814
extra : amend_source : 394e2b0a5f7e3fb89ffc88f12a186628745b202b
2016-01-27 09:28:40 -05:00
Ted Mielczarek 76f0fb5769 bug 1230117 - Stop using NSPR's configure. r=glandium
--HG--
extra : commitid : 3xfupwYWRJC
extra : rebase_source : 157a22a7d50b0ea61c0ba24c0c9163f1c0f5a806
2016-01-21 06:04:11 -05:00
Mike Hommey 648c73cb1d Fixup for bug 1239217 fixing a shell construct that does not work in autoconf. r=me 2016-01-22 16:16:06 +09:00
Mike Hommey 6acbd96f93 Bug 1239217 - Enable the hybrid FasterMake+RecursiveMake backend for artifact builds. r=gps 2016-01-22 15:43:27 +09:00
Mike Hommey bdc9ed0d4a Bug 1240990 - Define all backends in one place. r=gps
When adding a backend, we currently have to add them in three different
places so that they appear in the right places.

Instead, keep the list in a single place.
2016-01-21 13:54:03 +09:00
Chris Manchester a01c2483da Bug 1214885 - Add a "ChromeUrl" build backend to write out information useful for resolving chrome urls. r=glandium
The result of running this backend is a json file containing an array with 3 elements:
a map from resource:// and chrome:// url prefixes to corresponding objdir directories,
a map of overrides, and a map from objdir files to srcdir files (with a flag for whether
the file was preprocessed) for js file in FinalTargetFiles. A subsequent commit implements
the procedure to find an replace based on the url mapping, subsistute based on overrides,
and find sourcedir files based on objdir files.

--HG--
extra : commitid : Di6Ro5c9sTK
2015-10-01 18:56:53 -05:00
Benoit Girard 27e9f3eef5 Bug 1239498 - Don't ask for FPO on win64. r=ehsan
--HG--
extra : commitid : 8sl7tz7vAhY
2016-01-13 18:35:23 -05:00
Ralph Giles 019f175b5f 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 8143237ec5 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 cb1fa398ed Bug 1225753: move $prefix default initialization before it gets used r=glandium
--HG--
extra : commitid : 2xboEEUEFU6
2015-12-26 13:40:54 -05:00
Sotaro Ikeda 85b62c4bb8 Bug 1214249 - Set MOZ_FLOAT_ABI in armv6 case r=glandium 2015-12-21 22:48:39 -08:00
Nathan Froyd 2792f8ec0b 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 5f38bdeff2 Backed out 2 changesets (bug 1208566) for breaking mulet builds
Backed out changeset a5618a5cbc7f (bug 1208566)
Backed out changeset f3fd530324ee (bug 1208566)

--HG--
extra : commitid : DaxmN4TLzwv
2015-12-17 09:34:33 -08:00
Nathan Froyd b5bdd4fc50 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 814acd7ab8 Bug 1228208 - Make sure ICU flags are prepended before system flags. r=glandium 2015-12-02 09:40:50 +00:00
Mike Hommey 826f769939 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 572059374e Bug 1178266 - Link against libatomic when necessary. r=froydnj 2015-12-02 11:04:37 +09:00
Mike Hommey 2fdf01e9df 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 8c97828a10 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 5ab167c3b0 Bug 1224490 - Kill LIBXUL_DIST. r=mshal 2015-11-17 10:00:19 +09:00
Ralph Giles 9d9e7996be 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 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
Mike Hommey c3385563ef 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 beffa7ff42 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 b24d492d72 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 b4bb8871b5 Backed out changeset 533f3277cdbb (bug 479520) for bustage on a CLOSED TREE 2015-10-28 12:29:27 +01:00
Simon Montagu 89109c7aa9 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 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
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
Makoto Kato 395bb213d6 Bug 946974 - Warning spam when building ICU. r=glandium 2015-03-04 19:13:12 +09: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 b7a9931db3 Bug 1122931 - Don't overwrite the AS variable in toolchain.m4; r=glandium
It looks like overwriting AS here is not intentional.  Before this patch,
it is impossible to override AS through mozconfig for anything that runs
past this stage in configure.
2015-01-20 09:42:06 -05:00
Abhishek Bhattacharya cec7cbbd44 Bug 1119921 - Fix "$ANDROID_VERSION" comparison tests. r=nalexander
--HG--
extra : amend_source : 50fa678c38bac71807cd09991d1b4239b5f666b9
2015-01-17 16:42:04 -08:00
Trevor Saunders bf4448d426 Bug 1077549 - Only support gcc 4.6+. r=glandium 2015-01-08 20:21:37 -05:00
Ehsan Akhgari 42db4dcf46 Bug 1119225 - Emulate Visual C++ 2013 Update 3 when using clang-cl; r=ted 2015-01-08 10:33:21 -05:00
Ted Mielczarek 9a6971c4f8 bug 1117900 - Explicitly require Update 3 for MSVC 2013. r=glandium 2015-01-08 08:23:28 -05:00
Ryan VanderMeulen 51d06e05f4 Bug 1114577 - Miscellaneous build system cleanups now that Windows SDK 8.1 is the minimum supported version. r=glandium 2015-01-07 11:32:07 -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
Ehsan Akhgari 03981eb9bb Bug 1115426 - Fix static-analysis builds on OSX on the infrasturcture, and add a mozconfig for such builds; r=glandium
This also cleans up some of the existing mozconfig files.
2015-01-06 12:01:13 -05:00
Ehsan Akhgari 721832ff85 Bug 1117029 - Move the GCC minimum version checks to MOZ_TOOL_VARIABLES; r=glandium 2015-01-06 12:01:12 -05:00
Ms2ger 16ada4e714 Bug 1117068 - Part b: Remove checks for GCC PR 39608; r=mshal
The fix is included in GCC 4.4, which is our minimum supported version.
2015-01-05 19:18:58 +01:00
Ehsan Akhgari 9c078e03a4 Bug 1112974 - Try to find llvm-config through clang first before looking at $PATH; r=glandium
Right now, if the LLVMCONFIG variable is not set in the .mozconfig, we
first look for the system default llvm-config and only then we ask clang
itself, which breaks building with the clang plugin if you make $CC and
$CXX point to a non-default clang binary.  This patch fixes the issue
by reversing the search order.

--HG--
extra : rebase_source : 23ab716f4e220097e4c31092475dba769f4e7dfc
2014-12-19 13:13:44 -05:00
Jed Davis c70c01f1a7 Bug 777948 - Enable position-independent executables on B2G (>= JB 4.1). r=mwu 2014-12-12 14:33:00 -05:00
Ehsan Akhgari 6a31450ee5 Bug 1109246 - Support the ToT clang in the clang-plugin; r=jrmuizel 2014-12-10 10:46:10 -05:00
Georg Koppen 144cfd9761 Bug 1067893 - Detect OTOOL in configure. r=glandium 2014-11-25 05:12:00 -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
Mike Hommey 9aefc0509a Bug 1094080 - Add missing m4 quoting in MOZ_RUN_ALL_SUBCONFIGURES. r=mshal 2014-11-06 09:29:12 +09:00
Carsten "Tomcat" Book f8e30aaa48 merge fx-team to mozilla-central a=merge 2014-11-04 13:17:35 +01:00
Mike Hommey 932ed211cf Bug 1091505 - Run subconfigures in parallel. r=gps
On automation, this brings Windows configure time on a clobber from 5:30 to 3:10.

Sadly, because make needs to run under intl/icu/host before configuring
intl/icu/target, intl/icu/host needs to be configured independently. Fortunately,
that's not configured for normal windows builds anyways.

Also, having multiple subconfigures sharing the same cache file is dangerously
racy. Fortunately, not a lot do. In fact, only js/src and $_subconfigure_subdir
do, so force the latter (only used for ldap sdk on comm-central) not to
configure in parallel.
2014-11-04 13:50:18 +09: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
Ehsan Akhgari 3414c53230 Bug 1090512 - Emulate the clang-cl compiler version in toolchain.m4; r=glandium
--HG--
extra : rebase_source : 65732c6696699ffb62acb76c19133537448e6fb7
2014-10-29 12:33:32 -04:00
Mike Hommey deb5d056a6 Bug 1090107 - Define stlport dependencies in moz.build. r=mshal 2014-10-29 13:29:42 +09:00
Tooru Fujisawa 8189e6bc60 Bug 1080910 - Add USE_ICU variable separated from ENABLE_INTL_API. r=glandium 2014-10-10 02:55:00 -04:00
Ehsan Akhgari 4913c8345e Bug 1082987 - Never use the debug runtime libraries for Windows ASAN builds; r=glandium
This is a non-supported AddressSanitizer configurations, and it
will fail the build.
2014-10-16 09:13:27 -04:00
Mike Hommey 3fa39f0e02 Bug 1081682 - Make --with-ccache use --with-compiler-wrapper under the hood. r=mshal
Also, avoid removing --with-ccache from all subconfigure calls. Only remove it
from NSPR's.
2014-10-15 14:47:02 +09:00
Ian Neal 75fa17cfb0 Bug 1060966 Fix for Can't open perl script "/comm-central/mozilla/../build/win32/dumpenv4python.pl": No such file or directory r=glandium 2014-10-08 22:43:47 +08:00
Mike Hommey 707134faf6 Bug 857628 - Add a --enable-pie configure option to build target programs as position independent executables when supported by gcc/clang. r=mshal 2014-09-26 07:33:56 +09:00
Ed Morley 0e5462f1d2 Backed out changeset e2fee324047d (bug 857628) for causing bug 1076892 2014-10-03 14:19:45 +01:00
Jim Chen 52a3b4cf21 Bug 1067018 - Always specify throw() for nothrow placement new/delete; r=glandium 2014-09-26 15:45:45 -04:00
Mike Hommey c8ae3e0b2f Bug 857628 - Build target programs as position independent executable when supported by gcc/clang. r=mshal 2014-09-26 07:33:56 +09:00
Christian Holler 0d5c56b958 Bug 1058500 - Add MSan support to the build system. r=ted,waldo 2014-09-11 23:21:46 +02: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 51f6cc88c1 Bug 1062219 - Don't build build/clang-plugin as an external directory. r=jcranmer 2014-09-04 17:44:01 +09:00
Makoto Kato 51a18d912f Bug 1051669 - Use --disable-tools on cross build option of ICU. r=glandium 2014-08-14 17:08:44 +09:00
Mike Hommey 89777800f9 Bug 1047267 - Move remaining OS_LIBS and EXTRA_LIBS to moz.build. r=gps
* * *
Bug 1047267 - To fold with "Move remaining OS_LIBS and EXTRA_LIBS to moz.build"
2014-08-07 14:21:03 +09:00
Mike Hommey 220b276684 Bug 1047267 - Allow to reference libraries from third-party build systems in USE_LIBS. r=gps 2014-08-07 14:20:38 +09:00
Mike Hommey 9be788de2f Bug 1050037 - Remove STLPORT_LIBS/STLPORT_LDFLAGS from Makefiles. r=mshal 2014-08-07 13:48:10 +09:00
Mike Hommey 62416a2177 Bug 1049510 - Fix GCC_USE_GNU_LD when building with clang on linux. r=mshal 2014-08-07 02:59:31 +09:00
Mike Hommey ea0116d0ef Bug 1045783 - Make most *_LIBS variables from configure lists in moz.build. r=mshal 2014-08-06 07:24:55 +09:00
Mike Hommey 7af6fcdf75 Bug 1046533 - Completely wrap subconfigures. r=mshal
While bug 903369 added some kind of wrapping, msys mangling on Windows made
it hard to make the python wrapper invoke subconfigures itself. This change
overcomes this, allowing to run subconfigures entirely independently of
the main configure if necessary, or to do more fancy checks without having
to resort to m4 and shell.
2014-08-02 08:02:30 +09:00
Nathan Froyd 2ed4280f6b Bug 1042878 - part 1 - make most *CFLAGS variables from configure lists in moz.build; r=glandium 2014-07-24 11:54:42 -04:00
Wes Kocher e97345c0bf Merge m-c to fx-team 2014-07-25 16:27:34 -07: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
Mike Hommey 45b81608ea Bug 1040641 - Ignore AC_SUBSTs for variables we don't have use for but that autoconf itself exports. r=gps 2014-07-23 08:40:12 +09:00
Jan de Mooij b1697f7931 Bug 1031529 part 3 - Step defining JS_THREADSAFE, remove --disable-threadsafe. r=glandium 2014-07-24 11:56:45 +02:00
Steve Fink 7710497dcd Bug 975011 - Allow js/src/configure to invoke the in-tree NSPR configure. r=glandium
--HG--
extra : rebase_source : 92960a00e4d89eb9f2af4247c1434f31e27392a0
2014-02-25 14:15:16 -08:00
Joshua Cranmer 86f5a4b027 Bug 1038029 - Bad cache file is used for the LDAP C SDK, r=glandium
--HG--
extra : rebase_source : 260945940ca3eab61b1ff4ee0e206f44747e346d
2014-07-15 20:14:50 -05:00
Mike Hommey 854e1175b7 Bug 1036645 part 3 - Fix the subconfigure wrapper heuristics to decide when to kill config.cache. r=gps 2014-07-11 19:06:14 +09:00
Mike Hommey c562c67dc0 Bug 1036645 part 2 - Make using a separate config.cache the default for AC_OUTPUT_SUBDIRS. r=gps
All subconfigures are essentially doing it already, so just inverse the process. That would also limit problems with additional subconfigures (all the recent ones had to come with their own config.cache)
2014-07-11 19:06:07 +09:00
Mike Hommey fcaa4d487d Bug 1036645 part 1 - Use AC_OUTPUT_SUBDIRS to call ICU configure. r=gps
As ICU needs an objdir different from its source directory, add support for
that in AC_OUTPUT_SUBDIRS.
2014-07-11 19:05:59 +09:00
Mike Hommey c52d31562a Bug 1035543 - Remove the MOZ_PSEUDO_DERECURSE variable. r=gps 2014-07-10 14:11:52 +09:00
Tim Taubert a7777778f7 merge m-c to fx-team; a=merge 2014-07-06 09:16:35 -07:00
Ehsan Akhgari 9dc77f0f7a Bug 1032528 - Use C{,PP,XX}FLAGS when determining the compiler version in case it can be affected by what is there; r=glandium
This for example allows us to use -fmsc-version in CFLAGS/CXXFLAGS
with clang-cl.
2014-07-04 10:43:08 -04:00