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

924 Коммитов

Автор SHA1 Сообщение Дата
Mitchell Hentges b48f6cf7dc Bug 1757813: Detect "MSYS" unames as `msyshost`s r=firefox-build-system-reviewers,nalexander
MozillaBuild 3.4's kernel name was `MINGW32_NT-6.2`, but the new
MozillaBuild's kernel name looks like `MSYS_NT-10.0-19044`.

Update existing first-party detection code to properly handle the modern
MSYS "kernel name" format.

Differential Revision: https://phabricator.services.mozilla.com/D140096
2022-03-02 21:01:07 +00:00
Zhao Jiazhong 8ec9867490 Bug 1756570 - Refresh config.guess and config.sub from upstream. r=glandium
Update config.{guess,sub} for LoongArch/Linux build support.

Differential Revision: https://phabricator.services.mozilla.com/D139456
2022-02-25 02:04:13 +00:00
Mike Hommey 41bf6ee9ab Bug 1752072 - Remove check for RANLIB. r=firefox-build-system-reviewers,mhentges
It hasn't been used in the build system since bug 569597.

Differential Revision: https://phabricator.services.mozilla.com/D136987
2022-02-03 00:06:30 +00:00
Mike Hommey 1ea827dc69 Bug 1752064 - Move the remainder of AS to python configure. r=firefox-build-system-reviewers,andi
Differential Revision: https://phabricator.services.mozilla.com/D136981
2022-02-03 00:06:29 +00:00
Mike Hommey 2705287f4b Bug 1596656 - Move STRIP to python configure. r=firefox-build-system-reviewers,andi
As a bonus, we also check and prefer llvm-strip when it's suitable.

Differential Revision: https://phabricator.services.mozilla.com/D136976
2022-01-28 03:00:13 +00:00
Mike Hommey 9a384df16e Bug 1596656 - Move OBJCOPY to python configure. r=firefox-build-system-reviewers,andi
As a bonus, we also check and prefer llvm-objcopy when it's suitable.

Differential Revision: https://phabricator.services.mozilla.com/D136975
2022-01-28 03:00:13 +00:00
Marian-Vasile Laza 6705627752 Backed out 2 changesets (bug 1596656) for causing jittest failures on 1659595.js. CLOSED TREE
Backed out changeset da8f11880896 (bug 1596656)
Backed out changeset 6c8f3c0aac51 (bug 1596656)
2022-01-27 18:20:30 +02:00
Nick Alexander ea098cb33e Bug 1751658 - Move `ANDROID_CPU_ARCH` to `moz.configure`. r=firefox-build-system-reviewers,glandium
Why not somewhere Android-specific?  Eventually, I'd like to expose
this to something very early in configure.

Differential Revision: https://phabricator.services.mozilla.com/D136702
2022-01-27 16:11:09 +00:00
Cristian Tuns 5eb2cfda19 Backed out 2 changesets (bug 1752064, bug 1752072) for causing build bustages on Windows 2012 CLOSED TREE
Backed out changeset 0cbd0cf9563e (bug 1752072)
Backed out changeset b6e0d43b43ab (bug 1752064)
2022-01-27 02:27:45 -05:00
Mike Hommey 53aae3cded Bug 1752072 - Remove check for RANLIB. r=firefox-build-system-reviewers,mhentges
It hasn't been used in the build system since bug 569597.

Differential Revision: https://phabricator.services.mozilla.com/D136987
2022-01-27 00:33:46 +00:00
Mike Hommey 4cd9b523ae Bug 1752064 - Move the remainder of AS to python configure. r=firefox-build-system-reviewers,andi
Differential Revision: https://phabricator.services.mozilla.com/D136981
2022-01-27 00:18:27 +00:00
Mike Hommey c403bed2a2 Bug 1596656 - Move STRIP to python configure. r=firefox-build-system-reviewers,andi
As a bonus, we also check and prefer llvm-strip when it's suitable.

Differential Revision: https://phabricator.services.mozilla.com/D136976
2022-01-26 23:53:38 +00:00
Mike Hommey c45108f00b Bug 1596656 - Move OBJCOPY to python configure. r=firefox-build-system-reviewers,andi
As a bonus, we also check and prefer llvm-objcopy when it's suitable.

Differential Revision: https://phabricator.services.mozilla.com/D136975
2022-01-26 23:53:37 +00:00
Mike Hommey d4919a8c5f Bug 1747970 - Move AC_CHECK_FUNC{,S} to python configure. r=firefox-build-system-reviewers,andi
- AC_HAVE_FUNCS is an alias to AC_CHECK_FUNCS, so it is covered.
- Nothing uses HAVE___CXA_DEMANGLE, so we don't explictly set it,
  although we do need the result of whether __cxa_demangle is supported.
- No moz.build uses MOZ_DEMANGLE_SYMBOLS, so we only `set_define` it.
- We leave dladdr in old-configure because it needs to move along other
  dl* things.
- The hotfix for AC_CHECK_FUNC is however not needed for dladdr, so we
  remove it.
- We replace the forced HAVE_LOCALECONV on Windows with a check shared
  with all platforms.

Differential Revision: https://phabricator.services.mozilla.com/D134858
2022-01-20 21:01:20 +00:00
Mike Hommey 00fdf5557e Bug 1750893 - Move Android linker flags to python configure. r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D136294
2022-01-19 21:32:10 +00:00
Iulian Moraru f2f55d39bc Backed out changeset ffdd096022f9 (bug 1747970) for causing android build bustages. CLOSED TREE 2022-01-19 02:20:04 +02:00
Mike Hommey 464471142b Bug 1747970 - Move AC_CHECK_FUNC{,S} to python configure. r=firefox-build-system-reviewers,andi
- AC_HAVE_FUNCS is an alias to AC_CHECK_FUNCS, so it is covered.
- Nothing uses HAVE___CXA_DEMANGLE, so we don't explictly set it,
  although we do need the result of whether __cxa_demangle is supported.
- No moz.build uses MOZ_DEMANGLE_SYMBOLS, so we only `set_define` it.
- We leave dladdr in old-configure because it needs to move along other
  dl* things.
- The hotfix for AC_CHECK_FUNC is however not needed for dladdr, so we
  remove it.
- We replace the forced HAVE_LOCALECONV on Windows with a check shared
  with all platforms.

Differential Revision: https://phabricator.services.mozilla.com/D134858
2022-01-18 23:53:38 +00:00
Mike Hommey d8a3bebe12 Bug 1747775 - Remove now unused pkg.m4. r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D134743
2021-12-29 22:36:53 +00:00
Mike Hommey 7651ef8935 Bug 1747755 - Remove MOZ_ARG_HEADER. r=firefox-build-system-reviewers,mhentges
The remaining uses are outdated and not actually exposed anywhere.

Differential Revision: https://phabricator.services.mozilla.com/D134735
2021-12-29 22:18:51 +00:00
Mike Hommey da46f063dc Bug 1747754 - Move --with-android-min-sdk to python configure. r=firefox-build-system-reviewers,geckoview-reviewers,mhentges,calu
And remove --with-android-max-sdk, which hasn't been used since the
removal of Fennec.

Differential Revision: https://phabricator.services.mozilla.com/D134734
2021-12-29 22:18:51 +00:00
Mike Hommey c60168e1b6 Bug 1745129 - Use `--gcc-toolchain=...` rather than `-gcc-toolchain ...`. r=firefox-build-system-reviewers,andi
Apparently the latter doesn't work anymore with clang 14.

Differential Revision: https://phabricator.services.mozilla.com/D133330
2021-12-09 08:28:11 +00:00
Mike Hommey 94b191e702 Bug 1726544 - Only remove --gc-sections when LIBFUZZER_FLAGS is actually used. r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D123407
2021-08-24 21:17:15 +00:00
Mike Hommey 9cdc788c42 Bug 1723245 - Disable --gc-sections when building with sanitizer coverage. r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D122952
2021-08-18 22:04:14 +00:00
Mike Hommey 4dce5725b3 Bug 1722652 - Setup bindgen flags for servo similarly to cranelift and neqo. r=emilio
While the use of toml allows the flags to be separated, the split is
done via some shell shenanigans anyways, and servo's build.rs can
handle the same just fine.

Differential Revision: https://phabricator.services.mozilla.com/D121042
2021-07-28 20:37:48 +00:00
Mike Hommey 5f86b697af Bug 1692137 - Allow local linux builds to use a bootstrapped sysroot. r=firefox-build-system-reviewers,andi,mhentges
Bug 1690930 added sysroots that can be bootstrapped. With this change,
we allow --enable-bootstrap=install to pull the right sysroot for the
configured target, and --enable-bootstrap to update it if it was already
there.

Differential Revision: https://phabricator.services.mozilla.com/D104797
2021-02-12 20:31:49 +00:00
Tom Ritter 9293bfdb80 Bug 1677797 - Change autoconf to avoid using a hard-coded file descriptor r=glandium
In Bug 1671424 we changed the way we configure firefox and it broke the codeql database
generation job.	This job wraps the entire build	process	in a way similar to
  codeql --command="./mach build"

Specifically, the previous way we executed the configure shell script made codeql
disable itself because it was named configure (codeql disables itself during
configuration.)

codeql injects via LD_PRELOAD, and it opens a configuration file and a logging file
(getting fd 3 and 4 respectively.)

autoconf grabs file descriptor 4 and uses it a temporary redirection point either
to a file or stdout. When it does so, it closes	the original file descriptor 4 and
points it at the new location, which also affects the codeql code, resulting in
undesired logging output going into the configure script.

Because this file descriptor trick is only used to avoid duplicating a few lines of
code, I removed the trick and duplicated the code.

Differential Revision: https://phabricator.services.mozilla.com/D98642
2020-12-08 22:04:09 +00:00
Mike Hommey 9ebbe2c5bc Bug 1669633 - Don't recurse into js/src for the python-part of configure. r=firefox-build-system-reviewers,rstewart
Instead, we now run js/src/old-configure from the top-level configure
after having run old-configure and extracted a few variables to inherit
from it.

Because we're now running from the top-level, $_objdir is always the
top-level objdir, which simplifies some things. The topobjdir in
js/src/config.status, however, needs to stay in js/src because of the
build frontend expecting it there.

When running js/src/old-configure, we used to need some special
treatment for a large number of variables for historic reasons, where
we'd take values from the assigned values before running old-configure
for some, or from AC_SUBSTs after running old-configure.

Now that both old-configure and js/src/old-configure get the same
assignments from old-configure.vars, we don't need anything special for
the former. And only a few remaining variables still need manual work
for the latter.

One notable difference, though, is that the new code doesn't try to
avoid running js subconfigure, which added complexity, and was actually
error-prone.

Differential Revision: https://phabricator.services.mozilla.com/D92725
2020-10-07 21:13:19 +00:00
Mike Hommey 3a86574eae Bug 1669642 - Rename LLVMCONFIG to LLVM_CONFIG and derive it like we do for LLVM_OBJDUMP. r=firefox-build-system-reviewers,andi,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D92737
2020-10-07 22:36:49 +00:00
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