This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Minimum GCC version for building glibc


My vote is for a minimum of at least 4.6.  The main specific motivator for
4.6 in particular is "#pragma GCC diagnostic push", which we can use to
clean out the error-prone CFLAGS-foobar.c settings and start on the way
towards -Werror warning-free builds.

Previously I was hesitant about going to something newer than 4.6,
primarily just because one the main setups I use was 4.6 (Ubuntu 12.04).
But I've upgraded that system to one based on Ubuntu 14.04 (and so have all
Google employees), which has 4.8.

So I have no strong opinion between requiring 4.6 and requiring 4.7.  AIUI
the significant issue is that we believe 4.7 will make the atomics cleanups
that Torvald is pursuing simpler.  I don't really know how much simpler,
given that the compiler's atomics in 4.7 are still less than perfect.

Though I myself am not really using anything that doesn't have 4.8, I think
it is still too soon to require 4.8 this year.  So I'd say we go definitely
to at least 4.6, and leave it up to the people who plan to put major work
into the atomics area to decide whether 4.7 is enough better to really care.

As to what we say in the installation instructions, I think we should go
both ways.  That is, say "4.N or newer" (N=6 or N=7 TBD) but also say, "As
of release time, the newest GCC version verified to work is N".  As an
individual release branch ages, that N might get updated, or it might be
changed to note specific known incompatibilities with a newer version (if
there's an issue we become aware of where branch maintainers decide it is
too invasive or risky to backport the changes that made the trunk cope with
the new GCC).


Thanks,
Roland


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]