At 2022-03-29T21:04:54+0200, Ingo Schwarze wrote: > This works for me and seems pretty simple and straightforward: > > SUFFIXES += .me.in > > .me.in.me: > $(GROFF_V)$(MKDIR_P) `dirname $@` && $(DOC_SED) $< >$@
It _doesn't_ work for me in a stripped-down scenario. $ cat hello.me.in .p We're going to run @g@troff. $ cat Makefile.double-suffix.gnu SUFFIXES += .me.in .me.in.me: sed 's/@g@//' $< >$@ all: hello.me clean: rm -f *.me $ make -f Makefile.double-suffix.gnu make: *** No rule to make target 'hello.me', needed by 'all'. Stop. Adding '.me' to the 'SUFFIXES' macro/variable doesn't help. The following works with NetBSD make ("bmake" on my Debian system) and GNU Make, but '.SUFFIXES' is unfortunately forbidden by Automake. $ cat Makefile.double-suffix .SUFFIXES: .me.in .me #.SUFFIXES: .me.in .me.in.me: sed 's/@g@//' $< >$@ all: hello.me clean: rm -f *.me Note the commented line, corresponding to your original example. _Both_ suffixes must be present. (In the groff build, I think '.in' is already in 'SUFFIXES', either thanks to "hdtbl.am" or GNU Make or Automake's own internal pre-definitions.) Regards, Branden
signature.asc
Description: PGP signature