(autoconf.info)Transformation Rules


Prev: Transformation Examples Up: Transforming Names

14.7.3 Transformation Rules
---------------------------

Here is how to use the variable `program_transform_name' in a
`Makefile.in':

     PROGRAMS = cp ls rm
     transform = @program_transform_name@
     install:
             for p in $(PROGRAMS); do \
               $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p | \
                                                   sed '$(transform)'`; \
             done

     uninstall:
             for p in $(PROGRAMS); do \
               rm -f $(DESTDIR)$(bindir)/`echo $$p | sed '$(transform)'`; \
             done

   It is guaranteed that `program_transform_name' is never empty, and
that there are no useless separators.  Therefore you may safely embed
`program_transform_name' within a sed program using `;':

     transform = @program_transform_name@
     transform_exe = s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/

   Whether to do the transformations on documentation files (Texinfo or
`man') is a tricky question; there seems to be no perfect answer, due
to the several reasons for name transforming.  Documentation is not
usually particular to a specific architecture, and Texinfo files do not
conflict with system documentation.  But they might conflict with
earlier versions of the same files, and `man' pages sometimes do
conflict with system documentation.  As a compromise, it is probably
best to do name transformations on `man' pages but not on Texinfo
manuals.


automatically generated by info2www