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

816 Коммитов

Автор SHA1 Сообщение Дата
Ryan VanderMeulen 4cffb5461e Merge inbound to m-c. a=merge 2016-05-19 12:46:54 -04:00
Andrzej Hunt 1aec36f857 Bug 1271428 - Pre: add cardview support library r=sebastian
MozReview-Commit-ID: 3rOJRnv1ujO

--HG--
extra : rebase_source : ddd199820174110bafdcf625a6bf9a359290e0ea
2016-05-09 14:05:21 -07:00
Sebastian Hengst f324ab4b75 Backed out changeset bb7ad21e70e5 (bug 1273625) for Windows XP build bustage. r=backout 2016-05-18 20:23:48 +02:00
Chris Manchester 3eb90d9dd1 Bug 1269513 - Implement PKG_CHECK_MODULES equivalent in Python configure. r=glandium
MozReview-Commit-ID: mhFMEG0UXz
2016-05-17 14:40:03 -07:00
Nathan Froyd f8a1b9718d Bug 1273934 - switch android builds to default to libc++; r=snorp
This change is only significant for local developer builds; automation
has been building with libc++ for a week or so now.
2016-05-18 22:01:53 -04:00
Ralph Giles e1abdad2a8 Bug 1273625 - rust: target i686-pc-windows-msvc. r=mshal
We no longer need to support systems without SSE2, so we
can move to the standard i686 target.

MozReview-Commit-ID: 6eaPwnYSzrR
2016-05-18 10:59:01 -07:00
Chris Manchester 303634f7fa Bug 1257958 - Move MOZ_ANDROID_GCM to Python configure. r=nalexander
MozReview-Commit-ID: 90vbYKB8rHJ
2016-04-22 13:01:21 -07:00
Ted Mielczarek 38f0f05268 bug 1266046 - remove NSPR_CONFIGURE_ARGS. r=glandium
MozReview-Commit-ID: 4lwouR4LVit

--HG--
extra : rebase_source : 6103e3ab1ff077efc3109b412e4f3bbcb53c8f5f
2016-04-20 08:37:39 -04:00
Mike Hommey 4cad8671dc Bug 1265627 - Force clang-cl MSVC emulation from moz.configure. r=ted 2016-04-20 07:51:55 +09:00
Mike Hommey b80757a0cb Bug 1265627 - Remove now useless version-related assignments from old-configure. r=ted
Also simplify things around some remaining compiler version checks.
2016-04-20 07:51:55 +09:00
Mike Hommey 5192eab0d6 Bug 1265627 - Move compiler version checks to moz.configure. r=ted 2016-04-20 07:51:55 +09:00
Mike Hommey 8990bb15dd Bug 1264482 - Move adding -std=gnu99 and -std=gnu++11 to moz.configure. r=ted
We were unconditionally adding them, now actually check what the
compilers default to and add the flags if they are necessary.
This will, in the future, allow finer grained policy changes, where
we can decide that C++11 and C++14 are fine, downgrading compilers
that do C++17, etc.
2016-04-19 15:09:37 +09:00
Mike Hommey 341ebd8679 Bug 1259382 - Move CC/CXX/HOST_CC/HOST_CXX to moz.configure. r=ted
At the same time, we improve things slightly by deriving HOST_CC from CC
in a smarter way, as well as CXX from CC, which we weren't doing
previously.

Many related things are not moved at the same time to keep the patch
somehow "small".
2016-04-14 13:21:29 +09:00
Mike Hommey 19f78b2dd2 Bug 1259382 - Remove support for Intel C/C++ compiler. r=ted 2016-04-13 17:11:36 +09:00
Mike Hommey 4c7112f60f Followup for bug 1262781: change ASTMatcher check name to force override config.cache on a CLOSED TREE. r=me 2016-04-13 07:17:06 +09:00
Mike Hommey 101f79b100 Bug 1262781 - Use the host compiler for the ASTMatcher check. r=froydnj
The check is for the clang plugin, which is a host library. It is especially
important to use the host compiler for this check on OSX-on-Linux cross builds.
2016-04-13 06:54:22 +09:00
Mike Hommey 6886f13b7d Bug 1262020 - Move --with-android-ndk, --with-android-toolchain and --with-android-gnu-compiler-version to moz.configure. r=nalexander 2016-04-06 07:25:13 +09:00
Chris Manchester b5ce5e9f35 Bug 1262231 - Fix handling of ICU for artifact builds. r=nalexander
The data file is required as of bug 1239083.

MozReview-Commit-ID: XhETIoUYH8

--HG--
extra : rebase_source : 2d1200a72dadb3e0e8211fa58d3f07bc2453061f
2016-04-05 13:00:21 -07:00
Ted Mielczarek 58e2e722d0 bug 1239083 - use moz.build files to build ICU. r=glandium,waldo
Also fixes bug 926980 - load ICU data from an archive file.

Stop invoking ICU's autoconf build system. Instead, have hand-authored
moz.build files under config/external/icu to build what we need. In addition,
we'll commit a pre-built copy of the ICU data file (currently icudt56l.dat)
under config/external/icu/data to avoid having to build ICU host tools to
generate it. config/external/icu/data also contains some assembly files
which can generate an object file containing the ICU data file contents
so that the JS shell (or standalone JS builds) can be linked directly to
the data without having to deal with the external data file. This requires
yasm or GNU as.

Various bits of packaging have been updated to account for the ICU data file.
XPCOM initialization now sets the ICU data directory so ICU can locate its
data file.

The update-icu.sh script has been modified to read the list of C/C++ source
files out of the ICU Makefiles and update `sources.mozbuild` files under
config/external/icu, as well as build a local copy of ICU using its
autoconf build system to generate the ICU data file to be committed in-tree.


MozReview-Commit-ID: 8Pfkzqt6S1W

--HG--
extra : rebase_source : 31426cddddb5543e0191059ba2f2eb069abe7727
2016-04-05 10:09:12 -04:00
Ted Mielczarek 94fa8fd73a bug 1247396 - drop support for MOZ_SHARED_ICU. r=glandium
MozReview-Commit-ID: 54AQdzJqvvA

--HG--
extra : rebase_source : 41c2516bf65ca4594a68084a61d9a737680cfc9f
extra : source : e40580ed0fe6fab50f1d8d23747c2cf423d93016
2016-02-11 08:21:16 -05:00
Mike Hommey c25921b32d Bug 1261531 - Remove most obvious cases of useless AC_SUBSTs. r=chmanchester
- DEVELOPER_OPTIONS, INTEL_CC, INTEL_CXX, MOZ_ENABLE_QTMOBILITY,
  GTK_CONFIG are or even were never used outside configure.

- MOZ_PROFILELOCKING which gradually became a no-op over the years. This
  also removes the configure flag that sets it.

- XULRUNNER_STUB_NAME is xulrunner-only, and xulrunner is gone. This
  also removes the configure flag that sets it.

- The only use of MOZ_CAN_RUN_PROGRAMS was removed in bug 780561.

- AR_LIST and AR_DELETE have not been used since bug 584474.

- MOZ_COMPONENT_NSPR_LIBS is leftover from bug 1036894.

- MOZ_PNG_ARM_NEON_CHECK is not used since bug 980488.

- MOZ_WEBRTC_LEAKING_TESTS has been no-oped by bug 825510.

- VPX_NEED_OBJ_INT_EXTRACT and NO_INTEGRATED_AS_CFLAGS are not used since
  bug 1151175.

- WCHAR_CFLAGS is not used since bug 904985.
2016-04-05 07:16:44 +09:00
Mike Hommey 989453a94b Bug 1261263 - Switch from -std=gnu++0x to -std=gnu++11. r=froydnj
All the GCC and clang versions we support support the latter, so let's
use it.
2016-04-05 07:16:44 +09:00
Mike Hommey 99fc89b5e2 Bug 1261263 - Remove test for libstdc++ headers conflict with clang 3.3. r=froydnj
Also remove the hack around it.
2016-04-05 07:16:44 +09:00
Mike Hommey 9599eeb33d Bug 1261263 - Unsupport clang < 3.4. r=froydnj
In bug 1254861, we unsupported clang < 3.3, picking 3.3 essentially
because that's the smallest version we had on automation. Bug 1254854
changed that, and the smallest version on automation is now 3.5.

Now, the motivation to unsupport an old version of clang again is that
recent versions don't have the problem with __float128 used in libstdc++
headers (bug 654493). In fact, starting with clang 3.4, the hack we have
in place is not necessary.

So let's just drop support for clang 3.3 instead of keeping that hack
around longer.

As mentioned in bug 1254854, Ubuntu 12.04 LTS has clang 3.4 packages.
2016-04-05 07:16:44 +09:00
Ralph Giles 40394ef9d9 Bug 1261503 - Update win32 rustc to support i586-pc-windows-msvc. r=mshal
Update win32 builds to use a Repack of today's (2016 April 1)
rustc nightly for i686-pc-windows-msvc host and
i586-pc-windows-msvc target.

This should properly support machines without sse2 instructions.
2016-04-04 10:09:46 -07:00
Jan Beich e04f53ad31 Bug 1248391 - Don't force rust --target on unknown platforms. r=ted
--HG--
extra : transplant_source : %A1%9A%10%DD%60%3C%05%C3%E36%16V%E1%E8%82%28%5B%E2%B2%02
2016-03-24 13:43:38 +00:00
Jan Beich f5acfcbdc7 Bug 1248391 - Unbreak --enable-rust on BSDs after bug 1177599. r=ted
--HG--
extra : transplant_source : o%1Ei%5D%B1%1C%A5%F4%7BTquGS0%07-t/%B6
2016-03-24 15:10:44 +00:00
Mike Hommey 81010d54a2 Bug 1260996 - Don't set HOST_{C,CXX,LD}FLAGS from {C,CXX,LD}FLAGS on cross compiles. r=nalexander
The only cross compiles we actively support were pre-setting those
values to avoid it anyways, so it wasn't doing anything useful.
2016-04-01 09:43:26 +09:00
Mike Hommey 0bf3308f26 Bug 1260605 - Remove hack from bug 967556. r=nalexander
The hack was supposed to avoid clobbers when landing bug 967556, which
might have worked somehow back then, but doesn't do anything useful
anymore. In fact, it now breaks the display of some results in
old-configure.
2016-04-01 09:43:26 +09:00
Mike Hommey c12b02c70d Bug 1260647 - Unify cross-compilation setup, while moving some of it to moz.configure. r=ted
Gonk, Android, and the generic cross-compilation setup all were using a
different yet similar way to prefix the toolchain. The latter was even
wrong, since the target and target alias usually don't match actual
toolchain prefixes (which don't include the machine part of the target).
2016-04-01 09:43:26 +09:00
Mike Hommey 1f729885a7 Bug 1260624 - Move CROSS_COMPILE to moz.configure. r=ted
Note that this removes force-setting cross_compiling to yes in
old-configure, which wasn't working because every AC_TRY_COMPILE
resets it with $ac_cv_prog_cc_cross or $ac_cv_prog_cxx_cross.
2016-04-01 09:43:26 +09:00
Mike Hommey a3b5d6520b Bug 1260622 - Refresh config.guess and config.sub from upstream. r=ted
Recent config.sub better handles all the broken android triplets (which
would have worked around bug 1257793), and added the -ios variant that
we've been relying on since bug 1257051, but that bug 1257648 broke by
using config.sub, which didn't support it)

The new config.guess interestingly now returns pc instead of unknown as
maching type on linux, which will, unfortunately, make objdir names
change when they are not manually set.
2016-04-01 09:43:26 +09:00
Eric Rahm f23e86d3d6 Bug 1181142 - Part 2: Make the minimum jemalloc4 allocation size 16 bytes on Windows 64. r=glandium 2016-03-24 16:26:29 -07:00
Mike Hommey edcd74a9d7 Bug 1259381 - Move --with-ccache and --with-compiler-wrapper to moz.configure. r=chmanchester 2016-03-30 07:07:45 +09:00
Mike Hommey 2baf0d3dc1 Bug 1257516 - Handle outputting the tail of config.log for old-configure failures from moz.configure. r=ted 2016-03-30 07:07:30 +09:00
Wes Kocher a7fbcdcca6 Backed out changeset e40580ed0fe6 (bug 1247396) for Windows builds failing to find sicudt.lib
MozReview-Commit-ID: GxVMNWcjdBY
2016-03-25 10:38:54 -07:00
Ted Mielczarek 4aa24eba02 bug 1247396 - drop support for MOZ_SHARED_ICU. r=glandium
MozReview-Commit-ID: 54AQdzJqvvA

--HG--
extra : rebase_source : 55a702b7f134a7c760397f83b1fd1e6044404d7e
extra : amend_source : 1654150e6ebc2bd3a3ff162d486685871640c635
extra : histedit_source : a59866a9ccc244c415ffeb7c7fe685d00b25753d
2016-02-11 08:21:16 -05:00
Chris Peterson b22c76c625 Bug 1258175 - Remove broken -Wunreachable-code-return and -Wunreachable-code-aggressive checks. r=glandium
compiler-opts.m4's check for `MOZ_CXX_SUPPORTS_WARNING(-W, unreachable-code-return, ac_cxx_has_wunreachable_code_return)` is broken. The C/C++ code that configure emits for MOZ_CXX_SUPPORTS_WARNING() actually contains a -Wunreachable-code-return warning and, thus, doesn't actually detect that clang supports the -Wunreachable-code-return flag.

This configure code in MOZ_CXX_SUPPORTS_WARNING():

  AC_TRY_COMPILE([],
                 [return(0);],
                 $3="yes",
                 $3="no")

generates something like:

  int main() {
  return(0);
  ; return 0; }

where the second return, automatically emitted by configure, is unreachable and causes a -Wunreachable-code-return warning.

The fix is to remove the redundant return(0) from MOZ_CXX_SUPPORTS_WARNING(). This allows clang's -Wunreachable-code-return flag to be detected, but then -Wunreachable-code-return breaks other configure checks, including third-party libraries' configure checks (in particular jemalloc) that also have redundant `return(0)`. So all the third-party libraries' configure checks would need to be fixed upstream, which seems like more hassle than the value of the -Wunreachable-code-return warnings.
2016-03-19 00:10:37 -07:00
Mike Hommey cec6eb6fbb Bug 1257468 - Replace tests on BUILDING_JS with tests on MOZ_BUILD_APP==js. r=nalexander
Now that MOZ_BUILD_APP is set to js when building js/src, we can
distinguish those builds with MOZ_BUILD_APP==js instead of BUILDING_JS.
Consequently, remove BUILDING_JS.
2016-03-22 11:09:42 +09:00
Mike Hommey 0ea268dc18 Backout changesets f5090987b7c6, 48a94777837d and a63437a74f7a (bug 1257468) for SM bustage on a CLOSED TREE 2016-03-22 08:27:28 +09:00
Mike Hommey 37d7b30422 Bug 1257468 - Replace tests on BUILDING_JS with tests on MOZ_BUILD_APP==js. r=nalexander
Now that MOZ_BUILD_APP is set to js when building js/src, we can
distinguish those builds with MOZ_BUILD_APP==js instead of BUILDING_JS.
Consequently, remove BUILDING_JS.
2016-03-22 08:05:00 +09:00
Mike Hommey d464f29e5f Bug 1255813 - Remove build system support for Solaris, HPUX and AIX. r=ted 2016-03-15 07:34:50 +09:00
Mike Hommey a768dba8e1 Bug 1255305 - Uniformize CPU_ARCH between old-configure.in and js/src/old-configure.in. r=chmanchester 2016-03-15 07:34:50 +09:00
Ted Mielczarek 68bd5e8c4d bug 1244743 - Replace MOZ_NATIVE_X with MOZ_SYSTEM_X. r=gps
MozReview-Commit-ID: 9ip3qeAXFEe

--HG--
extra : commitid : H6aEkHprVyX
extra : rebase_source : e20d5f4b297caf66711c72cd55dd76f7f9ef9d9c
extra : histedit_source : 47545e0ea61eb66f16545f70e6d3792a389bedb1
2016-02-01 10:49:34 -05:00
Mike Hommey 3fe18eae3b Bug 1175546 - Update GCC to 4.8.5 and bump minimum GCC version required to build. r=froydnj 2016-03-12 09:03:37 +09:00
Mike Hommey 094af54a8f Bug 1254861 - Unsupport building with clang < 3.3. r=froydnj 2016-03-11 09:38:28 +09:00
Ehsan Akhgari 8d56a4a75f Bug 1255211 - Add profiledata to the list of LLVM libraries used by the clang plugin; r=jrmuizel
This library is needed for linking the clang plugin on Windows with the
trunk clang.
2016-03-10 10:06:51 -05:00
Joshua Cranmer 60e0b245fe Bug 1254987 - Get the subconfigure working properly for mail/configure.in. r=glandium
--HG--
extra : amend_source : b6672cca44a5d18d141d3458a64ebb09e98903ed
2016-03-09 23:19:00 +01:00
Chris Peterson ff383edaf7 Bug 1253170 - Enable clang's -Wimplicit-fallthrough warning to catch unintentional switch fallthroughs. r=glandium 2016-02-10 23:31:04 -08:00
Mike Hommey 849ac02d19 Bug 1253553 - Move --enable-artifact-builds, --disable-compile-environment and --enable-build-backend to moz.configure. r=nalexander,r=chmanchester
Note I'm using raw primitives until patterns emerge and we decide on
some helpers.
2016-03-08 15:41:32 +09:00
Mike Hommey 9ac013d5cf Bug 1253502 - Move python virtualenv initialization to moz.configure. r=gps 2016-03-08 15:41:32 +09:00
Mike Hommey 74b4506047 Bug 1253203 - Move parts of configure.py into sandboxed moz.configure. r=nalexander,r=chmanchester
This moves all the reading mozconfig, finding autoconf, refreshing the
old configure, and running the old configure into sandboxed
moz.configure. This effectively bootstraps the sandboxed python configure.
2016-03-08 15:41:32 +09:00
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
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
Mike Hommey bc0709dc9e Bug 762358 - Re-run configure when mozconfig changed in a significant way. r=gps
This adds a format option to mach environment and uses it in client.mk to
create a .mozconfig.json in the objdir, containing all the relevant data
from mozconfig. If the mozconfig doesn't change in a way that alters that
data, we still skip configure.

At the same time, use mach environment in place of mozconfig2configure and
mozconfig2client-mk, which makes us now have only one mozconfig reader.

Also, in the mozconfig reader, keep track of environment variables (as
opposed to shell variables), so that changes such as a variable that was
exported not being exported anymore is spotted. At the opposite, in order
for irrelevant environment variable changes not to incur in re-running
configure, only a set of environment variables are stored when they are
unmodified. Otherwise, changes such as using a different terminal window,
or even rebooting, would trigger reconfigures.

Finally, make mach environment emit both MOZ_OBJDIR and OBJDIR for
client.mk, and cleanup some objdir-related things in client.mk..
At the same time, make the mozconfig reader take MOZ_OBJDIR from the
environment if it is defined there and not in the mozconfig.
2014-07-03 07:15:31 +09:00
Ehsan Akhgari 201c425d11 Backed out changeset 523ef80786ad (bug 1032528) because of build failure on a CLOSED TREE 2014-07-04 11:10:22 -04:00
Ehsan Akhgari 2843fe358e Bug 1032528 - Use CFLAGS 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
Mike Hommey d023cfad45 Bug 1027890 - Restore accidental disabling of MOZ_PSEUDO_DERECURSE; r=gps
CLOSED TREE (but for the commit above this because the commit hook only
appears to look at the tip commit)

--HG--
extra : rebase_source : c88e7e3f4d24dcd59a1a0b5577e3a77da68f3d08
extra : amend_source : 5be936181048b01850e9ef91c25fa0c7363d118d
2014-06-25 23:23:34 -07:00
Mike Hommey 4410e6c0df Bug 938437 - Replace nsStaticXULComponents.cpp with smart use of sections. r=bsmedberg,irc-r=decoder,r=nfroyd,r=gps 2013-11-19 13:45:31 +09:00
Mike Hommey b161fa67a5 Bug 1027890 - Remove all sorts of build system code dedicated to pymake. r=gps 2014-06-25 08:38:28 +09:00
Brian R. Bondy cacb9c55fc Bug 598615 - Rename HAVE_64BIT_OS to HAVE_64BIT_BUILD. r=ted 2014-06-24 22:16:25 -04:00
Wes Kocher b683b68251 Backed out 2 changesets (bug 1027890) for B2G Windows Build bustage on a CLOSED TREE
Backed out changeset bcd694f0e95d (bug 1027890)
Backed out changeset 49cadfcde709 (bug 1027890)
2014-06-24 18:33:46 -07:00
Mike Hommey 195a1f903a Bug 1027890 - Remove all sorts of build system code dedicated to pymake. r=gps 2014-06-25 08:38:28 +09:00
Mike Hommey 1e8bfcb8e4 Bug 1026469 - Use AC_CHECK_LIB instead of MOZ_CHECK_PTHREADS. r=ted 2014-06-21 09:13:58 +09:00
Trevor Saunders dff2c7b54b bug 1019744 - make ICU symbols hidden when compiling ICU as static libraries r=glandium 2014-06-16 16:23:10 -04:00
Birunthan Mohanathas 86fae0d375 Bug 1026535 - Re-enable -Wmismatched-tags/C4099 warnings. r=ehsan 2014-06-19 14:42:19 -04:00
Ryan VanderMeulen 794c2c9953 Backed out changeset 9d86b9442f0b (bug 975011) for Windows debug test bustage that only appears on clobber builds.
CLOSED TREE
2014-06-18 13:21:57 -04:00
Steve Fink df7cba4e45 Bug 975011 - Allow js/src/configure to invoke the in-tree NSPR configure. r=glandium 2014-02-25 14:15:16 -08:00
Ehsan Akhgari b9a106adef Bug 1022349 follow-up: Undo the bad renaming, bustage fix landed on a CLOSED TREE 2014-06-13 11:08:04 -04:00
Ehsan Akhgari 2090d6f39b Bug 1022349 - Part 2: Use clang-cl when building libffi if we're building with clang-cl; r=glandium 2014-06-13 08:28:29 -04:00
Ryan VanderMeulen 0645a74aa3 Merge m-c to inbound on a CLOSED TREE. a=merge 2014-06-12 17:32:33 -04: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
Mike Hommey 38f7a6bf50 Bug 1023703 - Fix static-icu windows builds after bug 1014976, r=mshal 2014-06-12 06:55:55 +09:00
Ehsan Akhgari a6ab01f989 Bug 1022348 - Use the C/C++ compilers passed in through mozconfig in order to preprocess on Windows instead of hardcoding the usage of cl; r=glandium 2014-06-10 07:20:12 -04:00
Ehsan Akhgari d9c7b7c290 Bug 1021378 follow-up: take up my debugging stuff, and typos 2014-06-09 10:59:36 -04:00
Ehsan Akhgari fde35aa8b8 Bug 1021378 - Add support for clang-cl to the build system; r=glandium
This patch does two things: 1. Treat clang on Windows explicitly as MSVC. There
are some places in our build system where we try to detect clang by looking at
the output of $(CC) -v, and that will cause us to believe that we are using
clang, which is not helpful.  This patch defines the CLANG_CL variable when it
detects clang being used on Windows.  It also masquarades clang-cl as MSVC
2012, which is how the compiler introduces itself through the _MSC_VER
predefined variable.

2. Disable a bunch of things which currently are not supported on clang-cl.  As
we proceed with this port, hopefully we'll be able to remove everything in this
list, but this will get us closer to be able to build with clang-cl.

With this patch and clang-cl trunk, we can get past the configure stage of the
build.

--HG--
extra : rebase_source : e5b8d77e4571c936820cec858953d58b6f31e0d5
2014-06-07 10:27:43 -04:00
Mike Hommey 664dfbd8c6 Bug 1014976 - Don't define _DEBUG on Windows debug builds, it's implied by -MDd/-MTd, and breaks builds with -MD/-MT. r=bsmedberg 2014-05-30 09:39:53 +09:00
Mike Hommey 2cf6cf6466 Bug 1014976 - Make MOZ_NO_DEBUG_RTL builds actually disable the MSVC debug CRT everywhere. r=bsmedberg 2014-05-30 09:39:44 +09:00
Mike Hommey c678026e4b Bug 1014976 - Don't make --enable-debug imply using the debug CRT in FFI. r=ryanvm 2014-05-30 09:39:19 +09:00
Mike Hommey bc68e46dd9 Bug 1014976 - Slightly clean up ICU setup for windows debug builds. r=mshal 2014-05-30 09:37:24 +09:00
Jim Chen a1d02e6a5e Bug 1013478 - Use GCC 4.8 on Android if available. r=glandium 2014-05-22 10:44:00 +02:00
Mike Hommey 941abd37a4 Bug 1011797 - Add GNU/kFreeBSD to the list of ECMAScript i18n API supported platforms. r=mshal 2014-05-20 08:47:44 +09:00
Mike Hommey 5ae66d3968 Bug 1007931 - Replace backslashes with forward slashes in compiler wrapper on windows. r=mshal 2014-05-15 07:14:36 +09:00
Ryan VanderMeulen 9eebde7ec1 Bug 810631 - Update libffi to version 3.1. r=jorendorff, r=glandium 2014-05-13 14:51:01 -04:00
Mike Hommey 9dcd156a38 Bug 1003537 - Turn config.status executable in MOZ_CREATE_CONFIG_STATUS instead of MOZ_RUN_CONFIG_STATUS. r=mshal 2014-05-01 10:57:49 +09:00
Henri Sivonen 18ea4c48d4 Bug 1002437 - Build ICU with U_CHARSET_IS_UTF8. r=glandium. 2014-04-30 10:42:59 +03:00
Henri Sivonen f7f68269f9 Bug 1002435 - Build ICU with UCONFIG_NO_IDNA. r=glandium. 2014-04-30 10:41:48 +03: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
Mike Hommey 6e01527c92 Bug 985835 - Move MOZ_DEBUG_FLAGS declaration for MSVC next to the one for GCC. r=mshal 2014-03-26 08:12:12 +09:00
Ehsan Akhgari 020f3fd4d8 Bug 979118 - Add global MMX_FLAGS, SSE_FLAGS and SSE2_FLAGS variables; r=glandium 2014-03-19 21:55:00 -04:00
Andrew McCreight bbb48270a5 Bug 981920 - ASAN builds should use -fno-omit-frame-pointer by default. r=glandium 2014-03-18 14:25:40 -07:00
Jim Chen 40b81f6874 Bug 983730 - Support Android SDK build tools v19.0.3. r=mshal 2014-03-15 17:20:06 -04:00
Steve Fink 53bf680602 Backed out changeset 7cff27cb2845 (bug 975011), for breaking just about everything not on tbpl
--HG--
extra : rebase_source : 740fc0d5cd27b0cc7d06ce9f9c2f848c9d071b20
2014-03-11 09:53:58 -07: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
Steve Fink 25655217d2 Bug 975011 - add an option to configure and build NSPR from within js/src build. r=glandium 2014-02-25 14:15:16 -08:00
Ulrich Weigand 4a17320401 Bug 976648 - Toplevel build/config for powerpc64le-linux support. r=bsmedberg, r=blassey 2014-03-05 12:04:44 -05:00
Ehsan Akhgari 993937b946 Bug 978784 - Stop exporting ICU symbols from xul.dll; r=glandium
--HG--
extra : rebase_source : a8e3f2d93738e03f82f30eddb522e0ae7f19c030
2014-03-04 10:42:54 -05:00
Phil Ringnalda c2c338a253 Back out 47afb5f53400 (bug 978784) because it's still busted with a clobber
CLOSED TREE
2014-03-03 21:26:19 -08:00
Ehsan Akhgari 3e9d3c59e3 Bug 978784 - Stop exporting ICU symbols from xul.dll; r=glandium 2014-03-03 22:38:55 -05:00