When adding a backend, we currently have to add them in three different
places so that they appear in the right places.
Instead, keep the list in a single place.
This is a partial revert of bug 1214462 part2. We don't need FFmpeg support on Android or Windows anymore; instead the functionality is provided by the FFVPX PDM.
Remove support for FFmpeg on Windows.
Several JS engine header files, notable RootingAPI.h, do:
class JS_PUBLIC_API(...) { ... };
which sticks __declspec(dllimport) on the type. clang-cl warns us that
it doesn't implement that, but since we're compiling with clang-cl as an
interesting side project, rather than shipping releases with it, we can
ignore that warning.
This is a partial revert of bug 1214462 part2. We don't need FFmpeg support on Android or Windows anymore; instead the functionality is provided by the FFVPX PDM.
Remove support for FFmpeg on Windows.
This is a partial revert of bug 1214462 part2. We don't need FFmpeg support on Android or Windows anymore; instead the functionality is provided by the FFVPX PDM.
Remove support for FFmpeg on Windows.
The leading 'v' was intended to distinguish the detected from
the literal version string, but this is non-obvious, and could
be confused with the git tag convention.
Instead, make the strings match, but put the detected version
first since it's what configure is likely to act on.
The main changes are to the warnings, which are as follows.
- Kept -Wall.
- Part of -Wall or on by default; remove all mentions:
* -Waddress
* -Wchar-subscripts
* -Wcomment
* -Wconversion-null
* -Wendif-labels
* -Wenum-compare
* -Wimplicit-function-declaration
* -Wint-to-pointer-cast
* -Wmissing-braces
* -Wmultichar
* -Wnonnull
* -Wparentheses
* -Wpointer-sign
* -Wpointer-to-int-cast (C only)
* -Wreorder
* -Wreturn-type
* -Wsequence-point
* -Wsign-compare (C++ only)
* -Wswitch
* -Wtrigraphs
* -Wuninitialized
* -Wunknown-pragmas
* -Wunused-label
* -Wunused-value
* -Wwrite-strings (C++ only)
- Part of -Wextra; kept where present, added where missing:
* -Wempty-body
* -Wignored-qualifiers (not added for C++ code; many fixes needed to enable)
* -Wtype-limits
- Part of -pedantic; kept where present, added where missing:
* -pointer-arith
- C++ only, kept:
* -Wno-invalid-offsetof
* -Woverloaded-virtual
- Clang-only, kept:
* -Wnon-literal-null-conversion (affected by a clang bug; see the big comment
in the code)
* -Wrange-loop-analysis (C++ only)
* -Wno-unused-local-typedef
- This no longer exists? I kept it to be safe:
* -Winline-new-delete
A consequence of this is that, when --enable-warnings-as-errors is on, in
directories which have ALLOW_COMPILER_WARNINGS specified we no longer have any
fatal warnings. (We previously did have all the explicitly-mentioned
-Werror=foo ones.) This is a sensible change; if we are going to allow warnings
in a directory we should allow all of them, not just some of them.
Other changes:
- Some C warnings incorrectly used the CXX macros. Fixes that.
- Moves comments about warnings closer to the lines where they are defined, to
make it easier to keep the comments consistent with the code.
- Reorders things a little, e.g. so that all enabled warnings are before all
disabled warnings.
The C and C++ warnings are now very similar, in both configure.in and
js/src/configure.in.
--HG--
extra : rebase_source : 6f8db0fecda1315504a29fbcafb6fdee3053d8a5
This is a clear statement of intent, where-as
--disable-compile-environment has other, non-artifact build, uses.
--HG--
extra : commitid : 9ODHf76bY2E
extra : rebase_source : 82183d639abb70018d0b0a8e72b14ab0d585db9f
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.
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.
Bug 758595 added a MOZ_SIGNING AC_DEFINE, used in the package manifest for
mac builds. Bug 1047584 changed mac signing in a way that removed the use
of MOZ_SIGNING, but the AC_DEFINE was left in configure.in, where it is now
unused. Remove it.
When we build universal binaries, we effectively cross-compile
from 64 to 32 bit darwin. Check for this and add the appropriate
target triplet to the definition of RUSTC.
Move the MacOS X 10.6 linkage check to after HAVE_64BIT_BUILD is defined.
This patch introduces a background service for downloading content from a
catalog (bug 1200291). This catalog ships with the application and contains
only fonts in this first version (MOZ_ANDROID_EXCLUDE_FONTS).
For now this service is disabled by default (MOZ_ANDROID_DOWNLOAD_CONTENT_SERVICE).
--HG--
extra : commitid : 7v0q886zR9q
extra : rebase_source : cf877b0ab7d286d1f973daebc8c004b320e426c7
For build speed, for correct line numbers in errors, for faster development, for so many reasons.
Still a couple of cases left mostly in XUL files for different strings on Windows.
Bonus: The new lexical scope means ADDON_SIGNING and REQUIRE_SIGNING can just
be declared as regular constants and outside code can't get to them easily.
--HG--
extra : commitid : Kj8khjuCwG2
extra : rebase_source : 2e0a3143900c0c414cda43254306f0c070f8e621
PKG_CHECK_MODULES sets the values, and AC_SUBST_LISTs them on its own.
No need to duplicate the values to variables local to configure.in to
then AC_SUBST/AC_SUBST_LIST them. Also, since bug 1224452, MOZ_PIXMAN_CFLAGS
needs to be an AC_SUBST_LIST instead of AC_SUBST.
We're going to change how e.g. CFLAGS are printed out in backend.mk, and
to fit that model, the data in the corresponding moz.build variables
need to be straightened up.
This patch moves the logic for selecting MOZ_WINCONSOLE out of individual
Makefile.in files and into configure. It also changes config.mk to only
pass -SUBSYSTEM:CONSOLE if MOZ_WINCONSOLE=1. The MSDN docs state that
in the absence of -SUBSYSTEM, the linker will select the proper subsystem
based on whether the program contains [w]main or [w]WinMain, so let it
do that.
One program (windbgdlg) needed a tweak to add a wmain for when MOZ_WINCONSOLE
is defined.
This patch leaves one instance in security/sandbox/win/wow_helper/Makefile.in,
that Makefile has its own separate bug.
--HG--
extra : commitid : 8acDjmfKivj
extra : rebase_source : 03b4fa4c8ae077a894b08f3762ef93541e34ac1a
Dehydra/Treehydra is unmaintained, broken (iirc), and obsoleted by clang
static analysis. We've removed parts of the build system support for it, but
not all. This is meant to remove the remains.
We're going to be using -I$_topsrcdir in some CFLAGS variables, and for that
we need windows-y paths, not msys paths. All things currently using
$_topsrcdir should cope with this just fine.
Add a switch to enable the rust mp4parser code through confvars.sh
and set this for browser targets. Configure will only pass this
through as a CPP define if the rust toolchain is available.
The MOZ_RUST check is hoisted to an outer conditional to
make it cleaner to add other features.
Thanks to zhoubcfan@163.com for the typo fix in configure.in.
Add a switch to enable the rust mp4parser code through confvars.sh
and set this for browser targets. Configure will only pass this
through as a CPP define if the rust toolchain is available.
The MOZ_RUST check it hoisted to an ourter conditional to
make it easier to add other features.
webtrc should be used on aarch64 targets. When not enabled we hit
bad ANDROID_NDK path (see Bug 1218702) so we actually cannot build
without it right now.