21.4.6 Including files
M4 permits you to include files into the input stream using the
sinclude macros. They simply expand to the
contents of the named file. Of course, the expansion will be rescanned
as the normal rules dictate (21.3 Fundamentals of M4 processing).
The difference between
sinclude is subtle: if
the filename given as an argument to
include is not present, an
error will be raised. The
sinclude macro will instead expand to
the empty string--presumably the `s' stands for `silent'.
Older GNU Autotools macros that tried to be modular would use the
sinclude macros to import libraries of macros
from other sources. While this is still a workable mechanism, there is
an active effort within the GNU Autotools development community to improve
the packaging system for macros. An `--install' option is being
developed to improve the mechanism for importing macros from a library.