Commit Graph

332 Commits

Author SHA1 Message Date
Jed Davis
108d4524d5 Bug 777948 - Enable position-independent executables on B2G (>= JB 4.1). r=mwu 2014-12-12 14:33:00 -05:00
Ehsan Akhgari
b96c196756 Bug 1109246 - Support the ToT clang in the clang-plugin; r=jrmuizel 2014-12-10 10:46:10 -05:00
Georg Koppen
da4453f15f Bug 1067893 - Detect OTOOL in configure. r=glandium 2014-11-25 05:12:00 -05:00
Nick Alexander
f16d77b0a2 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
1a13d61773 Bug 1094080 - Add missing m4 quoting in MOZ_RUN_ALL_SUBCONFIGURES. r=mshal 2014-11-06 09:29:12 +09:00
Carsten "Tomcat" Book
25c8587e41 merge fx-team to mozilla-central a=merge 2014-11-04 13:17:35 +01:00
Mike Hommey
0039ffce9d 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
f504e228bd 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
9214591b2c 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
bc89ac2f89 Bug 1090107 - Define stlport dependencies in moz.build. r=mshal 2014-10-29 13:29:42 +09:00
Tooru Fujisawa
dbd0aadeb5 Bug 1080910 - Add USE_ICU variable separated from ENABLE_INTL_API. r=glandium 2014-10-10 02:55:00 -04:00
Ehsan Akhgari
1259e667ec 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
d2f7286d95 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
ac61fe6ead 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
173edb382b 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
2078de0125 Backed out changeset e2fee324047d (bug 857628) for causing bug 1076892 2014-10-03 14:19:45 +01:00
Jim Chen
5031ab0f15 Bug 1067018 - Always specify throw() for nothrow placement new/delete; r=glandium 2014-09-26 15:45:45 -04:00
Mike Hommey
209fae0983 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
53335f3133 Bug 1058500 - Add MSan support to the build system. r=ted,waldo 2014-09-11 23:21:46 +02:00
Richard Newman
b1b7691e2d Bug 1063868 - Allow exclusion of fonts from constrained APKs. r=nalexander 2014-09-09 11:57:55 -07:00
Richard Newman
24259b0a9e Bug 1063643 - Allow for building Fennec with a limited set of resources. r=nalexander 2014-09-06 08:25:20 -07:00
Richard Newman
93685a1fb3 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
31885783c5 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
d0c653396e Bug 1062219 - Don't build build/clang-plugin as an external directory. r=jcranmer 2014-09-04 17:44:01 +09:00
Makoto Kato
cb3a5de9fe Bug 1051669 - Use --disable-tools on cross build option of ICU. r=glandium 2014-08-14 17:08:44 +09:00
Mike Hommey
0f4c5d9244 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
19e8ecfce2 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
490b04e4f0 Bug 1050037 - Remove STLPORT_LIBS/STLPORT_LDFLAGS from Makefiles. r=mshal 2014-08-07 13:48:10 +09:00
Mike Hommey
d8e176dce0 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
0f1191f02f Bug 1045783 - Make most *_LIBS variables from configure lists in moz.build. r=mshal 2014-08-06 07:24:55 +09:00
Mike Hommey
59053e50c0 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
aa850c4c7d 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
88a01acaab Merge m-c to fx-team 2014-07-25 16:27:34 -07:00
Richard Newman
5a3e3ba194 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
a1c9f42496 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
e0a0aeac29 Backed out changeset cb8ca90a354d, 894afa1b44ae (bug 1042382) 2014-07-25 13:45:03 -07:00
Richard Newman
1d18f6a238 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
7f13c61d0e 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
6490db0af1 Bug 1031529 part 3 - Step defining JS_THREADSAFE, remove --disable-threadsafe. r=glandium 2014-07-24 11:56:45 +02:00
Steve Fink
00e43e2148 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
381045dc6c 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
479a81628d 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
fe76207882 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
233511dfc9 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
4409f0d493 Bug 1035543 - Remove the MOZ_PSEUDO_DERECURSE variable. r=gps 2014-07-10 14:11:52 +09:00
Tim Taubert
1106fb6fb5 merge m-c to fx-team; a=merge 2014-07-06 09:16:35 -07:00
Ehsan Akhgari
d0a7c92c94 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
0debda49e4 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
6f03a33e5f 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
b346e33675 Backed out changeset 523ef80786ad (bug 1032528) because of build failure on a CLOSED TREE 2014-07-04 11:10:22 -04:00