Commit Graph

299 Commits

Author SHA1 Message Date
ahochheiden
749b4c8995 Bug 1807907 - Cache the results of try_invoke_compiler on disk for re-use between different runs of configure r=firefox-build-system-reviewers,glandium
Differential Revision: https://phabricator.services.mozilla.com/D165671
2023-02-28 08:42:52 +00:00
Mike Hommey
f9aec4b3cf Bug 1817372 - Allow -windows-msvc and -windows-gnu triplets as host and target. r=firefox-build-system-reviewers,andi
This is the first step before entirely deprecating the use of -mingw32
targets to mean msvc.

Differential Revision: https://phabricator.services.mozilla.com/D170169
2023-02-17 07:42:48 +00:00
Mike Hommey
f608c3ae17 Bug 1817372 - Refactor checks for the MSVC abi that take the form of a compiler check. r=firefox-build-system-reviewers,andi
We're soon going to introduce a new way to distinguish between the two
windows ABIs, so we factor out compiler checks that will need to be
adjusted to limit the amount of changes down the line.

Differential Revision: https://phabricator.services.mozilla.com/D170167
2023-02-17 07:42:47 +00:00
Emilio Cobos Álvarez
de7acc6e32 Bug 1802405 - Prepend mozillabuild msys2 to path only for the build. r=glandium
This reverts bug 1801826 and instead prepends the msys2 path only for
the build, which is a bit more sensible.

This allows us to remove the existing warning from old_configure, since
that can't happen now.

Differential Revision: https://phabricator.services.mozilla.com/D163073
2022-11-26 23:23:34 +00:00
Cristian Tuns
280201b26e Backed out changeset 028a7f4e4b32 (bug 1776255) for causing Linux artifact builds bustages on central CLOSED TREE 2022-11-26 17:13:36 -05:00
Marian-Vasile Laza
6b7ee54e9b Backed out changeset 738ee02dfc2a (bug 1802405) for causing build bustages. CLOSED TREE 2022-11-26 01:57:53 +02:00
Emilio Cobos Álvarez
fe8160e90a Bug 1802405 - Prepend mozillabuild msys2 to path only for the build. r=glandium
This reverts bug 1801826 and instead prepends the msys2 path only for
the build, which is a bit more sensible.

This allows us to remove the existing warning from old_configure, since
that can't happen now.

Differential Revision: https://phabricator.services.mozilla.com/D163073
2022-11-25 23:08:46 +00:00
ahochheiden
3086d55972 Bug 1776255 - Add the appropriate 'when' to all 'option' that end up calling 'pkg_check_modules' later r=firefox-build-system-reviewers,glandium
We don't check for pkg-config on some platforms (Windows, OSX, Android).
On those platforms, calling 'pkg_check_modules' will not work. Adding
the same 'when' used for the 'pkg_config' check to all the options that
end up calling 'pkg_check_modules' effectively disables them, and prevents
'pkg_check_modules' from being called.

Differential Revision: https://phabricator.services.mozilla.com/D150649
2022-11-25 17:22:03 +00:00
Mike Hommey
f47fc4dad4 Bug 1794517 - Make CI plain builds a little closer to local builds. r=firefox-build-system-reviewers,andi
Differential Revision: https://phabricator.services.mozilla.com/D159005
2022-10-11 06:54:45 +00:00
Mike Hommey
4045d857ee Bug 1787977 - Include configure in the tree. r=firefox-build-system-reviewers,nalexander
Historically, we had configure.in in the tree, and generated configure
with autoconf via client.mk at build time, and we'd run that configure.
As a side effect, configure would be shipped in source tarballs, as with
traditional autoconf-driven software.

Bug 1671424 changed that, and made `mach build`/`mach configure` invoke
configure.py directly, without needing configure. As a side effect,
configure stopped being generated in source directories. An unexpected
side effect was that configure stopped being shipped in source tarballs.

Anyways, it has been long enough now that adding a configure file in the
tree shouldn't cause too many problems with people updating their trees
where a configure file might exist from those older builds.

Differential Revision: https://phabricator.services.mozilla.com/D155923
2022-08-30 04:02:12 +00:00
Gijs Kruitbosch
e00e722239 Bug 1773520 - add vscode build backend by default if vscode is installed, r=firefox-build-system-reviewers,nalexander,glandium
Differential Revision: https://phabricator.services.mozilla.com/D150147
2022-07-18 13:14:23 +00:00
Narcis Beleuzu
ea20959e2d Backed out 1 changesets (bug 1773520) for breaking the ./mach ide vscode
Backed out changeset d9571dde686f (bug 1773520)
2022-07-01 09:32:36 +03:00
Gijs Kruitbosch
e5852b6d8d Bug 1773520 - add vscode build backend by default if vscode is installed, r=firefox-build-system-reviewers,nalexander,glandium
Differential Revision: https://phabricator.services.mozilla.com/D150147
2022-06-30 08:38:02 +00:00
Tooru Fujisawa
29225468b3 Bug 1769405 - Part 1: Move artifact build option to build/moz.configure/init.configure. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D147011
2022-06-14 18:13:53 +00:00
Marian-Vasile Laza
8d68418a04 Backed out 4 changesets (bug 1769405) for causing regression in Bug 1774100. CLOSED TREE
Backed out changeset 813147df341c (bug 1769405)
Backed out changeset 6de9495c467d (bug 1769405)
Backed out changeset 9099ba749b1f (bug 1769405)
Backed out changeset 5f8e0141a0ed (bug 1769405)
2022-06-14 01:36:48 +03:00
Tooru Fujisawa
c7aaaab3fe Bug 1769405 - Part 1: Move artifact build option to build/moz.configure/init.configure. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D147011
2022-06-10 19:16:58 +00:00
Mike Hommey
9dffed84fb Bug 1544779 - Prioritize mozmake over mingw32-make. r=firefox-build-system-reviewers,andi
Differential Revision: https://phabricator.services.mozilla.com/D142308
2022-03-29 08:26:06 +00:00
Mitchell Hentges
23cbe80fd0 Bug 1724274: Move virtualenv dependency manifests to python/virtualenvs r=ahal
This is needed for a few reasons:
* All mach commands can use virtualenvs, not just `build`-related
  commands, so the files don't make sense to be in `build/`.
* When locking is added, more files associated with virtualenvs will be
  added, and this will change will ease the related directory structure
  setup.
* This removes the need for a redundant "_virtualenv_packages" keyword
  as part of the manifest filenames.

Differential Revision: https://phabricator.services.mozilla.com/D140382
2022-03-24 14:04:34 +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
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
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
cca868ba68 Bug 1730004 - Add a crate with diagnostic / nightly asserts. r=nika,emilio
Original patch by emilio.

Differential Revision: https://phabricator.services.mozilla.com/D125190
2022-01-07 21:24:45 +00:00
Mike Hommey
b89cb6ae18 Bug 1748969 - Move definition of MOZ_DIAGNOSTIC_ASSERT_ENABLED to configure. r=emilio
Original patch by emilio.

Differential Revision: https://phabricator.services.mozilla.com/D135321
2022-01-07 21:24:44 +00:00
Mike Hommey
c8dbb11daa Bug 1647542 - Handle host libraries properly when cross-compiling on Windows. r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D135013
2022-01-05 00:47:55 +00:00
Mike Hommey
5f69025f05 Bug 1747863 - Use a more appropriate check to enable the VisualStudio backend. r=firefox-build-system-reviewers,mhentges
Bug 1322025 made it possible to depend on target/host in @depends
function that also depend on "--help".

Differential Revision: https://phabricator.services.mozilla.com/D134773
2021-12-30 01:38:27 +00:00
Mike Hommey
f094186c6f Bug 1747501 - Move ZLIB_IN_MOZGLUE to python configure. r=firefox-build-system-reviewers,andi
Differential Revision: https://phabricator.services.mozilla.com/D134643
2021-12-29 22:12:45 +00:00
Mike Hommey
906237b715 Bug 1747332 - s/check_build_environment/build_environment/. r=firefox-build-system-reviewers,geckoview-reviewers,andi,calu
Differential Revision: https://phabricator.services.mozilla.com/D134585
2021-12-23 20:47:47 +00:00
Mike Hommey
f320f2e0e1 Bug 1743832 - Move bootstrap-related configure code to a separate file. r=firefox-build-system-reviewers,andi
Differential Revision: https://phabricator.services.mozilla.com/D134117
2021-12-17 22:47:50 +00:00
Ryan VanderMeulen
1aa61d071a Bug 1277320 - Run GTests on all Windows flavors as Tier 1. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D133450
2021-12-10 12:49:54 +00:00
Mike Hommey
52936a0022 Bug 1743033 - Avoid creating mach virtualenv when running confgure standalone. r=mhentges
Differential Revision: https://phabricator.services.mozilla.com/D132190
2021-11-26 01:56:04 +00:00
Mike Hommey
a154421f99 Bug 1740042 - Use llvm-readelf instead of readelf when available. r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D130949
2021-11-23 02:28:18 +00:00
Mitchell Hentges
725792bd05 Bug 1730712: Update "Moz site" terminology r=ahal
The existing terminology had two issues:
* `VirtualenvManager` wasn't always associated with an on-disk
  `virtualenv`: for example, when running in automation, Mach
  "activates" a `VirtualenvManager`, updating its import scope,
  but without ever creating an on-disk `virtualenv`.
* An upcoming patch splits the `VirtualenvManager` class, pulling
  "on-disk virtualenv-handling functions" from the project-wide
  interface for managing Python's import scope.

After some good discussion with Ahal, I think we've struck
the terminology that handles this distinction well: we'll call
the "import scope"-handling part the "site", and we'll continue
to call on-disk virtualenvs (and their representative classes)
as, well, virtualenvs.

Differential Revision: https://phabricator.services.mozilla.com/D130391
2021-11-17 20:54:23 +00:00
Greg Tatum
0f0b78cc1d Bug 1736907 - Add a build flag to experimentally build with ICU4X static data; r=platform-i18n-reviewers,dminor
Differential Revision: https://phabricator.services.mozilla.com/D129080
2021-11-16 15:09:09 +00:00
Marian-Vasile Laza
25a09c0d08 Backed out changeset 561c776bea20 (bug 1740042) for causing build bustages on llvm-readelf. 2021-11-16 02:51:16 +02:00
Mike Hommey
5459f879e5 Bug 1740042 - Use llvm-readelf instead of readelf when available. r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D130949
2021-11-15 22:48:34 +00:00
Marian-Vasile Laza
51e3255d7c Backed out changeset bf55cb5e6b45 (bug 1740042) for causing build bustages. CLOSED TREE 2021-11-15 22:54:31 +02:00
Mike Hommey
2c9074abb8 Bug 1740042 - Use llvm-readelf instead of readelf when available. r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D130949
2021-11-15 20:41:41 +00:00
Emilio Cobos Álvarez
270e255624 Bug 1738947 - Fix path to virtualenv.py. r=mhentges
It was moved in bug 1732948.

Differential Revision: https://phabricator.services.mozilla.com/D130195
2021-11-02 17:19:45 +00:00
Mike Hommey
feecbbaa4f Bug 1731223 - Move wine detection to toolkit/moz.configure. r=firefox-build-system-reviewers,andi
As of now, wine is used with:
- fxc, which is detected in toolkit/moz.configure
- midl, which is detected in toolkit/moz.configure
- ml64 or armasm64, for some assembly sources that aren't used in
  projects that don't include toolkit/moz.configure.

We can thus move it there.

Differential Revision: https://phabricator.services.mozilla.com/D126166
2021-09-22 23:54:26 +00:00
Cristian Tuns
afde9ef4f4 Backed out 2 changesets (bug 1731223) for likely causing localized Windows builds to break (bug 1732034) a=backout
Backed out changeset 0aa04e588a4e (bug 1731223)
Backed out changeset 59a15d9c5391 (bug 1731223)
2021-09-22 08:44:17 -04:00
Mike Hommey
f2aef849b5 Bug 1731223 - Move wine detection to toolkit/moz.configure. r=firefox-build-system-reviewers,andi
As of now, wine is used with:
- fxc, which is detected in toolkit/moz.configure
- midl, which is detected in toolkit/moz.configure
- ml64 or armasm64, for some assembly sources that aren't used in
  projects that don't include toolkit/moz.configure.

We can thus move it there.

As of bug 1731195, there is no remaining use of wine for artifact
builds, so we also make it limited to builds with a compile environment.

Differential Revision: https://phabricator.services.mozilla.com/D126166
2021-09-21 20:51:24 +00:00
Noemi Erli
4e7f6a6a7e Backed out changeset e61e701731df (bug 1731223) for causing toolchains bustages 2021-09-18 02:03:28 +03:00
Mike Hommey
576ad5a0c7 Bug 1731223 - Wine is not optional on Windows cross-builds. r=firefox-build-system-reviewers,andi
Differential Revision: https://phabricator.services.mozilla.com/D125938
2021-09-17 21:34:46 +00:00
Mike Hommey
e2e6bfc01f Bug 1731195 - Remove the wine-wrapping for makensis. r=firefox-build-system-reviewers,andi
Now that we have a bootstrappable linux-native makensis, we don't need
the wine-wrapping anymore.

Differential Revision: https://phabricator.services.mozilla.com/D125927
2021-09-17 09:11:22 +00:00
Mike Hommey
193d84c955 Bug 1731168 - Only look for non-versioned nsis. r=firefox-build-system-reviewers,mhentges
Now that we bootstrap it, we don't need to look for old versioned
versions from mozilla-build. While here stop looking for makensis when
not building for Windows.

Differential Revision: https://phabricator.services.mozilla.com/D125906
2021-09-17 01:19:05 +00:00