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

896 Коммитов

Автор SHA1 Сообщение Дата
Mike Hommey b297cc22e4 Bug 1664077 - Remove _NON_GLOBAL_ACDEFINES. r=firefox-build-system-reviewers,mhentges,rstewart
I think they're remnants from the past that we don't really need anymore.
And they're making things more complicated for some pending work of mine.

Differential Revision: https://phabricator.services.mozilla.com/D89687
2020-09-15 14:25:14 +00:00
Razvan Maries f46af2adfc Backed out changeset ee6dbeaf8852 (bug 1664077) for build bustages on gfxFontUtils.h. CLOSED TREE 2020-09-15 04:02:01 +03:00
Mike Hommey 3fd47263f8 Bug 1664077 - Remove _NON_GLOBAL_ACDEFINES. r=firefox-build-system-reviewers,mhentges,rstewart
I think they're remnants from the past that we don't really need anymore.
And they're making things more complicated for some pending work of mine.

Differential Revision: https://phabricator.services.mozilla.com/D89687
2020-09-14 16:31:31 +00:00
Mike Hommey a133ef0e15 Bug 1663863 - Vendor autoconf 2.13. r=firefox-build-system-reviewers,rstewart
The files are copied verbatim from upstream autoconf 2.13 (but only the
files we need) and old.configure is adapted to use the vendored version.

Differential Revision: https://phabricator.services.mozilla.com/D89554
2020-09-09 23:50:38 +00:00
David Major 1b886dfdf3 Bug 1641674 - Don't use --gc-sections during profile generation r=froydnj
For not-well-understood reasons, ld's `--gc-sections` discards a large number of the PGO bookkeeping structures that enable us to keep track of function counters, and the effect gets worse in object files generated by clang-10.

As much as I'd like to understand this better, the investigations take way too much time. As a path of least resistance, we can disable `--gc-sections` for the instrumentation phase of PGO builds. It won't harm anything since users never see those builds, and it will improve the performance of the optimized phase greatly.

Differential Revision: https://phabricator.services.mozilla.com/D78112
2020-08-28 20:38:45 +00:00
Narcis Beleuzu f81ec36d9c Backed out 3 changesets (bug 1660340, bug 1641674, bug 1660896) for causing Btime failures on Android 7.0 . CLOSED TREE
Backed out changeset d445d03a6ca0 (bug 1660340)
Backed out changeset 94c19736f73e (bug 1660896)
Backed out changeset 0ba092f930cc (bug 1641674)
2020-08-28 23:31:52 +03:00
David Major 8549a06e42 Bug 1641674 - Don't use --gc-sections during profile generation r=froydnj
For not-well-understood reasons, ld's `--gc-sections` discards a large number of the PGO bookkeeping structures that enable us to keep track of function counters, and the effect gets worse in object files generated by clang-10.

As much as I'd like to understand this better, the investigations take way too much time. As a path of least resistance, we can disable `--gc-sections` for the instrumentation phase of PGO builds. It won't harm anything since users never see those builds, and it will improve the performance of the optimized phase greatly.

Differential Revision: https://phabricator.services.mozilla.com/D78112
2020-08-27 16:26:23 +00:00
Razvan Maries cd42d16e28 Backed out 3 changesets (bug 1660340, bug 1641674, bug 1660896) for browser time time outs. CLOSED TREE
Backed out changeset edb1d37f48f4 (bug 1660340)
Backed out changeset 9c8388c30032 (bug 1660896)
Backed out changeset 9bf1c5e44a13 (bug 1641674)
2020-08-28 11:44:25 +03:00
David Major 6db6979442 Bug 1641674 - Don't use --gc-sections during profile generation r=froydnj
For not-well-understood reasons, ld's `--gc-sections` discards a large number of the PGO bookkeeping structures that enable us to keep track of function counters, and the effect gets worse in object files generated by clang-10.

As much as I'd like to understand this better, the investigations take way too much time. As a path of least resistance, we can disable `--gc-sections` for the instrumentation phase of PGO builds. It won't harm anything since users never see those builds, and it will improve the performance of the optimized phase greatly.

Differential Revision: https://phabricator.services.mozilla.com/D78112
2020-08-27 16:26:23 +00:00
Nathan Froyd 51b1eb3e1e Bug 1658053 - update config.{guess,sub} with arm64 macOS support; r=glandium
We need these updates so that configure will automatically detect the
correct target triple on arm64 macOS.

Differential Revision: https://phabricator.services.mozilla.com/D86442
2020-08-13 11:36:08 +00:00
Mike Hommey 038f9f8138 Bug 1641790 - Move --with-system-nss to python configure. r=firefox-build-system-reviewers,rstewart
Version of NSS >= 3.27 have a pkg-config file. We're now requiring 3.53,
so while moving, just use pkg-config, which is simpler.

The old-configure check that rejected some untested platforms for
in-tree NSS is actually rejecting none: the accepted platforms cover all
the supported ones, so we remove that check.

And because building with system NSS without system NSPR doesn't make
sense, imply the latter when the former is used.

Differential Revision: https://phabricator.services.mozilla.com/D77428
2020-05-29 17:02:09 +00:00
Mike Hommey 9088528947 Bug 1635764 - Move --with-system-icu and --with-intl-api to python configure. r=firefox-build-system-reviewers,rstewart
At the same time, because it's now simpler to do so, set the right data
file name for big-endians, even though we don't have or produce it
(bug #1264836). Also remove USE_ICU, which is redundant with
JS_HAS_INTL_API, and actively break the build at configure time when
using --without-intl-api with Firefox because this hasn't actually
worked for close to 3 years (since bug 1402048).

Differential Revision: https://phabricator.services.mozilla.com/D77416
2020-05-29 21:29:52 +00:00
Mike Hommey 623e778ff2 Bug 1641786 - Move --with-debug-label to python configure. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D77414
2020-05-29 12:17:24 +00:00
Mike Hommey 313131917e Bug 1641775 - Move --with-system-nspr to python configure. r=firefox-build-system-reviewers,rstewart
Versions of NSPR >= 4.10 come with a pkg-config file. We currently
depend on 4.9.2 for spidermonkey, but much more recent versions for
Firefox. 4.10 is less than a year newer than 4.9.2, and 4.10 is 7 years
old, so bumping the requirement to 4.10 is not really a big deal.

With the use of pkg-config, --with-nspr-cflags and --with-nspr-libs are
not needed.

None of the AC_TRY_COMPILE tests were any useful because
PR_STATIC_ASSERT and PR_UINT64 have been when we look for them since
4.8.6 and 4.9 respectively.

Differential Revision: https://phabricator.services.mozilla.com/D77412
2020-05-29 17:11:27 +00:00
Mike Hommey eba22e2279 Bug 1641760 - Move --with-system-zlib to python configure. r=froydnj
As all versions of zlib >= 1.2.3.1 have a pkg-config file, and 1.2.3.1
is close to 14 years old, let's drop 1.2.3 and just use pkg-config, which
simplifies what we need to do dramatically.

Differential Revision: https://phabricator.services.mozilla.com/D77404
2020-05-29 20:59:00 +00:00
Mike Hommey 711ffb4939 Bug 1639815 - Move --disable-icf to python configure. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D76290
2020-05-21 22:38:47 +00:00
Mike Hommey 114f6b0f27 Bug 1639815 - Move --enable-cpp-rtti to python configure. r=froydnj
This only moves the option, but still leaves it to the old-configure code to
add the appropriate flags to CXXFLAGS.

Differential Revision: https://phabricator.services.mozilla.com/D76288
2020-05-21 22:38:46 +00:00
Bogdan Tara 0bff3c4d0b Backed out 7 changesets (bug 1639815) for --disable-install-strip related bustages CLOSED TREE
Backed out changeset 04a1388fc17d (bug 1639815)
Backed out changeset d48eea557b6d (bug 1639815)
Backed out changeset 6fba10f61bd2 (bug 1639815)
Backed out changeset cfb945f6c82f (bug 1639815)
Backed out changeset 16447c678749 (bug 1639815)
Backed out changeset 89475adf15b6 (bug 1639815)
Backed out changeset 94877a079054 (bug 1639815)
2020-05-22 01:33:22 +03:00
Mike Hommey 1f62799146 Bug 1639815 - Move --disable-icf to python configure. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D76290
2020-05-21 10:13:48 +00:00
Mike Hommey 8a47c95211 Bug 1639815 - Move --enable-cpp-rtti to python configure. r=froydnj
This only moves the option, but still leaves it to the old-configure code to
add the appropriate flags to CXXFLAGS.

Differential Revision: https://phabricator.services.mozilla.com/D76288
2020-05-21 10:13:27 +00:00
Mike Hommey 28de21d935 Bug 1638193 - Remove build system support for iOS. r=nalexander
iOS support for Gecko has not been tested in years and is most probably
out of date. The build system part of it, specifically the checks in
build/autoconf/ios.m4, are not trivial to port to python configure, and
they prevent other things from moving to python configure (because some
of them change value when MOZ_IOS is set).

The code is left alone, although it could probably be stripped off as
well, but I'll leave that as an exercise for someone else.

Differential Revision: https://phabricator.services.mozilla.com/D75463
2020-05-15 03:56:16 +00:00
Ricky Stewart fd72a5d35e Bug 1633016 - Remove a bunch of references to PYTHON(2) in Makefiles r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D72479
2020-05-05 19:53:22 +00:00
André Bargull 7e69806ed2 Bug 1632434 - Part 4: Bump minimum required ICU version to 67.1. r=jwalden
Depends on D72911

Differential Revision: https://phabricator.services.mozilla.com/D72912
2020-04-29 23:47:49 +00:00
Bogdan Tara f137fa0613 Backed out 6 changesets (bug 1632916, bug 1599658, bug 1633037, bug 1633039, bug 1633016, bug 1632920) for SA bustages CLOSED TREE
Backed out changeset 332ce0963b4e (bug 1633039)
Backed out changeset a9904cbc40d9 (bug 1633037)
Backed out changeset d06b0ec349f8 (bug 1599658)
Backed out changeset 8fd300cad80f (bug 1633016)
Backed out changeset f8820941c703 (bug 1632916)
Backed out changeset ac9c2c8746ed (bug 1632920)
2020-05-02 01:49:29 +03:00
Ricky Stewart bb4e86d85a Bug 1633016 - Remove a bunch of references to PYTHON(2) in Makefiles r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D72479
2020-04-30 15:25:22 +00:00
Andi-Bogdan Postelnicu bc9dbe64a1 Bug 1619921 - enable clang-plugin with support for alpha checkers module. r=froydnj,sg
Differential Revision: https://phabricator.services.mozilla.com/D65314

--HG--
extra : moz-landing-system : lando
2020-03-17 07:01:09 +00:00
Andreea Pavel a6b6afe578 Backed out changeset 780399392e20 (bug 1619921) for breaking toolchains on a CLOSED TREE 2020-03-16 18:27:17 +02:00
Andi-Bogdan Postelnicu 1ee04a1f77 Bug 1619921 - enable clang-plugin with support for alpha checkers module. r=froydnj,sg
Differential Revision: https://phabricator.services.mozilla.com/D65314

--HG--
extra : moz-landing-system : lando
2020-03-16 16:04:00 +00:00
Masatoshi Kimura 8f0af48cb1 Bug 1614540 - Improve -std switch replacement. r=froydnj
This patch will support all of `-std:`, `-std=`, and `-Xclang -std=`.
This patch will also a bit faster because the current code will call `sed` for
each argument.

Differential Revision: https://phabricator.services.mozilla.com/D63472

--HG--
extra : moz-landing-system : lando
2020-02-20 14:31:38 +00:00
David Major 5df8b566b9 Bug 1612461 - Translate LLVM_CXXFLAGS's `-std:` to `-std=` for clang-cl r=froydnj,glandium
clang-plugin.dll links against clang.exe so they both need to use the same C++ standard. This is achieved by having build/clang-plugin/moz.build use the flags from llvm-config. However, llvm-config uses the `-std:c++14` format, so our flags end up looking like:
`-Xclang -std=c++17 ... -std:c++14`
and apparently the former wins out in clang's option plumbing, so the compiler still thinks we requested c++17.

This patch makes clang-plugin use the `-Xclang -std=` format so that the override happens as desired.

Differential Revision: https://phabricator.services.mozilla.com/D62271

--HG--
extra : moz-landing-system : lando
2020-02-13 06:41:23 +00:00
Emilio Cobos Álvarez d99e85ea4b Bug 1613176 - Enable -Wreturn-type-c-linkage. r=froydnj
JSAPI functions are not extern "C" anymore. This warning has a couple false
positives due to template specialization (see first patch of this bug), but we
were already working around them, because apparently some mingw builds use it.

Once I fix cbindgen to generate the specializations as needed we can remove
those workarounds, but this is green in the meantime and doesn't hurt.

Depends on D61626

Differential Revision: https://phabricator.services.mozilla.com/D61627

--HG--
extra : moz-landing-system : lando
2020-02-05 11:21:04 +00:00
Mike Hommey 090c830f89 Bug 1598273 - Refresh config.guess and config.sub from upstream. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D54244

--HG--
extra : moz-landing-system : lando
2019-11-26 13:30:41 +00:00
Philip Chimento 46313a101e Bug 1590907 - Make ENABLE_INTL_API and ENABLE_TYPED_OBJECTS into js-config macros. r=sfink,firefox-build-system-reviewers,mshal
Whether ENABLE_INTL_API and ENABLE_TYPED_OBJECTS are defined, affects
the behaviour of JS_FOR_PROTOTYPES for the prototypes of Intl and
TypedObject. Therefore, these macros have to be available to embedders.
Rename them to JS_HAS_INTL_API and JS_HAS_TYPED_OBJECTS (in line with
the existing JS_HAS_CTYPES) everywhere they are used, and add them to
js-config.h.in.

Differential Revision: https://phabricator.services.mozilla.com/D52461

--HG--
extra : moz-landing-system : lando
2019-11-26 07:25:35 +00:00
Brindusan Cristian 3e0cb96b6e Backed out 7 changesets (bug 1590907) for build bustages at jsfriendapi.cpp. CLOSED TREE
Backed out changeset d6ac9325cb2c (bug 1590907)
Backed out changeset fc85ee5e144c (bug 1590907)
Backed out changeset 1b5b40dcaac4 (bug 1590907)
Backed out changeset 1b2d91f00be2 (bug 1590907)
Backed out changeset 67f939760329 (bug 1590907)
Backed out changeset 4d5818a72b46 (bug 1590907)
Backed out changeset 308b42f3a99c (bug 1590907)

--HG--
extra : rebase_source : 47578231d4749f023c3d206c479ee532dbf6fc6c
extra : histedit_source : 9e7427349342272e7fbe02fee29cb87cda45f75d
2019-11-26 05:23:11 +02:00
Philip Chimento a710bbae5d Bug 1590907 - Make ENABLE_INTL_API and ENABLE_TYPED_OBJECTS into js-config macros. r=sfink,firefox-build-system-reviewers,mshal
Whether ENABLE_INTL_API and ENABLE_TYPED_OBJECTS are defined, affects
the behaviour of JS_FOR_PROTOTYPES for the prototypes of Intl and
TypedObject. Therefore, these macros have to be available to embedders.
Rename them to JS_HAS_INTL_API and JS_HAS_TYPED_OBJECTS (in line with
the existing JS_HAS_CTYPES) everywhere they are used, and add them to
js-config.h.in.

Differential Revision: https://phabricator.services.mozilla.com/D52461

--HG--
extra : moz-landing-system : lando
2019-11-26 02:02:23 +00:00
Emilio Cobos Álvarez 25cb66e7e8 Bug 1332689 - Remove clang 3.9 compat code for the clang-plugin. r=andi
We require 4.0 to build since bug 1394825.

Differential Revision: https://phabricator.services.mozilla.com/D50647

--HG--
extra : moz-landing-system : lando
2019-10-28 06:55:00 +00:00
Emilio Cobos Álvarez bd45fba301 Bug 1332689 - Remove clang 3.8 compat code. r=andi
This is just drive-by, but it confused me. We require at least clang 4 to build
nowadays.

Differential Revision: https://phabricator.services.mozilla.com/D50646

--HG--
extra : moz-landing-system : lando
2019-10-28 06:54:43 +00:00
Tom Ritter a74bcb566f Bug 1585353 - Revert Bug 1440013 and remove the -mbig-obj flag for MinGW r=dmajor
mingw-gcc is no longer supported.

Differential Revision: https://phabricator.services.mozilla.com/D48073

--HG--
extra : moz-landing-system : lando
2019-10-04 18:23:15 +00:00
André Bargull 268981bb20 Bug 1539780: Remove "--with-intl-api=build" build config option. r=jwalden
There are about the same number of occurrences of "ENABLE_INTL_API" and "EXPOSE_INTL_API"
in the tree, so preferring one over the other doesn't lead to fewer changes. Therefore
I went with "ENABLE_INTL_API", because "ENABLE_" (resp. "MOZ_ENABLE") is already used as
the prefix for other preprocessor ifdef's.

Differential Revision: https://phabricator.services.mozilla.com/D41188

--HG--
extra : moz-landing-system : lando
2019-08-09 19:43:19 +00:00
Makoto Kato f8907645db Bug 1568452 - Move ANDROID and ANDROID_PLATFORM to moz.configure r=froydnj
ANDROID_SOURCE is for gonk, so it is unnecessary now.

Differential Revision: https://phabricator.services.mozilla.com/D39149

--HG--
extra : moz-landing-system : lando
2019-07-24 13:41:20 +00:00
André Bargull 2268647965 Bug 1473229 - Part 1: Bump minimum required ICU version to 64.1. r=jwalden
- Part 3 uses functions added in ICU 64, so we need to bump the version requirement.
- Also remove a version check which is now true be default.

Differential Revision: https://phabricator.services.mozilla.com/D26717

--HG--
extra : moz-landing-system : lando
2019-07-09 10:04:06 +00:00
Mihai Alexandru Michis 57a64c3906 Backed out 3 changesets (bug 1473229) for causing bustages in ICUStubs.h CLOSED TREE
Backed out changeset 953a2bd4220b (bug 1473229)
Backed out changeset f3a2031bde94 (bug 1473229)
Backed out changeset 5109ce5a4b44 (bug 1473229)
2019-07-09 12:07:22 +03:00
André Bargull cafc533177 Bug 1473229 - Part 1: Bump minimum required ICU version to 64.1. r=jwalden
- Part 3 uses functions added in ICU 64, so we need to bump the version requirement.
- Also remove a version check which is now true be default.

Differential Revision: https://phabricator.services.mozilla.com/D26717

--HG--
extra : moz-landing-system : lando
2019-07-09 08:44:28 +00:00
Mike Hommey 85e29d1e3b Bug 1557583 - Add a --enable-frame-pointers option. r=chmanchester
We've been relying on frame pointers being indirectly enabled via things
like --enable-profiling for some time, but this doesn't scale because
some things may want frame pointers while wanting --disable-profiling.

So we move MOZ_FRAMEPTR_FLAGS to python configure and add a new option
to decide whether to enable frame pointers or not.

Differential Revision: https://phabricator.services.mozilla.com/D34117

--HG--
extra : moz-landing-system : lando
2019-06-12 22:30:46 +00:00
Mike Hommey 958968bcdc Bug 1557583 - Move --enable-*-sanitizers options to python configure. r=dmajor
But keep the corresponding logic in sanitize.m4.

Differential Revision: https://phabricator.services.mozilla.com/D34116

--HG--
extra : moz-landing-system : lando
2019-06-07 13:08:27 +00:00
Jan de Mooij dc18804805 Bug 1556646 part 2 - Rename JS_POSIX_NSPR to JS_WITHOUT_NSPR and remove --enable-posix-nspr-emulation configure flag. r=sfink,glandium
Stand-alone JS builds now default to without-NSPR on all platforms.

Note that the JS shell builds we do in automation pass --enable-nspr-build so they shouldn't be affected by
the JS shell changes.

Differential Revision: https://phabricator.services.mozilla.com/D33933

--HG--
extra : moz-landing-system : lando
2019-06-08 09:10:59 +00:00
Mike Hommey c0bec91e84 Bug 1537644 - Avoid using link.exe during configure. r=chmanchester
Interestingly, the change makes one configure test have a different
result (localeconv ends up being found when it used not to be found),
but the result of that check is actually not used on Windows because we
set HAVE_LOCALECONV manually.

Differential Revision: https://phabricator.services.mozilla.com/D25902

--HG--
extra : moz-landing-system : lando
2019-04-09 21:57:19 +00:00
Mike Hommey 7e282558ea Bug 1524429 - Move build/autoconf/arch.m4 to python configure. r=nalexander
The file is essentially limited to ARM flag tweaks, so we make the
corresponding python configure code ARM-only. In large parts, the
python code sets things up similarly, although in a few places we try to
be smarter about than the current autoconf-based code.

The resulting config.status have been verified to only have
insignificant differences on both arm and aarch64 android builds.

Depends on D24000

Differential Revision: https://phabricator.services.mozilla.com/D24001

--HG--
extra : moz-landing-system : lando
2019-03-20 16:17:57 +00:00
Andreea Pavel f7b09c8773 Backed out 2 changesets (bug 1524429) for build bustages at lint.py on a CLOSED TREE
Backed out changeset 7947b90f1580 (bug 1524429)
Backed out changeset 1a5a5aef01d5 (bug 1524429)
2019-03-20 02:16:41 +02:00
Mike Hommey 80f7e86b2e Bug 1524429 - Move build/autoconf/arch.m4 to python configure. r=nalexander
The file is essentially limited to ARM flag tweaks, so we make the
corresponding python configure code ARM-only. In large parts, the
python code sets things up similarly, although in a few places we try to
be smarter about than the current autoconf-based code.

The resulting config.status have been verified to only have
insignificant differences on both arm and aarch64 android builds.

Depends on D24000

Differential Revision: https://phabricator.services.mozilla.com/D24001

--HG--
extra : moz-landing-system : lando
2019-03-19 22:32:58 +00:00