Commit Graph

2422 Commits

Author SHA1 Message Date
Steve Fink
26cc3c7530 Bug 1243233 - Test ALLOW_COMPILER_WARNINGS instead of WARNINGS_AS_ERRORS, and move it to after it is set, r=glandium
ALLOW_COMPILERS_WARNINGS is set in moz.build files, which end up producing backend.mk files, which are loaded as part of config/rules.mk.
2016-01-29 12:08:26 -08:00
Mike Hommey
26cdd33c00 Bug 1246871 - Generate platform.ini with the preprocessor instead of an ad-hoc script. r=mshal 2016-02-10 10:11:58 +09:00
Mike Hommey
ed1c39fba6 Bug 1246874 - Unify GRE_BUILDID and MOZ_APP_BUILDID at the build system level. r=mshal 2016-02-10 07:39:30 +09:00
Kai Engert
f0dd763283 Bug 1245053, land NSS_3_23_BETA4, r=me, includes a makefile change to adjust for NSS changes, patch by EKR, r=kaie 2016-02-08 16:16:25 +01:00
Mike Hommey
27d102f477 Bug 1245764 - Move Windows RTL flags (-MD/-MT) flags out of config.mk. r=gps 2016-02-05 17:30:34 +09:00
Frédéric Wang
3e5bc23878 Bug 1227058 - Include the woff2 library in the gecko build. b=1227058, r=jfkthame 2016-02-02 08:52:00 +01:00
Mike Hommey
e5dc52e823 Bug 1245422 - Remove MOZ_OPTIMIZE_FLAGS override when building with DMD enabled on Windows. r=mshal
-Zi is already set through MOZ_DEBUG_FLAGS, which is set from
--enable-debug-symbols, which is the default, and if someone goes all
the way to explicitly disable them, we might as well not silently
override their decision.

-Od disables optimization, and the given reason was for sane stack
traces, but the fact is we're currently building debug builds, which
have been optimized by default for a while, and are the only ones with
DMD enabled by default, without overriding with -Od and are apparently
happy with it.
2016-02-04 12:49:57 +09:00
Mike Hommey
11d6bd3c47 Bug 1245422 - Remove -UDEBUG -DNDEBUG flags on Windows opt builds. r=mshal
-DNDEBUG is already set through MOZ_DEBUG_DEFINES, and -UDEBUG is not
doing anything useful, since nothing is setting DEBUG on the command
line, nor does the compiler by default.
2016-02-04 12:49:57 +09:00
Mike Hommey
774682b910 Bug 1245422 - Remove the -FR C*FLAGS on Windows builds. r=mshal
The flag is used to create .sbr files, which bscmake subsequently uses to
create .bsc files. These files and related tools are, aiui, the ancestors
of Intellisense.

The -FR C*FLAGS are added to the build if MOZ_BROWSE_INFO or MOZ_BSCFILE
are set in the recursive make backend. While the former has an AC_SUBST,
the latter does not, so in practice, only the former can be set by
supported methods, and would need to be set in a mozconfig. At that
rate, people who do want those flags can add them in the C*FLAGS on
their own.

Developers are probably better served by the VisualStudio backend
anyways.
2016-02-04 12:49:57 +09:00
Mike Hommey
650172c433 Bug 1245013 - Move CMFLAGS/CMMFLAGS from config.mk to configure. r=mshal
We don't really care to set those in js/src/configure because the JS
engine doesn't use ObjC. We also don't care to preserve the += behavior
because there were no AC_SUBST in the first place, so it's unlikely
anyone has an override in their mozconfig and expects it to work.
2016-02-03 08:41:19 +09:00
Ted Mielczarek
33fb02c532 bug 1243349 - fix NSPR link paths for NSS. r=mshal 2016-01-27 09:28:40 -05:00
Carsten "Tomcat" Book
1d0e383eee Backed out changeset b538734b6a17 (bug 1243349) for bustage on a CLOSED TREE 2016-01-27 16:13:12 +01:00
Ted Mielczarek
1c71fd8c22 bug 1243349 - fix NSPR link paths for NSS. r=glandium 2016-01-27 09:28:40 -05:00
John Lin
a47f8ffdda Bug 1239607 - Collect codec info using MediaCodecList instead of OMXCodec. r=sotaro 2016-01-26 18:58:00 +01:00
Ted Mielczarek
df290062ec backout bug 1237863 - Silence linker errors from MOZ_FOLD_LIBS on Windows for causing shutdown crashes on Windows (bug 1242802). r=me 2016-01-26 12:57:48 -05:00
Tim Taubert
8fa3f8ac39 Bug 1191936 - Implement RSA-PSS signing and verification r=rbarnes,smaug 2015-10-13 20:22:43 +02:00
Wes Kocher
cc60db0194 Merge m-c to inbound a=merge 2016-01-25 14:06:08 -08:00
ffxbld
437083d3b6 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2016-01-25 09:01:00 -05:00
Ted Mielczarek
ae6bbb299b bug 1230117 - Stop using NSPR's configure. r=glandium 2016-01-21 06:04:11 -05:00
Ted Mielczarek
713bad084a bug 1237863 - Silence linker errors from MOZ_FOLD_LIBS on Windows. r=glandium 2016-01-15 05:58:22 -05:00
Mike Hommey
aab856a217 Bug 1242074 - Avoid going back and forth between FasterMake and RecursiveMake; r=gps
FasterMake needs some RecursiveMake install manifests to have been
processed before doing its work, so we can actually end up processing
them twice because of the going back and forth from FasterMake in the
hybrid build system.

Set the dependency at the RecursiveMake level when doing an hybrid
build.
2016-01-23 11:40:24 -08:00
Gregory Szorc
cd610a3b6b Bug 1242074 - Reorder pattern rules to placate GNU Make 3.81; r=glandium
Recent changes in bug 1239217 added the faster backend to the default
build mechanism for artifact builds. This seems to have uncovered a
difference in behavior between GNU Make 3.81 and newer. Starting with
GNU Make 3.82, pattern rules are selected according to shortest stem.
Before, they are used in definition order.

So, we change the order of the pattern rules so the longest prefixes are
first. This should result in the same behavior on various GNU Make
implementations.
2016-01-23 11:38:00 -08:00
Mike Hommey
8c69551b4d Bug 1239217 - Add the FasterMake+RecursiveMake hybrid backend. r=gps 2016-01-22 15:43:26 +09:00
Mike Hommey
cea09a3412 Bug 1239217 - Make the RecursiveMake build system create backend files generically. r=gps
The current rule is only for "backend.RecursiveMakeBackend", but, with
the current default of generating both the RecursiveMake and FasterMake
backends, the command creates/refreshes both backends. This is, in fact,
how the FasterMake backend is refreshed in most cases.

Moreover, with an hybrid backends, the generated file is not
"backend.RecursiveMakeBackend" anymore, so we need a more generic way to
handle this.

Furthermore, it's not necessarily desirable for all backends to have a
dependency file to handle the dependencies to refresh the backend, so
generate a plain list instead. This has the side effect of making `mach
build-backend --diff` more readable for changes to that file.

Finally, make the backend.* files created like any other backend file,
such that its diff appears in the `mach build-backend --diff` output.
2016-01-22 15:43:24 +09:00
Mike Hommey
266875452c Bug 1239217 - Stop making the FasterMake build system refresh the backend on its own. r=gps
The FasterMake build system is meant to be invoked through `mach build
faster`, which does it already, or, in the near future, as part of an
hybrid build system, which will deal with it as well. People doing
`make -C objdir/faster` won't have the backend automatically refreshed,
but that's not a supported way to use it anyways.
2016-01-22 15:43:23 +09:00
Mike Hommey
0e7a132108 Bug 1241421 - Remove jar.mn with no JAR_MANIFESTS check in config/rules.mk. r=mshal
The same check exists in the emitter code anyways.
2016-01-22 07:00:23 +09:00
Mike Hommey
d9695282c5 Bug 1241416 - Create a tier for things happening before export. r=gps
While it would be possible to move those things in the export tier, it
is still interesting to have reporting for them separately, especially
considering I expect things to gradually move from the other tiers to
this new one.

While not entirely obvious, the recurse_pre-export target doesn't imply
actual recursion as long as the RecursiveMake backend doesn't emit
traversal information for it, so nothing will actually happen on this
target, but the interesting part is that it runs, per the generic
config/recurse.mk rules for tiers, between BUILDSTATUS TIER_START and
BUILDSTATUS TIER_FINISH, so that all its dependencies are accounted
as being part of the pre-export tier.
2016-01-22 07:00:23 +09:00
Jacek Caban
fd3660e10c Bug 1239672 - Fixed symbols file support on mingw. r=glandium 2016-01-21 13:39:41 +01:00
Mike Hommey
23228c1de9 Bug 1241022 - Move GENERATED_FILES. r=gps
GENERATED_FILES impacts the export tier through the config/rules.mk
definitions, now moved to the backend itself, so that everything is
close to each other.
2016-01-21 13:54:03 +09:00
Nathan Froyd
aab30e9fff Bug 1155198 - export symbols used by Java from Firefox-built NSS library; r=glandium 2016-01-14 11:22:07 -05:00
Mike Hommey
3e3c3f1ca4 Backout changeset de0a7a1cdc4a from bug 1240660 for make package bustage on a CLOSED TREE 2016-01-20 08:03:58 +09:00
Mike Hommey
d834859284 Bug 1240660 - Move jar_maker to the misc tier, now that ordering does't matter. r=gps 2016-01-20 07:24:40 +09:00
Mike Hommey
f42fbe1799 Bug 1240657 - Fix FasterMake race condition leading to missing "manifest interfaces.manifest" entries. r=gps
Turns out the claim in bug 1234439 that the FasterMake backend knows
about all the chrome manifest entries is wrong, and there's still one
that is added "manually" with buildlist.py, and during mach build
faster, that can happen before or after the corresponding chrome
manifests are written out by install manifest processing.

While the real fix here would be to make the build system totally
aware of those "manifest interfaces.manifest" entries, for now, it's
simpler to add dependencies to work around the race condition.
2016-01-20 07:24:40 +09:00
Mike Hommey
76d48de4df Bug 1237140 - Pass NSS_EXTRA_SYMBOLS_FILE down to nss.symbols processing. r=gps 2016-01-20 07:24:40 +09:00
Jeff Muizelaar
7073b3bb09 Bug 1228641. Remove initializer_list from stl-headers
Including new before initializer_list seems to cause problems like:

c:\tools\vs2013\vc\include\xutility(1278) : error C2065: 'initializer_list' : undeclared identifier
c:\tools\vs2013\vc\include\xutility(1278) : error C2065: '_Ilist' : undeclared identifier
c:\tools\vs2013\vc\include\xutility(1281) : error C2433: 'rbegin' : 'inline' not permitted on data declarations
c:\tools\vs2013\vc\include\xutility(1281) : error C2365: 'std::rbegin' : redefinition; previous definition was 'function'
c:\tools\vs2013\vc\include\xutility(1281) : error C2998: 'std::reverse_iterator<const _Elem*> std::rbegin' : cannot be a template definition
c:\tools\vs2013\vc\include\xutility(1284) : error C2065: 'initializer_list' : undeclared identifier
c:\tools\vs2013\vc\include\xutility(1284) : error C2065: '_Ilist' : undeclared identifier
c:\tools\vs2013\vc\include\xutility(1287) : error C2433: 'rend' : 'inline' not permitted on data declarations
c:\tools\vs2013\vc\include\xutility(1287) : error C2365: 'std::rend' : redefinition; previous definition was 'function'
c:\tools\vs2013\vc\include\xutility(1287) : error C2998: 'std::reverse_iterator<const _Elem*> std::rend' : cannot be a template definition

initializer_list shouldn't very be doing any allocation or throwing exceptions so we should be fine.
2016-01-15 19:51:37 -05:00
Dan Minor
c412d515bf bug 1237619: Record build objects in resource_usage.json r=gps
Collecting the list of object files compiled, while not ideal, will give us
some indication of how much work was involved in the build. This will help
with analyzing the data.
2016-01-12 14:00:24 -05:00
Jed Davis
11c2c37592 Bug 1133073 - Use PR_DuplicateEnvironment to avoid post-fork malloc on all Linux platforms. r=dhylands 2016-01-11 14:17:01 -08:00
Jed Davis
dd3ff20e03 Back out 7f6bb9f7e60d (bug 1133073) for bustage. Sorry about that. 2016-01-11 13:29:53 -08:00
Jed Davis
5b44277caf Bug 1133073 - Use PR_DuplicateEnvironment to avoid post-fork malloc on all Linux platforms. r=dhylands 2016-01-11 12:46:50 -08:00
Jeff Muizelaar
af079e4ea0 Bug 1228641. Add a polyfill of std::initializer_list. r=froydnj 2016-01-06 22:06:35 -05:00
Jean-Yves Avenard
53b2fd8ae5 Bug 1214462: P5. Enable ffvpx compilation and use. r=glandium 2016-01-06 23:03:53 +11:00
Mike Hommey
110878ccbd Bug 1235108 - Install bookmarks.html from jar.mn instead of a custom Makefile rule. r=gps 2016-01-05 20:03:43 +09:00
Nicholas Nethercote
b95a503e4d Bug 1232219 (follow-up) - Fix nsinstall.c bustage in SM(e) builds. r=me. 2016-01-04 17:11:21 -08:00
Phil Ringnalda
56c57ae873 Back out 6 changesets (bug 1214462) for Win PGO build bustage, reftest failures and mochitest failures
CLOSED TREE

Backed out changeset 803dba2adb27 (bug 1214462)
Backed out changeset e1b318c9c1db (bug 1214462)
Backed out changeset 3a421412b161 (bug 1214462)
Backed out changeset 2b388a17f4be (bug 1214462)
Backed out changeset 6a290f27f9bc (bug 1214462)
Backed out changeset 3dbf22bf17a4 (bug 1214462)
2015-12-30 20:37:08 -08:00
Jean-Yves Avenard
f715f2529c Bug 1214462: P5. Enable ffvpx compilation and use. r=glandium 2015-12-31 13:17:24 +11:00
Mike Hommey
122ab4c005 Bug 1235733 - Use absolute paths for include paths. r=gps
Limit ourselves to include paths for now, because there are tricky things
involved in making this globally.

While here, use shell_quote instead of manual quoting for those paths.
2015-12-31 08:10:02 +09:00
Mike Hommey
337af22d15 Bug 1235676 - Add a global ABS_DIST variable for a non-relative version of DIST, based on topobjdir. r=mshal
This replaces multiple local definitions of ABS_DIST.
2015-12-31 08:10:02 +09:00
Mike Hommey
e27f35029e Bug 1235743 - Move compiler flags used for dependency generation to a separate variable. r=gps
This might seem like going in the opposite direction of what we tend to do
to move to moz.build land, but those flags are irrelevant in many situations
and are better separated out.
2015-12-31 07:35:04 +09:00
Mike Hommey
0c3d01c934 Bug 1235738 - Move MOZ_DEBUG_DEFINES to build frontend. r=gps
MOZ_DEBUG_DEFINES are essentially defines used everywhere. So treat them as
feeding the initial value for DEFINES in each moz.build sandbox. This allows
the kind overrides that was done in the past by resetting MOZ_DEBUG_DEFINES
in Makefiles.
2015-12-31 07:27:23 +09:00
Mike Hommey
c0b7431a14 Bug 1235132 - Remove _PR_* symbols from nss.symbols. r=gps
The only affected symbols are
_PR_<architecture>_Atomic{Decrement,Set,Add,Increment}, they are not exposed in
public headers, have a different name on each architecture, and have a public
API: PR_Atomic{Decrement,Set,Add,Increment}.
2015-12-31 07:25:42 +09:00