DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH
 

(automk14.info.gz) Extending

Info Catalog (automk14.info.gz) Cygnus (automk14.info.gz) Top (automk14.info.gz) Distributing
 
 21 When Automake Isn't Enough
 *****************************
 
 Automake's implicit copying semantics means that many problems can be
 worked around by simply adding some `make' targets and rules to
 `Makefile.in'.  Automake will ignore these additions.
 
    There are some caveats to doing this.  Although you can overload a
 target already used by Automake, it is often inadvisable, particularly
 in the topmost directory of a non-flat package.  However, various useful
 targets have a `-local' version you can specify in your `Makefile.in'.
 Automake will supplement the standard target with these user-supplied
 targets.
 
    The targets that support a local version are `all', `info', `dvi',
 `check', `install-data', `install-exec', `uninstall', and the various
 `clean' targets (`mostlyclean', `clean', `distclean', and
 `maintainer-clean').  Note that there are no `uninstall-exec-local' or
 `uninstall-data-local' targets; just use `uninstall-local'.  It doesn't
 make sense to uninstall just data or just executables.  
 
    For instance, here is one way to install a file in `/etc':
 
      install-data-local:
              $(INSTALL_DATA) $(srcdir)/afile /etc/afile
 
    Some targets also have a way to run another target, called a "hook",
 after their work is done.  The hook is named after the principal target,
 with `-hook' appended.  The targets allowing hooks are `install-data',
 `install-exec', `dist', and `distcheck'.  
 
    For instance, here is how to create a hard link to an installed
 program:
 
      install-exec-hook:
              ln $(bindir)/program $(bindir)/proglink
 
Info Catalog (automk14.info.gz) Cygnus (automk14.info.gz) Top (automk14.info.gz) Distributing
automatically generated byinfo2html