Hello Bruno, all, I noticed that the localcharset module defines a couple of automake hook rules including commands to update the hooks. While not a bug, it creates a limitation in that this strategy is not extensible: two sets of commands for one rule produce an error from 'make'. This can be avoided by creating module-private targets for the actual rule with commands, marking them phony, and letting them be prerequisites of the automake hooks. (This is analogous to using += for variables.)
If you need a blurb about this in some gnulib documentation then please show me where it would be appropriate; thanks. OK to push? Cheers, Ralf Use automake *-local hooks as prerequisites only * modules/localcharset (Makefile.am): Rename install-exec-local rule to install-exec-charset, mark it phony, and make it a prerequisite of install-exec-local. Likewise, rename the uninstall-local rule to uninstall-charset, mark phony, and make it a prerequisite of the former. diff --git a/modules/localcharset b/modules/localcharset index 2d4a700..7e2142f 100644 --- a/modules/localcharset +++ b/modules/localcharset @@ -39,7 +39,9 @@ all-local: charset.alias ref-add.sed ref-del.sed charset_alias = $(DESTDIR)$(libdir)/charset.alias charset_tmp = $(DESTDIR)$(libdir)/charset.tmp -install-exec-local: all-local +.PHONY: install-exec-charset +install-exec-local: install-exec-charset +install-exec-charset: all-local if test $(GLIBC21) = no; then \ case '$(host_os)' in \ darwin[56]*) \ @@ -67,7 +69,9 @@ install-exec-local: all-local fi ; \ fi -uninstall-local: all-local +.PHONY: uninstall-charset +uninstall-local: uninstall-charset +uninstall-charset: all-local if test -f $(charset_alias); then \ sed -f ref-del.sed $(charset_alias) > $(charset_tmp); \ if grep '^# Packages using this file: $$' $(charset_tmp) \