[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Use automake *-local hooks as prerequisites only

From: Ralf Wildenhues
Subject: Use automake *-local hooks as prerequisites only
Date: Fri, 1 May 2009 20:39:22 +0200
User-agent: Mutt/1.5.18 (2008-05-17)

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?


    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 ; \
-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) \

reply via email to

[Prev in Thread] Current Thread [Next in Thread]