Re: [PATCH 1/4] Document new hard requirement on GNU make

Eli Zaretskii
2016-11-16T17:23:41Z

> Date: Wed, 16 Nov 2016 12:05:02 -0500
> From: Simon Marchi <simon.marchi@polymtl.ca>
> Cc: Simon Marchi <simon.marchi@ericsson.com>, gdb-patches@sourceware.org
>
> > Should we decide which oldest version of GNU Make we are willing to
> > support? IOW, which features do we need for the build?
> >
> > Thanks.
>
> Probably, yes, but I'm not aware of the exact features/bugfix we have to
> rely on. From what I can see, pattern rules have been around since
> forever (I checked out a commit of make from 1993, and it was already in
> the doc). However, if there is a particular bug about pattern rules in
> some versions of make we want to avoid, I am not aware of it.

If all we want to use is pattern rules, then there's no problem. But
I envision that soon enough we'd want to use more, like
target-specific variables, functions like $(eval) and $(file),
variables like $(MAKE_HOST), etc.

> %.o: %.c
> <generic compilation commands>
>
> %-ipa.o: %-ipa.c
> <ipa-specific compilation commands>
>
> 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.