Get read of -pthreads because (according to gcc info page) it's only
there on solaris and as an alias to -pthread.
-D_REENTRANT is always defined by gcc and clang when -pthreads is on.
-D_THREAD_SAFE is only defined on AIX by clang
so get rid of the related actions.
libpthreads is an AIX thing, I assume we can remove it too.
c/cxx flags are always added to the linker flags, so don't do any
linker-related addition.
Differential Revision: https://phabricator.services.mozilla.com/D203687
The location of the built libraries was changed by bug 1459764.
Additionally update the search paths in the .lldbinit file that gets
put in the objdir during build.
Differential Revision: https://phabricator.services.mozilla.com/D210667
Actually remove the check for demangle, no supported target need that
check.
Also make library dependencies explicit instead of relying on "$LIBS".
Differential Revision: https://phabricator.services.mozilla.com/D203637
We can't add the flag to EXE files unless we do either
* Make the CRT an SxS assembly (bug 1733734) or
* Ship the redistributable installer to install the CRT to System32.
Because otherwise firefox.exe will no longer be able to find the CRT.
Differential Revision: https://phabricator.services.mozilla.com/D210639
The -ldl flag was previously set globally, it's now set for the libs
that use it.
Also rationalize the difference between HAVE_DLOPEN and HAVE_DLFCN_H.
Differential Revision: https://phabricator.services.mozilla.com/D203594
Actually remove the check for demangle, no supported target need that
check.
Also make library dependencies explicit instead of relying on "$LIBS".
Differential Revision: https://phabricator.services.mozilla.com/D203637
The -ldl flag was previously set globally, it's now set for the libs
that use it.
Also rationalize the difference between HAVE_DLOPEN and HAVE_DLFCN_H.
Differential Revision: https://phabricator.services.mozilla.com/D203594
The only use of this type used to be carrying around an owning reference
to a thread-local. However, since bug 1577439 we're leaking the
allocation intentionally, so we can simplify the code to explicitly use
`Box::leak()`, which in turn removes all unsafe usage around these, and
allows us to drop the owning_ref dependency altogether.
Differential Revision: https://phabricator.services.mozilla.com/D209912
Because fallible_collections pulls hashbrown 0.13, we also upgrade
hashlink to 0.8.2, which updates to that version as well. Those were the
last two uses of hashbrown 0.12, so we can update the fake hashbrown
0.12 to 0.13.
We could skip the upgrade of hashlink, but that would leave us with two
fake hashbrowns, and we'd hit https://github.com/rust-lang/cargo/issues/13405
Differential Revision: https://phabricator.services.mozilla.com/D209317
Some automation tiers ultimately end up calling normal tiers, which
will print their own BUILDSTATUS already. This kind of didn't cause
problems before bug 1859011 presumably because of buffering of the
automation tier output, but is now causing problems because the tier
monitor doesn't want to see a tier start multiple times.
Also, now that bug 1859011 made automation tiers buffered by command
rather than by target, we don't need the hack with automation-start,
simplifying the setup.
Differential Revision: https://phabricator.services.mozilla.com/D209095
Mach can currently only run on Python version 3.8 or higher, so it
doesn't make sense to continue having dead code that provides support
for Python2.
Differential Revision: https://phabricator.services.mozilla.com/D209030