Commit Graph

55 Commits

Author SHA1 Message Date
Mike Hommey
ed3910db06 Bug 1560545 - Force-enable wayland support in Linux builds. r=chmanchester
So that we don't end up disabling it by accident.

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

--HG--
extra : moz-landing-system : lando
2019-06-26 06:03:20 +00:00
Cosmin Sabou
58cc56c50f Backed out 3 changesets (bug 1560545) for causing build bustages. CLOSED TREE
Backed out changeset 31177fcc3123 (bug 1560545)
Backed out changeset e3e1ad8d7709 (bug 1560545)
Backed out changeset fd64770f1342 (bug 1560545)
2019-06-26 07:56:47 +03:00
Mike Hommey
54617f4cc0 Bug 1560545 - Force-enable wayland support in Linux builds on automation. r=chmanchester
So that we don't end up disabling it by accident.

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

--HG--
extra : moz-landing-system : lando
2019-06-25 20:22:15 +00:00
Mike Hommey
cd06f032af Bug 1079662 - Always enable PIE. r=froydnj
Last attempt, a few years ago, blatantly failed because nautilus (the
GNOME file manager) can't start PIE executables, which look like shared
libraries, and that it thus considers not being executables.

Downstreams don't actually have the problem, because users won't be
launching Firefox from a file manager, but for mozilla.org builds, it is
a problem because users would download, then extract, and then likely
try to run the Firefox executable from a file manager.

So for mozilla.org builds, we still need to find a way around the
nautilus problem.

A .desktop file could be a solution, but .desktop files have not
actually been designed for this use case, which leads to:
- having to use an awful one-liner shell wrapper to derive the path
  to the executable from that of the .desktop file,
- not even being able to associate an icon,
- the .desktop file not being copiable to a location where .desktop
  files would normally go, because it would then fail to find the
  executable.

Another possibility is to go back to using a shell wrapper, but that's
not entirely appealing.

What we chose here is similar, where we have a small `firefox` wrapper
that launches the real `firefox-bin` (which is still leftover from those
old times where we had a shell wrapper, for reasons).

The small `firefox` wrapper is a minimalist C executable that just
finds the path to the `firefox-bin` executable and executes it with the
same args it was called with. The wrapper is only enabled when the
MOZ_NO_PIE_COMPAT environment variable is set, which we only take into
account on Linux. The variable is only really meant to be used for
mozilla.org builds, for the nautilus problem. Downstreams will just pick
the default, which is changed to build PIE.

On other platforms, PIE was already enabled by default, so we just
remove the --enable-pie configure flag.

Differential Revision: https://phabricator.services.mozilla.com/D5109
2018-09-08 07:41:21 +09:00
Mike Hommey
a5cbd7bc7e Bug 1489001 - Move most of mozconfig.linux to mozconfig.unix. r=froydnj
Bug 1487330 made mozconfig.asan use mozconfig.linux, but while that
worked out fine, it turns out that we do have mac builds using
e.g. mozconfig.asan, and that those can break when doing linux-specific
changes to mozconfig.linux.


--HG--
rename : build/unix/mozconfig.linux => build/unix/mozconfig.unix
2018-09-08 07:41:19 +09:00
Mike Hommey
6e78f08178 Bug 1486998 - Use the binutils toolchain instead of gcc for builds using clang. r=froydnj
This avoids downloading and unpacking a large package that we only use
for binutils when building with clang.

Differential Revision: https://phabricator.services.mozilla.com/D4516
2018-08-30 07:30:30 +09:00
Mike Hommey
357a8bb20c Bug 1486654 - Enable static analysis on all Linux CI builds. r=ted
And turn off separate static analysis build tasks.
2018-08-29 13:55:24 +09:00
Dorel Luca
544b61c613 Backed out changeset 692efe8acba9 (bug 1486654) for wd failures on /builds/worker/workspace/build/tests/bin/geckodriver 2018-08-29 05:16:55 +03:00
Mike Hommey
2ef817ea52 Bug 1486654 - Enable static analysis on all Linux CI builds. r=ted
And turn off separate static analysis build tasks.
2018-08-29 08:02:06 +09:00
Mike Hommey
dc4c9b7cd4 Bug 1483937 - Still use GCC on MOZ_PGO builds that don't have FORCE_GCC. r=froydnj
Yay for inconsistencies in jobs between beta and central.
2018-08-21 06:50:30 +09:00
Mike Hommey
49dd99e3a3 Bug 1480631 - Switch Linux builds to clang. r=froydnj
This change switches most CI builds to clang, with a few exceptions:
- valgrind builds, until bug 1481670 is figured out.
- PGO and nightly builds, until that's fully tested.
- coverage builds, per bug 1471339 comment 17.
- base toolchain builds, to keep some builds on GCC even when we're
  fully switched to clang.
- any build that doesn't use build/unix/mozconfig.linux (e.g. probably
  all those driven by autospider.py, maybe others).
2018-08-16 10:32:33 +09:00
Daniel Varga
14af3949fc Backed out 3 changesets (bug 1480631) for failure at /home/cltbld/workspace/build/tests/talos/talos/run_tests.py
Backed out changeset ed7dba433629 (bug 1480631)
Backed out changeset dd64a5e6d4df (bug 1480631)
Backed out changeset 910a805c960d (bug 1480631)
2018-08-09 01:46:40 +03:00
Mike Hommey
6fe1432f2e Bug 1480631 - Switch Linux builds to clang. r=froydnj
This change switches most CI builds to clang, with a few exceptions:
- valgrind builds, until bug 1481670 is figured out.
- PGO and nightly builds, until that's fully tested.
- coverage builds, per bug 1471339 comment 17.
- base toolchain builds, to keep some builds on GCC even when we're
  fully switched to clang.
- any build that doesn't use build/unix/mozconfig.linux (e.g. probably
  all those driven by autospider.py, maybe others).
2018-08-09 06:08:19 +09:00
Sylvestre Ledru
ae22e4d7c9 Bug 1446809 - Remove some b2g leftover in the build r=glandium
MozReview-Commit-ID: EAXd3JmiL2Z

--HG--
extra : rebase_source : dcd3ea92aad6150ffbee08d6b83670af14a9b50d
extra : source : 9b98c5aad44c43592fde29f95650c7cf54fe9a06
2018-03-20 10:46:23 +01:00
Csoregi Natalia
fc0283f66c Backed out 10 changesets (bug 1446809) for failing on jsat/test_content_integration.html . CLOSED TREE
Backed out changeset 42146f3856d0 (bug 1446809)
Backed out changeset e6b888d19add (bug 1446809)
Backed out changeset 2293192557ef (bug 1446809)
Backed out changeset 643d30faeef8 (bug 1446809)
Backed out changeset 73639fbb3a61 (bug 1446809)
Backed out changeset df179cf0797d (bug 1446809)
Backed out changeset 04c46f107d24 (bug 1446809)
Backed out changeset 9b98c5aad44c (bug 1446809)
Backed out changeset 347d7259df0f (bug 1446809)
Backed out changeset 2a350e323713 (bug 1446809)
2018-03-21 11:17:38 +02:00
Sylvestre Ledru
3ba7519bb2 Bug 1446809 - Remove some b2g leftover in the build r=glandium
MozReview-Commit-ID: EAXd3JmiL2Z

--HG--
extra : rebase_source : 68a42be6d803efcbc00b21d88c2741e258bb5a3b
extra : histedit_source : e7937e472a1de065991789c1868ed23e1f50eadd
2018-03-20 10:46:23 +01:00
Mike Hommey
e551e11340 Bug 1431251 - Remove PKG_CONFIG_LIBDIR from mozconfigs. r=rillian
As of bug 1430036 it was only set when building on CentOS, and as of bug
1432398, we don't have CentOS-based docker images anymore.

--HG--
extra : rebase_source : 5ade9bee773bca3283cfdb9d69209033fe82253f
2018-01-27 11:49:23 +09:00
Mike Hommey
0804de7e8e Bug 1430036 - Don't set PKG_CONFIG_LIBDIR when building on Debian. r=ted
--HG--
extra : rebase_source : 06f96fe0060a34f65f1126e3510580e0b6bc4969
2018-01-12 15:16:19 +09:00
Mike Hommey
25c3f317c0 Bug 1427404 - Always export PATH when passing it through mk_add_options. r=nalexander
mk_add_options has this kind of awkward feature where
  mk_add_options VAR=value
would set VAR for the build through client.mk, but not when running
make -C objdir target. But
  mk_add_options "export VAR=value"
does.

We might want to change that on the long run, but the side effects would
have to be calculated first.

OTOH, we have automation jobs that run compilations during `make check`
(e.g. rusttests), which is not invoked through client.mk. So they
currently don't get the same PATH as the build part, meaning that
they're using system binutils instead of the one from the GCC toolchain
package.

--HG--
extra : rebase_source : aab7f221243c486cf70c7b0c91b9313231050ed8
2017-12-31 08:50:29 +09:00
Mike Hommey
6a21d1f58e Bug 1426785 - Remove mozconfig.gtk. r=gps
It now only does something trivial, which also happens to be a no-op
because it's the default. It does have a commented entry for possible
gtk+2 builds, but we're soon going to remove that possibility anyways in
bug 1278282.

--HG--
extra : rebase_source : 9ac927bb7bd8c057264c8f6f9ca5cbf79a839c4e
2017-12-22 07:57:05 +09:00
Mike Hommey
79b5314945 Bug 1426785 - Use gtk+3 from /usr/local on automation. r=gps
Now that build environment docker images have gtk+3 installed in
/usr/local, adjust mozconfigs to point pkg-config there, and remove
all the glue that was required to build using the tooltool package.

Also remove the --x-libraries=/usr/lib on 32-bits builds, which only
confuses the linker.

--HG--
extra : rebase_source : c7de7b3959a3c6b77ea202d9609c891b5b7ec442
2017-12-22 07:53:33 +09:00
Coroiu Cristina
dbb27acb6d Backed out 5 changesets (bug 1426785) for failing repackage the nightly build on Linux a=backout.
Backed out changeset 08b5850633de (bug 1426785)
Backed out changeset 61453b6473f1 (bug 1426785)
Backed out changeset 851ce8944b41 (bug 1426785)
Backed out changeset 386cd0532519 (bug 1426785)
Backed out changeset 2a52bf9e0898 (bug 1426785)
2017-12-24 14:03:02 +02:00
Mike Hommey
2dca68b63f Bug 1426785 - Remove mozconfig.gtk. r=gps
It now only does something trivial, which also happens to be a no-op
because it's the default. It does have a commented entry for possible
gtk+2 builds, but we're soon going to remove that possibility anyways in
bug 1278282.

--HG--
extra : rebase_source : 0de751e523ee002bbe6638d223eb384364edd22b
2017-12-22 07:57:05 +09:00
Mike Hommey
2e32acf893 Bug 1426785 - Use gtk+3 from /usr/local on automation. r=gps
Now that build environment docker images have gtk+3 installed in
/usr/local, adjust mozconfigs to point pkg-config there, and remove
all the glue that was required to build using the tooltool package.

Also remove the --x-libraries=/usr/lib on 32-bits builds, which only
confuses the linker.

--HG--
extra : rebase_source : 22b1273ae4b78807b355d33ed5895bdfe83a141d
2017-12-22 07:53:33 +09:00
Tom Prince
1d74db87ce Bug 1424651: Remove unused SOCORRO_SYMBOL_UPLOAD_TOKEN_FILE mozconfig variable; r=ted.mielczarek
MozReview-Commit-ID: CkIg3fiwp1z

--HG--
extra : rebase_source : 5a4a50c8feb477a9b50c30e35b72a316b1f1bc8c
2017-12-10 23:05:05 -07:00
Dorel Luca
2f271a1136 Backed out 4 changesets (bug 1424651) as requested by tomprice r=backout on a CLOSED TREE
Backed out changeset 10ebf78f32bb (bug 1424651)
Backed out changeset 746d96792d18 (bug 1424651)
Backed out changeset 6038fb7b458c (bug 1424651)
Backed out changeset 189fd4f1df41 (bug 1424651)
2017-12-12 06:33:18 +02:00
Tom Prince
4dfc8f7a46 Bug 1424651: Remove unused SOCORRO_SYMBOL_UPLOAD_TOKEN_FILE mozconfig variable; r=ted.mielczarek
MozReview-Commit-ID: CkIg3fiwp1z

--HG--
extra : rebase_source : 475e2d8888ff4b93efa9886581de9d145b51c51c
2017-12-10 23:05:05 -07:00
Ted Mielczarek
8b7140ce04 bug 1424323 - remove MOZ_AUTOMATION_UPLOAD_SYMBOLS from in-tree mozconfigs. r=rillian
With all of our builds in Taskcluster now, we should never be uploading
symbols from build tasks. Unfortunately Windows builds were still doing so.
This patch removes MOZ_AUTOMATION_UPLOAD_SYMBOLS from all the in-tree
mozconfigs and a few other places so that it should always default off
(per moz-automation.mk). The rest of the uploadsymbols bits will be
removed once Thunderbird fixes their automation.

This patch was mostly autogenerated by running:
rg --files-with-matches UPLOAD_SYMBOLS browser/config/mozconfigs/ mobile/android/config/mozconfigs/ | xargs sed -ri '/.*UPLOAD_SYMBOLS.*/d'
sed -ri '/.*UPLOAD_SYMBOLS.*/d' build/unix/mozconfig.linux build/mozconfig.win-common build/macosx/local-mozconfig.common build/mozconfig.automation

Then mobile/android/config/mozconfigs/common and
taskcluster/scripts/builder/build-linux.sh were hand-edited.

MozReview-Commit-ID: Cy8kSEodSg4

--HG--
extra : rebase_source : 01caf1651b4eb428313e1f371aa585f8f34c4151
2017-12-08 13:50:17 -05:00
Mike Hommey
9ec14dddcb Bug 1417689 - Remove explicit --enable-elf-hack in mozconfigs. r=nalexander
--enable-elf-hack is the default on all platforms where it's supported,
and is completely ignored on platforms where it's not supported.
While moving the flag to moz.configure, we're going to make it only
work on platforms where elfhack is supported, so we at least need to
remove it from mozconfigs for those platforms where it's not supported.
But generally speaking, we want less things in mozconfigs, so just
remove it from there, since it's the default anyways.
2017-11-16 09:37:17 +09:00
Benjamin Smedberg
270de3f511 Bug 1333826 - Remove all references to MOZ_AUTOMATION_SDK, r=mshal
MozReview-Commit-ID: CuTK1hn0pVl

--HG--
extra : rebase_source : 4581c71360ccd81505079ee9e068ed2ca0431a6a
2017-01-25 12:30:49 -05:00
Mike Hommey
c5caa62fdf Bug 1278456 - Add the tooltool GCC library directory to LD_LIBRARY_PATH on Linux builds. r=mshal
Build slaves on automation are based on Centos 6, which doesn't have a
recent enough version of libstdc++ for our new requirements. But since
we're building with a recent GCC or clang with its own libstdc++, we do
have such a libstdc++ available somewhere, and the compiler picks it
when invoking the linker.

Problems start happening when we execute some of the built programs
during the build, like host tools (e.g. nsinstall), or target programs
(xpcshell, during packaging). In that case, we need the compiler's
libstdc++ to be used. Which required adding the GCC or clang library
directory to LD_LIBRARY_PATH.

Unconveniently enough, the clang 3.5 tooltool package we're using for
ASAN builds until we can update to at least 3.8 (bug 1278718) doesn't
contain libstdc++.so. So for those builds, pull the GCC package from
tooltool as well, and pick libstdc++ from there.
2016-06-12 18:52:15 +09:00
Edmund Wong
0621281471 bug 1262057 - Copy TOOLTOOL_DIR to mozconfig.linux. r=glandium
--HG--
extra : rebase_source : 6d717c0a6850ff2db90650002cbc9cba10ff9ed7
2016-04-06 08:04:00 +02:00
Mike Hommey
dfdf59058d Bug 1186748 - Move gtk-related things in a separate mozconfig. r=mshal
Some mozconfigs don't include mozconfig.linux*, and don't get gtk-related
definitions, so move them in a separate mozconfig. To avoid having two
files, one for 32-bit builds and one for 64-bit builds, rely on the
includer to set PKG_CONFIG_LIBDIR appropriately.

At the same time, move all the --enable-default-toolkit=cairo-gtk2 in that
new file in the case the gtk3 package wasn't pulled from tooltool.
2015-07-28 08:19:15 +09:00
Mike Hommey
e26476c1ed Bug 1187245 - Set things up to use Gtk+3 from the tooltool package during PGO builds. r=gps
The mk_add_options exports are meant to end up in $topobjdir/.mozconfig.mk,
which is included every time make runs.
2015-07-28 08:19:13 +09:00
Ted Mielczarek
4c86423908 bug 1085557 - Add Socorro symbol upload token file to linux mozconfigs. r=coop
--HG--
extra : rebase_source : d30d0cd32c99de4a2b24896094eeca33aa203ba8
2015-03-30 07:35:28 -04:00
Ryan VanderMeulen
0f0c55ff2e Backed out changeset e3d23172f0fe (bug 1085557) for nightly symbol upload failures. a=me 2015-03-25 13:42:46 -04:00
Ted Mielczarek
f66ee346e8 bug 1085557 - Add Socorro symbol upload token file to mozconfigs. r=coop
--HG--
extra : rebase_source : a34863a40c87c3cc63ab0b34ebb8028261b4ec5d
extra : source : 3c62d97274352feb330eaa8721c0c364e2dbfc8c
2015-02-27 08:58:57 -05:00
Mike Shal
47434653c0 Bug 1137000 - Enable SDK building on nightlies; r=glandium 2015-03-17 15:29:07 -04:00
Mike Shal
48668314ac Bug 1141534 - fix mulet nightly mozconfigs; r=bhearsum
We don't want uploadsymbols or update-packaging for nightly mulet
builds, but these were being set by the underlying browser mozconfigs.
2015-03-10 16:20:02 -04:00
Mike Hommey
e24a143f0c Bug 1016641 - Add mozconfig magic for Gtk+3 builds. r=mshal 2014-06-24 07:28:32 +09:00
Mike Shal
2cd87fa675 Bug 978211 - enable MOZ_AUTOMATION_* flags in linux mozconfigs; r=glandium 2014-06-16 13:17:21 -04:00
Trevor Saunders
486d3b4416 bug 938510 - use gcc from tooltool for everything but b2g desktop and valgrind r=glandium 2014-01-30 16:16:19 -08:00
Trevor Saunders
21920c8e04 backout 6fd717549b5a bug 938510 because b2g desktop builds don't seem to pull tooltool packages 2013-11-20 21:39:05 -05:00
Trevor Saunders
f1c71b3e58 bug 938510 - switch to gcc 4.7.3 and latest stable binutils from tooltool r=glandium 2013-11-20 21:04:25 -05:00
Nathan Froyd
8a9ab9e177 Bug 902104 - upgrade to GCC 4.7.3; r=gps 2013-08-06 12:39:11 -04:00
Mike Hommey
6900414df5 Bug 895248 - Move --enable-stdcxx-compat in build/unix/mozconfig.linux. r=ted 2013-07-21 13:58:23 +09:00
Mike Hommey
f5294e4f6a Bug 892355 - Force enable elfhack with --enable-elf-hack. r=ted 2013-07-12 09:15:10 +09:00
Mike Hommey
9da0a2d33f Bug 859966 - Switch linux builds to gcc 4.7.2. r=gps 2013-05-17 08:21:45 +02:00
Ryan VanderMeulen
aab85fbf26 Backed out changeset e40466e428dc (bug 853301) for breaking cross-compiles. 2013-05-08 08:27:00 -04:00
Norbert Lindenberg
66110995b2 Bug 853301 - Enable ECMAScript Internationalization API for desktop Firefox. r=gps, r=brendan, sr=asa 2013-05-06 16:45:25 -07:00