On 2015-03-11 7:35 AM, Brian Smith wrote:
Mike Hommey <m...@glandium.org> wrote:
Brian Smith wrote:
It is very inconvenient to have a minimum supported compiler version
that we cannot even do test builds with using tryserver.

Why this sudden requirement when our *current* minimum "supported"
version is 4.6 and 4.6 is nowhere close to that on try. That is also
true for older requirements we had for gcc. That is also true for clang
on OSX, and that was also true for the short period we had MSVC 2012 as
a minimum on Windows. I'm not saying this is an ideal situation, but I'd
like to understand why gcc needs to suddenly be treated differently.

The current situation is very inconvenient. To improve it, all
compilers should be treated the same: Code that builds on
mozilla-inbound/central/tryserver is good enough to land, as far as
supported compiler versions are concerned. So, for example, if clang
3.7 is what is used on the builders, then clang 3.6 would be
unsupported. And the same with GCC and MSVC.

In my ideal world, instead of spending time debating what compilers we should use, we would stop relying on the system compiler, and build on all platforms with known good compilers of our choosing. That of course requires some build system work to get the compilers installed etc and unfortunately I don't think we have anyone lined up to do that work. But if we ever got there, we could have total control over what compilers are used to build our code, so we would not be affected by external factors such as distros' compiler choice.

Further, it is best to upgrade compiler versions as fast as possible,
so that we can make more use of newer C++ features. I contributed many
patches in bug 1119072 so that MSVC 2015 can become the minimum MSVC
version ASAP. The same should happen with GCC and clang so that we can
write better code using newer C++ features ASAP. (This also requires
replacing STLPort with a reasonable C++ standard library
implementation on Android/B2G.)

I don't think anybody disagrees with your assertion, but the problem as always is finding people to do the actual work. For example, our clang version that we use on builders has not changed for a couple of years or so. Large scale changes such as changes to toolchains, replacing libraries such as STLport with other libraries, etc. is an area that is basically unowned.

Cheers,
Ehsan
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to