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

600 Коммитов

Автор SHA1 Сообщение Дата
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