This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB 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] |
On 11/16/2016 11:34 PM, Pedro Alves wrote: > On 11/16/2016 10:04 PM, Simon Marchi wrote: >> On 2016-11-16 12:23, Eli Zaretskii wrote: >>>> With make >= 3.82, it would do the right thing (choose the second one), >>>> by choosing the rule with the shorter stem. Before that, it used the >>>> order of definition (the first that matches wins). So it would be nice >>>> for that reason to require >= 3.82, but it's also possible to work >>>> around if that's too recent. >>> >>> 3.82 shouldn't be a problem, I think. >> >> Oops, I said that without even checking the version I have on my system. >> Ubuntu 14.04, strangely, has make 3.81. Apparently that was because of >> a critical bug on Debian with 3.82, which stayed open for a long time, >> preventing the upgrade. Debian and its derivatives, including Ubuntu, >> were stuck with that for a long time. >> >> Refs: >> http://stackoverflow.com/questions/31912233/how-to-update-make-3-81-linux >> https://lwn.net/Articles/569920/ >> >> I don't think it's worth complicating the lives of those users just to >> get the benefit of the behaviour change I mentioned. >> >> So I'm back at having no idea what version we should require. > > I think we should go with the same requirement as gcc (3.80), as > seen on the top level Makefile.in: > > @if gcc > ifeq (,$(.VARIABLES)) # The variable .VARIABLES, new with 3.80, is never > empty. > $(error GNU make version 3.80 or newer is required.) > endif > @endif gcc Actually, I take that back. I was just using "makes it easier to have a single top level check", but that's not really a good rationale. I wouldn't want to be stuck if gcc decides to move at a glacial pace. Probably a policy similar to the C++NN one makes more sense. I see now that 3.81 was released in 2006, so should not be a problem to require it. OOC, I wrote a quick&dirty script (attached) to check for GNU Make availability in the GCC compile farm. It tries all gcc*.fsffrance.org from 1 to 250. I don't have access to all machines setup, as some are multiplexed on a single IP with different ports, requiring tweaking the local ssh config. However, what I found was already interesting, I believe. Here's the result: Number of accessible hostnames: 66 Number of inaccessible hostnames: 184 Hostnames with GNU Make: 66 Hostnames without GNU Make: 0 Distribution: 56 GNU Make 3.81 2 GNU Make 3.82 7 GNU Make 4.0 1 GNU Make 4.1 Unique hosts with GNU Make: 20 Unique hosts without GNU Make: 0 Distribution: 10 GNU Make 3.81 2 GNU Make 3.82 7 GNU Make 4.0 1 GNU Make 4.1 I.e., I didn't find a single machine still stuck with GNU Make 3.80. Thanks, Pedro Alves
Attachment:
check-make-ver
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |