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

5886 Коммитов

Автор SHA1 Сообщение Дата
Gregory Szorc 4702a9636e Bug 1283203 - Package Windows 10 Anniversary Update SDK; r=glandium
The Visual Studio installer now prompts to install Windows 10 SDK
10.14393.0, which corresponds to the SDK released with the Windows 10
Anniversary Update. Since it is the latest SDK available, let's start
packaging it instead of the older SDK in our standalone toolchain
archive.

MozReview-Commit-ID: 29T6hMHX18x

--HG--
extra : rebase_source : b22dba5f922dcbeb4147ac1a744c772e82e0e9ed
2016-09-09 09:55:44 -07:00
Sebastian Hengst 1984be4adc Backed out changeset d67ee15cd875 (bug 1290988) 2016-09-13 17:42:29 +02:00
Greg Tatum 77ecdadfe2 Bug 1290988 - Add the mach generate-css-db command; r=chmanchester,tromey
Provide a single mach command to automatically generate the static
database of CSS properties that devtools uses for the inspector
and various editors.

MozReview-Commit-ID: 8E2jwxF0KbM

--HG--
extra : rebase_source : 2cd21cd08f431ff933c3fd89ebca3e6684fb80f8
2016-08-29 11:35:52 -05:00
Carsten "Tomcat" Book c737c8cee6 Merge mozilla-central to autoland 2016-09-13 13:09:21 +02:00
Mike Hommey 935ad653b8 Bug 1299919 - Set CPP/CXXCPP from python configure. r=chmanchester 2016-09-13 13:25:18 +09:00
Akihiko Odaki 3ac9332f73 Bug 1298565 - Do not decode preprocessor output as ASCII r=glandium
MozReview-Commit-ID: BmXVO4KHRR2

--HG--
extra : rebase_source : b39f1289bb45d5b318e370ea54d48450f6cd37d2
2016-08-30 18:47:28 +09:00
Mike Hommey 6070365bf2 Bug 1289946 - Work around preprocessor default defines in get_compiler_info(). r=gps
Some compilers on some platforms by default #define some of the values
we're using in the source we use in get_compiler_info(). Namely,
mingw-gcc #defines WINNT by default, and the WINNT in the source is then
replaced by 1, breaking the check.

The C preprocessor, fortunately, doesn't expand macros inside C strings.
So instead of `%KERNEL WINNT`, we output `%KERNEL "WINNT"`, and strip
out the double quotes. For good measure, we do this for all values in
the source used in get_compiler_info().

--HG--
extra : rebase_source : dd4cc2b8c3bf0cb508b09598706b74ccc12162be
2016-09-08 07:27:56 +09:00
Michael Layzell 71cd730292 Bug 1301171 - Remove unused rust.m4 file, r=froydnj
MozReview-Commit-ID: ABaZzfTAbrQ
2016-09-08 10:34:50 -04:00
Valentin Gosu 4a0dbd7270 Bug 1301069 - Backed out bug 1185120 (changeset 38cad72a77a6) a=backout 2016-09-08 00:04:07 +02:00
Ralph Giles ca13da128b Bug 1299864 - Target i585 linux when building rust code. r=glandium
Update linux32 tooltool manifest to use a gecko build of rustc and cargo
for x86_64-unknown-linux-gnu host targeting both x86_64 and i586.

    rustc built with --enable-llvm-static-stdcpp --disable-docs
    --enable-debuginfo --release-channel=stable from 'stable' branch
    rust 1.11.0 (commit 9b21dcd6a89f38e8ceccb2ede8c9027cb409f6e3)

Pass --target i585-unknown-linux-gnu when building for 32-bit linux.
We mostly want this for official builds, but Debian needs it too,
in both cases to support old machines without SSE2 instruction set
support, so while it means developers will have to `rustup target add
i585-unknown-linux-gnu` when building for this architecture that is
not a common task (most linux devs will be on 64-bit) and it reduces
variance and surprise if binaries are distributed.

MozReview-Commit-ID: 3mAjWxYGpwZ
2016-09-07 10:40:29 -07:00
Carsten "Tomcat" Book 656d6db419 Merge mozilla-central to mozilla-inbound 2016-09-07 17:21:27 +02:00
Michael Layzell 9c75f35e6a Bug 1018486 - Part 10: Add an analysis to reject the kungFuDeathGrip pattern on function results and member variables, r=ehsan
MozReview-Commit-ID: K8rehjAxIA6
2016-09-07 10:50:48 -04:00
Sebastian Kaspari 9b9a3bee93 Bug 1300569 - Add palette-v7 support library to build. r=ahunt
MozReview-Commit-ID: F29cOyHsd8B

--HG--
extra : rebase_source : 0c568158a20ae34687b135ce414ccfb5f710d228
2016-09-06 08:39:16 +02:00
Bob Owen fe52c7727a Bug 1287426 Part 1: Ignore clang warnings for implicit conversions in Chromium sandbox code. r=ehsan
MozReview-Commit-ID: Bq0PocdYdm9
2016-09-06 08:57:20 +01:00
Yen Chi Hsuan 5a098d36c7 Bug 1185120 - Convert raw pointers in DNS.cpp and nsHostResolver.cpp to smart pointers. r=valentin 2016-09-05 03:47:58 +08:00
Chris Manchester 8577fd7039 Bug 1298536 - Move --with-linux-headers to Python configure. r=glandium
MozReview-Commit-ID: FWovXD9rjed

--HG--
extra : rebase_source : 4a9693b512c51b37abd5cdafcedc21cff8b4434c
2016-08-31 14:29:29 -07:00
Chris Manchester 70af134705 Bug 1298536 - Allow flags passed to try_compile to be a depends function. r=glandium
MozReview-Commit-ID: BH9oJPHei3r

--HG--
extra : rebase_source : bfbb5402401d8602fe54a8869a813ab85422def2
2016-08-31 14:23:20 -07:00
Andrew Halberstadt b8794fb825 Backed out changeset 0d714827d06c for causing local build failures on Android (bug 1292674)
MozReview-Commit-ID: LPos2cJMyRR
2016-09-01 13:34:01 -04:00
Andrew Halberstadt 9d41cac3c3 Bug 1292674 - Also allow android build-tools v23.0.1 in configure, r=gps
I recently discovered that build-tools 23.0.3 doesn't seem to exist on Fedora. Although
I fixed mozboot to download 23.0.1 instead, the builds were still failing because of
configure required 23.0.3.

This seems like an artificial limitation, as building with 23.0.1 seems to work just fine.
This patch will allow either 23.0.1 or 23.0.3.

Note: It would probably better to check for some "minimum" version of build-tools I think
GNU sort has a -V option we could use, but I don't know how cross-platform this is.

MozReview-Commit-ID: 8W0P3yyAHu1

--HG--
extra : rebase_source : 8e2809327eabd49f681ef42eec9c2f0eb43f1eb8
2016-08-26 17:03:02 -04:00
Paul Bignier 31295dc155 Bug 1287458 - clang-plugin - style consistency with LLVM. r=mystor
MozReview-Commit-ID: 41uSgifPWRw

--HG--
extra : amend_source : 2eaaf8d04d4d69cee0fd8234508811545b505ecd
2016-08-29 17:17:13 +02:00
Nathan Froyd 61228089c3 Bug 1299145 - use the proper debuginfo option for clang-cl; r=mshal
clang-cl, oddly, does not accept -g and wants the MSVC-esque -Zi
option instead.

MozReview-Commit-ID: JHecFCdfjbz

--HG--
extra : rebase_source : 1c191e9c17437b2ef97b67960104f7da5427ea25
2016-08-30 10:17:21 -04:00
Mike Hommey 4b2aff3235 Bug 1291356 - Ensure building with --with-servo keeps building with mozjemalloc, whatever the default jemalloc is. r=chmanchester
--HG--
extra : rebase_source : 0eddfe8262dd1f015a38de8e10a2889ef9f3d342
2016-08-26 10:28:04 +09:00
Mike Hommey 9aa5c1b0b4 Bug 1137305 - Move --enable-skia{,-gpu} to python configure and enable skia by default on little-endian platforms. r=chmanchester
--HG--
extra : rebase_source : 4038081460a8c071510a326df8127e9e6d1ae653
2016-08-26 07:55:16 +09:00
Chris Manchester 942b77d16c Bug 1294803 - Move MOZ_SYSTEM_FFI to moz.configure in preparation for moving libffi to our build system. r=glandium
This patch introduces a small change in behavior: we now unconditionally
require libffi > 3.0.9 when using system ffi, rather than accepting 3.0.9
when using GCC, as 3.0.10 was released 5 years ago, and should be widely
available.


MozReview-Commit-ID: DtSDPoZSPcx
2016-08-22 15:07:07 -07:00
Chris Manchester 470a2afbb6 Bug 1294803 - Move BUILD_CTYPES to Python configure. r=glandium
MozReview-Commit-ID: 3TlgdpNDLZW
2016-08-22 12:17:19 -07:00
Mike Hommey b65bccd9ce Bug 1276003 - Move --enable-necko-protocols to python configure. r=chmanchester
--HG--
extra : rebase_source : 6187c1a382b240e2fa01f38f4c739000d5f177ce
2016-08-18 09:57:06 +09:00
Chris Manchester 76d8f148d9 Backed out changeset c0e6aae0b93d (bug 1294803) for breaking artifact builds.
MozReview-Commit-ID: BTrQMCJSCRn
2016-08-19 11:12:07 -07:00
Chris Manchester 65ba8ff0f6 Backed out changeset 7f6047b2bc09 (bug 1294803) for breaking artifact builds.
MozReview-Commit-ID: FdzqUJnaSQT
2016-08-19 11:12:07 -07:00
Chris Manchester 49a7faf599 Bug 1294864 - Move MOZ_PERMISSIONS to Python configure. r=glandium
MozReview-Commit-ID: AyaWOvm5cq
2016-08-18 13:39:40 -07:00
Chris Manchester 4cdee259e5 Bug 1295784 - Use the argument name for `when` when passing it to Python configure's pkg_check_modules. r=glandium
MozReview-Commit-ID: GcVEzS3nLql
2016-08-17 15:02:31 -07:00
Chris Manchester 7d9c80e4aa Bug 1295784 - Use `when` instead of `condition` as an argument name in Python configure's pkg_check_modules for consistency. r=glandium
MozReview-Commit-ID: 61XglTI0BII
2016-08-17 15:02:31 -07:00
Chris Manchester 872c57fe84 Bug 1294803 - Move BUILD_CTYPES to Python configure. r=glandium
MozReview-Commit-ID: 3TlgdpNDLZW
2016-08-17 15:02:31 -07:00
Chris Manchester 269e8590e8 Bug 1294803 - Move MOZ_SYSTEM_FFI to moz.configure in preparation for moving libffi to our build system. r=glandium
This patch introduces a small change in behavior: we now unconditionally
require libffi > 3.0.9 when using system ffi, rather than accepting 3.0.9
when using GCC, as 3.0.10 was released 5 years ago, and should be widely
available.


MozReview-Commit-ID: DtSDPoZSPcx
2016-08-17 15:02:31 -07:00
Chris Manchester b0b84a1928 Bug 1240134 - Incorporate the interfaces.xpt from downloaded artifacts instead of building XPIDL during an artifact build. r=glandium
MozReview-Commit-ID: 8oEyS1xLOwV
2016-08-17 15:02:31 -07:00
Wes Kocher c84ec3b3f3 Merge m-c to inbound, a=merge 2016-08-16 22:06:58 -07:00
Wes Kocher 48b8d407c8 Merge inbound to central, a=merge
a=release to get around the webidl hook for a comment-only change

--HG--
extra : amend_source : f7e57101e1a25d3cf3536a256898ec2a21c54b38
2016-08-16 17:05:30 -07:00
Wes Kocher 073e095b66 Merge fx-team to central, a=merge CLOSED TREE 2016-08-16 16:37:28 -07:00
Ian Stakenvicius 1f75b211c2 Bug 1282843 - Add ability to specify system paths to @old_configure_options. r=glandium 2016-08-16 09:42:00 -04:00
Gregory Szorc 2562138ede Bug 1291944 - Verify makensis binary is 32-bits; r=glandium
This required implementing a utility function to resolve the binary
type. I used GetBinaryTypeW via ctypes because this seems the fastest.
I arbitrarily limited the function to testing 32-bit and 64-bit Windows
executables because hopefully those are the only executables we'll
ever encounter. We can expand the binary detection later, if needed.
This includes support for running on non-Windows platforms.

MozReview-Commit-ID: CYwyDWQrePc

--HG--
extra : rebase_source : 8fd7ca7f253d9e9e18d64784652a5ff934ad2272
2016-08-15 18:11:48 -07:00
Mike Hommey ebd899b9d6 Another fixup for bug 1294639 on a CLOSED TREE. a=Kwierso 2016-08-16 08:53:33 +09:00
Mike Hommey 3f3d75fb1f Bug 1294632 - Remove unused old_configure_options. r=chmanchester
--enable-approximate-location and --enable-gps-debug were removed in bug
1278410.
--enable-media-navigator was removed in bug 1259581.
--enable-webapp-runtime was removed in bug 1238079.
2016-08-16 08:32:53 +09:00
Mike Hommey c6d1e73834 Bug 1294585 - Move --with-*-keyfile options to python configure. r=chmanchester 2016-08-16 08:32:51 +09:00
Mike Hommey 02d1dcdac0 Bug 1294585 - Remove the --with-google-oauth-api-keyfile configure flag. r=mikedeboer 2016-08-16 08:32:49 +09:00
Mike Hommey c504a71a5b Bug 1295480 - Move --enable-webspeechtestbackend to python configure. r=chmanchester 2016-08-17 11:01:56 +09:00
Mike Hommey ff6286a8e2 Bug 1295480 - Move --disable-webspeech to python configure. r=chmanchester 2016-08-17 11:01:52 +09:00
Mike Hommey 86c8b781d4 Bug 1295480 - Move --enable-dbm to python configure. r=chmanchester 2016-08-17 11:01:44 +09:00
Mike Hommey 195a0eb8e7 Bug 1295480 - Move --enable-ipdl-tests to python configure. r=chmanchester 2016-08-17 11:01:40 +09:00
Mike Hommey 9cbe9243c6 Bug 1295480 - Move --enable-websms-backend to python configure. r=chmanchester 2016-08-17 11:01:35 +09:00
Mike Hommey 6f35afadf9 Bug 1295480 - Move --enable-synth-speechd to python configure. r=chmanchester 2016-08-17 11:01:30 +09:00
Mike Hommey 29f57f3e58 Bug 1295480 - Move --disable-printing to python configure. r=chmanchester 2016-08-17 11:01:24 +09:00
Mike Hommey 05f10c47d3 Bug 1294630 - Move --enable-ipc-fuzzer to python configure. r=chmanchester 2016-08-17 11:01:05 +09:00
Jim Chen 0bd1b97d16 Bug 1292323 - Update annotationProcessor to reflect WrapForJNI changes; r=snorp
Update the code generator and related classes in annotation processor to
use the new WrapForJNI flags. Also add some more sanity checking to make
sure the flags are used correctly.
2016-08-12 23:15:52 -04:00
Wes Kocher e9097643d5 Merge inbound to central, a=merge 2016-08-12 13:44:29 -07:00
Ms2ger 78f1853c94 Bug 1293981 - Move --enable-more-deterministic to moz.configure. r=chmanchester 2016-08-10 13:06:55 +02:00
Ms2ger dc662f1b94 Bug 1293981 - Move --enable-perf to moz.configure. r=chmanchester 2016-08-10 13:06:49 +02:00
Ms2ger a7c2d8106c Bug 1293981 - Move --enable-gc-trace to moz.configure. r=chmanchester 2016-08-10 13:06:40 +02:00
Mike Hommey 77ee4f3ce4 Bug 1292463 - Move MOZ_C{,XX}_SUPPORTS_WARNING to python configure. r=chmanchester 2016-08-10 10:50:01 +09:00
Mike Hommey 7a80b4e7ee Bug 1292463 - Rename compilechecks.configure and test_header_checks.py. r=chmanchester
to, respectively, compile-checks.configure and test_compile_checks.py.


--HG--
rename : build/moz.configure/compilechecks.configure => build/moz.configure/compile-checks.configure
2016-08-10 10:49:59 +09:00
Mike Hommey cc883a2e7a Bug 1292463 - Set MOZ_PGO subst/config from python configure. r=chmanchester 2016-08-10 10:49:58 +09:00
Mike Hommey 306558f1eb Bug 1292463 - Always set --enable-warnings-as-errors for MOZ_AUTOMATION builds. r=chmanchester
And remove it from mozconfigs.
2016-08-10 10:49:56 +09:00
Mike Hommey 4585ac7815 Bug 1292463 - Move --enable-warnings-as-errors to python configure. r=chmanchester 2016-08-10 10:49:54 +09:00
Mike Hommey 74733c57c1 Bug 1292463 - Add MOZ_AUTOMATION to python configure. r=chmanchester 2016-08-10 10:49:52 +09:00
Nathan Froyd 81545d0022 Bug 1290957 - ensure MOZ_AUTOMATION builds require a cargo with --frozen support; r=chmanchester
We want to ensure that our automation builds don't pull in libraries
from crates.io, and we need --frozen support in cargo to do that.  If we
don't have that support, we shouldn't build.
2016-08-09 18:10:19 -04:00
Nathan Froyd d4a5791899 Bug 1268727 - part 1 - update Rust requirement to 1.10; r=chmanchester
We need Rust 1.10 to support the -C panic=abort flag and the
corresponding bits in cargo.
2016-08-09 18:10:20 -04:00
Mike Hommey afa6c4d5f3 Bug 1292046 - Add a check that the compiler works with -c out of the box. r=chmanchester
The base compiler check in python configure does some preprocessing,
which ensures the compiler works to some extent. Autoconf used to have
a more complete test, doing a compile/link. We do have plenty of tests
afterwards that do that anyways, but it's better if we fail early if
the toolchain fails somehow.

This refactors try_compile such that the *_compiler variable themselves
can be used to trigger compiler tests. Eventually, we'll want something
similar for preprocessing and possibly other invocations.

This also removes similar tests from build/autoconf/toolchain.m4.

--HG--
extra : rebase_source : c60d1d6e39b6bd2a377516687affd9b8932ebc12
2016-08-04 15:51:47 +09:00
Mike Hommey 6bdf5756ec Bug 1292046 - Add language to the compiler namespace. r=chmanchester
--HG--
extra : rebase_source : c258416a1cec59627e27d4f59e40f1425464f9c5
2016-08-04 16:24:29 +09:00
Nathan Froyd f7fb6722a6 Bug 1231764 - part 6 - build rust code via cargo; r=chmanchester
This patch is really two separate changes.

The first change is that rust crates are large, standalone entities that
may contain multitudes of source files.  It therefore doesn't make sense
to keep them in SOURCES, as we have been doing.  Moving to use cargo
will require a higher-level approach, which suggests that we need a
different, higher-level representation for Rust sources in the build
system.

The representation here is to have the build system refer to things
defined in Cargo.toml files as the entities dealt with in the build
system, and let Cargo deal with the details of actually building things.
This approach means that adding a new crate to an existing library just
requires editing Rust and Cargo.toml files, rather than dealing with
moz.build, which seems more natural to Rust programmers.  By having the
source files for libraries (and binaries in subsequent iterations of
this support) checked in to the tree, we can also take advantage of
Cargo.lock files.

The second is that we switch the core build system over to building via
cargo, rather than invoking rustc directly.

We also clean up a number of leftover things from the Old Way of doing
things.  A number of tests are added to confirm that we'll only permit
crates to be built that have dependencies in-tree.
2016-08-06 00:49:26 -04:00
Nathan Froyd ef91835e00 Bug 1231764 - part 4 - add pytoml to the virtualenv; r=chmanchester
We need to parse Cargo.toml files from moz.build to determine crate
package names.
2016-08-06 00:49:26 -04:00
Nathan Froyd 8e363d817c Bug 1231764 - part 1 - search for cargo when --enable-rust; r=chmanchester
We've going to use it, the location of it should be configurable.
2016-08-06 00:49:26 -04:00
James Cheng b85064a2c6 Bug 1291229 - Fix typo for moving Java bindings to mozilla::java namespace. r=jchen
MozReview-Commit-ID: KGAS6EhnwAI
2016-08-05 13:23:44 -04:00
Michael Layzell 7bd5ff6f30 Bug 1232038 - Fix assertion errors in the clang plugin, r=ehsan 2016-08-05 13:54:09 -04:00
Michael Layzell 89cf71b092 Bug 1278135 - Link against less of Clang and LLVM statically when building the clang plugin, r=glandium 2016-08-05 13:54:08 -04:00
Michael Layzell 44ec98cd05 Bug 1244825 - Detect classes with two superclasses with mRefCnt members, r=ehsan 2016-08-05 13:51:35 -04:00
Wander Lairson Costa 29ec9b1378 Bug 1273981 part 1: Add libc++ to clang. r=glandium
We need to rebuild clang with libc++ to get compatible headers for cross
builds. libc++abi is a dependency of libc++, as the build instructions
says [0].

[0] http://libcxx.llvm.org/docs/BuildingLibcxx.html
2016-08-05 10:46:38 -03:00
Wes Kocher e2fcb18843 Backed out 2 changesets (bug 1292046) for android build failures a=backout
Backed out changeset 3263785341f2 (bug 1292046)
Backed out changeset a1b9e1631661 (bug 1292046)
2016-08-04 14:22:54 -07:00
Mike Hommey 811693f3aa Bug 1292069 - Remove the cleansrcdir target. r=gps
It has not been useful since we removed the possibility to build in the
source directory.

--HG--
extra : rebase_source : 479100785c8253ea3e255ebbda4b3538e8ed33ff
2016-08-04 17:34:05 +09:00
Mike Hommey 6df9c96b3e Bug 1292059 - Remove now useless compiler checks in compiler-opts.m4. r=chmanchester
Since bug 1259382, CC and CXX are always set, so we can stop
falling back to cl on Windows, and clang on OSX in compiler-opts.m4.

Also, we were actively rejecting GCC on OSX because it was based on
GCC 4.2 and known to be broken, but that test predates our requirement
for more recent versions of GCC, which would fail configure anyways.
So just remove that GCC test. Building with a modern GCC from macports
or wherever might actually work anyways.

Finally, remove target bit-width mismatch with the compiler as it's
handled in python configure since bug 1288313.

--HG--
extra : rebase_source : 9968028cc4e9c197b72136037a7298be10cc139a
2016-08-04 17:11:52 +09:00
Mike Hommey 94fe17e0c2 Bug 1292046 - Add a check that the compiler works with -c out of the box. r=chmanchester
The base compiler check in python configure does some preprocessing,
which ensures the compiler works to some extent. Autoconf used to have
a more complete test, doing a compile/link. We do have plenty of tests
afterwards that do that anyways, but it's better if we fail early if
the toolchain fails somehow.

This refactors try_compile such that the *_compiler variable themselves
can be used to trigger compiler tests. Eventually, we'll want something
similar for preprocessing and possibly other invocations.

This also removes similar tests from build/autoconf/toolchain.m4 and
old-configure.in.

--HG--
extra : rebase_source : 4f6f84e5ad220386e9edf82d19cc2cd6c1f4c43e
2016-08-04 15:51:47 +09:00
Mike Hommey 81dfda1e3a Bug 1292046 - Add language to the compiler namespace. r=chmanchester
--HG--
extra : rebase_source : 3a8b2c87ec44272990eb4c799759df11115a40dd
2016-08-04 16:24:29 +09:00
aleth e1473c6704 Bug 1289847 - Followup to fix linker path for comm-* builds. r=mshal
--HG--
extra : rebase_source : 78bd30ae56b12bfda169d8b1cba82a74c7d4ec9b
2016-08-03 23:48:12 +02:00
Wes Kocher 9605851be0 Backed out 7 changesets (bug 1231764) for apparently causing linux debug wpt bustage
Backed out changeset 4b71272c92cf (bug 1231764)
Backed out changeset 234d8a930afa (bug 1231764)
Backed out changeset f9b204c2f5a7 (bug 1231764)
Backed out changeset f933119e57e4 (bug 1231764)
Backed out changeset e3af0b1d3473 (bug 1231764)
Backed out changeset 643b03aae1dd (bug 1231764)
Backed out changeset a945dbf63410 (bug 1231764)

--HG--
extra : rebase_source : e71360fa4b5e3e74859c82e74e183e13e6211c4c
2016-08-03 16:27:06 -07:00
Nathan Froyd 23038ea6e0 Bug 1291028 - add build script for custom Mac linker; r=mshal
DONTBUILD because NPOTB
2016-08-04 01:24:40 -04:00
Nathan Froyd 6b2618fb44 Bug 1231764 - part 6 - build rust code via cargo; r=chmanchester
This patch is really two separate changes.

The first change is that rust crates are large, standalone entities that
may contain multitudes of source files.  It therefore doesn't make sense
to keep them in SOURCES, as we have been doing.  Moving to use cargo
will require a higher-level approach, which suggests that we need a
different, higher-level representation for Rust sources in the build
system.

The representation here is to have the build system refer to things
defined in Cargo.toml files as the entities dealt with in the build
system, and let Cargo deal with the details of actually building things.
This approach means that adding a new crate to an existing library just
requires editing Rust and Cargo.toml files, rather than dealing with
moz.build, which seems more natural to Rust programmers.  By having the
source files for libraries (and binaries in subsequent iterations of
this support) checked in to the tree, we can also take advantage of
Cargo.lock files.

The second is that we switch the core build system over to building via
cargo, rather than invoking rustc directly.

We also clean up a number of leftover things from the Old Way of doing
things.  A number of tests are added to confirm that we'll only permit
crates to be built that have dependencies in-tree.
2016-08-03 19:40:41 -04:00
Nathan Froyd eb4063d257 Bug 1231764 - part 4 - add pytoml to the virtualenv; r=chmanchester
We need to parse Cargo.toml files from moz.build to determine crate
package names.
2016-08-03 19:40:41 -04:00
Nathan Froyd 8aab949aa8 Bug 1231764 - part 1 - search for cargo when --enable-rust; r=chmanchester
We've going to use it, the location of it should be configurable.
2016-08-03 19:40:41 -04:00
Carsten "Tomcat" Book 423bdfd2fd Merge mozilla-central to mozilla-inbound
--HG--
rename : dom/media/platforms/apple/ReorderQueue.h => dom/media/platforms/ReorderQueue.h
2016-08-03 17:08:41 +02:00
Carsten "Tomcat" Book eeacfbeff0 merge mozilla-inbound to mozilla-central a=merge 2016-08-03 17:03:41 +02:00
Mike Hommey 8fa1cdc6fb Bug 1291140 - Deduce Universal CRT SDK path from INCLUDE and LIB when it's not in WINDOWSSDKDIR. r=chmanchester
--HG--
extra : rebase_source : 9913f5ada944d09269605e0eb6b667005465d906
2016-08-02 15:45:08 +09:00
Jan Beich be3a9d9f97 Bug 1285503 - Fix DragonFly target spelling after bug 1266368. r=glandium
MozReview-Commit-ID: 48qNqNa8CdP

--HG--
extra : transplant_source : %15%F6%E6z%E3%8F%AD%15%9C%0F%2B%AB%AE%BC%F5%EA%18%FE%86%F7
2016-07-08 06:36:11 +00:00
Nathan Froyd b9dd866253 Bug 1289847 - part 1 - use a newer ld for Mac builds; r=mshal
The ld that we use for Mac builds is old (Xcode circa OS X 10.7), and
also crashes in various ways when we try to use newer Rust versions
and/or pass options to make the linker work with newer Rust versions.
To mitigate this, let's build with a newer linker, compiled from:

https://github.com/tpoechtrager/cctools-port

We use this port, rather than the packages from opensource.apple.com,
because the packages from Apple have decidely non-intuitive build
systems, and require some hacking to get to build.  This port, in
contrast, is simply built with:

CFLAGS='-mcpu=generic -mtune=generic' ./configure --target=x86_64-apple-darwin11
env MACOSX_DEPLOYMENT_TARGET=10.7 make

and the resulting x86_64-apple-darwin11-ld is renamed as 'ld' and
packaged up for automation's purposes.

However, since this linker is newer, it also produces bits of Mach-O
that our older build tools don't understand.  Fortunately, we can pass
appropriate options to the linker to turn off generation of those Mach-O
bits.
2016-08-03 04:24:33 -04:00
Steve Fink 986c3892e5 Bug 1288596 - Better error message when compiler is incompatible with sanitizer, r=glandium
--HG--
extra : rebase_source : eb0582ee2ff4b576fd34b91bc4caf66493b84b96
2016-07-29 11:28:33 -07:00
Michael Layzell 652e9475bc Bug 1281935 - Part 1: Relax raw pointer inside lambda analysis, r=ehsan 2016-08-02 15:27:43 -04:00
Mike Hommey a3efe09cbf Bug 1293837 - Followup to fix 32-bit PGO builds r=me 2016-08-11 14:40:59 -07:00
Anjana Vakil 5e20f5a04a Bug 1253359 - Vendor in Pytest 2.9.2 and Py 1.4.31 r=gps
Vendor in Pytest (2.9.2) and its requirement Py (1.4.31),
so that it can be used for e.g. the Marionette
harness unit tests and a pytest plugin for mozlog.

Copy pytest and py package directories (extracted from
tars on Pip) into `mozilla-central/python/`, removing
some support files (e.g. changelog, docs, tests).
Add both `.pth` entries to `virtualenv_packages.txt`.
Add both paths to `SEARCH_PATHS` in `mach_bootstrap.py`.

MozReview-Commit-ID: IOTCOUxX8R9

--HG--
extra : rebase_source : e03d8a4be084062c0055b365bcc18da6dbb0b7a7
2016-08-10 13:34:59 +02:00
Mike Hommey 202b56d2fe Bug 1293840 - Determine HAVE_64BIT_BUILD from --target. r=chmanchester
Until now, HAVE_64BIT_BUILD was entirely determined by a compiler check.
But we didn't run the check on e.g. artifact builds, while relying on
its result for some non-compilation related things, leading to subtle
discrepancies.

This changes the configure check to derive HAVE_64BIT_BUILD from bitness
determined by the target CPU, and double checked with a compiler check.

--HG--
extra : rebase_source : 5dc0cf2369ed4457bdd9a15736a70265a771d919
2016-08-10 11:39:16 +09:00
Mike Hommey a918e97bfa Bug 1293837 - Move HAVE_64BIT_BUILD test to python configure. r=chmanchester
Also, now that we're using modern C++11 compilers, we can just rely on
static_assert, instead of the pile of macros used in the autoconf test.

--HG--
extra : rebase_source : 85d507da653d07e6527a971082277486e3502ea2
2016-08-10 09:00:23 +09:00
Mike Hommey 93ac00658e Bug 1293837 - Change try_compile() to return True when the test passes. r=chmanchester
Currently, it returns either None or the contents of the compiler's stdout,
which is always expected to be an empty string, and is not very useful. So
instead, return True in the latter case.

--HG--
extra : rebase_source : ee69cdeab38d27178ce759591fb394da65e694ac
2016-08-10 10:00:43 +09:00
Mike Hommey 4eba7db364 Bug 1293579 - Use the new `dependable` function in a few places. r=chmanchester
--HG--
extra : rebase_source : 7062361fdb8e61b43a4044a3a7b1bf04f6ef3143
2016-08-09 15:55:10 +09:00
Mike Hommey 3e4c324c93 Bug 1293579 - Add a `dependable` function/decorator to avoid some of the depends('--help') weirdness in python configure. r=chmanchester
--HG--
extra : rebase_source : 957ae782df951e899d1142bd583423e6afdb605a
2016-08-09 15:54:20 +09:00
Mike Hommey 51236564fa Bug 1290040 - Find link.exe from python configure. r=gps
This ensures we have a full path to link.exe from MSVC in LD, avoiding
to use /usr/bin/link on msys2.
2016-08-02 13:20:53 +09:00
Mike Hommey 3ec6a69c49 Bug 1290040 - Use full path for mt.exe. r=gps
Now that check_prog, through find_program, returns paths that the build
system can handle, we don't need MT to just be "mt.exe".

However, we still need the PATH to be altered for the other tools we're
not checking in python configure yet (e.g. midl). We also still need
PATH altered for the compiler itself, because for e.g. the amd_x86
version, a necessary DLL is in the amd directory, which means PATH
always needs to be altered for cl.exe.
2016-08-02 13:20:48 +09:00
Mike Hommey da40819e21 Bug 1290040 - Make find_program return short paths automatically when paths contain spaces on Windows. r=gps
Also fake enough of ctypes to keep the configure unit tests passing
after these changes.
2016-08-02 13:20:44 +09:00
Mike Hommey c2df8cd611 Bug 1290026 - Automatically set LIB from configure. r=chmanchester 2016-08-02 13:17:19 +09:00
Mike Hommey c6b7fab94b Bug 1290026 - Automatically set INCLUDE from configure. r=chmanchester 2016-08-02 13:17:17 +09:00
Mike Hommey ba7c817059 Bug 1289638 - Update the MSVC tooltool package. r=gps
- Update the tooltool manifests to use the new package.
- Update mozconfig paths to reflect MSVC tooltool package changes.
2016-08-02 13:17:15 +09:00
Mike Hommey 8ccc63df11 Bug 1289638 - Don't remove the SDK version from the SDK paths in the MSVC tooltool package. r=gps
While we're here changing the MSVC tooltool package, and since we're
going to remove the INCLUDE and LIB lines from mozconfigs that contain
the SDK version, we might as well make the SDK in the tooltool package
closer to an actual SDK, so that automation and local build more or
less follow the same (upcoming) configure code path.
2016-08-02 13:17:14 +09:00
Mike Hommey 843c82eecf Bug 1289638 - Don't rename the DIA SDK directory in the MSVC tooltool package. r=gps 2016-08-02 13:17:12 +09:00
Mike Hommey 620b77568c Bug 1289638 - Set WINDOWSSDKDIR for "autospider" builds. r=gps
autospider builds set VSPATH before sourcing
build/win*/mozconfig.vs-latest, so VSWINPATH was never set. Furthermore,
the way it sets variables for the build system relies on the variable
going through and export from mk_add_options, which
mk_export_correct_style conveniently does for us.
2016-08-02 13:17:08 +09:00
Wes Kocher fcd23d9afe Backed out 2 changesets (bug 1289847) for OSX static build bustage CLOSED TREE
Backed out changeset 74922f9ce5c6 (bug 1289847)
Backed out changeset f22763859aae (bug 1289847)
2016-08-01 14:56:53 -07:00
Nathan Froyd bac3709dc1 Bug 1289847 - part 1 - use a newer ld for Mac builds; r=mshal
The ld that we use for Mac builds is old (Xcode circa OS X 10.7), and
also crashes in various ways when we try to use newer Rust versions
and/or pass options to make the linker work with newer Rust versions.
To mitigate this, let's build with a newer linker, compiled from:

https://github.com/tpoechtrager/cctools-port

We use this port, rather than the packages from opensource.apple.com,
because the packages from Apple have decidely non-intuitive build
systems, and require some hacking to get to build.  This port, in
contrast, is simply built with:

CFLAGS='-mcpu=generic -mtune=generic' ./configure --target=x86_64-apple-darwin11
env MACOSX_DEPLOYMENT_TARGET=10.7 make

and the resulting x86_64-apple-darwin11-ld is renamed as 'ld' and
packaged up for automation's purposes.

However, since this linker is newer, it also produces bits of Mach-O
that our older build tools don't understand.  Fortunately, we can pass
appropriate options to the linker to turn off generation of those Mach-O
bits.
2016-08-01 22:49:02 -04:00
Carsten "Tomcat" Book 480c0269ee Backed out changeset 0f6396641036 (bug 1289638) for breaking windows spidermonkey tests/builds 2016-08-01 09:12:55 +02:00
Carsten "Tomcat" Book f850d3a1a1 Backed out changeset ada66cbedd75 (bug 1289638) 2016-08-01 09:12:39 +02:00
Carsten "Tomcat" Book 732be475c8 Backed out changeset 07e0af7fc5d9 (bug 1289638) 2016-08-01 09:12:38 +02:00
Carsten "Tomcat" Book 8321d9897b Backed out changeset a4a381f85dc8 (bug 1290026) 2016-08-01 09:12:37 +02:00
Carsten "Tomcat" Book 2b84fbf042 Backed out changeset 90559af62774 (bug 1290026) 2016-08-01 09:12:36 +02:00
Carsten "Tomcat" Book fc8e03f0d8 Merge mozilla-central to autoland 2016-07-30 16:49:41 +02:00
Ralph Giles bb6518c3f2 Bug 1290522 - Parse `rustc --version --verbose` in moz.configure. r=glandium
This is hopefully more reliable than parsing just the summary line,
and makes available other keys like the commit-hash which we'd like
to pass to the debug symbol automation.

Note that the commit-hash field will have the value 'unknown' for
builds not made out of upstream git. So the key is available with
official and gecko rust builds, but not for example the current
Debian-packaged rustc.

MozReview-Commit-ID: A2G5UPs2ka2
2016-07-29 10:39:17 -07:00
Geoff Brown 306a94e967 Bug 1290114 - Make Android test logging more responsive; r=ahal 2016-07-29 08:29:53 -06:00
Carsten "Tomcat" Book 0e6ff44be3 Merge mozilla-central to mozilla-inbound 2016-07-29 12:34:10 +02:00
Makoto Kato 26d9758f22 Bug 1262102 - Don't use MOZ_ICU_DATA_ARCHIVE=1 on Android. r=ted
The files into APK isn't extracted on our Android build, so it isn' good to use data file on Android build.

MozReview-Commit-ID: 4AQb2b7ScAH

--HG--
extra : rebase_source : 02d493f9b0f6dad5c5106ea45863f2f7c9c0b97e
2016-07-29 12:03:29 +09:00
Mike Hommey 96c8b2dca4 Bug 1290019 - Remove MT version check. r=chmanchester
Before bug 1289294, the impossibility to find the version of MT was only
issuing a warning. Warnings in configure are essentially useless, so
since we weren't and still aren't doing anything with the result of that
check, and since there are versions of MT that don't print out a version
number, just remove the check.

--HG--
extra : rebase_source : 4887cebf0f56ca1a297cd02ff1988809c5cb6fdf
2016-07-28 18:29:49 +09:00
Mike Hommey a3aa2c0999 Bug 1289679 - Support detecting Windows SDK 10. r=chmanchester, a=me
--HG--
extra : amend_source : 4471fc23f09c297308c044baaf822f2ad4f4cde7
extra : transplant_source : %E6%F3%CE-%94%C5%CA%05%87%02%964%01%05%24J%E7%15%EB%D8
2016-07-27 15:37:54 +09:00
Carsten "Tomcat" Book 7293066753 merge mozilla-inbound to mozilla-central a=merge 2016-07-27 16:35:44 +02:00
Mike Hommey 1f9624559e Bug 1289294 - Move MT detection to python configure. r=chmanchester
--HG--
extra : rebase_source : c84ade9a0db9aca2f2e64b8a3424fe14dd19a924
2016-07-26 15:15:08 +09:00
Mike Hommey 8398056155 Bug 1289291 - Move Windows SDK detection to python configure. r=chmanchester
At the same time, autodetect the SDK if WINDOWSSDKDIR is not given.

--HG--
extra : rebase_source : 4ee98e2105b607bab5050127f23354e9b291a246
2016-07-22 19:10:04 +09:00
Mike Hommey b504123eaf Bug 1289291 - Set WINDOWSSDKDIR as a Windows path instead of msys path. r=chmanchester
--HG--
extra : rebase_source : de10ea1eb7956bd74b9784e760094356fc27364e
2016-07-26 11:03:30 +09:00
Mike Hommey 1b9c70450b Bug 1289289 - Move --with-windows-version to python configure. r=chmanchester
Also, don't set the MOZ_WINSDK_TARGETVER define anymore, as it's unused.

--HG--
extra : rebase_source : a6aa1458985d6c158abdc7cd7926b73990f4df2a
2016-07-22 17:08:53 +09:00
Mike Hommey 71f37655bd Bug 1289286 - Automatically find MSVC from the registry if it's not in $PATH. r=gps
--HG--
extra : rebase_source : 88eb4ef57fb27b40032dff92684663c7f4880940
2016-07-22 15:51:34 +09:00
Rob Thijssen 2671fd099b Bug 1285506 - include eu-central-1 in tc sccache bucket regions; r=glandium
MozReview-Commit-ID: 801dRLIwGpq

--HG--
extra : transplant_source : %AD%07%F8rm%27%FC%A00%82%60%FD%7EL%8F%9B%DCf%7F%DA
2016-07-25 18:58:23 +01:00
Fabrice Desré aac808639b Bug 1289691 - Get b2g to build again r=glandium 2016-07-27 01:31:08 -07:00
Mike Hommey 581b147a75 Bug 1289239 - Remove autoconf-based C++ compiler validation check. r=chmanchester
Python configure is already checking that the C++ compiler is indeed a C++
compiler, no need to double check in old-configure.

--HG--
extra : rebase_source : fcb6fc7ac88dcf3ef172cd30e23454b654e08c03
2016-07-22 19:13:56 +09:00
Carsten "Tomcat" Book b9a6c687fa merge mozilla-inbound to mozilla-central a=merge 2016-07-25 15:50:41 +02:00
Mike Hommey cb0e41dd08 Bug 1288313 - Ensure the host and target compilers build for the right endianness. r=chmanchester
--HG--
extra : rebase_source : d47263faac601a0d1b5a89ac6e9d3d373f0b15a1
2016-07-21 08:24:45 +09:00
Ralph Giles c87ae9e0a0 Bug 1249511 - Make tooltool cargo available in the environment. r=mshal
MozReview-Commit-ID: 37l7NzHMzoa
2016-07-22 13:23:29 -04:00
Carsten "Tomcat" Book 336105a0de merge mozilla-inbound to mozilla-central a=merge 2016-07-22 11:58:02 +02:00
Carsten "Tomcat" Book 2abb8cc385 Backed out changeset 86d07e6bd5b7 (bug 1272629) 2016-07-22 08:35:06 +02:00
Mike Hommey 13244904c4 Bug 1288313 - Ensure the host and target compilers build for the right kernel. r=chmanchester
--HG--
extra : rebase_source : 654ec31f94befe4c966570229d15e9e9288ec82f
2016-04-26 15:38:45 +09:00
Mike Hommey ae1ab9803b Bug 1288313 - Ensure the host and target compilers build for the right CPU. r=chmanchester
And for GCC and clang, try to see if adding -m32, -m64 or --target
works if they don't.

--HG--
extra : rebase_source : 874bc2404a5ccc48e938bc7d9b2fe67ba625cb3e
2016-04-22 15:08:55 +09:00
Mike Hommey 2578400d7b Bug 1288313 - Explicitly reject unknown CPU types. r=chmanchester
Since bug 1264482, unknown CPU types end up triggering a ValueError
exception because of the CPU EnumString. Even if somehow the CPU is
valid, the endianness is not and would trigger a ValueError exception
as well.

So, instead of letting the exceptions happen, use a nicer failure mode
with an explicit die().

--HG--
extra : rebase_source : 68432496712075c677de4bf71ea5d420fc70c35c
2016-04-26 16:27:46 +09:00
Enes Goktas 2c5f1632a6 Bug 1272629 - Add taskcluster task to build binutils package. r=glandium
MozReview-Commit-ID: HxM7MzUDG5j
2016-07-22 11:00:42 +09:00
Jim Chen 6c88865144 Bug 1287946 - Move Java bindings to mozilla::java namespace; r=snorp
Currently, auto-generated Java bindings are in the mozilla::widget
namespace, and that potentially conflicts with code under
widget/android. Moving the bindings to mozilla::java avoids conflicts
and makes it more clear that we're using Java bindings.
2016-07-21 13:49:04 -04:00
Jim Chen fe52fe774b Bug 1286663 - Add JNI wrapper class for ByteBuffer; r=snorp
Add a wrapper class for ByteBuffer and its associated calls in JNI.
2016-07-21 13:49:04 -04:00
Tom Tromey 5538d692d3 Bug 1286877 - do not set c-basic-offset for python-mode; r=gps
This removes the unnecessary setting of c-basic-offset from all
python-mode files.

This was automatically generated using

    perl -pi -e 's/; *c-basic-offset: *[0-9]+//'

... on the affected files.

The bulk of these files are moz.build files but there a few others as
well.

MozReview-Commit-ID: 2pPf3DEiZqx

--HG--
extra : rebase_source : 0a7dcac80b924174a2c429b093791148ea6ac204
2016-07-14 10:16:42 -06:00
Carsten "Tomcat" Book eaf9acf7d5 Backed out changeset f623f6ccca25 (Bug 1286663) for another bustage on android on a CLOSED TREE 2016-07-21 08:14:27 +02:00
Carsten "Tomcat" Book 17b47a99fc Backed out changeset 0cf61343793a (bug 1287946) 2016-07-21 08:07:13 +02:00
Nicholas Nethercote 1853761692 Bug 1262731 - Don't use a separate ICU data file on Windows. r=ted.
Because sometimes the file goes missing which prevents Firefox from starting.

--HG--
extra : rebase_source : f5e125a56104d8c5aaa1776c9223c7b0d96b8031
2016-07-21 08:13:17 +10:00
Jim Chen 3d8eec2482 Bug 1287946 - Move Java bindings to mozilla::java namespace; r=snorp
Currently, auto-generated Java bindings are in the mozilla::widget
namespace, and that potentially conflicts with code under
widget/android. Moving the bindings to mozilla::java avoids conflicts
and makes it more clear that we're using Java bindings.
2016-07-21 00:42:25 -04:00
Jim Chen bf5b43ab73 Bug 1286663 - Add JNI wrapper class for ByteBuffer; r=snorp
Add a wrapper class for ByteBuffer and its associated calls in JNI.
2016-07-21 00:41:12 -04:00
Steve Fink fe8f6aaf6d Bug 1287541 - Eliminate unnecessary asan flags, r=glandium
MozReview-Commit-ID: Dca06yR9PjC

--HG--
extra : rebase_source : ed4703e3c5c9eca791ee1f6b68aeef2b1d52e696
2016-07-15 12:57:51 -07:00
Mike Hommey 7721a052bc Fixup for bug 1286204 - Update error message to reflect the change in clang requirement. r=me 2016-07-20 20:58:49 +09:00
Carsten "Tomcat" Book 8428cd56e3 merge mozilla-inbound to mozilla-central a=merge 2016-07-20 11:20:15 +02:00
Carsten "Tomcat" Book ac3f25cbe3 merge fx-team to mozilla-central a=merge 2016-07-20 11:17:45 +02:00
Xidorn Quan 76db18facb Bug 1284406 part 3 - Export ICU headers in include/unicode. r=glandium
MozReview-Commit-ID: FuwAgEGjhxm

--HG--
extra : source : c07ceab42b47b18a1e8d436e7c888bdd113575fa
2016-07-20 15:00:13 +10:00
dimi 9d5c24055b Bug 1281083 - P2. Testcase for changing the urlclassifier.*Table. r=francois
MozReview-Commit-ID: Ge0NSpyEb82
2016-07-18 22:31:34 +08:00
Dustin J. Mitchell e8b852658b Bug 1281004: vendor voluptuous; r=gps
MozReview-Commit-ID: Hzz7EFf4coX

--HG--
extra : rebase_source : 08bd1896b08596b30a5fe8d735add194fa724fea
2016-06-29 20:39:02 +00:00
Andi-Bogdan Postelnicu de0b1d9c7a Bug 1283395 - clang-plugin - add an error if we encounter in MOZ_ASSERT assignment instead of logical expression. r=mystor
MozReview-Commit-ID: AybStmi6MIH

--HG--
extra : rebase_source : 6379599db347975436181c3807893f939f624b24
2016-07-19 09:59:22 +03:00
Mike Hommey 7df7b057ce Bug 1286204 - Require at least clang 3.6. r=froydnj
--HG--
extra : rebase_source : e49f87d8c7d47c48a23650fbbbbf0dafbccc209d
2016-07-08 16:38:55 +09:00
Carsten "Tomcat" Book a0992595d6 merge mozilla-inbound to mozilla-central a=merge 2016-07-17 10:08:08 +02:00
Nathan Hakkakzadeh e5cc1aa101 Bug 1100925 - Vendored pylru 1.0.9 into mozilla-central. r=gps
This makes building on msys2 easier since its pip is broken.

MozReview-Commit-ID: 1hQHeu3BKOd

--HG--
extra : rebase_source : 5447d96893a502225980d1dab7b4f89b888ad661
2016-07-13 14:22:01 -07:00
Xidorn Quan 30788d7d8b Backed out 4 changeset (bug 1284406) for build bustage on CLOSED TREE
--HG--
extra : amend_source : 9ad3b754789e60fe021f5b1989d7063cea8ca457
extra : histedit_source : 66c8b4fc923335e88a4593fd900c6c2cf57f6123%2C0f634c3c453a5d922de0e4e66dac69deec9f729c
2016-07-16 12:27:45 +10:00
Xidorn Quan 7167e29a37 Bug 1284406 part 2 - Export ICU headers in include/unicode. r=glandium
MozReview-Commit-ID: FuwAgEGjhxm

--HG--
extra : source : a90c00e3fa63f1e9934fe5f515233dddb11970b6
2016-07-16 11:44:15 +10:00
Mike Hommey fa43fb4a81 Bug 1287023 - Allow to use delayed_getattr in more cases. r=chmanchester
Until now, it's not been possible to do something as straightforward as:

option('--foo', default=delayed_getattr(milestone, 'is_nightly'))

The reason is that option's default needs what it's given, if it's a
@depends function, to depend on --help.

But we can't have every delayed_getattr add dependencies on --help,
because that would make unwanted things to depend on --help and run
when displaying the help.

Until we can totally remove --help dependencies, this change makes the
resulting @depends function created by delayed_getattr depend on --help
if the @depends function it's given already depends on --help.
2016-07-16 08:34:31 +09:00
Mike Hommey b97afd67a6 Bug 1286993 - Add build/pymake to the SEARCH_PATHS in mach_bootstrap. r=gps
It used to be there, but was removed in bug 1151124 because what I
thought was the only use of pymake in mach was removed in that bug.

Which, it turns out, was not the case. So restore it, so that mach
empty-makefiles works again.

--HG--
extra : rebase_source : 15d073a3a95961d75dae168c4ea0ca81d1cd8371
2016-07-15 08:04:21 +09:00
Rob Thijssen 24932bb5c1 Bug 1278990 - Configure sccache for taskcluster ec2 builders. r=mshal 2016-07-11 12:47:09 +01:00
Thomas Zimmermann aa5eaa4bc0 Bug 1280600: Use Gecko's 'libgabi++' on b2g, r=glandium
B2g came with its own version of 'libgabi++' in its toolchain. Gecko
on b2g isn't build any longer with this toolchain. With this patch
applied, Gecko's internal version of 'libgabi++' is used for building.

MozReview-Commit-ID: KU4OBYQ6cAW
2016-07-11 15:16:56 +02:00
Thomas Zimmermann 7065b7cb62 Bug 1280600: Cleanup Android linker flags and libraries, r=glandium
Android and b2g have duplicated linker flags and libraries. This patch
removes the duplicates from b2g scripts. The library 'log' is now listed
in the correct variable 'LIBS'.

MozReview-Commit-ID: EtVzZpoXkdK
2016-07-11 15:16:56 +02:00
Thomas Zimmermann 5f90520d21 Bug 1280600: Cleanup Android-version variables in configure scripts, r=glandium
Not all Android releases come with their own platform release. This patch adds
a switch statement to MOZ_ANDROID_NDK to use the previous platform release in
this case.

For several tests, the autoconf script 'old-configure.in' uses an internal
variable 'ANDROID_VERSION'. The stored value comes from the environment
variable 'PLATFORM_SDK_VERSION'. This patch replaces 'ANDROID_VERSION' by
'android_version', which is defined by MOZ_ANDROID_NDK from a command-line
parameter.

MozReview-Commit-ID: EbDgZX2aJgJ
2016-07-11 15:16:56 +02:00
Wes Kocher 8ae638106d Merge autoland to central, a=merge CLOSED TREE 2016-07-08 14:46:04 -07:00
Wes Kocher b8d55438df Backed out changeset cf971ca7f132 (bug 1278990) for likely nightly bustage a=backout CLOSED TREE
--HG--
extra : amend_source : 885e0942249b31cba5b3123caad9d83c3f555c6c
2016-07-08 11:59:12 -07:00
Benjamin Smedberg bf05496a83 Bug 1282866 - remove widget/qt and other supporting QT code, r=dougt. This patch does not remove all of the checks for MOZ_WIDGET_QT (which are dead code), but that will be a followup mentored bug.
MozReview-Commit-ID: EGqHHhCD7vD

--HG--
extra : rebase_source : a4b9593959dd3ba80189db47eabb056ea207490f
extra : amend_source : a744d833693f0fe7adbea961c00bb5fb55a91580
2016-07-07 12:14:25 -04:00
Rob Thijssen c23ccee534 Bug 1278990 - configure sccache for taskcluster ec2 builders; r=glandium
MozReview-Commit-ID: GiPGAaFjZ5t

--HG--
extra : transplant_source : d%0DM%A4%B1%C2%B9K%C2%04%99%07%83%3B%85%E125%F0%93
2016-07-05 16:09:13 +01:00
Gregory Szorc f21ec324a6 Merge mozilla-central to mozilla-inbound 2016-07-06 18:30:58 -07:00
Gregory Szorc 5030a743a1 Bug 1186064 - Require Visual Studio 2015 Update 2; r=glandium
Per froydnj in bug 1186064 comment #23, "it makes sense to proceed with removing
MSVC 2013 support." This commit does that.

We also go a step further and require VS2015 Update 2 instead of just
update 1. This temporarily brings us down to just 1 officially supported
Visual Studio version. However, VS2015u3 was just released and is
unofficially supported.

Since MOZ_CRT is no longer set, references to it have been removed.

MozReview-Commit-ID: 8MUR6qLzQA5

--HG--
extra : rebase_source : 8f5061080a3d56dd484f9be03649fb65f0145f67
2016-07-06 09:01:38 -07:00
Wes Kocher a425a052c1 Backed out changeset d7f98208809f (bug 1186064) for breaking SM(pkg) jobs a=backout 2016-07-06 10:11:04 -07:00
Gregory Szorc 6e4d0edfbc Bug 1186064 - Require Visual Studio 2015 Update 2; r=glandium
Per froydnj in bug 1186064 comment #23, "it makes sense to proceed with removing
MSVC 2013 support." This commit does that.

We also go a step further and require VS2015 Update 2 instead of just
update 1. This temporarily brings us down to just 1 officially supported
Visual Studio version. However, VS2015u3 was just released and is
unofficially supported.

Since MOZ_CRT is no longer set, references to it have been removed.

MozReview-Commit-ID: 8MUR6qLzQA5

--HG--
extra : rebase_source : 22ab4f47661ead4995d0c5261104abfb02b82aa2
2016-07-06 09:01:38 -07:00
Nathan Froyd a3b126cdc2 Bug 1277619 - hide libc++ visibility defines on Android when compiling with clang; r=glandium 2016-07-06 15:30:22 -04:00
Nathan Froyd da61f509c2 Bug 1283678 - pass variables to libffi's subconfigure directly rather than exporting them; r=glandium
MozReview-Commit-ID: C0m0rURELqf
2016-07-04 22:26:05 -07:00
James Willcox 718f23f9d0 Bug 1280666 - Allow class annotations to set defaults for members when generating Java bindings r=jchen 2016-06-29 17:09:55 -07:00
Carsten "Tomcat" Book 5784adf50e Merge mozilla-central to autoland 2016-07-08 12:18:14 +02:00
Mike Hommey 9607db6e29 Bug 1283052 - Remove some of the magic around mozconfig detection. r=gps
The mozconfig detection logic has bitten us on many occasions in the
past. The following changes are made to tentatively improve the
situation:

- The API is modified such that autodetection of the mozconfig has
  to be a conscious decision made by the caller, and not triggered
  any time there is no mozconfig given, which could be a conscious
  decision of the opposite.

- mozinfo.json now stores the actual mozconfig (or lack thereof) used
  during configure.

--HG--
extra : rebase_source : c7a632afd414f25daf7bbe7e1a66c3736c26e039
2016-07-08 08:43:17 +09:00
Mike Hommey 8eff2bec09 Bug 1290026 - Automatically set LIB from configure. r=chmanchester
--HG--
extra : rebase_source : 4ca572685169fdd2fbb0c9ae6aac5361d2669569
2016-07-27 18:01:04 +09:00
Mike Hommey 9bca5c6d3a Bug 1290026 - Automatically set INCLUDE from configure. r=chmanchester
--HG--
extra : rebase_source : e96decbc05d41e25a80cd3d1d61a7b36ba91f08b
2016-07-27 17:03:09 +09:00
Mike Hommey 75ca7fed2b Bug 1289638 - Update the MSVC tooltool package. r=gps
- Update the tooltool manifests to use the new package.
- Update mozconfig paths to reflect MSVC tooltool package changes.

--HG--
extra : rebase_source : 2f2da35ec1d1b3fb5ca9210951d9ac3a38a2bd75
2016-07-27 09:38:45 +09:00
Mike Hommey 439cf4860e Bug 1289638 - Don't remove the SDK version from the SDK paths in the MSVC tooltool package. r=gps
While we're here changing the MSVC tooltool package, and since we're
going to remove the INCLUDE and LIB lines from mozconfigs that contain
the SDK version, we might as well make the SDK in the tooltool package
closer to an actual SDK, so that automation and local build more or
less follow the same (upcoming) configure code path.

--HG--
extra : rebase_source : d760931fd721df1a6b27ae8caee37874eb1252f5
2016-07-28 16:53:44 +09:00
Mike Hommey fae208c213 Bug 1289638 - Don't rename the DIA SDK directory in the MSVC tooltool package. r=gps
--HG--
extra : rebase_source : 1082c4dc3423bebdbfb62d30c339043d994f47ba
2016-07-27 09:32:22 +09:00
Carsten "Tomcat" Book 5c90a99952 merge mozilla-inbound to mozilla-central a=merge 2016-06-29 16:13:05 +02:00
Gregory Szorc 48ef397191 Bug 1279564 - Use get_state_dir() from mozboot; r=glandium
Import mozboot.util and use the function from there.

MozReview-Commit-ID: B0uzpNff1t9

--HG--
extra : rebase_source : 161b944cfa8a0f74c395af17d121e0bdf4ffe0b2
extra : amend_source : 40dc50cade12cf1dcc7966c3ec514807ee746d82
2016-06-10 09:41:59 -07:00
Jim Chen 9177a4b375 Bug 1277624 - Move JNI class name out of Context; r=snorp
Move the class name strings into ObjectBase, so that the strings can be
overridden by derived classes in other namespaces.
2016-06-27 14:49:55 -04:00
Ted Mielczarek 82d77574ff bug 1266368 - move rust.m4 to configure. r=glandium
MozReview-Commit-ID: 9ol2nMYM0a0

--HG--
extra : rebase_source : 3f3feeac941791d081e09ebb096a3e052540a52c
2016-05-16 15:27:37 -04:00
Ted Mielczarek f04fd21cff bug 1280220 - find_program should append an exe extension to absolute paths on Windows. r=glandium
MozReview-Commit-ID: 2gaLnL5x2zR

--HG--
extra : rebase_source : 9f5941bbfa73b75c903a64a9be257d205236778d
2016-06-16 12:05:12 +01:00
Nathan Froyd 08d7f5aaec Bug 1195477 - part 2 - pass -no-integrated-as to libffi when building with clang; r=glandium
The ARM assembly sources in libffi don't work well with clang's
integrated assembler, so disable the integrated assembler for libffi.
2016-06-28 23:48:49 -04:00
Nathan Froyd 4288fc808d Bug 1281786 - make Fennec compile with NDK r12; r=glandium
NDK r12 shuffled a few things around and changed how we need to link to libc++.
2016-06-28 22:00:47 -04:00
Phil Ringnalda 0c749ef583 Back out 2 changesets (bug 1195477) on suspicion of breaking Mac clobbers in libffi
CLOSED TREE

Backed out changeset 45a6a74c46ea (bug 1195477)
Backed out changeset 4f607b7635fd (bug 1195477)
2016-06-23 19:29:22 -07:00
Nathan Froyd 449fff0af3 Bug 1195477 - part 2 - pass -no-integrated-as to libffi when building with clang; r=glandium
The ARM assembly sources in libffi don't work well with clang's
integrated assembler, so disable the integrated assembler for libffi.
2016-06-23 17:46:59 -04:00
Chris Manchester 93ef406a76 Bug 1279369 - Move --enable-debug, MOZ_DEBUG_FLAGS, and --enable-debug-symbols to Python configure. r=glandium
Setting MOZ_DEBUG_SYMBOLS as a define was not moved, as this value is not
checked, and exporting MOZ_DEBUG_SYMBOLS was not moved, as this would only
impact nspr, and we're no longer using the nspr build system.

MozReview-Commit-ID: EvBTunhxcsr
2016-06-20 16:02:01 -07:00
Jonathan Kew 8529c19f12 Bug 1231701 - Add valgrind suppression for uninitialized memory access and leak in old fontconfig. r=njn 2016-06-17 16:30:07 +01:00
Chris Manchester d4291f218b Bug 1278700 - Skip checks and build steps causing artifact builds to fail in automation. r=mshal
MozReview-Commit-ID: 6r1qiFC96hz
2016-06-17 00:58:36 -07:00
Thomas Zimmermann 5d152949dc Bug 1276927: Build B2G with Android build scripts where possible, r=glandium
This patch adds support for configuring Gonk/B2G with Android-specific
build scripts. This removes duplicated code and simplifies maintenance
of B2G.

The B2G builds will now use libc++ for Gecko; instead of the obsolete
STLport. A side-effect of this patch is the removal of any compile-time
dependency on B2G's bionic library.

MozReview-Commit-ID: 7V6BmC7jlrs
2016-06-16 08:43:51 +01:00
Mike Hommey 2fe5367788 Bug 1280338 - Use tooltool GCC's ld on TSan builds. r=froydnj
Something similar was done in bug 1278718 for ASan builds, because of
indirect dependencies on libstdc++ being picked by the linker and
leading to linkage failure with the older binutils from the CentOS 6
image we use to do desktop builds.
2016-06-16 16:16:51 +09:00
Mike Hommey a4b157940a Bug 1278415 - Make the buildconfig module use MozbuildObject.from_environment. r=gps
The buildconfig module predates MozbuildObject.from_environment, and
it's about time to start factoring things out such that we only have
one way to get config.status data. This is step 1: making the
buildconfig module use MozbuildObject.from_environment.

Eventually, we'll want to remove the buildconfig module uses everywhere.
2016-06-16 11:43:35 +09:00