Hi Daniel, * Daniel Leidert wrote on Mon, Oct 27, 2008 at 11:04:34PM CET: > > I want to place a rule in several Makefiles. So I thought about putting > > @DESKTOP_DATA_RULE@ > > into every Makefile.am and define the rule via configure.ac. However, I > can't get it to work. Should be possible with recent Autoconf. If you also use Automake, however, you need to get it to not add DESKTOP_DATA_RULE = @DESKTOP_DATA_RULE@ into the Makefile.in. Currently, that is only possible through an undocumented Automake macro, _AM_SUBST_NOTMAKE([DESKTOP_DATA_RULE]). The intention is to fix that for the next Automake release. If you still have problems after this, please show what you tried, and what's output, and the error. Besides the workarounds already mentioned, other possibilities include Automake conditionals. > $(desktop_DATA): $(desktop_in_files:.desktop.in=.desktop) > @list='$<'; for p in $$list; do \ Please note that using $< outside of inference rules requires GNU make. > if test -f "$$p" ; then \ > f=`echo "$$p" | sed 's/.desktop$$//;$(transform);s/$$/.desktop/'`; \ > if ! test -f "$$f" ; then \ "! CMD" is not portable; in this case you can replace it with portable if test ! -f ... > $(LN_S) "$$p" "$$f" ; \ > echo "$(LN_S) '$$p' '$$f'" ; \ > fi ; \ For portability to older BSD make implementations, which use 'sh -ec' for executing commands, you could add 'else :;' branches to your if clauses, to avoid unwanted error here. > fi ; \ > done Hope that helps. Cheers, Ralf _______________________________________________ Autoconf mailing list Autoconf@xxxxxxx http://lists.gnu.org/mailman/listinfo/autoconf