different versions of the same binary package.
A relocatable program can be moved or copied to a different location
-on the filesystem. It is possible to make symlinks to the installed
+on the file system. It is possible to make symlinks to the installed
and moved programs, and invoke them through the symlink. It is
possible to do the same thing with a hard link @emph{only} if the hard
link file is in the same directory as the real program.
The prototype for this function is in @file{relocatable.h}.
+@item
+The @code{set_program_name} function can also configure some
+additional libraries to relocate files that they access, by defining
+corresponding C preprocessor symbols to 1. The libraries for which
+this is supported and the corresponding preprocessor symbols are:
+
+@table @asis
+@item libcharset
+@code{DEPENDS_ON_LIBCHARSET}
+
+@item libiconv
+@code{DEPENDS_ON_LIBICONV}
+
+@item libintl
+@code{DEPENDS_ON_LIBINTL}
+@end table
+
+Defining the symbol for a library makes every program in the package
+depend on that library, whether the program really uses the library or
+not, so this feature should be used with some caution.
+
@item
If your package installs shell scripts, also import the
@code{relocatable-script} module. Then, near the beginning of each
@end example
@item
-You may also need to add one or two variable assignments to your
+You may also need to add a couple of variable assignments to your
@file{configure.ac}.
If your package (or any package you rely on, e.g.@: gettext-runtime)