On Wed, 01 Apr 2020 21:00:15 -0400 Paul Smith <psm...@gnu.org> wrote: > > > > > But % pattern rules are GNU make specific syntax, since this syntax > > is not specified by POSIX [1]. I fear that I'll have to use a more > > complicated fix... > > Correct, you cannot use pattern rules in portable makefiles.
Well, BSD make prefer % notaion too. What is example of POSIX make, that not understand % rules? > The only problematic rule is this one: > > .po.gmo: $(srcdir)/$(DOMAIN).pot > > The other changes are not necessary. Agree. With note: both main make families (GNU and BSD) mention .a.b notaion as 'old' [2], and prefer %b: %a [2,3], and ... what is non-BSD, non-GNU POSIX make we keep in mind? That used by Sun Microsytems, before preference for GNU Make? This was more then 20 years ago. The .a.b notation instigate ill-formed ".a.b: d" construction, so I would prefer to avoid it outside of "standard implicit rules". > ... >> > In short, in no version of GNU make did the suffix rule defined here > ever actually do what was desired and there will be no loss of > functionality by simply removing the extra prerequisite completely: > > .po.gmo: > @lang=`echo $* | sed -e 's,.*/,,'`; \ > ... Dependency from .pot file is a scope of gettext authors, I think. WBR, -- - ptr [2] https://www.gnu.org/software/make/manual/html_node/Suffix-Rules.html#Suffix-Rules [3] https://www.freebsd.org/cgi/man.cgi?query=make&apropos=0&sektion=0&manpath=SunOS+5.9&format=html